pax_global_header00006660000000000000000000000064135763724510014527gustar00rootroot0000000000000052 comment=5bcb6820877db7f73d153430df2e1eedbca58b78 python-opcua-0.98.9/000077500000000000000000000000001357637245100142645ustar00rootroot00000000000000python-opcua-0.98.9/.gitignore000066400000000000000000000003511357637245100162530ustar00rootroot00000000000000tmp_test_* build* MANIFEST .idea* htmlcov* docs/_* *.pyc dist *.old *.swp *.swo *.log t.py tmp old dist *.egg-info *.swp newdocs examples/history.db *.sql /.project /.pydevproject /.settings/ # DS_Store .DS_Store *.der *.pem venv/ python-opcua-0.98.9/.travis.yml000066400000000000000000000016521357637245100164010ustar00rootroot00000000000000language: python python: - "2.7" - "3.6" - "pypy" - "pypy3" # command to install dependencies install: - pip install python-dateutil - pip install pytz - pip install lxml - if [[ $TRAVIS_PYTHON_VERSION == '3.4' ]]; then pip install cryptography ; fi - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install futures ; fi - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install cryptography ; fi - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install trollius ; fi - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install enum34 ; fi #- if [[ $TRAVIS_PYTHON_VERSION == 'pypy3' ]]; then pip install cryptography ; fi - if [[ $TRAVIS_PYTHON_VERSION == 'pypy' ]]; then pip install futures ; fi - if [[ $TRAVIS_PYTHON_VERSION == 'pypy' ]]; then pip install trollius ; fi - if [[ $TRAVIS_PYTHON_VERSION == 'pypy' ]]; then pip install enum34 ; fi # command to run tests script: ./run-tests.sh python-opcua-0.98.9/COPYING000066400000000000000000000167431357637245100153320ustar00rootroot00000000000000 GNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. This version of the GNU Lesser General Public License incorporates the terms and conditions of version 3 of the GNU General Public License, supplemented by the additional permissions listed below. 0. Additional Definitions. As used herein, "this License" refers to version 3 of the GNU Lesser General Public License, and the "GNU GPL" refers to version 3 of the GNU General Public License. "The Library" refers to a covered work governed by this License, other than an Application or a Combined Work as defined below. An "Application" is any work that makes use of an interface provided by the Library, but which is not otherwise based on the Library. Defining a subclass of a class defined by the Library is deemed a mode of using an interface provided by the Library. A "Combined Work" is a work produced by combining or linking an Application with the Library. The particular version of the Library with which the Combined Work was made is also called the "Linked Version". The "Minimal Corresponding Source" for a Combined Work means the Corresponding Source for the Combined Work, excluding any source code for portions of the Combined Work that, considered in isolation, are based on the Application, and not on the Linked Version. The "Corresponding Application Code" for a Combined Work means the object code and/or source code for the Application, including any data and utility programs needed for reproducing the Combined Work from the Application, but excluding the System Libraries of the Combined Work. 1. Exception to Section 3 of the GNU GPL. You may convey a covered work under sections 3 and 4 of this License without being bound by section 3 of the GNU GPL. 2. Conveying Modified Versions. If you modify a copy of the Library, and, in your modifications, a facility refers to a function or data to be supplied by an Application that uses the facility (other than as an argument passed when the facility is invoked), then you may convey a copy of the modified version: a) under this License, provided that you make a good faith effort to ensure that, in the event an Application does not supply the function or data, the facility still operates, and performs whatever part of its purpose remains meaningful, or b) under the GNU GPL, with none of the additional permissions of this License applicable to that copy. 3. Object Code Incorporating Material from Library Header Files. The object code form of an Application may incorporate material from a header file that is part of the Library. You may convey such object code under terms of your choice, provided that, if the incorporated material is not limited to numerical parameters, data structure layouts and accessors, or small macros, inline functions and templates (ten or fewer lines in length), you do both of the following: a) Give prominent notice with each copy of the object code that the Library is used in it and that the Library and its use are covered by this License. b) Accompany the object code with a copy of the GNU GPL and this license document. 4. Combined Works. You may convey a Combined Work under terms of your choice that, taken together, effectively do not restrict modification of the portions of the Library contained in the Combined Work and reverse engineering for debugging such modifications, if you also do each of the following: a) Give prominent notice with each copy of the Combined Work that the Library is used in it and that the Library and its use are covered by this License. b) Accompany the Combined Work with a copy of the GNU GPL and this license document. c) For a Combined Work that displays copyright notices during execution, include the copyright notice for the Library among these notices, as well as a reference directing the user to the copies of the GNU GPL and this license document. d) Do one of the following: 0) Convey the Minimal Corresponding Source under the terms of this License, and the Corresponding Application Code in a form suitable for, and under terms that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work, in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source. 1) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (a) uses at run time a copy of the Library already present on the user's computer system, and (b) will operate properly with a modified version of the Library that is interface-compatible with the Linked Version. e) Provide Installation Information, but only if you would otherwise be required to provide such information under section 6 of the GNU GPL, and only to the extent that such information is necessary to install and execute a modified version of the Combined Work produced by recombining or relinking the Application with a modified version of the Linked Version. (If you use option 4d0, the Installation Information must accompany the Minimal Corresponding Source and Corresponding Application Code. If you use option 4d1, you must provide the Installation Information in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source.) 5. Combined Libraries. You may place library facilities that are a work based on the Library side by side in a single library together with other library facilities that are not Applications and are not covered by this License, and convey such a combined library under terms of your choice, if you do both of the following: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities, conveyed under the terms of this License. b) Give prominent notice with the combined library that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 6. Revised Versions of the GNU Lesser General Public License. The Free Software Foundation may publish revised and/or new versions of the GNU Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library as you received it specifies that a certain numbered version of the GNU Lesser General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that published version or of any later version published by the Free Software Foundation. If the Library as you received it does not specify a version number of the GNU Lesser General Public License, you may choose any version of the GNU Lesser General Public License ever published by the Free Software Foundation. If the Library as you received it specifies that a proxy can decide whether future versions of the GNU Lesser General Public License shall apply, that proxy's public statement of acceptance of any version is permanent authorization for you to choose that version for the Library. python-opcua-0.98.9/Dockerfile000066400000000000000000000000651357637245100162570ustar00rootroot00000000000000FROM python:3.6 RUN pip install opcua CMD uaserver python-opcua-0.98.9/README.md000066400000000000000000000152211357637245100155440ustar00rootroot00000000000000Pure Python OPC UA / IEC 62541 Client and Server Python 2, 3 and pypy. http://freeopcua.github.io/, https://github.com/FreeOpcUa/python-opcua [![Build Status](https://travis-ci.org/FreeOpcUa/python-opcua.svg?branch=master)](https://travis-ci.org/FreeOpcUa/python-opcua) [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/?branch=master) [![Code Coverage](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/?branch=master) [![Codacy Badge](https://api.codacy.com/project/badge/grade/f7f9a138ee7c4541b3b794b86e61e929)](https://www.codacy.com/app/olivier-roulet/python-opcua) [![Code Climate](https://codeclimate.com/github/FreeOpcUa/python-opcua/badges/gpa.svg)](https://codeclimate.com/github/FreeOpcUa/python-opcua) [![PyPI Package](https://badge.fury.io/py/opcua.svg)](https://badge.fury.io/py/opcua) **The library is in maintenance mode. The plan is now to focus on the asyncio version of this library: [python-asyncio](https://github.com/FreeOpcUa/opcua-asyncio) which also has a [sync-wrapper](https://github.com/FreeOpcUa/opcua-asyncio/blob/master/asyncua/sync.py), with very few changes in API** **PR to fix bugs to python-opcua are welcome, but if you want to write new fancy features or architectural changes, please look at opcua-asyncio** **Why asyncio? because it makes code easier to read and safer(read: less chances for bugs) and since python is monoprocess it might even be faster. It is also a good timing to remove all Python2 code** OPC UA binary protocol implementation is quasi complete and has been tested against many different OPC UA stacks. API offers both a low level interface to send and receive all UA defined structures and high level classes allowing to write a server or a client in a few lines. It is easy to mix high level objects and low level UA calls in one application. Most low level code is autogenerated from xml specification, thus adding missing functionality to client or server is often trivial. coverage.py reports a test coverage of over 95 % of code, most of non-tested code is autogenerated code that is not used yet. # Installation With pip (note: the package was ealier called freeopcua) pip install opcua Ubuntu: apt install python-opcua # Library apt install python-opcua-tools # Command-line tools Dependencies: * Python > 3.4: `cryptography`, `dateutil`, `lxml` and `pytz`. * Python 2.7 or pypy < 3: you also need to install `enum34`, `trollius` (`asyncio`), and `futures` (`concurrent.futures`), with pip for example. # Documentation Some documentation is available on [ReadTheDocs](http://python-opcua.readthedocs.org/en/latest/). A simple GUI client is available: https://github.com/FreeOpcUa/opcua-client-gui Examples: https://github.com/FreeOpcUa/python-opcua/tree/master/examples Minimal client example: https://github.com/FreeOpcUa/python-opcua/blob/master/examples/client-minimal.py Minimal server example: https://github.com/FreeOpcUa/python-opcua/blob/master/examples/server-minimal.py A set of command line tools also available: https://github.com/FreeOpcUa/python-opcua/tree/master/tools * `uadiscover `(find_servers, get_endpoints and find_servers_on_network calls) * `uals `(list children of a node) * `uahistoryread` * `uaread `(read attribute of a node) * `uawrite `(write attribute of a node) * `uacall `(call method of a node) * `uasubscribe `(subscribe to a node and print datachange events) * `uaclient `(connect to server and start python shell) * `uaserver `(starts a demo OPC UA server) `tools/uaserver --populate --certificate cert.pem --private_key pk.pem` How to generate certificate: https://github.com/FreeOpcUa/python-opcua/tree/master/examples/generate_certificate.sh ## Client What works: * connection to server, opening channel, session * browsing and reading attributes value * getting nodes by path and nodeids * creating subscriptions * subscribing to items for data change * subscribing to events * adding nodes * method call * user and password * history read * login with certificate * communication encryption * removing nodes Tested servers: freeopcua C++, freeopcua Python, prosys, kepware, beckhoff, winCC, B&R, … Not implemented yet: * localized text feature * XML protocol * UDP * maybe automatic reconnection... ## Server What works: * creating channel and sessions * read/set attributes and browse * getting nodes by path and nodeids * autogenerate address space from spec * adding nodes to address space * datachange events * events * methods * basic user implementation (one existing user called admin, which can be disabled, all others are read only) * encryption * certificate handling * removing nodes * history support for data change and events Tested clients: freeopcua C++, freeopcua Python, uaexpert, prosys, quickopc Not yet implemented: * more high level solution to create custom structures * UDP * session restore * alarms * XML protocol * views * localized text features * better security model with users and password ### Running a server on a Raspberry Pi Setting up the standard address-space from XML is the most time-consuming step of the startup process which may lead to long startup times on less powerful devices like a Raspberry Pi. By passing a path to a cache-file to the server constructor, a shelve holding the address space will be created during the first startup. All following startups will make use of the cache-file which leads to significantly better startup performance (~3.5 vs 125 seconds on a Raspberry Pi Model B). # Development Code follows PEP8 apart for line lengths which should be max 120 characters and OPC UA structures that keep camel case from XML definition. All protocol code is under opcua directory - `opcua/ua` contains all UA structures from specification, most are autogenerated - `opcua/common` contains high level objects and methods used both in server and client - `opcua/client` contains client specific code - `opcua/server` contains server specific code - `opcua/utils` contains some utilities function and classes - `opcua/tools` contains code for command lines tools - `schemas` contains the XML and text files from specification and the python scripts used to autogenerate code - `tests` contains tests - `docs` contains files to auto generate documentation from doc strings - `examples` contains many example files - `tools` contains python scripts that can be used to run command line tools from repository without installing ## Running tests: ``` ./run-tests.sh ``` ## Coverage ``` coverage run tests.py coverage html firefox htmlcov/index.html ``` python-opcua-0.98.9/docs/000077500000000000000000000000001357637245100152145ustar00rootroot00000000000000python-opcua-0.98.9/docs/Makefile000066400000000000000000000164111357637245100166570ustar00rootroot00000000000000# Makefile for Sphinx documentation # # You can set these variables from the command line. SPHINXOPTS = SPHINXBUILD = sphinx-build PAPER = BUILDDIR = _build # User-friendly check for sphinx-build ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) $(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) endif # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . # the i18n builder cannot share the environment and doctrees with the others I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext help: @echo "Please use \`make ' where is one of" @echo " html to make standalone HTML files" @echo " dirhtml to make HTML files named index.html in directories" @echo " singlehtml to make a single large HTML file" @echo " pickle to make pickle files" @echo " json to make JSON files" @echo " htmlhelp to make HTML files and a HTML help project" @echo " qthelp to make HTML files and a qthelp project" @echo " applehelp to make an Apple Help Book" @echo " devhelp to make HTML files and a Devhelp project" @echo " epub to make an epub" @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" @echo " latexpdf to make LaTeX files and run them through pdflatex" @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" @echo " text to make text files" @echo " man to make manual pages" @echo " texinfo to make Texinfo files" @echo " info to make Texinfo files and run them through makeinfo" @echo " gettext to make PO message catalogs" @echo " changes to make an overview of all changed/added/deprecated items" @echo " xml to make Docutils-native XML files" @echo " pseudoxml to make pseudoxml-XML files for display purposes" @echo " linkcheck to check all external links for integrity" @echo " doctest to run all doctests embedded in the documentation (if enabled)" @echo " coverage to run coverage check of the documentation (if enabled)" clean: rm -rf $(BUILDDIR)/* html: $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." dirhtml: $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml @echo @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." singlehtml: $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml @echo @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." pickle: $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle @echo @echo "Build finished; now you can process the pickle files." json: $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json @echo @echo "Build finished; now you can process the JSON files." htmlhelp: $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp @echo @echo "Build finished; now you can run HTML Help Workshop with the" \ ".hhp project file in $(BUILDDIR)/htmlhelp." qthelp: $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp @echo @echo "Build finished; now you can run "qcollectiongenerator" with the" \ ".qhcp project file in $(BUILDDIR)/qthelp, like this:" @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PythonOPC-UA.qhcp" @echo "To view the help file:" @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PythonOPC-UA.qhc" applehelp: $(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp @echo @echo "Build finished. The help book is in $(BUILDDIR)/applehelp." @echo "N.B. You won't be able to view it unless you put it in" \ "~/Library/Documentation/Help or install it in your application" \ "bundle." devhelp: $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp @echo @echo "Build finished." @echo "To view the help file:" @echo "# mkdir -p $$HOME/.local/share/devhelp/PythonOPC-UA" @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PythonOPC-UA" @echo "# devhelp" epub: $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub @echo @echo "Build finished. The epub file is in $(BUILDDIR)/epub." latex: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." @echo "Run \`make' in that directory to run these through (pdf)latex" \ "(use \`make latexpdf' here to do that automatically)." latexpdf: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through pdflatex..." $(MAKE) -C $(BUILDDIR)/latex all-pdf @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." latexpdfja: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex @echo "Running LaTeX files through platex and dvipdfmx..." $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." text: $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text @echo @echo "Build finished. The text files are in $(BUILDDIR)/text." man: $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man @echo @echo "Build finished. The manual pages are in $(BUILDDIR)/man." texinfo: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." @echo "Run \`make' in that directory to run these through makeinfo" \ "(use \`make info' here to do that automatically)." info: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo @echo "Running Texinfo files through makeinfo..." make -C $(BUILDDIR)/texinfo info @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." gettext: $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale @echo @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." changes: $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes @echo @echo "The overview file is in $(BUILDDIR)/changes." linkcheck: $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck @echo @echo "Link check complete; look for any errors in the above output " \ "or in $(BUILDDIR)/linkcheck/output.txt." doctest: $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest @echo "Testing of doctests in the sources finished, look at the " \ "results in $(BUILDDIR)/doctest/output.txt." coverage: $(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage @echo "Testing of coverage in the sources finished, look at the " \ "results in $(BUILDDIR)/coverage/python.txt." xml: $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml @echo @echo "Build finished. The XML files are in $(BUILDDIR)/xml." pseudoxml: $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml @echo @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." python-opcua-0.98.9/docs/client.rst000066400000000000000000000003341357637245100172240ustar00rootroot00000000000000 OPC-UA Client Class ========================================= .. autoclass:: opcua.client.client.Client :members: :undoc-members: .. autoclass:: opcua.client.ua_client.UaClient :members: :undoc-members: python-opcua-0.98.9/docs/conf.py000066400000000000000000000221631357637245100165170ustar00rootroot00000000000000# -*- coding: utf-8 -*- # # Python OPC-UA documentation build configuration file, created by # sphinx-quickstart on Sun May 3 22:03:49 2015. # # This file is execfile()d with the current directory set to its # containing dir. # # Note that not all possible configuration values are present in this # autogenerated file. # # All configuration values have a default; values that are commented out # serve to show the default. import sys import os import shlex # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath('..')) # -- General configuration ------------------------------------------------ # If your documentation needs a minimal Sphinx version, state it here. #needs_sphinx = '1.0' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.coverage', 'sphinx.ext.viewcode', ] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] # The suffix(es) of source filenames. # You can specify multiple suffix as a list of string: # source_suffix = ['.rst', '.md'] source_suffix = '.rst' # The encoding of source files. #source_encoding = 'utf-8-sig' # The master toctree document. master_doc = 'index' # General information about the project. project = u'Python OPC-UA' copyright = u'2015, Olivier Roulet-Dubonnet' author = u'Olivier Roulet-Dubonnet' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. version = '1.0' # The full version, including alpha/beta/rc tags. release = '1.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. # # This is also used if you do content translation via gettext catalogs. # Usually you set "language" from the command line for these cases. language = None # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: #today = '' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = ['_build'] # The reST default role (used for this markup: `text`) to use for all # documents. #default_role = None # If true, '()' will be appended to :func: etc. cross-reference text. #add_function_parentheses = True # If true, the current module name will be prepended to all description # unit titles (such as .. function::). #add_module_names = True # If true, sectionauthor and moduleauthor directives will be shown in the # output. They are ignored by default. #show_authors = False # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' # A list of ignored prefixes for module index sorting. #modindex_common_prefix = [] # If true, keep warnings as "system message" paragraphs in the built documents. #keep_warnings = False # If true, `todo` and `todoList` produce output, else they produce nothing. todo_include_todos = False # -- Options for HTML output ---------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. #html_theme = 'alabaster' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. #html_theme_options = {} # Add any paths that contain custom themes here, relative to this directory. #html_theme_path = [] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". #html_title = None # A shorter title for the navigation bar. Default is the same as html_title. #html_short_title = None # The name of an image file (relative to this directory) to place at the top # of the sidebar. #html_logo = None # The name of an image file (within the static path) to use as favicon of the # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # pixels large. #html_favicon = None # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. #html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. #html_last_updated_fmt = '%b %d, %Y' # If true, SmartyPants will be used to convert quotes and dashes to # typographically correct entities. #html_use_smartypants = True # Custom sidebar templates, maps document names to template names. #html_sidebars = {} # Additional templates that should be rendered to pages, maps page names to # template names. #html_additional_pages = {} # If false, no module index is generated. #html_domain_indices = True # If false, no index is generated. #html_use_index = True # If true, the index is split into individual pages for each letter. #html_split_index = False # If true, links to the reST sources are added to the pages. #html_show_sourcelink = True # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. #html_show_sphinx = True # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. #html_show_copyright = True # If true, an OpenSearch description file will be output, and all pages will # contain a tag referring to it. The value of this option must be the # base URL from which the finished HTML is served. #html_use_opensearch = '' # This is the file name suffix for HTML files (e.g. ".xhtml"). #html_file_suffix = None # Language to be used for generating the HTML full-text search index. # Sphinx supports the following languages: # 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' # 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' #html_search_language = 'en' # A dictionary with options for the search language support, empty by default. # Now only 'ja' uses this config value #html_search_options = {'type': 'default'} # The name of a javascript file (relative to the configuration directory) that # implements a search results scorer. If empty, the default will be used. #html_search_scorer = 'scorer.js' # Output file base name for HTML help builder. htmlhelp_basename = 'PythonOPC-UAdoc' # -- Options for LaTeX output --------------------------------------------- latex_elements = { # The paper size ('letterpaper' or 'a4paper'). #'papersize': 'letterpaper', # The font size ('10pt', '11pt' or '12pt'). #'pointsize': '10pt', # Additional stuff for the LaTeX preamble. #'preamble': '', # Latex figure (float) alignment #'figure_align': 'htbp', } # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ (master_doc, 'PythonOPC-UA.tex', u'Python OPC-UA Documentation', u'Olivier Roulet-Dubonnet', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of # the title page. #latex_logo = None # For "manual" documents, if this is true, then toplevel headings are parts, # not chapters. #latex_use_parts = False # If true, show page references after internal links. #latex_show_pagerefs = False # If true, show URL addresses after external links. #latex_show_urls = False # Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_domain_indices = True # -- Options for manual page output --------------------------------------- # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). man_pages = [ (master_doc, 'pythonopc-ua', u'Python OPC-UA Documentation', [author], 1) ] # If true, show URL addresses after external links. #man_show_urls = False # -- Options for Texinfo output ------------------------------------------- # Grouping the document tree into Texinfo files. List of tuples # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ (master_doc, 'PythonOPC-UA', u'Python OPC-UA Documentation', author, 'PythonOPC-UA', 'One line description of project.', 'Miscellaneous'), ] # Documents to append as an appendix to all manuals. #texinfo_appendices = [] # If false, no module index is generated. #texinfo_domain_indices = True # How to display URL addresses: 'footnote', 'no', or 'inline'. #texinfo_show_urls = 'footnote' # If true, do not generate a @detailmenu in the "Top" node's menu. #texinfo_no_detailmenu = False python-opcua-0.98.9/docs/index.rst000066400000000000000000000031551357637245100170610ustar00rootroot00000000000000.. Python OPC-UA documentation master file, created by sphinx-quickstart on Sun May 3 10:13:43 2015. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Python OPC-UA Documentation ========================================= Pure Python OPC-UA / IEC 62541 Client and Server Python 2, 3 and pypy . http://freeopcua.github.io/, https://github.com/FreeOpcUa/python-opcua OPC-UA implementation is quasi complete and has been tested against many different OPC-UA stacks. API offers both a low level interface to send and receive all UA defined structures and high level classes allowing to write a server or a client in a few lines. It is easy to mix high level objects and low level UA calls in one application. Most code is autogenerated from xml specification using same code as the one that is used for freeopcua C++ client and server, thus adding missing functionnality to client and server shoud be trivial. Some documentation is available at http://python-opcua.readthedocs.org/en/latest/ A simple GUI client is available: https://github.com/FreeOpcUa/opcua-client-gui Examples: https://github.com/FreeOpcUa/python-opcua/tree/master/examples Minimal client example: https://github.com/FreeOpcUa/python-opcua/blob/master/examples/client-minimal.py Minimal server example: https://github.com/FreeOpcUa/python-opcua/blob/master/examples/server-minimal.py Contents: .. toctree:: :maxdepth: 2 server client node subscription opcua All: modules Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search` python-opcua-0.98.9/docs/modules.rst000066400000000000000000000000641357637245100174160ustar00rootroot00000000000000opcua ===== .. toctree:: :maxdepth: 4 opcua python-opcua-0.98.9/docs/node.rst000066400000000000000000000006071357637245100166760ustar00rootroot00000000000000 High level Functions and Node Class ========================================= .. automodule:: opcua.common.node :member-order: bysource :members: :undoc-members: .. automodule:: opcua.common.manage_nodes :members: :undoc-members: .. automodule:: opcua.common.methods :members: :undoc-members: .. automodule:: opcua.common.event :members: :undoc-members: python-opcua-0.98.9/docs/opcua.client.rst000066400000000000000000000007551357637245100203410ustar00rootroot00000000000000opcua.client package ==================== Submodules ---------- opcua.client.client module -------------------------- .. automodule:: opcua.client.client :members: :undoc-members: :show-inheritance: opcua.client.ua_client module ----------------------------- .. automodule:: opcua.client.ua_client :members: :undoc-members: :show-inheritance: Module contents --------------- .. automodule:: opcua.client :members: :undoc-members: :show-inheritance: python-opcua-0.98.9/docs/opcua.common.rst000066400000000000000000000033241357637245100203460ustar00rootroot00000000000000opcua.common package ==================== Submodules ---------- opcua.common.event module ------------------------- .. automodule:: opcua.common.event :members: :undoc-members: :show-inheritance: opcua.common.instanciate module ------------------------------- .. automodule:: opcua.common.instanciate :members: :undoc-members: :show-inheritance: opcua.common.manage_nodes module -------------------------------- .. automodule:: opcua.common.manage_nodes :members: :undoc-members: :show-inheritance: opcua.common.methods module --------------------------- .. automodule:: opcua.common.methods :members: :undoc-members: :show-inheritance: opcua.common.node module ------------------------ .. automodule:: opcua.common.node :members: :undoc-members: :show-inheritance: opcua.common.subscription module -------------------------------- .. automodule:: opcua.common.subscription :members: :undoc-members: :show-inheritance: opcua.common.uaerrors module ---------------------------- .. automodule:: opcua.common.uaerrors :members: :undoc-members: :show-inheritance: opcua.common.utils module ------------------------- .. automodule:: opcua.common.utils :members: :undoc-members: :show-inheritance: opcua.common.xmlimporter module ------------------------------- .. automodule:: opcua.common.xmlimporter :members: :undoc-members: :show-inheritance: opcua.common.xmlparser module ----------------------------- .. automodule:: opcua.common.xmlparser :members: :undoc-members: :show-inheritance: Module contents --------------- .. automodule:: opcua.common :members: :undoc-members: :show-inheritance: python-opcua-0.98.9/docs/opcua.crypto.rst000066400000000000000000000010131357637245100203670ustar00rootroot00000000000000opcua.crypto package ==================== Submodules ---------- opcua.crypto.security_policies module ------------------------------------- .. automodule:: opcua.crypto.security_policies :members: :undoc-members: :show-inheritance: opcua.crypto.uacrypto module ---------------------------- .. automodule:: opcua.crypto.uacrypto :members: :undoc-members: :show-inheritance: Module contents --------------- .. automodule:: opcua.crypto :members: :undoc-members: :show-inheritance: python-opcua-0.98.9/docs/opcua.rst000066400000000000000000000006331357637245100170570ustar00rootroot00000000000000opcua package ============= Subpackages ----------- .. toctree:: opcua.client opcua.common opcua.crypto opcua.server opcua.ua Submodules ---------- opcua.tools module ------------------ .. automodule:: opcua.tools :members: :undoc-members: :show-inheritance: Module contents --------------- .. automodule:: opcua :members: :undoc-members: :show-inheritance: python-opcua-0.98.9/docs/opcua.server.rst000066400000000000000000000034341357637245100203660ustar00rootroot00000000000000opcua.server package ==================== Subpackages ----------- .. toctree:: opcua.server.standard_address_space Submodules ---------- opcua.server.address_space module --------------------------------- .. automodule:: opcua.server.address_space :members: :undoc-members: :show-inheritance: opcua.server.binary_server module --------------------------------- .. automodule:: opcua.server.binary_server :members: :undoc-members: :show-inheritance: opcua.server.binary_server_asyncio module ----------------------------------------- .. automodule:: opcua.server.binary_server_asyncio :members: :undoc-members: :show-inheritance: opcua.server.internal_server module ----------------------------------- .. automodule:: opcua.server.internal_server :members: :undoc-members: :show-inheritance: opcua.server.internal_subscription module ----------------------------------------- .. automodule:: opcua.server.internal_subscription :members: :undoc-members: :show-inheritance: opcua.server.server module -------------------------- .. automodule:: opcua.server.server :members: :undoc-members: :show-inheritance: opcua.server.subscription_service module ---------------------------------------- .. automodule:: opcua.server.subscription_service :members: :undoc-members: :show-inheritance: opcua.server.uaprocessor module ------------------------------- .. automodule:: opcua.server.uaprocessor :members: :undoc-members: :show-inheritance: opcua.server.users module ------------------------- .. automodule:: opcua.server.users :members: :undoc-members: :show-inheritance: Module contents --------------- .. automodule:: opcua.server :members: :undoc-members: :show-inheritance: python-opcua-0.98.9/docs/opcua.server.standard_address_space.rst000066400000000000000000000053621357637245100250470ustar00rootroot00000000000000opcua.server.standard_address_space package =========================================== Submodules ---------- opcua.server.standard_address_space.standard_address_space module ----------------------------------------------------------------- .. automodule:: opcua.server.standard_address_space.standard_address_space :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part10 module ------------------------------------------------------------------------ .. automodule:: opcua.server.standard_address_space.standard_address_space_part10 :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part11 module ------------------------------------------------------------------------ .. automodule:: opcua.server.standard_address_space.standard_address_space_part11 :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part13 module ------------------------------------------------------------------------ .. automodule:: opcua.server.standard_address_space.standard_address_space_part13 :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part3 module ----------------------------------------------------------------------- .. automodule:: opcua.server.standard_address_space.standard_address_space_part3 :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part4 module ----------------------------------------------------------------------- .. automodule:: opcua.server.standard_address_space.standard_address_space_part4 :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part5 module ----------------------------------------------------------------------- .. automodule:: opcua.server.standard_address_space.standard_address_space_part5 :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part8 module ----------------------------------------------------------------------- .. automodule:: opcua.server.standard_address_space.standard_address_space_part8 :members: :undoc-members: :show-inheritance: opcua.server.standard_address_space.standard_address_space_part9 module ----------------------------------------------------------------------- .. automodule:: opcua.server.standard_address_space.standard_address_space_part9 :members: :undoc-members: :show-inheritance: Module contents --------------- .. automodule:: opcua.server.standard_address_space :members: :undoc-members: :show-inheritance: python-opcua-0.98.9/docs/opcua.ua.rst000066400000000000000000000023721357637245100174650ustar00rootroot00000000000000opcua.ua package ================ Submodules ---------- opcua.ua.attribute_ids module ----------------------------- .. automodule:: opcua.ua.attribute_ids :members: :undoc-members: :show-inheritance: opcua.ua.extension_objects module --------------------------------- .. automodule:: opcua.ua.extension_objects :members: :undoc-members: :show-inheritance: opcua.ua.object_ids module -------------------------- .. automodule:: opcua.ua.object_ids :members: :undoc-members: :show-inheritance: opcua.ua.status_codes module ---------------------------- .. automodule:: opcua.ua.status_codes :members: :undoc-members: :show-inheritance: opcua.ua.uaprotocol_auto module ------------------------------- .. automodule:: opcua.ua.uaprotocol_auto :members: :undoc-members: :show-inheritance: opcua.ua.uaprotocol_hand module ------------------------------- .. automodule:: opcua.ua.uaprotocol_hand :members: :undoc-members: :show-inheritance: opcua.ua.uatypes module ----------------------- .. automodule:: opcua.ua.uatypes :members: :undoc-members: :show-inheritance: Module contents --------------- .. automodule:: opcua.ua :members: :undoc-members: :show-inheritance: python-opcua-0.98.9/docs/requirements.txt000066400000000000000000000000631357637245100204770ustar00rootroot00000000000000sphinx sphinxcontrib-napoleon futures cryptography python-opcua-0.98.9/docs/server.rst000066400000000000000000000006751357637245100172640ustar00rootroot00000000000000 OPC-UA Server Class ========================================= .. autoclass:: opcua.server.server.Server :members: :undoc-members: .. autoattribute: .. autoclass:: opcua.server.internal_server.InternalServer :members: :undoc-members: .. autoclass:: opcua.server.internal_server.InternalSession :members: :undoc-members: .. autoclass:: opcua.server.binary_server_asyncio.BinaryServer :members: :undoc-members: python-opcua-0.98.9/docs/subscription.rst000066400000000000000000000002311357637245100204660ustar00rootroot00000000000000 Subscription Class ========================================= .. autoclass:: opcua.common.subscription.Subscription :members: :undoc-members: python-opcua-0.98.9/examples/000077500000000000000000000000001357637245100161025ustar00rootroot00000000000000python-opcua-0.98.9/examples/certificate-example.der000066400000000000000000000015221357637245100225110ustar00rootroot000000000000000N06 $aG0  *H  0#1!0U python-opcua.example.org0 160104230823Z 250923230823Z0#1!0U python-opcua.example.org0"0  *H 0 h0{ߘ심H%L g=!.ݐ Au xk| *=Y2`v(ܔI@M3+⼸0)Ȓ**J lՋ(J彷9%SF2 Kn3Lǫ3=Bq*=/ cO+()dq*1 t)D~`Eų.u B8SޙU4zCJhT%܋hYlj00Uś8OZZ+T0U#0ś8OZZ+T0 U001U*0(&urn:example.org:FreeOpcUa:python-opcua0  *H  W-Iik'yު܌(8n O v W(^5 lm_oxJ*os]7eSݵb: ~Z1{34=(g;M(t;qCAUou~>PcޚIzϮ,va\a>qx$dJt7whpܤlO'gy!LC4夼R)s7.w]lO)^@0q yxpython-opcua-0.98.9/examples/client-events.py000066400000000000000000000031661357637245100212420ustar00rootroot00000000000000import sys sys.path.insert(0, "..") try: from IPython import embed except ImportError: import code def embed(): vars = globals() vars.update(locals()) shell = code.InteractiveConsole(vars) shell.interact() from opcua import Client class SubHandler(object): """ Subscription Handler. To receive events from server for a subscription data_change and event methods are called directly from receiving thread. Do not do expensive, slow or network operation there. Create another thread if you need to do such a thing """ def event_notification(self, event): print("New event recived: ", event) if __name__ == "__main__": client = Client("opc.tcp://localhost:4840/freeopcua/server/") # client = Client("opc.tcp://admin@localhost:4840/freeopcua/server/") #connect using a user try: client.connect() # Client has a few methods to get proxy to UA nodes that should always be in address space such as Root or Objects root = client.get_root_node() print("Objects node is: ", root) # Now getting a variable node using its browse path obj = root.get_child(["0:Objects", "2:MyObject"]) print("MyObject is: ", obj) myevent = root.get_child(["0:Types", "0:EventTypes", "0:BaseEventType", "2:MyFirstEvent"]) print("MyFirstEventType is: ", myevent) msclt = SubHandler() sub = client.create_subscription(100, msclt) handle = sub.subscribe_events(obj, myevent) embed() sub.unsubscribe(handle) sub.delete() finally: client.disconnect() python-opcua-0.98.9/examples/client-example.py000066400000000000000000000061711357637245100213700ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging import time try: from IPython import embed except ImportError: import code def embed(): vars = globals() vars.update(locals()) shell = code.InteractiveConsole(vars) shell.interact() from opcua import Client from opcua import ua class SubHandler(object): """ Subscription Handler. To receive events from server for a subscription data_change and event methods are called directly from receiving thread. Do not do expensive, slow or network operation there. Create another thread if you need to do such a thing """ def datachange_notification(self, node, val, data): print("Python: New data change event", node, val) def event_notification(self, event): print("Python: New event", event) if __name__ == "__main__": logging.basicConfig(level=logging.WARN) #logger = logging.getLogger("KeepAlive") #logger.setLevel(logging.DEBUG) client = Client("opc.tcp://localhost:4840/freeopcua/server/") # client = Client("opc.tcp://admin@localhost:4840/freeopcua/server/") #connect using a user try: client.connect() client.load_type_definitions() # load definition of server specific structures/extension objects # Client has a few methods to get proxy to UA nodes that should always be in address space such as Root or Objects root = client.get_root_node() print("Root node is: ", root) objects = client.get_objects_node() print("Objects node is: ", objects) # Node objects have methods to read and write node attributes as well as browse or populate address space print("Children of root are: ", root.get_children()) # get a specific node knowing its node id #var = client.get_node(ua.NodeId(1002, 2)) #var = client.get_node("ns=3;i=2002") #print(var) #var.get_data_value() # get value of node as a DataValue object #var.get_value() # get value of node as a python builtin #var.set_value(ua.Variant([23], ua.VariantType.Int64)) #set node value using explicit data type #var.set_value(3.9) # set node value using implicit data type # gettting our namespace idx uri = "http://examples.freeopcua.github.io" idx = client.get_namespace_index(uri) # Now getting a variable node using its browse path myvar = root.get_child(["0:Objects", "{}:MyObject".format(idx), "{}:MyVariable".format(idx)]) obj = root.get_child(["0:Objects", "{}:MyObject".format(idx)]) print("myvar is: ", myvar) # subscribing to a variable node handler = SubHandler() sub = client.create_subscription(500, handler) handle = sub.subscribe_data_change(myvar) time.sleep(0.1) # we can also subscribe to events from server sub.subscribe_events() # sub.unsubscribe(handle) # sub.delete() # calling a method on server res = obj.call_method("{}:multiply".format(idx), 3, "klk") print("method result is: ", res) embed() finally: client.disconnect() python-opcua-0.98.9/examples/client-minimal.py000066400000000000000000000030631357637245100213600ustar00rootroot00000000000000import sys sys.path.insert(0, "..") from opcua import Client if __name__ == "__main__": client = Client("opc.tcp://localhost:4840/freeopcua/server/") # client = Client("opc.tcp://admin@localhost:4840/freeopcua/server/") #connect using a user try: client.connect() # Client has a few methods to get proxy to UA nodes that should always be in address space such as Root or Objects root = client.get_root_node() print("Objects node is: ", root) # Node objects have methods to read and write node attributes as well as browse or populate address space print("Children of root are: ", root.get_children()) # get a specific node knowing its node id #var = client.get_node(ua.NodeId(1002, 2)) #var = client.get_node("ns=3;i=2002") #print(var) #var.get_data_value() # get value of node as a DataValue object #var.get_value() # get value of node as a python builtin #var.set_value(ua.Variant([23], ua.VariantType.Int64)) #set node value using explicit data type #var.set_value(3.9) # set node value using implicit data type # Now getting a variable node using its browse path myvar = root.get_child(["0:Objects", "2:MyObject", "2:MyVariable"]) obj = root.get_child(["0:Objects", "2:MyObject"]) print("myvar is: ", myvar) print("myobj is: ", obj) # Stacked myvar access # print("myvar is: ", root.get_children()[0].get_children()[1].get_variables()[0].get_value()) finally: client.disconnect() python-opcua-0.98.9/examples/client_deleting.py000066400000000000000000000015741357637245100216140ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging from opcua import Client from opcua import ua if __name__ == "__main__": logging.basicConfig(level=logging.WARN) client = Client("opc.tcp://admin@localhost:4840/freeopcua/server/") #connect using a user try: client.connect() objects = client.get_objects_node() folder = objects.add_folder("ns=2;i=3007", "2:Folder1") var = folder.add_variable("ns=2;i=3008", "2:Variable1", 3.45) # Now getting a variable node using its browse path var.set_value(9.89) # just to check it works results = client.delete_nodes([folder, var]) try: #var.set_value(9.89) # just to check it does not work var.get_browse_name() except ua.UaStatusCodeError: print("The variable has been removed OK") finally: client.disconnect() python-opcua-0.98.9/examples/client_read-custom_structures.py000066400000000000000000000014761357637245100245500ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time import logging from IPython import embed from opcua import Client from opcua import ua if __name__ == "__main__": logging.basicConfig(level=logging.WARN) client = Client("opc.tcp://opcua.demo-this.com:51210/UA/SampleServer") try: client.connect() root = client.get_root_node() objects = client.get_objects_node() struct = client.get_node("ns=2;i=10239") struct_array = client.get_node("ns=2;i=10323") before = struct.get_value() before_array = struct_array.get_value() client.load_type_definitions() # scan server for custom structures and import them after = struct.get_value() after_array = struct_array.get_value() embed() finally: client.disconnect() python-opcua-0.98.9/examples/client_to_demo-this.com.py000066400000000000000000000012501357637245100231600ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time import logging from IPython import embed from opcua import Client from opcua import ua if __name__ == "__main__": logging.basicConfig(level=logging.WARN) client = Client("opc.tcp://opcua.demo-this.com:51210/UA/SampleServer") try: client.connect() root = client.get_root_node() objects = client.get_objects_node() struct = client.get_node("ns=2;i=10239") before = struct.get_value() client.load_type_definitions() # scan server for custom structures and import them after = struct.get_value() embed() finally: client.disconnect() python-opcua-0.98.9/examples/client_to_kepware.py000066400000000000000000000032741357637245100221600ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging from opcua import Client class SubHandler(object): """ Client to subscription. It will receive events from server """ def datachange_notification(self, node, val, data): print("Python: New data change event", node, val) def event_notification(self, event): print("Python: New event", event) if __name__ == "__main__": #from IPython import embed logging.basicConfig(level=logging.WARN) client = Client("opc.tcp://192.168.56.100:49320/OPCUA/SimulationServer/") #client = Client("opc.tcp://192.168.56.100:4840/OPCUA/SimulationServer/") #client = Client("opc.tcp://olivier:olivierpass@localhost:53530/OPCUA/SimulationServer/") try: client.connect() root = client.get_root_node() print("Root is", root) print("childs of root are: ", root.get_children()) print("name of root is", root.get_browse_name()) objects = client.get_objects_node() print("childs og objects are: ", objects.get_children()) tag1 = client.get_node("ns=2;s=Channel1.Device1.Tag1") print("tag1 is: {0} with value {1} ".format(tag1, tag1.get_value())) tag2 = client.get_node("ns=2;s=Channel1.Device1.Tag2") print("tag2 is: {0} with value {1} ".format(tag2, tag2.get_value())) handler = SubHandler() sub = client.create_subscription(500, handler) handle1 = sub.subscribe_data_change(tag1) handle2 = sub.subscribe_data_change(tag2) from IPython import embed embed() sub.unsubscribe(handle1) sub.unsubscribe(handle2) sub.delete() finally: client.disconnect() python-opcua-0.98.9/examples/client_to_prosys.py000066400000000000000000000044751357637245100220650ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time import logging from opcua import Client from opcua import ua class SubHandler(object): """ Client to subscription. It will receive events from server """ def datachange_notification(self, node, val, data): print("Python: New data change event", node, val) def event_notification(self, event): print("Python: New event", event) if __name__ == "__main__": #from IPython import embed logging.basicConfig(level=logging.DEBUG) client = Client("opc.tcp://localhost:53530/OPCUA/SimulationServer/") #client = Client("opc.tcp://olivier:olivierpass@localhost:53530/OPCUA/SimulationServer/") #client.set_security_string("Basic256Sha256,SignAndEncrypt,certificate-example.der,private-key-example.pem") try: client.connect() root = client.get_root_node() print("Root is", root) print("childs of root are: ", root.get_children()) print("name of root is", root.get_browse_name()) objects = client.get_objects_node() print("childs og objects are: ", objects.get_children()) myfloat = client.get_node("ns=4;s=Float") mydouble = client.get_node("ns=4;s=Double") myint64 = client.get_node("ns=4;s=Int64") myuint64 = client.get_node("ns=4;s=UInt64") myint32 = client.get_node("ns=4;s=Int32") myuint32 = client.get_node("ns=4;s=UInt32") var = client.get_node(ua.NodeId("Random1", 5)) print("var is: ", var) print("value of var is: ", var.get_value()) var.set_value(ua.Variant([23], ua.VariantType.Double)) print("setting float value") myfloat.set_value(ua.Variant(1.234, ua.VariantType.Float)) print("reading float value: ", myfloat.get_value()) handler = SubHandler() sub = client.create_subscription(500, handler) handle = sub.subscribe_data_change(var) device = objects.get_child(["2:MyObjects", "2:MyDevice"]) method = device.get_child("2:MyMethod") result = device.call_method(method, ua.Variant("sin"), ua.Variant(180, ua.VariantType.Double)) print("Mehtod result is: ", result) #embed() time.sleep(3) sub.unsubscribe(handle) sub.delete() #client.close_session() finally: client.disconnect() python-opcua-0.98.9/examples/client_to_prosys_cert.py000066400000000000000000000011101357637245100230610ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging from IPython import embed from opcua import Client if __name__ == "__main__": logging.basicConfig(level=logging.WARN) client = Client("opc.tcp://localhost:53530/OPCUA/SimulationServer/") client.load_client_certificate("server_cert.pem") client.load_private_key("mykey.pem") try: client.connect() root = client.get_root_node() objects = client.get_objects_node() print("childs og objects are: ", objects.get_children()) embed() finally: client.disconnect() python-opcua-0.98.9/examples/client_to_prosys_crypto.py000066400000000000000000000011201357637245100234450ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging from IPython import embed from opcua import Client if __name__ == "__main__": logging.basicConfig(level=logging.DEBUG) client = Client("opc.tcp://localhost:53530/OPCUA/SimulationServer/") client.set_security_string("Basic256Sha256,Sign,certificate-example.der,private-key-example.pem") try: client.connect() root = client.get_root_node() objects = client.get_objects_node() print("childs og objects are: ", objects.get_children()) embed() finally: client.disconnect() python-opcua-0.98.9/examples/client_to_prosys_events.py000066400000000000000000000024121357637245100234360ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging from opcua import Client from opcua import ua from IPython import embed class SubHandler(object): """ Subscription Handler. To receive events from server for a subscription """ def datachange_notification(self, node, val, data): print("Python: New data change event", node, val) def event_notification(self, event): print("Python: New event", event.EventType) if __name__ == "__main__": #from IPython import embed logging.basicConfig(level=logging.WARN) client = Client("opc.tcp://localhost:53530/OPCUA/SimulationServer/") #client = Client("opc.tcp://olivier:olivierpass@localhost:53530/OPCUA/SimulationServer/") try: client.connect() root = client.get_root_node() print("Root is", root) handler = SubHandler() sub = client.create_subscription(500, handler) handle = sub.subscribe_events(evtype=2788) # refresh server condition to force generation of events cond = root.get_child(["0:Types", "0:EventTypes", "0:BaseEventType", "0:ConditionType"]) cond.call_method("0:ConditionRefresh", ua.Variant(sub.subscription_id, ua.VariantType.UInt32)) embed() finally: client.disconnect() python-opcua-0.98.9/examples/custom_nodes.xml000066400000000000000000000026671357637245100213410ustar00rootroot00000000000000 urn:freeopcua:example i=37 i=10 i=40 i=45 i=47 MyXmlObj MyXmlObj i=58 ns=1;i=2002 MyXmlVar MyXmlVar ns=1;i=2001 i=63 i=78 0.0 python-opcua-0.98.9/examples/customobject.xml000066400000000000000000000033611357637245100213300ustar00rootroot00000000000000 https://github.com/FreeOpcUa/python-opcua/customobject i=11 i=37 i=40 i=45 i=47 MyObjectType ns=1;i=6001 i=58 MyVariable i=63 i=78 ns=1;i=1002 0 python-opcua-0.98.9/examples/generate_certificate.sh000077500000000000000000000002331357637245100225730ustar00rootroot00000000000000openssl req -x509 -newkey rsa:2048 -keyout my_private_key.pem -out my_cert.pem -days 355 -nodes openssl x509 -outform der -in my_cert.pem -out my_cert.der python-opcua-0.98.9/examples/private-key-example.pem000066400000000000000000000032541357637245100225020ustar00rootroot00000000000000-----BEGIN PRIVATE KEY----- MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCfaDB7pK/fmP/I 7IusSK8lTCBnPZghqIbVLt2QHYAMoEF1CaF4F4rxo2vl1Mt8gwsq4T3osQFZMvnL YHb7KNyUoJgTjLxJQADv2u4Q3U38heAzK5Tp4ry4MCnuyJIqAPK1GiruwEq4zQrx +WzVix8otO37SuW9tzklqlNGMiAYBL0TBKHvS5XMbjP1idBMB8erMz29w/TVQnEB Kj0vCdZjrbVPKygptt5kcSrL5f4xCZwU+ufz7cp0GLwpRMJ+shG9YJJFBxb0itPF sy51vAyEtdBC7jgAU96ZVeQ06nryDq1D2EpoVMElqNyL46Jo3lnKbGquGKzXzQYU BN32/scDAgMBAAECggEBAJE/mo3PLgILo2YtQ8ekIxNVHmF0Gl7w9IrjvTdH6hmX HI3MTLjkmtI7GmG9V/0IWvCjdInGX3grnrjWGRQZ04QKIQgPQLFuBGyJjEsJm7nx MqztlS7YTyV1nX/aenSTkJO8WEpcJLnm+4YoxCaAMdAhrIdBY71OamALpv1bRysa FaiCGcemT2yqZn0GqIS8O26Tz5zIqrTN2G1eSmgh7DG+7FoddMz35cute8R10xUG hF5YU+6fcXiRQ/Kh7nlxelPGqdZFPMk7LpVHzkQKwdJ+N0P23lPDIfNsvpG1n0OP 3g5km7gHSrSU2yZ3eFl6DB9x1IFNS9BaQQuSxYJtKwECgYEA1C8jjzpXZDLvlYsV 2jlMzkrbsIrX2dzblVrNsPs2jRbjYU8mg2DUDO6lOhtxHfqZG6sO+gmWi/zvoy9l yolGbXe1Jqx66p9fznIcecSwar8+ACa356Wk74Nt1PlBOfCMqaJnYLOLaFJa29Vy u5ClZVzKd5AVXl7yFVd4XfLv/WECgYEAwFMMtFoasdF92c0d31rZ1uoPOtFz6xq6 uQggdm5zzkhnfwUAGqppS/u1CHcJ7T/74++jLbFTsaohGr4jEzWSGvJpomEUChy3 r25YofMclUhJ5pCEStsLtqiCR1Am6LlI8HMdBEP1QDgEC5q8bQW4+UHuew1E1zxz osZOhe09WuMCgYEA0G9aFCnwjUqIFjQiDFP7gi8BLqTFs4uE3Wvs4W11whV42i+B ms90nxuTjchFT3jMDOT1+mOO0wdudLRr3xEI8SIF/u6ydGaJG+j21huEXehtxIJE aDdNFcfbDbqo+3y1ATK7MMBPMvSrsoY0hdJq127WqasNgr3sO1DIuima3SECgYEA nkM5TyhekzlbIOHD1UsDu/D7+2DkzPE/+oePfyXBMl0unb3VqhvVbmuBO6gJiSx/ 8b//PdiQkMD5YPJaFrKcuoQFHVRZk0CyfzCEyzAts0K7XXpLAvZiGztriZeRjSz7 srJnjF0H8oKmAY6hw+1Tm/n/b08p+RyL48TgVSE2vhUCgYA3BWpkD4PlCcn/FZsq OrLFyFXI6jIaxskFtsRW1IxxIlAdZmxfB26P/2gx6VjLdxJI/RRPkJyEN2dP7CbR BDjb565dy1O9D6+UrY70Iuwjz+OcALRBBGTaiF2pLn6IhSzNI2sy/tXX8q8dBlg9 OFCrqT/emes3KytTPfa5NZtYeQ== -----END PRIVATE KEY----- python-opcua-0.98.9/examples/server-callback.py000066400000000000000000000054531357637245100215230ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging from datetime import datetime try: from IPython import embed except ImportError: import code def embed(): vars = globals() vars.update(locals()) shell = code.InteractiveConsole(vars) shell.interact() from opcua import ua, uamethod, Server from opcua.common.callback import CallbackType def create_monitored_items(event, dispatcher): print("Monitored Item") for idx in range(len(event.response_params)) : if (event.response_params[idx].StatusCode.is_good()) : nodeId = event.request_params.ItemsToCreate[idx].ItemToMonitor.NodeId print("Node {0} was created".format(nodeId)) def modify_monitored_items(event, dispatcher): print('modify_monitored_items') def delete_monitored_items(event, dispatcher): print('delete_monitored_items') if __name__ == "__main__": # optional: setup logging logging.basicConfig(level=logging.WARN) #logger = logging.getLogger("opcua.address_space") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.internal_server") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.binary_server_asyncio") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.uaprocessor") # logger.setLevel(logging.DEBUG) logger = logging.getLogger("opcua.subscription_service") logger.setLevel(logging.DEBUG) # now setup our server server = Server() #server.disable_clock() #server.set_endpoint("opc.tcp://localhost:4840/freeopcua/server/") server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") server.set_server_name("FreeOpcUa Example Server") # setup our own namespace uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # populating our address space myfolder = objects.add_folder(idx, "myEmptyFolder") myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 6.7) myvar.set_writable() # Set MyVariable to be writable by clients # starting! server.start() # Create Callback for item event server.subscribe_server_callback(CallbackType.ItemSubscriptionCreated, create_monitored_items) server.subscribe_server_callback(CallbackType.ItemSubscriptionModified, modify_monitored_items) server.subscribe_server_callback(CallbackType.ItemSubscriptionDeleted, delete_monitored_items) print("Available loggers are: ", logging.Logger.manager.loggerDict.keys()) try: # enable following if you want to subscribe to nodes on server side embed() finally: server.stop() python-opcua-0.98.9/examples/server-create-custom-structures.py000066400000000000000000000072111357637245100247550ustar00rootroot00000000000000from opcua import ua, Server from opcua.common.type_dictionary_buider import DataTypeDictionaryBuilder, get_ua_class from IPython import embed class DemoServer: def __init__(self): self.server = Server() self.server.set_endpoint('opc.tcp://0.0.0.0:51210/UA/SampleServer') self.server.set_server_name('Custom structure demo server') # idx name will be used later for creating the xml used in data type dictionary self._idx_name = 'http://examples.freeopcua.github.io' self.idx = self.server.register_namespace(self._idx_name) self.dict_builder = DataTypeDictionaryBuilder(self.server, self.idx, self._idx_name, 'MyDictionary') def __enter__(self): return self def __exit__(self, exc_type, exc_val, exc_tb): quit() def start_server(self): self.server.start() def create_structure(self, name): # save the created data type return self.dict_builder.create_data_type(name) def complete_creation(self): self.dict_builder.set_dict_byte_string() if __name__ == '__main__': with DemoServer() as ua_server: # add one basic structure basic_struct_name = 'basic_structure' basic_struct = ua_server.create_structure(basic_struct_name) basic_struct.add_field('ID', ua.VariantType.Int32) basic_struct.add_field('Gender', ua.VariantType.Boolean) basic_struct.add_field('Comments', ua.VariantType.String) # add an advance structure which uses our basic structure nested_struct_name = 'nested_structure' nested_struct = ua_server.create_structure(nested_struct_name) nested_struct.add_field('Name', ua.VariantType.String) nested_struct.add_field('Surname', ua.VariantType.String) # add simple structure as field nested_struct.add_field('Stuff', basic_struct) # this operation will write the OPC dict string to our new data type dictionary # namely the 'MyDictionary' ua_server.complete_creation() # get the working classes ua_server.server.load_type_definitions() # Create one test structure basic_var = ua_server.server.nodes.objects.add_variable(ua.NodeId(namespaceidx=ua_server.idx), 'BasicStruct', ua.Variant(None, ua.VariantType.Null), datatype=basic_struct.data_type) basic_var.set_writable() basic_msg = get_ua_class(basic_struct_name)() basic_msg.ID = 3 basic_msg.Gender = True basic_msg.Comments = 'Test string' basic_var.set_value(basic_msg) # Create one advance test structure nested_var = ua_server.server.nodes.objects.add_variable(ua.NodeId(namespaceidx=ua_server.idx), 'NestedStruct', ua.Variant(None, ua.VariantType.Null), datatype=nested_struct.data_type) nested_var.set_writable() nested_msg = get_ua_class(nested_struct_name)() nested_msg.Stuff = basic_msg nested_msg.Name = 'Max' nested_msg.Surname = 'Karl' nested_var.set_value(nested_msg) ua_server.start_server() # see the xml value in our customized dictionary 'MyDictionary', only for debugging use print(getattr(ua_server.dict_builder, '_type_dictionary').get_dict_value()) # values can be write back and retrieved with the codes below. basic_result = basic_var.get_value() nested_result = nested_var.get_value() embed() python-opcua-0.98.9/examples/server-custom-object.py000066400000000000000000000056641357637245100225510ustar00rootroot00000000000000''' Show 3 different examples for creating an object: 1) create a basic object 2) create a new object type and a instance of the new object type 3) import a new object from xml address space and create a instance of the new object type ''' import sys sys.path.insert(0, "..") import time from opcua import ua, Server if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # Example 1 - create a basic object #------------------------------------------------------------------------------- myobj = objects.add_object(idx, "MyObject") #------------------------------------------------------------------------------- # Example 2 - create a new object type and a instance of the new object type #------------------------------------------------------------------------------- types = server.get_node(ua.ObjectIds.BaseObjectType) object_type_to_derive_from = server.get_root_node().get_child(["0:Types", "0:ObjectTypes", "0:BaseObjectType"]) mycustomobj_type = types.add_object_type(idx, "MyCustomObjectType") mycustomobj_type.add_variable(0, "var_should_be_there_after_instantiate", 1.0) # demonstrates instantiate myobj = objects.add_object(idx, "MyCustomObjectA", mycustomobj_type.nodeid) #------------------------------------------------------------------------------- # Example 3 - import a new object from xml address space and create a instance of the new object type #------------------------------------------------------------------------------- # Import customobject type server.import_xml('customobject.xml') # get nodeid of custom object type by one of the following 3 ways: # 1) Use node ID # 2) Or Full path # 3) Or As child from parent myobject1_type_nodeid = ua.NodeId.from_string('ns=%d;i=2' % idx) myobject2_type_nodeid = server.get_root_node().get_child(["0:Types", "0:ObjectTypes", "0:BaseObjectType", "%d:MyCustomObjectType" % idx]).nodeid myobject3_type_nodeid = server.get_node(ua.ObjectIds.BaseObjectType).get_child(["%d:MyCustomObjectType" % idx]).nodeid # populating our address space myobj = objects.add_object(idx, "MyCustomObjectB", myobject3_type_nodeid) #------------------------------------------------------------------------------- # starting! server.start() try: while True: time.sleep(1) finally: # close connection, remove subcsriptions, etc server.stop() python-opcua-0.98.9/examples/server-datavalue-history.py000066400000000000000000000026301357637245100234260ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time import math from opcua import ua, Server from opcua.server.history_sql import HistorySQLite if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # populating our address space myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", ua.Variant(0, ua.VariantType.Double)) myvar.set_writable() # Set MyVariable to be writable by clients # Configure server to use sqlite as history database (default is a simple memory dict) server.iserver.history_manager.set_storage(HistorySQLite("my_datavalue_history.sql")) # starting! server.start() # enable data change history for this particular node, must be called after start since it uses subscription server.historize_node_data_change(myvar, period=None, count=100) try: count = 0 while True: time.sleep(1) count += 0.1 myvar.set_value(math.sin(count)) finally: # close connection, remove subscriptions, etc server.stop() python-opcua-0.98.9/examples/server-enum.py000066400000000000000000000055221357637245100207300ustar00rootroot00000000000000''' This example demonstrates the use of custom enums by: - Create a custom enum type - Create an object that contains a variable of this type ''' import sys sys.path.insert(0, "..") try: from IPython import embed except ImportError: import code def embed(): vars = globals() vars.update(locals()) shell = code.InteractiveConsole(vars) shell.interact() interactive = True from opcua import ua, Server from opcua.common import node from enum import IntEnum # Not required just for convenience # Because this example is based on EnumStrings, the values should start at 0 and no gaps are allowed. class MyEnum(IntEnum): ok = 0 idle = 1 # helper method to automatically create string list def enum_to_stringlist(a_enum): items = [] for value in a_enum: items.append(ua.LocalizedText(value.name)) return items if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" nsidx = server.register_namespace(uri) # -------------------------------------------------------- # create custom enum data type # -------------------------------------------------------- enums = server.get_root_node().get_child(["0:Types", "0:DataTypes", "0:BaseDataType", "0:Enumeration"]) # 1. # Create Enum Type myenum_type = enums.add_data_type(nsidx, 'MyEnum') # 2. # Add enumerations as EnumStrings (Not yet tested with EnumValues) # Essential to use namespace 0 for EnumStrings ! # By hand # es = myenum_type.add_variable(0, "EnumStrings" , [ua.LocalizedText("ok"), # ua.LocalizedText("idle")]) # Or convert the existing IntEnum MyEnum es = myenum_type.add_property(0, "EnumStrings" , enum_to_stringlist(MyEnum)) es.set_value_rank(1) es.set_array_dimensions([0]) # -------------------------------------------------------- # create object with enum variable # -------------------------------------------------------- # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # create object myobj = objects.add_object(nsidx, 'MyObjectWithEnumVar') # add var with as type the custom enumeration myenum_var = myobj.add_variable(nsidx, 'MyEnum2Var', MyEnum.ok, datatype = myenum_type.nodeid) myenum_var.set_writable() myenum_var.set_value(MyEnum.idle) # change value of enumeration server.start() try: if interactive: embed() else: while True: time.sleep(0.5) except IOError: pass finally: server.stop() print("done") python-opcua-0.98.9/examples/server-events-history.py000066400000000000000000000061551357637245100227720ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time from datetime import datetime from opcua import ua, Server from opcua.server.history_sql import HistorySQLite if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # populating our address space myobj = objects.add_object(idx, "MyObject") # Creating a custom event: Approach 1 # The custom event object automatically will have members from its parent (BaseEventType) etype = server.create_custom_event_type(2, 'MyFirstEvent', ua.ObjectIds.BaseEventType, [('MyNumericProperty', ua.VariantType.Float), ('MyStringProperty', ua.VariantType.String)]) # create second event etype2 = server.create_custom_event_type(2, 'MySecondEvent', ua.ObjectIds.BaseEventType, [('MyOtherProperty', ua.VariantType.Float)]) # get an event generator for the myobj node which generates custom events myevgen = server.get_event_generator(etype, myobj) myevgen.event.Severity = 500 myevgen.event.MyStringProperty = ua.Variant("hello world") myevgen.event.MyNumericProperty = ua.Variant(-456) # get another event generator for the myobj node which generates different custom events myevgen2 = server.get_event_generator(etype2, myobj) myevgen2.event.Severity = 123 myevgen2.event.MyOtherProperty = ua.Variant(1.337) # get an event generator for the server node which generates BaseEventType serverevgen = server.get_event_generator() serverevgen.event.Severity = 111 # Configure server to use sqlite as history database (default is a simple in memory dict) server.iserver.history_manager.set_storage(HistorySQLite("my_event_history.sql")) # starting! server.start() # enable history for myobj events; must be called after start since it uses subscription server.iserver.enable_history_event(myobj, period=None) # enable history for server events; must be called after start since it uses subscription server_node = server.get_node(ua.ObjectIds.Server) server.historize_node_event(server_node, period=None) try: count = 0 while True: time.sleep(1) count += 0.1 # generate events for subscribed clients and history myevgen.trigger(message="This is MyFirstEvent " + str(count)) myevgen2.trigger(message="This is MySecondEvent " + str(count)) serverevgen.trigger(message="Server Event Message") # read event history from sql end_time = datetime.utcnow() server_event_history = server_node.read_event_history(None, end_time, 0) finally: # close connection, remove subscriptions, etc server.stop() python-opcua-0.98.9/examples/server-events.py000066400000000000000000000045111357637245100212650ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging try: from IPython import embed except ImportError: import code def embed(): vars = globals() vars.update(locals()) shell = code.InteractiveConsole(vars) shell.interact() from opcua import ua, Server if __name__ == "__main__": logging.basicConfig(level=logging.WARN) logger = logging.getLogger("opcua.server.internal_subscription") logger.setLevel(logging.DEBUG) # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # populating our address space myobj = objects.add_object(idx, "MyObject") # Creating a custom event: Approach 1 # The custom event object automatically will have members from its parent (BaseEventType) etype = server.create_custom_event_type(idx, 'MyFirstEvent', ua.ObjectIds.BaseEventType, [('MyNumericProperty', ua.VariantType.Float), ('MyStringProperty', ua.VariantType.String)]) myevgen = server.get_event_generator(etype, myobj) # Creating a custom event: Approach 2 custom_etype = server.nodes.base_event_type.add_object_type(2, 'MySecondEvent') custom_etype.add_property(2, 'MyIntProperty', ua.Variant(0, ua.VariantType.Int32)) custom_etype.add_property(2, 'MyBoolProperty', ua.Variant(True, ua.VariantType.Boolean)) mysecondevgen = server.get_event_generator(custom_etype, myobj) # starting! server.start() try: # time.sleep is here just because we want to see events in UaExpert import time count = 0 while True: time.sleep(5) myevgen.event.Message = ua.LocalizedText("MyFirstEvent %d" % count) myevgen.event.Severity = count myevgen.event.MyNumericProperty = count myevgen.event.MyStringProperty = "Property " + str(count) myevgen.trigger() mysecondevgen.trigger(message="MySecondEvent %d" % count) count += 1 embed() finally: # close connection, remove subcsriptions, etc server.stop() python-opcua-0.98.9/examples/server-example.py000066400000000000000000000135431357637245100214210ustar00rootroot00000000000000from threading import Thread import copy import logging from datetime import datetime import time from math import sin import sys sys.path.insert(0, "..") try: from IPython import embed except ImportError: import code def embed(): myvars = globals() myvars.update(locals()) shell = code.InteractiveConsole(myvars) shell.interact() from opcua import ua, uamethod, Server class SubHandler(object): """ Subscription Handler. To receive events from server for a subscription """ def datachange_notification(self, node, val, data): print("Python: New data change event", node, val) def event_notification(self, event): print("Python: New event", event) # method to be exposed through server def func(parent, variant): ret = False if variant.Value % 2 == 0: ret = True return [ua.Variant(ret, ua.VariantType.Boolean)] # method to be exposed through server # uses a decorator to automatically convert to and from variants @uamethod def multiply(parent, x, y): print("multiply method call with parameters: ", x, y) return x * y class VarUpdater(Thread): def __init__(self, var): Thread.__init__(self) self._stopev = False self.var = var def stop(self): self._stopev = True def run(self): while not self._stopev: v = sin(time.time() / 10) self.var.set_value(v) time.sleep(0.1) if __name__ == "__main__": # optional: setup logging logging.basicConfig(level=logging.WARN) #logger = logging.getLogger("opcua.address_space") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.internal_server") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.binary_server_asyncio") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.uaprocessor") # logger.setLevel(logging.DEBUG) # now setup our server server = Server() #server.disable_clock() #server.set_endpoint("opc.tcp://localhost:4840/freeopcua/server/") server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") server.set_server_name("FreeOpcUa Example Server") # set all possible endpoint policies for clients to connect through server.set_security_policy([ ua.SecurityPolicyType.NoSecurity, ua.SecurityPolicyType.Basic256Sha256_SignAndEncrypt, ua.SecurityPolicyType.Basic256Sha256_Sign]) # setup our own namespace uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # create a new node type we can instantiate in our address space dev = server.nodes.base_object_type.add_object_type(idx, "MyDevice") dev.add_variable(idx, "sensor1", 1.0).set_modelling_rule(True) dev.add_property(idx, "device_id", "0340").set_modelling_rule(True) ctrl = dev.add_object(idx, "controller") ctrl.set_modelling_rule(True) ctrl.add_property(idx, "state", "Idle").set_modelling_rule(True) # populating our address space # First a folder to organise our nodes myfolder = server.nodes.objects.add_folder(idx, "myEmptyFolder") # instanciate one instance of our device mydevice = server.nodes.objects.add_object(idx, "Device0001", dev) mydevice_var = mydevice.get_child(["{}:controller".format(idx), "{}:state".format(idx)]) # get proxy to our device state variable # create directly some objects and variables myobj = server.nodes.objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 6.7) mysin = myobj.add_variable(idx, "MySin", 0, ua.VariantType.Float) myvar.set_writable() # Set MyVariable to be writable by clients mystringvar = myobj.add_variable(idx, "MyStringVariable", "Really nice string") mystringvar.set_writable() # Set MyVariable to be writable by clients mydtvar = myobj.add_variable(idx, "MyDateTimeVar", datetime.utcnow()) mydtvar.set_writable() # Set MyVariable to be writable by clients myarrayvar = myobj.add_variable(idx, "myarrayvar", [6.7, 7.9]) myarrayvar = myobj.add_variable(idx, "myStronglytTypedVariable", ua.Variant([], ua.VariantType.UInt32)) myprop = myobj.add_property(idx, "myproperty", "I am a property") mymethod = myobj.add_method(idx, "mymethod", func, [ua.VariantType.Int64], [ua.VariantType.Boolean]) multiply_node = myobj.add_method(idx, "multiply", multiply, [ua.VariantType.Int64, ua.VariantType.Int64], [ua.VariantType.Int64]) # import some nodes from xml server.import_xml("custom_nodes.xml") # creating a default event object # The event object automatically will have members for all events properties # you probably want to create a custom event type, see other examples myevgen = server.get_event_generator() myevgen.event.Severity = 300 # starting! server.start() print("Available loggers are: ", logging.Logger.manager.loggerDict.keys()) vup = VarUpdater(mysin) # just a stupide class update a variable vup.start() try: # enable following if you want to subscribe to nodes on server side #handler = SubHandler() #sub = server.create_subscription(500, handler) #handle = sub.subscribe_data_change(myvar) # trigger event, all subscribed clients wil receive it var = myarrayvar.get_value() # return a ref to value in db server side! not a copy! var = copy.copy(var) # WARNING: we need to copy before writting again otherwise no data change event will be generated var.append(9.3) myarrayvar.set_value(var) mydevice_var.set_value("Running") myevgen.trigger(message="This is BaseEvent") server.set_attribute_value(myvar.nodeid, ua.DataValue(9.9)) # Server side write method which is a but faster than using set_value embed() finally: vup.stop() server.stop() python-opcua-0.98.9/examples/server-instantiate-object.py000066400000000000000000000023651357637245100235550ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time from IPython import embed from opcua import ua, Server, instantiate if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # create our custom object type dev = server.nodes.base_object_type.add_object_type(0, "MyDevice") dev.add_variable(0, "sensor1", 1.0) dev.add_property(0, "device_id", "0340") ctrl = dev.add_object(0, "controller") ctrl.add_property(0, "state", "Idle") # instantiate our new object type mydevice = instantiate(server.nodes.objects, dev, bname="2:Device0001") #mydevice = server.nodes.objects.add_object(2, "Device0001", objecttype=dev) # specificying objecttype to add_object also instanciate a node type mydevice_var = mydevice.get_child(["0:controller", "0:state"]) # get proxy to our device state variable # starting! server.start() try: mydevice_var.set_value("Running") embed() finally: # close connection, remove subcsriptions, etc server.stop() python-opcua-0.98.9/examples/server-methods.py000066400000000000000000000063711357637245100214320ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import logging try: from IPython import embed except ImportError: import code def embed(): vars = globals() vars.update(locals()) shell = code.InteractiveConsole(vars) shell.interact() from opcua import ua, uamethod, Server # method to be exposed through server def func(parent, variant): ret = False if variant.Value % 2 == 0: ret = True return [ua.Variant(ret, ua.VariantType.Boolean)] # method to be exposed through server # uses a decorator to automatically convert to and from variants @uamethod def multiply(parent, x, y): print("multiply method call with parameters: ", x, y) return x * y if __name__ == "__main__": # optional: setup logging logging.basicConfig(level=logging.WARN) #logger = logging.getLogger("opcua.address_space") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.internal_server") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.binary_server_asyncio") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.uaprocessor") # logger.setLevel(logging.DEBUG) #logger = logging.getLogger("opcua.subscription_service") # logger.setLevel(logging.DEBUG) # now setup our server server = Server() #server.set_endpoint("opc.tcp://localhost:4840/freeopcua/server/") server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") server.set_server_name("FreeOpcUa Example Server") # setup our own namespace uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # populating our address space myfolder = objects.add_folder(idx, "myEmptyFolder") myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 6.7) myvar.set_writable() # Set MyVariable to be writable by clients myarrayvar = myobj.add_variable(idx, "myarrayvar", [6.7, 7.9]) myarrayvar = myobj.add_variable(idx, "myStronglytTypedVariable", ua.Variant([], ua.VariantType.UInt32)) myprop = myobj.add_property(idx, "myproperty", "I am a property") mymethod = myobj.add_method(idx, "mymethod", func, [ua.VariantType.Int64], [ua.VariantType.Boolean]) inargx = ua.Argument() inargx.Name = "x" inargx.DataType = ua.NodeId(ua.ObjectIds.Int64) inargx.ValueRank = -1 inargx.ArrayDimensions = [] inargx.Description = ua.LocalizedText("First number x") inargy = ua.Argument() inargy.Name = "y" inargy.DataType = ua.NodeId(ua.ObjectIds.Int64) inargy.ValueRank = -1 inargy.ArrayDimensions = [] inargy.Description = ua.LocalizedText("Second number y") outarg = ua.Argument() outarg.Name = "Result" outarg.DataType = ua.NodeId(ua.ObjectIds.Int64) outarg.ValueRank = -1 outarg.ArrayDimensions = [] outarg.Description = ua.LocalizedText("Multiplication result") multiply_node = myobj.add_method(idx, "multiply", multiply, [inargx, inargy], [outarg]) # starting! server.start() print("Available loggers are: ", logging.Logger.manager.loggerDict.keys()) try: embed() finally: server.stop() python-opcua-0.98.9/examples/server-minimal.py000066400000000000000000000016761357637245100214200ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time from opcua import ua, Server if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our nodes objects = server.get_objects_node() # populating our address space myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 6.7) myvar.set_writable() # Set MyVariable to be writable by clients # starting! server.start() try: count = 0 while True: time.sleep(1) count += 0.1 myvar.set_value(count) finally: #close connection, remove subcsriptions, etc server.stop() python-opcua-0.98.9/examples/server-ua-python-mirror.py000066400000000000000000000136351357637245100232240ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time from opcua import ua, Server # INFO: The concept in this example is that the software model is first built in OPC UA via XML. After that, matching # python objects are created based on the UA address space design. Do not use this example to build a UA address space # from the python design. # The advantage of this is that the software can be designed in a tool like UA Modeler. Then with minimal setup, a # python program will import the XML and mirror all the objects in the software design. After this mirroring is achieved # the user can focus on programming in python knowing that all all data from UA clients will reach the python object, # and all data that needs to be output to the server can be published from the python object. # # Be aware that subscription calls are asynchronous. class SubHandler(object): """ Subscription Handler. To receive events from server for a subscription. The handler forwards updates to it's referenced python object """ def __init__(self, obj): self.obj = obj def datachange_notification(self, node, val, data): # print("Python: New data change event", node, val, data) _node_name = node.get_browse_name() setattr(self.obj, _node_name.Name, data.monitored_item.Value.Value.Value) class UaObject(object): """ Python object which mirrors an OPC UA object Child UA variables/properties are auto subscribed to to synchronize python with UA server Python can write to children via write method, which will trigger an update for UA clients """ def __init__(self, opcua_server, ua_node): self.opcua_server = opcua_server self.nodes = {} self.b_name = ua_node.get_browse_name().Name # keep track of the children of this object (in case python needs to write, or get more info from UA server) for _child in ua_node.get_children(): _child_name = _child.get_browse_name() self.nodes[_child_name.Name] = _child # find all children which can be subscribed to (python object is kept up to date via subscription) sub_children = ua_node.get_properties() sub_children.extend(ua_node.get_variables()) # subscribe to properties/variables handler = SubHandler(self) sub = opcua_server.create_subscription(500, handler) handle = sub.subscribe_data_change(sub_children) def write(self, attr=None): # if a specific attr isn't passed to write, write all OPC UA children if attr is None: for k, node in self.nodes.items(): node_class = node.get_node_class() if node_class == ua.NodeClass.Variable: node.set_value(getattr(self, k)) # only update a specific attr else: self.nodes[attr].set_value(getattr(self, attr)) class MyObj(UaObject): """ Definition of OPC UA object which represents a object to be mirrored in python This class mirrors it's UA counterpart and semi-configures itself according to the UA model (generally from XML) """ def __init__(self, opcua_server, ua_node): # properties and variables; must mirror UA model (based on browsename!) self.MyVariable = 0 self.MyProperty = 0 self.MyClientWrite = 0 # init the UaObject super class to connect the python object to the UA object super().__init__(opcua_server, ua_node) # local values only for use inside python self.testval = 'python only' # If the object has other objects as children it is best to search by type and instantiate more # mirrored python classes so that your UA object tree matches your python object tree # ADD CUSTOM OBJECT INITIALIZATION BELOW # find children by type and instantiate them as sub-objects of this class # NOT PART OF THIS EXAMPLE if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our nodes objects = server.get_objects_node() # populating our address space; in most real use cases this should be imported from UA spec XML myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 0.0) myprop = myobj.add_property(idx, "MyProperty", 0) mywritevar = myobj.add_variable(idx, "MyClientWrite", 0) mywritevar.set_writable() # Set MyVariable to be writable by clients # starting! server.start() # after the UA server is started initialize the mirrored object my_python_obj = MyObj(server, myobj) try: while True: # from an OPC UA client write a value to this node to see it show up in the python object print('Python mirror of MyClientWrite is: ' + str(my_python_obj.MyClientWrite)) # write a single attr to OPC UA my_python_obj.MyVariable = 12.3 my_python_obj.MyProperty = 55 # this value will not be visible to clients because write is not called my_python_obj.write('MyVariable') time.sleep(3) # write all attr of the object to OPC UA my_python_obj.MyVariable = 98.1 my_python_obj.MyProperty = 99 my_python_obj.write() time.sleep(3) # write directly to the OPC UA node of the object dv = ua.DataValue(ua.Variant(5.5, ua.VariantType.Double)) my_python_obj.nodes['MyVariable'].set_value(dv) dv = ua.DataValue(ua.Variant(4, ua.VariantType.UInt64)) my_python_obj.nodes['MyVariable'].set_value(dv) time.sleep(3) finally: # close connection, remove subscriptions, etc server.stop() python-opcua-0.98.9/examples/server-with-encryption.py000066400000000000000000000022301357637245100231200ustar00rootroot00000000000000import sys import time sys.path.insert(0, "..") from opcua import ua, Server if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # load server certificate and private key. This enables endpoints # with signing and encryption. server.load_certificate("certificate-example.der") server.load_private_key("private-key-example.pem") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our custom stuff objects = server.get_objects_node() # populating our address space myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 6.7) myvar.set_writable() # Set MyVariable to be writable by clients # starting! server.start() try: count = 0 while True: time.sleep(1) count += 0.1 myvar.set_value(count) finally: #close connection, remove subcsriptions, etc server.stop() python-opcua-0.98.9/examples/server-xmlexporter.py000066400000000000000000000023121357637245100223470ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time from collections import OrderedDict from opcua import ua, Server, instantiate from opcua.common.xmlexporter import XmlExporter if __name__ == "__main__": # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our nodes objects = server.get_objects_node() # populating our address space myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 6.7) myvar.set_writable() # Set MyVariable to be writable by clients dev = server.nodes.base_object_type.add_object_type(0, "MyDevice") dev.add_variable(0, "sensor1", 1.0) mydevice = instantiate(server.nodes.objects, dev, bname="2:Device0001") node_list = [dev, mydevice[0], myobj, myvar] # starting! server.start() exporter = XmlExporter(server) exporter.build_etree(node_list, ['http://myua.org/test/']) exporter.write_xml('ua-export.xml') server.stop() python-opcua-0.98.9/examples/simple-client-server-xml/000077500000000000000000000000001357637245100227515ustar00rootroot00000000000000python-opcua-0.98.9/examples/simple-client-server-xml/client_minimal.py000066400000000000000000000020221357637245100263030ustar00rootroot00000000000000from opcua import Client, ua from opcua.ua import ua_binary as uabin from opcua.common.methods import call_method class HelloClient: def __init__(self, endpoint): self.client = Client(endpoint) def __enter__(self): self.client.connect() return self.client def __exit__(self, exc_type, exc_val, exc_tb): self.client.disconnect() if __name__ == '__main__': with HelloClient("opc.tcp://localhost:40840/freeopcua/server/") as client: root = client.get_root_node() print("Root node is: ", root) objects = client.get_objects_node() print("Objects node is: ", objects) hellower = objects.get_child("0:Hellower") print("Hellower is: ", hellower) resulting_text = hellower.call_method("0:SayHello", False) print(resulting_text) resulting_text = hellower.call_method("1:SayHello2", True) print(resulting_text) resulting_array = hellower.call_method("1:SayHelloArray", False) print(resulting_array) python-opcua-0.98.9/examples/simple-client-server-xml/server.py000066400000000000000000000042261357637245100246350ustar00rootroot00000000000000import os.path try: from IPython import embed except ImportError: import code def embed(): vars = globals() vars.update(locals()) shell = code.InteractiveConsole(vars) shell.interact() from opcua import ua, uamethod, Server @uamethod def say_hello_xml(parent, happy): print("Calling say_hello_xml") if happy: result = "I'm happy" else: result = "I'm not happy" print(result) return result @uamethod def say_hello(parent, happy): if happy: result = "I'm happy" else: result = "I'm not happy" print(result) return result @uamethod def say_hello_array(parent, happy): if happy: result = "I'm happy" else: result = "I'm not happy" print(result) return [result, "Actually I am"] class HelloServer: def __init__(self, endpoint, name, model_filepath): self.server = Server() # This need to be imported at the start or else it will overwrite the data self.server.import_xml(model_filepath) self.server.set_endpoint(endpoint) self.server.set_server_name(name) objects = self.server.get_objects_node() freeopcua_namespace = self.server.get_namespace_index("urn:freeopcua:python:server") hellower = objects.get_child("0:Hellower") hellower_say_hello = hellower.get_child("0:SayHello") self.server.link_method(hellower_say_hello, say_hello_xml) hellower.add_method( freeopcua_namespace, "SayHello2", say_hello, [ua.VariantType.Boolean], [ua.VariantType.String]) hellower.add_method( freeopcua_namespace, "SayHelloArray", say_hello_array, [ua.VariantType.Boolean], [ua.VariantType.String]) def __enter__(self): self.server.start() return self.server def __exit__(self, exc_type, exc_val, exc_tb): self.server.stop() if __name__ == '__main__': script_dir = os.path.dirname(__file__) with HelloServer( "opc.tcp://0.0.0.0:40840/freeopcua/server/", "FreeOpcUa Example Server", os.path.join(script_dir, "test_saying.xml")) as server: embed() python-opcua-0.98.9/examples/simple-client-server-xml/test_saying.xml000066400000000000000000000071341357637245100260310ustar00rootroot00000000000000 i=35 i=40 i=46 i=47 i=296 BaseObjectType The base type for all object nodes. i=85 i=58 i=20002 SayHello SayHello i=20001 i=20003 i=20004 InputArguments InputArguments i=296 -1 i=1 happy i=20002 i=68 OutputArguments OutputArguments i=296 -1 i=12 saying i=20002 i=68 python-opcua-0.98.9/examples/test_perf.py000066400000000000000000000014661357637245100204560ustar00rootroot00000000000000import sys sys.path.insert(0, "..") import time from opcua import ua, Server import cProfile import re def mymain(): # setup our server server = Server() server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") # setup our own namespace, not really necessary but should as spec uri = "http://examples.freeopcua.github.io" idx = server.register_namespace(uri) # get Objects node, this is where we should put our nodes objects = server.get_objects_node() # populating our address space myobj = objects.add_object(idx, "MyObject") myvar = myobj.add_variable(idx, "MyVariable", 6.7) myvar.set_writable() # Set MyVariable to be writable by clients # starting! server.start() server.stop() if __name__ == "__main__": cProfile.run('mymain()') python-opcua-0.98.9/make_deb.sh000077500000000000000000000004141357637245100163510ustar00rootroot00000000000000#! /bin/sh # # This script generates a .deb file for generating a debian package of python-opcua # You need to install python-stdeb to use it. # Usage : ./make_deb.sh # The package is generate in ./deb_dist # python setup.py --command-packages=stdeb.command bdist_deb python-opcua-0.98.9/opcua/000077500000000000000000000000001357637245100153735ustar00rootroot00000000000000python-opcua-0.98.9/opcua/__init__.py000066400000000000000000000006141357637245100175050ustar00rootroot00000000000000""" Pure Python OPC-UA library """ from opcua.common.node import Node from opcua.common.methods import uamethod from opcua.common.subscription import Subscription from opcua.client.client import Client from opcua.server.server import Server from opcua.server.event_generator import EventGenerator from opcua.common.instantiate import instantiate from opcua.common.copy_node import copy_node python-opcua-0.98.9/opcua/client/000077500000000000000000000000001357637245100166515ustar00rootroot00000000000000python-opcua-0.98.9/opcua/client/__init__.py000066400000000000000000000000001357637245100207500ustar00rootroot00000000000000python-opcua-0.98.9/opcua/client/client.py000066400000000000000000000572361357637245100205160ustar00rootroot00000000000000from __future__ import division # support for python2 from threading import Thread, Condition import concurrent.futures import logging try: from urllib.parse import urlparse except ImportError: # support for python2 from urlparse import urlparse from opcua import ua from opcua.client.ua_client import UaClient from opcua.common.xmlimporter import XmlImporter from opcua.common.xmlexporter import XmlExporter from opcua.common.node import Node from opcua.common.manage_nodes import delete_nodes from opcua.common.subscription import Subscription from opcua.common import utils from opcua.common import ua_utils from opcua.crypto import security_policies from opcua.common.shortcuts import Shortcuts from opcua.common.structures import load_type_definitions, load_enums use_crypto = True try: from opcua.crypto import uacrypto except ImportError: logging.getLogger(__name__).warning("cryptography is not installed, use of crypto disabled") use_crypto = False class KeepAlive(Thread): """ Used by Client to keep the session open. OPCUA defines timeout both for sessions and secure channel """ def __init__(self, client, timeout): """ :param session_timeout: Timeout to re-new the session in milliseconds. """ Thread.__init__(self) self.logger = logging.getLogger(__name__) self.client = client self._dostop = False self._cond = Condition() self.timeout = timeout # some server support no timeout, but we do not trust them if self.timeout == 0: self.timeout = 3600000 # 1 hour def run(self): self.logger.debug("starting keepalive thread with period of %s milliseconds", self.timeout) server_state = self.client.get_node(ua.FourByteNodeId(ua.ObjectIds.Server_ServerStatus_State)) while not self._dostop: with self._cond: self._cond.wait(self.timeout / 1000) if self._dostop: break self.logger.debug("renewing channel") try: self.client.open_secure_channel(renew=True) except concurrent.futures.TimeoutError: self.logger.debug("keepalive failed: timeout on open_secure_channel()") break val = server_state.get_value() self.logger.debug("server state is: %s ", val) self.logger.debug("keepalive thread has stopped") def stop(self): self.logger.debug("stoping keepalive thread") self._dostop = True with self._cond: self._cond.notify_all() class Client(object): """ High level client to connect to an OPC-UA server. This class makes it easy to connect and browse address space. It attempts to expose as much functionality as possible but if you want more flexibility it is possible and advised to use the UaClient object, available as self.uaclient, which offers the raw OPC-UA services interface. """ def __init__(self, url, timeout=4): """ :param url: url of the server. if you are unsure of url, write at least hostname and port and call get_endpoints :param timeout: Each request sent to the server expects an answer within this time. The timeout is specified in seconds. """ self.logger = logging.getLogger(__name__) self.server_url = urlparse(url) # take initial username and password from the url self._username = self.server_url.username self._password = self.server_url.password self.name = "Pure Python Client" self.description = self.name self.application_uri = "urn:freeopcua:client" self.product_uri = "urn:freeopcua.github.io:client" self.security_policy = ua.SecurityPolicy() self.secure_channel_id = None self.secure_channel_timeout = 3600000 # 1 hour self.session_timeout = 3600000 # 1 hour self._policy_ids = [] self.uaclient = UaClient(timeout) self.user_certificate = None self.user_private_key = None self._server_nonce = None self._session_counter = 1 self.keepalive = None self.nodes = Shortcuts(self.uaclient) self.max_messagesize = 0 # No limits self.max_chunkcount = 0 # No limits def __enter__(self): self.connect() return self def __exit__(self, exc_type, exc_value, traceback): self.disconnect() @staticmethod def find_endpoint(endpoints, security_mode, policy_uri): """ Find endpoint with required security mode and policy URI """ for ep in endpoints: if (ep.EndpointUrl.startswith(ua.OPC_TCP_SCHEME) and ep.SecurityMode == security_mode and ep.SecurityPolicyUri == policy_uri): return ep raise ua.UaError("No matching endpoints: {0}, {1}".format(security_mode, policy_uri)) def set_user(self, username): """ Set user name for the connection. initial user from the URL will be overwritten """ self._username = username def set_password(self, pwd): """ Set user password for the connection. initial password from the URL will be overwritten """ self._password = pwd def set_security_string(self, string): """ Set SecureConnection mode. String format: Policy,Mode,certificate,private_key[,server_private_key] where Policy is Basic128Rsa15, Basic256 or Basic256Sha256, Mode is Sign or SignAndEncrypt certificate, private_key and server_private_key are paths to .pem or .der files Call this before connect() """ if not string: return parts = string.split(',') if len(parts) < 4: raise ua.UaError('Wrong format: `{0}`, expected at least 4 comma-separated values'.format(string)) policy_class = getattr(security_policies, 'SecurityPolicy' + parts[0]) mode = getattr(ua.MessageSecurityMode, parts[1]) return self.set_security(policy_class, parts[2], parts[3], parts[4] if len(parts) >= 5 else None, mode) def set_security(self, policy, certificate_path, private_key_path, server_certificate_path=None, mode=ua.MessageSecurityMode.SignAndEncrypt): """ Set SecureConnection mode. Call this before connect() """ if server_certificate_path is None: # load certificate from server's list of endpoints endpoints = self.connect_and_get_server_endpoints() endpoint = Client.find_endpoint(endpoints, mode, policy.URI) server_cert = uacrypto.x509_from_der(endpoint.ServerCertificate) else: server_cert = uacrypto.load_certificate(server_certificate_path) cert = uacrypto.load_certificate(certificate_path) pk = uacrypto.load_private_key(private_key_path) self.security_policy = policy(server_cert, cert, pk, mode) self.uaclient.set_security(self.security_policy) def load_client_certificate(self, path): """ load our certificate from file, either pem or der """ self.user_certificate = uacrypto.load_certificate(path) def load_private_key(self, path): """ Load user private key. This is used for authenticating using certificate """ self.user_private_key = uacrypto.load_private_key(path) def connect_and_get_server_endpoints(self): """ Connect, ask server for endpoints, and disconnect """ self.connect_socket() try: self.send_hello() self.open_secure_channel() endpoints = self.get_endpoints() self.close_secure_channel() finally: self.disconnect_socket() return endpoints def connect_and_find_servers(self): """ Connect, ask server for a list of known servers, and disconnect """ self.connect_socket() try: self.send_hello() self.open_secure_channel() # spec says it should not be necessary to open channel servers = self.find_servers() self.close_secure_channel() finally: self.disconnect_socket() return servers def connect_and_find_servers_on_network(self): """ Connect, ask server for a list of known servers on network, and disconnect """ self.connect_socket() try: self.send_hello() self.open_secure_channel() servers = self.find_servers_on_network() self.close_secure_channel() finally: self.disconnect_socket() return servers def connect(self): """ High level method Connect, create and activate session """ self.connect_socket() try: self.send_hello() self.open_secure_channel() self.create_session() except Exception: self.disconnect_socket() # clean up open socket raise self.activate_session(username=self._username, password=self._password, certificate=self.user_certificate) def disconnect(self): """ High level method Close session, secure channel and socket """ try: self.close_session() self.close_secure_channel() finally: self.disconnect_socket() def connect_socket(self): """ connect to socket defined in url """ self.uaclient.connect_socket(self.server_url.hostname, self.server_url.port) def disconnect_socket(self): self.uaclient.disconnect_socket() def send_hello(self): """ Send OPC-UA hello to server """ ack = self.uaclient.send_hello(self.server_url.geturl(), self.max_messagesize, self.max_chunkcount) # TODO: Handle ua.UaError if isinstance(ack, ua.UaStatusCodeError): raise ack def open_secure_channel(self, renew=False): """ Open secure channel, if renew is True, renew channel """ params = ua.OpenSecureChannelParameters() params.ClientProtocolVersion = 0 params.RequestType = ua.SecurityTokenRequestType.Issue if renew: params.RequestType = ua.SecurityTokenRequestType.Renew params.SecurityMode = self.security_policy.Mode params.RequestedLifetime = self.secure_channel_timeout # length should be equal to the length of key of symmetric encryption params.ClientNonce = utils.create_nonce(self.security_policy.symmetric_key_size) # this nonce is used to create a symmetric key result = self.uaclient.open_secure_channel(params) self.secure_channel_timeout = result.SecurityToken.RevisedLifetime def close_secure_channel(self): return self.uaclient.close_secure_channel() def get_endpoints(self): params = ua.GetEndpointsParameters() params.EndpointUrl = self.server_url.geturl() return self.uaclient.get_endpoints(params) def find_servers(self, uris=None): """ send a FindServer request to the server. The answer should be a list of servers the server knows about A list of uris can be provided, only server having matching uris will be returned """ if uris is None: uris = [] params = ua.FindServersParameters() params.EndpointUrl = self.server_url.geturl() params.ServerUris = uris return self.uaclient.find_servers(params) def find_servers_on_network(self): params = ua.FindServersOnNetworkParameters() return self.uaclient.find_servers_on_network(params) def create_session(self): """ send a CreateSessionRequest to server with reasonable parameters. If you want o modify settings look at code of this methods and make your own """ desc = ua.ApplicationDescription() desc.ApplicationUri = self.application_uri desc.ProductUri = self.product_uri desc.ApplicationName = ua.LocalizedText(self.name) desc.ApplicationType = ua.ApplicationType.Client params = ua.CreateSessionParameters() # at least 32 random bytes for server to prove possession of private key (specs part 4, 5.6.2.2) nonce = utils.create_nonce(32) params.ClientNonce = nonce params.ClientCertificate = self.security_policy.client_certificate params.ClientDescription = desc params.EndpointUrl = self.server_url.geturl() params.SessionName = self.description + " Session" + str(self._session_counter) params.RequestedSessionTimeout = 3600000 params.MaxResponseMessageSize = 0 # means no max size response = self.uaclient.create_session(params) if self.security_policy.client_certificate is None: data = nonce else: data = self.security_policy.client_certificate + nonce self.security_policy.asymmetric_cryptography.verify(data, response.ServerSignature.Signature) self._server_nonce = response.ServerNonce if not self.security_policy.server_certificate: self.security_policy.server_certificate = response.ServerCertificate elif self.security_policy.server_certificate != response.ServerCertificate: raise ua.UaError("Server certificate mismatch") # remember PolicyId's: we will use them in activate_session() ep = Client.find_endpoint(response.ServerEndpoints, self.security_policy.Mode, self.security_policy.URI) self._policy_ids = ep.UserIdentityTokens self.session_timeout = response.RevisedSessionTimeout self.keepalive = KeepAlive( self, min(self.session_timeout, self.secure_channel_timeout) * 0.7) # 0.7 is from spec self.keepalive.start() return response def server_policy_id(self, token_type, default): """ Find PolicyId of server's UserTokenPolicy by token_type. Return default if there's no matching UserTokenPolicy. """ for policy in self._policy_ids: if policy.TokenType == token_type: return policy.PolicyId return default def server_policy_uri(self, token_type): """ Find SecurityPolicyUri of server's UserTokenPolicy by token_type. If SecurityPolicyUri is empty, use default SecurityPolicyUri of the endpoint """ for policy in self._policy_ids: if policy.TokenType == token_type: if policy.SecurityPolicyUri: return policy.SecurityPolicyUri else: # empty URI means "use this endpoint's policy URI" return self.security_policy.URI return self.security_policy.URI def activate_session(self, username=None, password=None, certificate=None): """ Activate session using either username and password or private_key """ params = ua.ActivateSessionParameters() challenge = b"" if self.security_policy.server_certificate is not None: challenge += self.security_policy.server_certificate if self._server_nonce is not None: challenge += self._server_nonce params.ClientSignature.Algorithm = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" params.ClientSignature.Signature = self.security_policy.asymmetric_cryptography.signature(challenge) params.LocaleIds.append("en") if not username and not certificate: self._add_anonymous_auth(params) elif certificate: self._add_certificate_auth(params, certificate, challenge) else: self._add_user_auth(params, username, password) return self.uaclient.activate_session(params) def _add_anonymous_auth(self, params): params.UserIdentityToken = ua.AnonymousIdentityToken() params.UserIdentityToken.PolicyId = self.server_policy_id(ua.UserTokenType.Anonymous, "anonymous") def _add_certificate_auth(self, params, certificate, challenge): params.UserIdentityToken = ua.X509IdentityToken() params.UserIdentityToken.PolicyId = self.server_policy_id(ua.UserTokenType.Certificate, "certificate_basic256") params.UserIdentityToken.CertificateData = uacrypto.der_from_x509(certificate) # specs part 4, 5.6.3.1: the data to sign is created by appending # the last serverNonce to the serverCertificate sig = uacrypto.sign_sha1(self.user_private_key, challenge) params.UserTokenSignature = ua.SignatureData() params.UserTokenSignature.Algorithm = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" params.UserTokenSignature.Signature = sig def _add_user_auth(self, params, username, password): params.UserIdentityToken = ua.UserNameIdentityToken() params.UserIdentityToken.UserName = username policy_uri = self.server_policy_uri(ua.UserTokenType.UserName) if not policy_uri or policy_uri == security_policies.POLICY_NONE_URI: # see specs part 4, 7.36.3: if the token is NOT encrypted, # then the password only contains UTF-8 encoded password # and EncryptionAlgorithm is null if self._password: self.logger.warning("Sending plain-text password") params.UserIdentityToken.Password = password.encode('utf8') params.UserIdentityToken.EncryptionAlgorithm = None elif self._password: data, uri = self._encrypt_password(password, policy_uri) params.UserIdentityToken.Password = data params.UserIdentityToken.EncryptionAlgorithm = uri params.UserIdentityToken.PolicyId = self.server_policy_id(ua.UserTokenType.UserName, "username_basic256") def _encrypt_password(self, password, policy_uri): pubkey = uacrypto.x509_from_der(self.security_policy.server_certificate).public_key() # see specs part 4, 7.36.3: if the token is encrypted, password # shall be converted to UTF-8 and serialized with server nonce passwd = password.encode("utf8") if self._server_nonce is not None: passwd += self._server_nonce etoken = ua.ua_binary.Primitives.Bytes.pack(passwd) data, uri = security_policies.encrypt_asymmetric(pubkey, etoken, policy_uri) return data, uri def close_session(self): """ Close session """ if self.keepalive and self.keepalive.is_alive(): self.keepalive.stop() self.keepalive.join() return self.uaclient.close_session(True) def get_root_node(self): return self.get_node(ua.TwoByteNodeId(ua.ObjectIds.RootFolder)) def get_objects_node(self): return self.get_node(ua.TwoByteNodeId(ua.ObjectIds.ObjectsFolder)) def get_server_node(self): return self.get_node(ua.FourByteNodeId(ua.ObjectIds.Server)) def get_node(self, nodeid): """ Get node using NodeId object or a string representing a NodeId """ return Node(self.uaclient, nodeid) def create_subscription(self, period, handler): """ Create a subscription. returns a Subscription object which allow to subscribe to events or data on server handler argument is a class with data_change and/or event methods. period argument is either a publishing interval in milliseconds or a CreateSubscriptionParameters instance. The second option should be used, if the opcua-server has problems with the default options. These methods will be called when notfication from server are received. See example-client.py. Do not do expensive/slow or network operation from these methods since they are called directly from receiving thread. This is a design choice, start another thread if you need to do such a thing. """ if isinstance(period, ua.CreateSubscriptionParameters): return Subscription(self.uaclient, period, handler) params = ua.CreateSubscriptionParameters() params.RequestedPublishingInterval = period params.RequestedLifetimeCount = 10000 params.RequestedMaxKeepAliveCount = 3000 params.MaxNotificationsPerPublish = 10000 params.PublishingEnabled = True params.Priority = 0 return Subscription(self.uaclient, params, handler) def get_namespace_array(self): ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) return ns_node.get_value() def get_namespace_index(self, uri): uries = self.get_namespace_array() return uries.index(uri) def delete_nodes(self, nodes, recursive=False): return delete_nodes(self.uaclient, nodes, recursive) def import_xml(self, path=None, xmlstring=None): """ Import nodes defined in xml """ importer = XmlImporter(self) return importer.import_xml(path, xmlstring) def export_xml(self, nodes, path): """ Export defined nodes to xml """ exp = XmlExporter(self) exp.build_etree(nodes) return exp.write_xml(path) def register_namespace(self, uri): """ Register a new namespace. Nodes should in custom namespace, not 0. This method is mainly implemented for symetry with server """ ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) uries = ns_node.get_value() if uri in uries: return uries.index(uri) uries.append(uri) ns_node.set_value(uries) return len(uries) - 1 def load_type_definitions(self, nodes=None): """ Load custom types (custom structures/extension objects) definition from server Generate Python classes for custom structures/extension objects defined in server These classes will available in ua module """ return load_type_definitions(self, nodes) def load_enums(self): """ generate Python enums for custom enums on server. This enums will be available in ua module """ return load_enums(self) def register_nodes(self, nodes): """ Register nodes for faster read and write access (if supported by server) Rmw: This call modifies the nodeid of the nodes, the original nodeid is available as node.basenodeid """ nodeids = [node.nodeid for node in nodes] nodeids = self.uaclient.register_nodes(nodeids) for node, nodeid in zip(nodes, nodeids): node.basenodeid = node.nodeid node.nodeid = nodeid return nodes def unregister_nodes(self, nodes): """ Unregister nodes """ nodeids = [node.nodeid for node in nodes] self.uaclient.unregister_nodes(nodeids) for node in nodes: node.nodeid = node.basenodeid node.basenodeid = None def get_values(self, nodes): """ Read the value of multiple nodes in one roundtrip. """ nodes = [node.nodeid for node in nodes] results = self.uaclient.get_attributes(nodes, ua.AttributeIds.Value) return [result.Value.Value for result in results] def set_values(self, nodes, values): """ Write values to multiple nodes in one ua call """ nodeids = [node.nodeid for node in nodes] dvs = [ua_utils.value_to_datavalue(val) for val in values] results = self.uaclient.set_attributes(nodeids, dvs, ua.AttributeIds.Value) for result in results: result.check() python-opcua-0.98.9/opcua/client/ua_client.py000066400000000000000000000664531357637245100212040ustar00rootroot00000000000000""" Low level binary client """ import logging import socket import errno from threading import Thread, Lock from concurrent.futures import Future, CancelledError from functools import partial from opcua import ua from opcua.ua.ua_binary import struct_from_binary, uatcp_to_binary, struct_to_binary, nodeid_from_binary from opcua.ua.uaerrors import UaError, BadTimeout, BadNoSubscription, BadSessionClosed from opcua.common.connection import SecureConnection class UASocketClient(object): """ handle socket connection and send ua messages timeout is the timeout used while waiting for an ua answer from server """ def __init__(self, timeout=1, security_policy=ua.SecurityPolicy()): self.logger = logging.getLogger(__name__ + ".Socket") self._thread = None self._lock = Lock() self.timeout = timeout self._socket = None self._do_stop = False self.authentication_token = ua.NodeId() self._request_id = 0 self._request_handle = 0 self._callbackmap = {} self._connection = SecureConnection(security_policy) def start(self): """ Start receiving thread. this is called automatically in connect and should not be necessary to call directly """ self._thread = Thread(target=self._run) self._thread.start() def _send_request(self, request, callback=None, timeout=1000, message_type=ua.MessageType.SecureMessage): """ send request to server, lower-level method timeout is the timeout written in ua header returns future """ with self._lock: request.RequestHeader = self._create_request_header(timeout) self.logger.debug("Sending: %s", request) try: binreq = struct_to_binary(request) except Exception: # reset reqeust handle if any error # see self._create_request_header self._request_handle -= 1 raise self._request_id += 1 future = Future() if callback: future.add_done_callback(callback) self._callbackmap[self._request_id] = future # Change to the new security token if the connection has been renewed. if self._connection.next_security_token.TokenId != 0: self._connection.revolve_tokens() msg = self._connection.message_to_binary(binreq, message_type=message_type, request_id=self._request_id) self._socket.write(msg) return future def send_request(self, request, callback=None, timeout=1000, message_type=ua.MessageType.SecureMessage): """ send request to server. timeout is the timeout written in ua header returns response object if no callback is provided """ future = self._send_request(request, callback, timeout, message_type) if not callback: data = future.result(self.timeout) self.check_answer(data, " in response to " + request.__class__.__name__) return data def check_answer(self, data, context): data = data.copy() typeid = nodeid_from_binary(data) if typeid == ua.FourByteNodeId(ua.ObjectIds.ServiceFault_Encoding_DefaultBinary): self.logger.warning("ServiceFault from server received %s", context) hdr = struct_from_binary(ua.ResponseHeader, data) hdr.ServiceResult.check() return False return True def _run(self): self.logger.info("Thread started") while not self._do_stop: try: self._receive() except ua.utils.SocketClosedException: self.logger.info("Socket has closed connection") self._connection.close() break except UaError: self.logger.exception("Protocol Error") self._cancel_all_callbacks() self.logger.info("Thread ended") def _receive(self): msg = self._connection.receive_from_socket(self._socket) if msg is None: return elif isinstance(msg, ua.Message): self._call_callback(msg.request_id(), msg.body()) elif isinstance(msg, ua.Acknowledge): self._call_callback(0, msg) elif isinstance(msg, ua.ErrorMessage): self.logger.fatal("Received an error: %s", msg) self._call_callback(0, ua.UaStatusCodeError(msg.Error.value)) else: raise ua.UaError("Unsupported message type: %s", msg) def _call_callback(self, request_id, body): with self._lock: future = self._callbackmap.pop(request_id, None) if future is None: raise ua.UaError( "No future object found for request: {0}, callbacks in list are {1}" .format(request_id, self._callbackmap.keys()) ) future.set_result(body) def _cancel_all_callbacks(self): for request_id, fut in self._callbackmap.items(): self.logger.info("Cancelling request {:d}".format(request_id)) fut.cancel() self._callbackmap.clear() def _create_request_header(self, timeout=1000): hdr = ua.RequestHeader() hdr.AuthenticationToken = self.authentication_token self._request_handle += 1 hdr.RequestHandle = self._request_handle hdr.TimeoutHint = timeout return hdr def connect_socket(self, host, port): """ connect to server socket and start receiving thread """ self.logger.info("opening connection") # Create socket with timeout for initial connection sock = socket.create_connection((host, port), timeout=self.timeout) # set to blocking mode again sock.settimeout(None) # nodelay necessary to avoid packing in one frame, some servers do not like it sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) self._socket = ua.utils.SocketWrapper(sock) self.start() def disconnect_socket(self): self.logger.info("Request to close socket received") self._do_stop = True try: self._socket.socket.shutdown(socket.SHUT_RDWR) except (socket.error, OSError) as exc: if exc.errno in (errno.ENOTCONN, errno.EBADF): pass # Socket is not connected, so can't send FIN packet. else: raise self._socket.socket.close() self.logger.info("Socket closed, waiting for receiver thread to terminate...") if self._thread and self._thread.is_alive(): self._thread.join() self._cancel_all_callbacks() self.logger.info("Done closing socket: Receiving thread terminated, socket disconnected") def send_hello(self, url, max_messagesize=0, max_chunkcount=0): hello = ua.Hello() hello.EndpointUrl = url hello.MaxMessageSize = max_messagesize hello.MaxChunkCount = max_chunkcount future = Future() with self._lock: self._callbackmap[0] = future binmsg = uatcp_to_binary(ua.MessageType.Hello, hello) self._socket.write(binmsg) ack = future.result(self.timeout) return ack def open_secure_channel(self, params): self.logger.info("open_secure_channel") request = ua.OpenSecureChannelRequest() request.Parameters = params future = self._send_request(request, message_type=ua.MessageType.SecureOpen) response = struct_from_binary(ua.OpenSecureChannelResponse, future.result(self.timeout)) response.ResponseHeader.ServiceResult.check() self._connection.set_channel(response.Parameters, params.RequestType, params.ClientNonce) return response.Parameters def close_secure_channel(self): """ close secure channel. It seems to trigger a shutdown of socket in most servers, so be prepare to reconnect. OPC UA specs Part 6, 7.1.4 say that Server does not send a CloseSecureChannel response and should just close socket """ self.logger.info("close_secure_channel") request = ua.CloseSecureChannelRequest() try: future = self._send_request(request, message_type=ua.MessageType.SecureClose) with self._lock: # some servers send a response here, most do not ... so we ignore future.cancel() except (socket.error, OSError) as exc: if exc.errno in (errno.ENOTCONN, errno.EBADF): # Socket is closed, so can't send CloseSecureChannelRequest. self.logger.warning("close_secure_channel() failed: socket already closed") else: raise def is_secure_channel_open(self): return self._connection.is_open() class UaClient(object): """ low level OPC-UA client. It implements (almost) all methods defined in opcua spec taking in argument the structures defined in opcua spec. In this Python implementation most of the structures are defined in uaprotocol_auto.py and uaprotocol_hand.py available under opcua.ua """ def __init__(self, timeout=1): self.logger = logging.getLogger(__name__) # _publishcallbacks should be accessed in recv thread only self._publishcallbacks = {} self._timeout = timeout self._uasocket = None self.security_policy = ua.SecurityPolicy() def set_security(self, policy): self.security_policy = policy def connect_socket(self, host, port): """ connect to server socket and start receiving thread """ self._uasocket = UASocketClient(self._timeout, security_policy=self.security_policy) return self._uasocket.connect_socket(host, port) def disconnect_socket(self): return self._uasocket.disconnect_socket() def send_hello(self, url, max_messagesize=0, max_chunkcount=0): return self._uasocket.send_hello(url, max_messagesize, max_chunkcount) def open_secure_channel(self, params): return self._uasocket.open_secure_channel(params) def close_secure_channel(self): """ close secure channel. It seems to trigger a shutdown of socket in most servers, so be prepare to reconnect """ return self._uasocket.close_secure_channel() def create_session(self, parameters): self.logger.info("create_session") request = ua.CreateSessionRequest() request.Parameters = parameters data = self._uasocket.send_request(request) response = struct_from_binary(ua.CreateSessionResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() self._uasocket.authentication_token = response.Parameters.AuthenticationToken return response.Parameters def activate_session(self, parameters): self.logger.info("activate_session") request = ua.ActivateSessionRequest() request.Parameters = parameters data = self._uasocket.send_request(request) response = struct_from_binary(ua.ActivateSessionResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Parameters def close_session(self, deletesubscriptions): self.logger.info("close_session") # Bail out if we don't have an open server-channel to unsubscribe ourself. if not self._uasocket.is_secure_channel_open(): return request = ua.CloseSessionRequest() request.DeleteSubscriptions = deletesubscriptions data = self._uasocket.send_request(request) response = struct_from_binary(ua.CloseSessionResponse, data) try: response.ResponseHeader.ServiceResult.check() except BadSessionClosed: # Problem: closing the session with open publish requests leads to BadSessionClosed responses # we can just ignore it therefore. # Alternatively we could make sure that there are no publish requests in flight when # closing the session. pass def browse(self, parameters): self.logger.info("browse") request = ua.BrowseRequest() request.Parameters = parameters data = self._uasocket.send_request(request) response = struct_from_binary(ua.BrowseResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def browse_next(self, parameters): self.logger.info("browse next") request = ua.BrowseNextRequest() request.Parameters = parameters data = self._uasocket.send_request(request) response = struct_from_binary(ua.BrowseNextResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Parameters.Results def read(self, parameters): self.logger.info("read") request = ua.ReadRequest() request.Parameters = parameters data = self._uasocket.send_request(request) response = struct_from_binary(ua.ReadResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() # cast to Enum attributes that need to for idx, rv in enumerate(parameters.NodesToRead): if rv.AttributeId == ua.AttributeIds.NodeClass: dv = response.Results[idx] if dv.StatusCode.is_good(): dv.Value.Value = ua.NodeClass(dv.Value.Value) elif rv.AttributeId == ua.AttributeIds.ValueRank: dv = response.Results[idx] if dv.StatusCode.is_good() and dv.Value.Value in (-3, -2, -1, 0, 1, 2, 3, 4): dv.Value.Value = ua.ValueRank(dv.Value.Value) return response.Results def write(self, params): self.logger.info("read") request = ua.WriteRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.WriteResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def get_endpoints(self, params): self.logger.info("get_endpoint") request = ua.GetEndpointsRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.GetEndpointsResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Endpoints def find_servers(self, params): self.logger.info("find_servers") request = ua.FindServersRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.FindServersResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Servers def find_servers_on_network(self, params): self.logger.info("find_servers_on_network") request = ua.FindServersOnNetworkRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.FindServersOnNetworkResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Parameters def register_server(self, registered_server): self.logger.info("register_server") request = ua.RegisterServerRequest() request.Server = registered_server data = self._uasocket.send_request(request) response = struct_from_binary(ua.RegisterServerResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() # nothing to return for this service def register_server2(self, params): self.logger.info("register_server2") request = ua.RegisterServer2Request() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.RegisterServer2Response, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.ConfigurationResults def translate_browsepaths_to_nodeids(self, browsepaths): self.logger.info("translate_browsepath_to_nodeid") request = ua.TranslateBrowsePathsToNodeIdsRequest() request.Parameters.BrowsePaths = browsepaths data = self._uasocket.send_request(request) response = struct_from_binary(ua.TranslateBrowsePathsToNodeIdsResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def create_subscription(self, params, publish_callback, ready_callback=None): self.logger.info("create_subscription") request = ua.CreateSubscriptionRequest() request.Parameters = params resp_fut = Future() mycallbak = partial(self._create_subscription_callback, publish_callback, ready_callback, resp_fut) self._uasocket.send_request(request, mycallbak) return resp_fut.result(self._timeout) def _create_subscription_callback(self, pub_callback, ready_callback, resp_fut, data_fut): self.logger.info("_create_subscription_callback") data = data_fut.result() response = struct_from_binary(ua.CreateSubscriptionResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() if ready_callback: ready_callback(response) self._publishcallbacks[response.Parameters.SubscriptionId] = pub_callback resp_fut.set_result(response.Parameters) def registered_subscriptions(self): """Get all subscriptions we know about""" return [cb.__self__ for cb in self._publishcallbacks.values()] def delete_subscriptions(self, subscriptionids): self.logger.info("delete_subscription") request = ua.DeleteSubscriptionsRequest() request.Parameters.SubscriptionIds = subscriptionids resp_fut = Future() mycallbak = partial(self._delete_subscriptions_callback, subscriptionids, resp_fut) self._uasocket.send_request(request, mycallbak) return resp_fut.result(self._timeout) def _delete_subscriptions_callback(self, subscriptionids, resp_fut, data_fut): self.logger.info("_delete_subscriptions_callback") data = data_fut.result() response = struct_from_binary(ua.DeleteSubscriptionsResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() for sid in subscriptionids: self._publishcallbacks.pop(sid) resp_fut.set_result(response.Results) def publish(self, acks=None): self.logger.info("publish") if acks is None: acks = [] request = ua.PublishRequest() request.Parameters.SubscriptionAcknowledgements = acks self._uasocket.send_request(request, self._call_publish_callback, timeout=0) def _call_publish_callback(self, future): self.logger.info("call_publish_callback") try: data = future.result() except CancelledError: # we are cancelled, we just return return # check if answer looks ok try: self._uasocket.check_answer(data, "while waiting for publish response") except BadTimeout: # Spec Part 4, 7.28 self.publish() return except BadNoSubscription: # Spec Part 5, 13.8.1 # BadNoSubscription is expected after deleting the last subscription. # # We should therefore also check for len(self._publishcallbacks) == 0, but # this gets us into trouble if a Publish response arrives before the # DeleteSubscription response. # # We could remove the callback already when sending the DeleteSubscription request, # but there are some legitimate reasons to keep them around, such as when the server # responds with "BadTimeout" and we should try again later instead of just removing # the subscription client-side. # # There are a variety of ways to act correctly, but the most practical solution seems # to be to just ignore any BadNoSubscription responses. self.logger.info("BadNoSubscription received, ignoring because it's probably valid.") return # parse publish response try: response = struct_from_binary(ua.PublishResponse, data) self.logger.debug(response) except Exception: # INFO: catching the exception here might be obsolete because we already # catch BadTimeout above. However, it's not really clear what this code # does so it stays in, doesn't seem to hurt. self.logger.exception("Error parsing notificatipn from server") self.publish([]) # send publish request ot server so he does stop sending notifications return # look for callback try: callback = self._publishcallbacks[response.Parameters.SubscriptionId] except KeyError: self.logger.warning("Received data for unknown subscription: %s ", response.Parameters.SubscriptionId) return # do callback try: callback(response.Parameters) except Exception: # we call client code, catch everything! self.logger.exception("Exception while calling user callback: %s") def create_monitored_items(self, params): self.logger.info("create_monitored_items") request = ua.CreateMonitoredItemsRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.CreateMonitoredItemsResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def delete_monitored_items(self, params): self.logger.info("delete_monitored_items") request = ua.DeleteMonitoredItemsRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.DeleteMonitoredItemsResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def add_nodes(self, nodestoadd): self.logger.info("add_nodes") request = ua.AddNodesRequest() request.Parameters.NodesToAdd = nodestoadd data = self._uasocket.send_request(request) response = struct_from_binary(ua.AddNodesResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def add_references(self, refs): self.logger.info("add_references") request = ua.AddReferencesRequest() request.Parameters.ReferencesToAdd = refs data = self._uasocket.send_request(request) response = struct_from_binary(ua.AddReferencesResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def delete_references(self, refs): self.logger.info("delete") request = ua.DeleteReferencesRequest() request.Parameters.ReferencesToDelete = refs data = self._uasocket.send_request(request) response = struct_from_binary(ua.DeleteReferencesResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Parameters.Results def delete_nodes(self, params): self.logger.info("delete_nodes") request = ua.DeleteNodesRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.DeleteNodesResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def call(self, methodstocall): request = ua.CallRequest() request.Parameters.MethodsToCall = methodstocall data = self._uasocket.send_request(request) response = struct_from_binary(ua.CallResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def history_read(self, params): self.logger.info("history_read") request = ua.HistoryReadRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.HistoryReadResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def modify_monitored_items(self, params): self.logger.info("modify_monitored_items") request = ua.ModifyMonitoredItemsRequest() request.Parameters = params data = self._uasocket.send_request(request) response = struct_from_binary(ua.ModifyMonitoredItemsResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Results def register_nodes(self, nodes): self.logger.info("register_nodes") request = ua.RegisterNodesRequest() request.Parameters.NodesToRegister = nodes data = self._uasocket.send_request(request) response = struct_from_binary(ua.RegisterNodesResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() return response.Parameters.RegisteredNodeIds def unregister_nodes(self, nodes): self.logger.info("unregister_nodes") request = ua.UnregisterNodesRequest() request.Parameters.NodesToUnregister = nodes data = self._uasocket.send_request(request) response = struct_from_binary(ua.UnregisterNodesResponse, data) self.logger.debug(response) response.ResponseHeader.ServiceResult.check() # nothing to return for this service def get_attributes(self, nodes, attr): self.logger.info("get_attribute") request = ua.ReadRequest() for node in nodes: rv = ua.ReadValueId() rv.NodeId = node rv.AttributeId = attr request.Parameters.NodesToRead.append(rv) data = self._uasocket.send_request(request) response = struct_from_binary(ua.ReadResponse, data) response.ResponseHeader.ServiceResult.check() return response.Results def set_attributes(self, nodeids, datavalues, attributeid=ua.AttributeIds.Value): """ Set an attribute of multiple nodes datavalue is a ua.DataValue object """ self.logger.info("set_attributes of several nodes") request = ua.WriteRequest() for idx, nodeid in enumerate(nodeids): attr = ua.WriteValue() attr.NodeId = nodeid attr.AttributeId = attributeid attr.Value = datavalues[idx] request.Parameters.NodesToWrite.append(attr) data = self._uasocket.send_request(request) response = struct_from_binary(ua.WriteResponse, data) response.ResponseHeader.ServiceResult.check() return response.Results python-opcua-0.98.9/opcua/common/000077500000000000000000000000001357637245100166635ustar00rootroot00000000000000python-opcua-0.98.9/opcua/common/__init__.py000066400000000000000000000000001357637245100207620ustar00rootroot00000000000000python-opcua-0.98.9/opcua/common/callback.py000066400000000000000000000061641357637245100210000ustar00rootroot00000000000000 """ server side implementation of callback event """ from collections import OrderedDict from enum import Enum class CallbackType(Enum): ''' The possible types of a Callback type. :ivar Null: :ivar MonitoredItem: ''' Null = 0 ItemSubscriptionCreated = 1 ItemSubscriptionModified = 2 ItemSubscriptionDeleted= 3 class Callback(object): def __init__(self): self.__name = None def setName(self, name): self.__name = name def getName(self): return self.__name class ServerItemCallback(Callback): def __init__(self, request_params, response_params): self.request_params = request_params self.response_params = response_params class CallbackSubscriberInterface(object): def getSubscribedEvents(self): raise NotImplementedError() class CallbackDispatcher(object): def __init__(self): self._listeners = {} def dispatch(self, eventName, event=None): if event is None: event = Callback() elif not isinstance(event, Callback): raise ValueError('Unexpected event type given') event.setName(eventName) if eventName not in self._listeners: return event for listener in self._listeners[eventName].values(): listener(event, self) return event def addListener(self, eventName, listener, priority=0): if eventName not in self._listeners: self._listeners[eventName] = {} self._listeners[eventName][priority] = listener self._listeners[eventName] = OrderedDict(sorted(self._listeners[eventName].items(), key=lambda item: item[0])) def removeListener(self, eventName, listener=None): if eventName not in self._listeners: return if not listener: del self._listeners[eventName] else: for p, l in self._listeners[eventName].items(): if l is listener: self._listeners[eventName].pop(p) return def addSubscriber(self, subscriber): if not isinstance(subscriber, CallbackSubscriberInterface): raise ValueError('Unexpected subscriber type given') for eventName, params in subscriber.getSubscribedEvents().items(): if isinstance(params, str): self.addListener(eventName, getattr(subscriber, params)) elif isinstance(params, list): if not params: raise ValueError('Invalid params "{0!r}" for event "{1!s}"'.format(params, eventName)) if len(params) <= 2 and isinstance(params[0], str): priority = params[1] if len(params) > 1 else 0 self.addListener(eventName, getattr(subscriber, params[0]), priority) else: for listener in params: priority = listener[1] if len(listener) > 1 else 0 self.addListener(eventName, getattr(subscriber, listener[0]), priority) else: raise ValueError('Invalid params for event "{0!s}"'.format(eventName)) python-opcua-0.98.9/opcua/common/connection.py000066400000000000000000000437371357637245100214120ustar00rootroot00000000000000import hashlib from datetime import datetime, timedelta import logging import copy from opcua.ua.ua_binary import struct_from_binary, struct_to_binary, header_from_binary, header_to_binary from opcua import ua logger = logging.getLogger('opcua.uaprotocol') class MessageChunk(ua.FrozenClass): """ Message Chunk, as described in OPC UA specs Part 6, 6.7.2. """ def __init__(self, security_policy, body=b'', msg_type=ua.MessageType.SecureMessage, chunk_type=ua.ChunkType.Single): self.MessageHeader = ua.Header(msg_type, chunk_type) if msg_type in (ua.MessageType.SecureMessage, ua.MessageType.SecureClose): self.SecurityHeader = ua.SymmetricAlgorithmHeader() elif msg_type == ua.MessageType.SecureOpen: self.SecurityHeader = ua.AsymmetricAlgorithmHeader() else: raise ua.UaError("Unsupported message type: {0}".format(msg_type)) self.SequenceHeader = ua.SequenceHeader() self.Body = body self.security_policy = security_policy @staticmethod def from_binary(security_policy, data): h = header_from_binary(data) return MessageChunk.from_header_and_body(security_policy, h, data) @staticmethod def from_header_and_body(security_policy, header, buf): assert len(buf) >= header.body_size, 'Full body expected here' data = buf.copy(header.body_size) buf.skip(header.body_size) if header.MessageType in (ua.MessageType.SecureMessage, ua.MessageType.SecureClose): security_header = struct_from_binary(ua.SymmetricAlgorithmHeader, data) crypto = security_policy.symmetric_cryptography elif header.MessageType == ua.MessageType.SecureOpen: security_header = struct_from_binary(ua.AsymmetricAlgorithmHeader, data) crypto = security_policy.asymmetric_cryptography else: raise ua.UaError("Unsupported message type: {0}".format(header.MessageType)) obj = MessageChunk(crypto) obj.MessageHeader = header obj.SecurityHeader = security_header decrypted = crypto.decrypt(data.read(len(data))) signature_size = crypto.vsignature_size() if signature_size > 0: signature = decrypted[-signature_size:] decrypted = decrypted[:-signature_size] crypto.verify(header_to_binary(obj.MessageHeader) + struct_to_binary(obj.SecurityHeader) + decrypted, signature) data = ua.utils.Buffer(crypto.remove_padding(decrypted)) obj.SequenceHeader = struct_from_binary(ua.SequenceHeader, data) obj.Body = data.read(len(data)) return obj def encrypted_size(self, plain_size): size = plain_size + self.security_policy.signature_size() pbs = self.security_policy.plain_block_size() if size % pbs != 0: print("ENC", plain_size, size, pbs) raise ua.UaError("Encryption error") return size // pbs * self.security_policy.encrypted_block_size() def to_binary(self): security = struct_to_binary(self.SecurityHeader) encrypted_part = struct_to_binary(self.SequenceHeader) + self.Body encrypted_part += self.security_policy.padding(len(encrypted_part)) self.MessageHeader.body_size = len(security) + self.encrypted_size(len(encrypted_part)) header = header_to_binary(self.MessageHeader) encrypted_part += self.security_policy.signature(header + security + encrypted_part) return header + security + self.security_policy.encrypt(encrypted_part) @staticmethod def max_body_size(crypto, max_chunk_size): max_encrypted_size = max_chunk_size - ua.Header.max_size() - ua.SymmetricAlgorithmHeader.max_size() max_plain_size = (max_encrypted_size // crypto.encrypted_block_size()) * crypto.plain_block_size() return max_plain_size - ua.SequenceHeader.max_size() - crypto.signature_size() - crypto.min_padding_size() @staticmethod def message_to_chunks(security_policy, body, max_chunk_size, message_type=ua.MessageType.SecureMessage, channel_id=1, request_id=1, token_id=1): """ Pack message body (as binary string) into one or more chunks. Size of each chunk will not exceed max_chunk_size. Returns a list of MessageChunks. SequenceNumber is not initialized here, it must be set by Secure Channel driver. """ if message_type == ua.MessageType.SecureOpen: # SecureOpen message must be in a single chunk (specs, Part 6, 6.7.2) chunk = MessageChunk(security_policy.asymmetric_cryptography, body, message_type, ua.ChunkType.Single) chunk.SecurityHeader.SecurityPolicyURI = security_policy.URI if security_policy.client_certificate: chunk.SecurityHeader.SenderCertificate = security_policy.client_certificate if security_policy.server_certificate: chunk.SecurityHeader.ReceiverCertificateThumbPrint =\ hashlib.sha1(security_policy.server_certificate).digest() chunk.MessageHeader.ChannelId = channel_id chunk.SequenceHeader.RequestId = request_id return [chunk] crypto = security_policy.symmetric_cryptography max_size = MessageChunk.max_body_size(crypto, max_chunk_size) chunks = [] for i in range(0, len(body), max_size): part = body[i:i + max_size] if i + max_size >= len(body): chunk_type = ua.ChunkType.Single else: chunk_type = ua.ChunkType.Intermediate chunk = MessageChunk(crypto, part, message_type, chunk_type) chunk.SecurityHeader.TokenId = token_id chunk.MessageHeader.ChannelId = channel_id chunk.SequenceHeader.RequestId = request_id chunks.append(chunk) return chunks def __str__(self): return "{0}({1}, {2}, {3}, {4} bytes)".format(self.__class__.__name__, self.MessageHeader, self.SequenceHeader, self.SecurityHeader, len(self.Body)) __repr__ = __str__ class SecureConnection(object): """ Common logic for client and server """ def __init__(self, security_policy): self._sequence_number = 0 self._peer_sequence_number = None self._incoming_parts = [] self.security_policy = security_policy self._policies = [] self.security_token = ua.ChannelSecurityToken() self.next_security_token = ua.ChannelSecurityToken() self.prev_security_token = ua.ChannelSecurityToken() self.local_nonce = 0 self.remote_nonce = 0 self._open = False self._allow_prev_token = False self._max_chunk_size = 65536 def set_channel(self, params, requestType, clientNonce): """ Called on client side when getting secure channel data from server """ if requestType == ua.SecurityTokenRequestType.Issue: self.security_token = params.SecurityToken self.local_nonce = clientNonce self.remote_nonce = params.ServerNonce self.security_policy.make_local_symmetric_key(self.remote_nonce, self.local_nonce) self.security_policy.make_remote_symmetric_key(self.local_nonce, self.remote_nonce) self._open = True else: self.next_security_token = params.SecurityToken self.local_nonce = clientNonce self.remote_nonce = params.ServerNonce self._allow_prev_token = True def open(self, params, server): """ called on server side to open secure channel """ self.local_nonce = ua.utils.create_nonce(self.security_policy.symmetric_key_size) self.remote_nonce = params.ClientNonce response = ua.OpenSecureChannelResult() response.ServerNonce = self.local_nonce if not self._open or params.RequestType == ua.SecurityTokenRequestType.Issue: self._open = True self.security_token.TokenId = 13 # random value self.security_token.ChannelId = server.get_new_channel_id() self.security_token.RevisedLifetime = params.RequestedLifetime self.security_token.CreatedAt = datetime.utcnow() response.SecurityToken = self.security_token self.security_policy.make_local_symmetric_key(self.remote_nonce, self.local_nonce) self.security_policy.make_remote_symmetric_key(self.local_nonce, self.remote_nonce) else: self.next_security_token = copy.deepcopy( self.security_token ) self.next_security_token.TokenId += 1 self.next_security_token.RevisedLifetime = params.RequestedLifetime self.next_security_token.CreatedAt = datetime.utcnow() response.SecurityToken = self.next_security_token return response def close(self): self._open = False def is_open(self): return self._open def set_policy_factories(self, policies): """ Set a list of available security policies. Use this in servers with multiple endpoints with different security """ self._policies = policies @staticmethod def _policy_matches(policy, uri, mode=None): return policy.URI == uri and (mode is None or policy.Mode == mode) def select_policy(self, uri, peer_certificate, mode=None): for policy in self._policies: if policy.matches(uri, mode): self.security_policy = policy.create(peer_certificate) return if self.security_policy.URI != uri or (mode is not None and self.security_policy.Mode != mode): raise ua.UaError("No matching policy: {0}, {1}".format(uri, mode)) def revolve_tokens( self ): """ Revolve security tokens of the security channel. Start using the next security token negotiated during the renewal of the channel and remember the previous token until the other communication party """ self.prev_security_token = self.security_token self.security_token = self.next_security_token self.next_security_token = ua.ChannelSecurityToken() self.security_policy.make_local_symmetric_key(self.remote_nonce, self.local_nonce) def message_to_binary(self, message, message_type=ua.MessageType.SecureMessage, request_id=0): """ Convert OPC UA secure message to binary. The only supported types are SecureOpen, SecureMessage, SecureClose if message_type is SecureMessage, the AlgoritmHeader should be passed as arg """ chunks = MessageChunk.message_to_chunks( self.security_policy, message, self._max_chunk_size, message_type=message_type, channel_id=self.security_token.ChannelId, request_id=request_id, token_id=self.security_token.TokenId) for chunk in chunks: self._sequence_number += 1 if self._sequence_number >= (1 << 32): logger.debug("Wrapping sequence number: %d -> 1", self._sequence_number) self._sequence_number = 1 chunk.SequenceHeader.SequenceNumber = self._sequence_number return b"".join([chunk.to_binary() for chunk in chunks]) def _check_sym_header(self, securityHeader): """ Validates the symmetric header of the message chunk and revolves the security token if needed. """ assert isinstance(securityHeader, ua.SymmetricAlgorithmHeader), "Expected SymAlgHeader, got: {0}".format(securityHeader) if securityHeader.TokenId != self.security_token.TokenId: if securityHeader.TokenId != self.next_security_token.TokenId: if self._allow_prev_token and \ securityHeader.TokenId == self.prev_security_token.TokenId: timeout = self.prev_security_token.CreatedAt + timedelta(milliseconds=self.prev_security_token.RevisedLifetime * 1.25 ) if timeout < datetime.utcnow(): raise ua.UaError("Security token id {} has timed out ({} < {})" .format(securityHeader.TokenId, timeout, datetime.utcnow())) else: return raise ua.UaError("Invalid security token id {}, expected {} or {}" .format(securityHeader.TokenId, self.security_token.TokenId, self.next_security_token.TokenId)) else: self.revolve_tokens() self.security_policy.make_remote_symmetric_key(self.local_nonce, self.remote_nonce) self.prev_security_token = ua.ChannelSecurityToken() if self.prev_security_token.TokenId != 0: self.security_policy.make_remote_symmetric_key(self.local_nonce, self.remote_nonce) self.prev_security_token = ua.ChannelSecurityToken() def _check_incoming_chunk(self, chunk): assert isinstance(chunk, MessageChunk), "Expected chunk, got: {0}".format(chunk) if chunk.MessageHeader.MessageType != ua.MessageType.SecureOpen: if chunk.MessageHeader.ChannelId != self.security_token.ChannelId: raise ua.UaError("Wrong channel id {0}, expected {1}".format( chunk.MessageHeader.ChannelId, self.security_token.ChannelId)) if self._incoming_parts: if self._incoming_parts[0].SequenceHeader.RequestId != chunk.SequenceHeader.RequestId: raise ua.UaError("Wrong request id {0}, expected {1}".format( chunk.SequenceHeader.RequestId, self._incoming_parts[0].SequenceHeader.RequestId)) # sequence number must be incremented or wrapped num = chunk.SequenceHeader.SequenceNumber if self._peer_sequence_number is not None: if num != self._peer_sequence_number + 1: wrap = (1 << 32) - 1024 if num < 1024 and self._peer_sequence_number >= wrap: # specs Part 6, 6.7.2 logger.debug("Sequence number wrapped: %d -> %d", self._peer_sequence_number, num) else: raise ua.UaError( "Wrong sequence {0} -> {1} (server bug or replay attack)" .format(self._peer_sequence_number, num)) self._peer_sequence_number = num def receive_from_header_and_body(self, header, body): """ Convert MessageHeader and binary body to OPC UA TCP message (see OPC UA specs Part 6, 7.1: Hello, Acknowledge or ErrorMessage), or a Message object, or None (if intermediate chunk is received) """ if header.MessageType == ua.MessageType.SecureOpen: data = body.copy(header.body_size) security_header = struct_from_binary(ua.AsymmetricAlgorithmHeader, data) self.select_policy(security_header.SecurityPolicyURI, security_header.SenderCertificate) elif header.MessageType in (ua.MessageType.SecureMessage, ua.MessageType.SecureClose): data = body.copy(header.body_size) security_header = struct_from_binary(ua.SymmetricAlgorithmHeader, data) self._check_sym_header(security_header) if header.MessageType in (ua.MessageType.SecureMessage, ua.MessageType.SecureOpen, ua.MessageType.SecureClose): chunk = MessageChunk.from_header_and_body(self.security_policy, header, body) return self._receive(chunk) elif header.MessageType == ua.MessageType.Hello: msg = struct_from_binary(ua.Hello, body) self._max_chunk_size = msg.ReceiveBufferSize return msg elif header.MessageType == ua.MessageType.Acknowledge: msg = struct_from_binary(ua.Acknowledge, body) self._max_chunk_size = msg.SendBufferSize return msg elif header.MessageType == ua.MessageType.Error: msg = struct_from_binary(ua.ErrorMessage, body) logger.warning("Received an error: %s", msg) return msg else: raise ua.UaError("Unsupported message type {0}".format(header.MessageType)) def receive_from_socket(self, socket): """ Convert binary stream to OPC UA TCP message (see OPC UA specs Part 6, 7.1: Hello, Acknowledge or ErrorMessage), or a Message object, or None (if intermediate chunk is received) """ logger.debug("Waiting for header") header = header_from_binary(socket) logger.info("received header: %s", header) body = socket.read(header.body_size) if len(body) != header.body_size: raise ua.UaError("{0} bytes expected, {1} available".format(header.body_size, len(body))) return self.receive_from_header_and_body(header, ua.utils.Buffer(body)) def _receive(self, msg): self._check_incoming_chunk(msg) self._incoming_parts.append(msg) if msg.MessageHeader.ChunkType == ua.ChunkType.Intermediate: return None if msg.MessageHeader.ChunkType == ua.ChunkType.Abort: err = struct_from_binary(ua.ErrorMessage, ua.utils.Buffer(msg.Body)) logger.warning("Message %s aborted: %s", msg, err) # specs Part 6, 6.7.3 say that aborted message shall be ignored # and SecureChannel should not be closed self._incoming_parts = [] return None elif msg.MessageHeader.ChunkType == ua.ChunkType.Single: message = ua.Message(self._incoming_parts) self._incoming_parts = [] return message else: raise ua.UaError("Unsupported chunk type: {0}".format(msg)) python-opcua-0.98.9/opcua/common/copy_node.py000066400000000000000000000057611357637245100212250ustar00rootroot00000000000000import logging from opcua import ua from opcua.common.node import Node logger = logging.getLogger(__name__) def copy_node(parent, node, nodeid=None, recursive=True): """ Copy a node or node tree as child of parent node """ rdesc = _rdesc_from_node(parent, node) if nodeid is None: nodeid = ua.NodeId(namespaceidx=node.nodeid.NamespaceIndex) added_nodeids = _copy_node(parent.server, parent.nodeid, rdesc, nodeid, recursive) return [Node(parent.server, nid) for nid in added_nodeids] def _copy_node(server, parent_nodeid, rdesc, nodeid, recursive): addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = rdesc.BrowseName addnode.ParentNodeId = parent_nodeid addnode.ReferenceTypeId = rdesc.ReferenceTypeId addnode.TypeDefinition = rdesc.TypeDefinition addnode.NodeClass = rdesc.NodeClass node_to_copy = Node(server, rdesc.NodeId) attrObj = getattr(ua, rdesc.NodeClass.name + "Attributes") _read_and_copy_attrs(node_to_copy, attrObj(), addnode) res = server.add_nodes([addnode])[0] added_nodes = [res.AddedNodeId] if recursive: descs = node_to_copy.get_children_descriptions() for desc in descs: nodes = _copy_node(server, res.AddedNodeId, desc, nodeid=ua.NodeId(namespaceidx=desc.NodeId.NamespaceIndex), recursive=True) added_nodes.extend(nodes) return added_nodes def _rdesc_from_node(parent, node): results = node.get_attributes([ua.AttributeIds.NodeClass, ua.AttributeIds.BrowseName, ua.AttributeIds.DisplayName]) nclass, qname, dname = [res.Value.Value for res in results] rdesc = ua.ReferenceDescription() rdesc.NodeId = node.nodeid rdesc.BrowseName = qname rdesc.DisplayName = dname rdesc.NodeClass = nclass if parent.get_type_definition() == ua.NodeId(ua.ObjectIds.FolderType): rdesc.ReferenceTypeId = ua.NodeId(ua.ObjectIds.Organizes) else: rdesc.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasComponent) typedef = node.get_type_definition() if typedef: rdesc.TypeDefinition = typedef return rdesc def _read_and_copy_attrs(node_type, struct, addnode): names = [name for name in struct.__dict__.keys() if not name.startswith("_") and name not in ("BodyLength", "TypeId", "SpecifiedAttributes", "Encoding", "IsAbstract", "EventNotifier")] attrs = [getattr(ua.AttributeIds, name) for name in names] for name in names: results = node_type.get_attributes(attrs) for idx, name in enumerate(names): if results[idx].StatusCode.is_good(): if name == "Value": setattr(struct, name, results[idx].Value) else: setattr(struct, name, results[idx].Value.Value) else: logger.warning("Instantiate: while copying attributes from node type {0!s}, attribute {1!s}, statuscode is {2!s}".format(node_type, name, results[idx].StatusCode)) addnode.NodeAttributes = struct python-opcua-0.98.9/opcua/common/event_objects.py000066400000000000000000001151251357637245100220740ustar00rootroot00000000000000""" Autogenerated code from xml spec """ from opcua import ua from opcua.common.events import Event class BaseEvent(Event): """ BaseEvent: The base type for all events. """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.NodeId(ua.ObjectIds.Server)): super(BaseEvent, self).__init__(emitting_node=emitting_node) self.add_property('EventId', None, ua.VariantType.ByteString) self.add_property('EventType', ua.NodeId(ua.ObjectIds.BaseEventType), ua.VariantType.NodeId) self.add_property('SourceNode', sourcenode, ua.VariantType.NodeId) self.add_property('SourceName', None, ua.VariantType.String) self.add_property('Time', None, ua.VariantType.DateTime) self.add_property('ReceiveTime', None, ua.VariantType.DateTime) self.add_property('LocalTime', ua.NodeId(ua.ObjectIds.TimeZoneDataType), ua.VariantType.ExtensionObject) self.add_property('Message', ua.LocalizedText(message), ua.VariantType.LocalizedText) self.add_property('Severity', severity, ua.VariantType.UInt16) class AuditEvent(BaseEvent): """ AuditEvent: A base type for events used to track client initiated changes to the server state. """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditEventType) self.add_property('ActionTimeStamp', None, ua.NodeId(ua.ObjectIds.UtcTime)) self.add_property('Status', False, ua.VariantType.Boolean) self.add_property('ServerId', None, ua.VariantType.String) self.add_property('ClientAuditEntryId', None, ua.VariantType.String) self.add_property('ClientUserId', None, ua.VariantType.String) class AuditSecurityEvent(AuditEvent): """ AuditSecurityEvent: A base type for events used to track security related changes. """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditSecurityEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditSecurityEventType) self.add_property('StatusCodeId', None, ua.VariantType.StatusCode) class AuditChannelEvent(AuditSecurityEvent): """ AuditChannelEvent: A base type for events used to track related changes to a secure channel. """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditChannelEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditChannelEventType) self.add_property('SecureChannelId', None, ua.VariantType.String) class AuditOpenSecureChannelEvent(AuditChannelEvent): """ AuditOpenSecureChannelEvent: An event that is raised when a secure channel is opened. """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditOpenSecureChannelEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditOpenSecureChannelEventType) self.add_property('ClientCertificate', None, ua.VariantType.ByteString) self.add_property('ClientCertificateThumbprint', None, ua.VariantType.String) self.add_property('RequestType', None, ua.NodeId(ua.ObjectIds.SecurityTokenRequestType)) self.add_property('SecurityPolicyUri', None, ua.VariantType.String) self.add_property('SecurityMode', None, ua.NodeId(ua.ObjectIds.MessageSecurityMode)) self.add_property('RequestedLifetime', None, ua.NodeId(ua.ObjectIds.Duration)) class AuditSessionEvent(AuditSecurityEvent): """ AuditSessionEvent: A base type for events used to track related changes to a session. """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditSessionEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditSessionEventType) self.add_property('SessionId', ua.NodeId(ua.ObjectIds.AuditSessionEventType), ua.VariantType.NodeId) class AuditCreateSessionEvent(AuditSessionEvent): """ AuditCreateSessionEvent: An event that is raised when a session is created. """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCreateSessionEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCreateSessionEventType) self.add_property('SecureChannelId', None, ua.VariantType.String) self.add_property('ClientCertificate', None, ua.VariantType.ByteString) self.add_property('ClientCertificateThumbprint', None, ua.VariantType.String) self.add_property('RevisedSessionTimeout', None, ua.NodeId(ua.ObjectIds.Duration)) class AuditActivateSessionEvent(AuditSessionEvent): """ AuditActivateSessionEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditActivateSessionEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditActivateSessionEventType) self.add_property('ClientSoftwareCertificates', None, ua.NodeId(ua.ObjectIds.SignedSoftwareCertificate)) self.add_property('UserIdentityToken', None, ua.NodeId(ua.ObjectIds.UserIdentityToken)) self.add_property('SecureChannelId', None, ua.VariantType.String) class AuditCancelEvent(AuditSessionEvent): """ AuditCancelEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCancelEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCancelEventType) self.add_property('RequestHandle', None, ua.VariantType.UInt32) class AuditCertificateEvent(AuditSecurityEvent): """ AuditCertificateEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCertificateEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateEventType) self.add_property('Certificate', None, ua.VariantType.ByteString) class AuditCertificateDataMismatchEvent(AuditCertificateEvent): """ AuditCertificateDataMismatchEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCertificateDataMismatchEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateDataMismatchEventType) self.add_property('InvalidHostname', None, ua.VariantType.String) self.add_property('InvalidUri', None, ua.VariantType.String) class AuditCertificateExpiredEvent(AuditCertificateEvent): """ AuditCertificateExpiredEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCertificateExpiredEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateExpiredEventType) class AuditCertificateInvalidEvent(AuditCertificateEvent): """ AuditCertificateInvalidEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCertificateInvalidEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateInvalidEventType) class AuditCertificateUntrustedEvent(AuditCertificateEvent): """ AuditCertificateUntrustedEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCertificateUntrustedEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateUntrustedEventType) class AuditCertificateRevokedEvent(AuditCertificateEvent): """ AuditCertificateRevokedEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCertificateRevokedEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateRevokedEventType) class AuditCertificateMismatchEvent(AuditCertificateEvent): """ AuditCertificateMismatchEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditCertificateMismatchEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditCertificateMismatchEventType) class AuditNodeManagementEvent(AuditEvent): """ AuditNodeManagementEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditNodeManagementEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditNodeManagementEventType) class AuditAddNodesEvent(AuditNodeManagementEvent): """ AuditAddNodesEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditAddNodesEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditAddNodesEventType) self.add_property('NodesToAdd', None, ua.NodeId(ua.ObjectIds.AddNodesItem)) class AuditDeleteNodesEvent(AuditNodeManagementEvent): """ AuditDeleteNodesEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditDeleteNodesEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditDeleteNodesEventType) self.add_property('NodesToDelete', None, ua.NodeId(ua.ObjectIds.DeleteNodesItem)) class AuditAddReferencesEvent(AuditNodeManagementEvent): """ AuditAddReferencesEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditAddReferencesEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditAddReferencesEventType) self.add_property('ReferencesToAdd', None, ua.NodeId(ua.ObjectIds.AddReferencesItem)) class AuditDeleteReferencesEvent(AuditNodeManagementEvent): """ AuditDeleteReferencesEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditDeleteReferencesEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditDeleteReferencesEventType) self.add_property('ReferencesToDelete', None, ua.NodeId(ua.ObjectIds.DeleteReferencesItem)) class AuditUpdateEvent(AuditEvent): """ AuditUpdateEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditUpdateEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateEventType) class AuditWriteUpdateEvent(AuditUpdateEvent): """ AuditWriteUpdateEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditWriteUpdateEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditWriteUpdateEventType) self.add_property('AttributeId', None, ua.VariantType.UInt32) self.add_property('IndexRange', None, ua.NodeId(ua.ObjectIds.NumericRange)) self.add_property('OldValue', None, ua.VariantType.Variant) self.add_property('NewValue', None, ua.VariantType.Variant) class AuditHistoryUpdateEvent(AuditUpdateEvent): """ AuditHistoryUpdateEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditHistoryUpdateEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryUpdateEventType) self.add_property('ParameterDataTypeId', ua.NodeId(ua.ObjectIds.AuditHistoryUpdateEventType), ua.VariantType.NodeId) class AuditUpdateMethodEvent(AuditEvent): """ AuditUpdateMethodEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditUpdateMethodEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateMethodEventType) self.add_property('MethodId', ua.NodeId(ua.ObjectIds.AuditUpdateMethodEventType), ua.VariantType.NodeId) self.add_property('InputArguments', None, ua.VariantType.Variant) class SystemEvent(BaseEvent): """ SystemEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(SystemEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.SystemEventType) class DeviceFailureEvent(SystemEvent): """ DeviceFailureEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(DeviceFailureEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.DeviceFailureEventType) class BaseModelChangeEvent(BaseEvent): """ BaseModelChangeEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(BaseModelChangeEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.BaseModelChangeEventType) class GeneralModelChangeEvent(BaseModelChangeEvent): """ GeneralModelChangeEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(GeneralModelChangeEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.GeneralModelChangeEventType) self.add_property('Changes', None, ua.NodeId(ua.ObjectIds.ModelChangeStructureDataType)) class TransitionEvent(BaseEvent): """ TransitionEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(TransitionEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.TransitionEventType) class AuditUpdateStateEvent(AuditUpdateMethodEvent): """ AuditUpdateStateEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditUpdateStateEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditUpdateStateEventType) self.add_property('OldStateId', None, ua.VariantType.Variant) self.add_property('NewStateId', None, ua.VariantType.Variant) class ProgramTransitionEvent(TransitionEvent): """ ProgramTransitionEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(ProgramTransitionEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.ProgramTransitionEventType) self.add_property('IntermediateResult', None, ua.VariantType.Variant) class SemanticChangeEvent(BaseModelChangeEvent): """ SemanticChangeEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(SemanticChangeEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.SemanticChangeEventType) self.add_property('Changes', None, ua.NodeId(ua.ObjectIds.SemanticChangeStructureDataType)) class AuditUrlMismatchEvent(AuditCreateSessionEvent): """ AuditUrlMismatchEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditUrlMismatchEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditUrlMismatchEventType) self.add_property('EndpointUrl', None, ua.VariantType.String) class RefreshStartEvent(SystemEvent): """ RefreshStartEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(RefreshStartEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.RefreshStartEventType) class RefreshEndEvent(SystemEvent): """ RefreshEndEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(RefreshEndEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.RefreshEndEventType) class RefreshRequiredEvent(SystemEvent): """ RefreshRequiredEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(RefreshRequiredEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.RefreshRequiredEventType) class AuditConditionEvent(AuditUpdateMethodEvent): """ AuditConditionEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionEventType) class AuditConditionEnableEvent(AuditConditionEvent): """ AuditConditionEnableEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionEnableEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionEnableEventType) class AuditConditionCommentEvent(AuditConditionEvent): """ AuditConditionCommentEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionCommentEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionCommentEventType) self.add_property('ConditionEventId', None, ua.VariantType.ByteString) self.add_property('Comment', None, ua.VariantType.LocalizedText) class AuditHistoryEventUpdateEvent(AuditHistoryUpdateEvent): """ AuditHistoryEventUpdateEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditHistoryEventUpdateEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryEventUpdateEventType) self.add_property('UpdatedNode', ua.NodeId(ua.ObjectIds.AuditHistoryEventUpdateEventType), ua.VariantType.NodeId) self.add_property('PerformInsertReplace', None, ua.NodeId(ua.ObjectIds.PerformUpdateType)) self.add_property('Filter', None, ua.NodeId(ua.ObjectIds.EventFilter)) self.add_property('NewValues', None, ua.NodeId(ua.ObjectIds.HistoryEventFieldList)) self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.HistoryEventFieldList)) class AuditHistoryValueUpdateEvent(AuditHistoryUpdateEvent): """ AuditHistoryValueUpdateEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditHistoryValueUpdateEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryValueUpdateEventType) self.add_property('UpdatedNode', ua.NodeId(ua.ObjectIds.AuditHistoryValueUpdateEventType), ua.VariantType.NodeId) self.add_property('PerformInsertReplace', None, ua.NodeId(ua.ObjectIds.PerformUpdateType)) self.add_property('NewValues', None, ua.NodeId(ua.ObjectIds.DataValue)) self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.DataValue)) class AuditHistoryDeleteEvent(AuditHistoryUpdateEvent): """ AuditHistoryDeleteEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditHistoryDeleteEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryDeleteEventType) self.add_property('UpdatedNode', ua.NodeId(ua.ObjectIds.AuditHistoryDeleteEventType), ua.VariantType.NodeId) class AuditHistoryRawModifyDeleteEvent(AuditHistoryDeleteEvent): """ AuditHistoryRawModifyDeleteEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditHistoryRawModifyDeleteEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryRawModifyDeleteEventType) self.add_property('IsDeleteModified', None, ua.VariantType.Boolean) self.add_property('StartTime', None, ua.VariantType.DateTime) self.add_property('EndTime', None, ua.VariantType.DateTime) self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.DataValue)) class AuditHistoryAtTimeDeleteEvent(AuditHistoryDeleteEvent): """ AuditHistoryAtTimeDeleteEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditHistoryAtTimeDeleteEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryAtTimeDeleteEventType) self.add_property('ReqTimes', None, ua.NodeId(ua.ObjectIds.UtcTime)) self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.DataValue)) class AuditHistoryEventDeleteEvent(AuditHistoryDeleteEvent): """ AuditHistoryEventDeleteEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditHistoryEventDeleteEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditHistoryEventDeleteEventType) self.add_property('EventIds', None, ua.VariantType.ByteString) self.add_property('OldValues', None, ua.NodeId(ua.ObjectIds.HistoryEventFieldList)) class EventQueueOverflowEvent(BaseEvent): """ EventQueueOverflowEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(EventQueueOverflowEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.EventQueueOverflowEventType) class ProgramTransitionAuditEvent(AuditUpdateStateEvent): """ ProgramTransitionAuditEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(ProgramTransitionAuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.ProgramTransitionAuditEventType) class AuditConditionRespondEvent(AuditConditionEvent): """ AuditConditionRespondEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionRespondEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionRespondEventType) self.add_property('SelectedResponse', None, ua.VariantType.Int32) class AuditConditionAcknowledgeEvent(AuditConditionEvent): """ AuditConditionAcknowledgeEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionAcknowledgeEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionAcknowledgeEventType) self.add_property('ConditionEventId', None, ua.VariantType.ByteString) self.add_property('Comment', None, ua.VariantType.LocalizedText) class AuditConditionConfirmEvent(AuditConditionEvent): """ AuditConditionConfirmEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionConfirmEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionConfirmEventType) self.add_property('ConditionEventId', None, ua.VariantType.ByteString) self.add_property('Comment', None, ua.VariantType.LocalizedText) class AuditConditionShelvingEvent(AuditConditionEvent): """ AuditConditionShelvingEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionShelvingEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionShelvingEventType) self.add_property('ShelvingTime', None, ua.VariantType.DateTime) class ProgressEvent(BaseEvent): """ ProgressEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(ProgressEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.ProgressEventType) self.add_property('Context', None, ua.VariantType.Variant) self.add_property('Progress', None, ua.VariantType.UInt16) class SystemStatusChangeEvent(SystemEvent): """ SystemStatusChangeEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(SystemStatusChangeEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.SystemStatusChangeEventType) self.add_property('SystemState', None, ua.NodeId(ua.ObjectIds.ServerState)) class AuditProgramTransitionEvent(AuditUpdateStateEvent): """ AuditProgramTransitionEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditProgramTransitionEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditProgramTransitionEventType) self.add_property('TransitionNumber', None, ua.VariantType.UInt32) class TrustListUpdatedAuditEvent(AuditUpdateMethodEvent): """ TrustListUpdatedAuditEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(TrustListUpdatedAuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.TrustListUpdatedAuditEventType) class CertificateUpdatedAuditEvent(AuditUpdateMethodEvent): """ CertificateUpdatedAuditEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(CertificateUpdatedAuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.CertificateUpdatedAuditEventType) self.add_property('CertificateGroup', ua.NodeId(ua.ObjectIds.CertificateUpdatedAuditEventType), ua.VariantType.NodeId) self.add_property('CertificateType', ua.NodeId(ua.ObjectIds.CertificateUpdatedAuditEventType), ua.VariantType.NodeId) class AuditConditionResetEvent(AuditConditionEvent): """ AuditConditionResetEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionResetEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionResetEventType) class PubSubStatusEvent(SystemEvent): """ PubSubStatusEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(PubSubStatusEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.PubSubStatusEventType) self.add_property('ConnectionId', ua.NodeId(ua.ObjectIds.PubSubStatusEventType), ua.VariantType.NodeId) self.add_property('GroupId', ua.NodeId(ua.ObjectIds.PubSubStatusEventType), ua.VariantType.NodeId) self.add_property('State', None, ua.NodeId(ua.ObjectIds.PubSubState)) class PubSubTransportLimitsExceedEvent(PubSubStatusEvent): """ PubSubTransportLimitsExceedEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(PubSubTransportLimitsExceedEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.PubSubTransportLimitsExceedEventType) self.add_property('Actual', None, ua.VariantType.UInt32) self.add_property('Maximum', None, ua.VariantType.UInt32) class PubSubCommunicationFailureEvent(PubSubStatusEvent): """ PubSubCommunicationFailureEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(PubSubCommunicationFailureEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.PubSubCommunicationFailureEventType) self.add_property('Error', None, ua.VariantType.StatusCode) class AuditConditionSuppressEvent(AuditConditionEvent): """ AuditConditionSuppressEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionSuppressEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionSuppressEventType) class AuditConditionSilenceEvent(AuditConditionEvent): """ AuditConditionSilenceEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionSilenceEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionSilenceEventType) class AuditConditionOutOfServiceEvent(AuditConditionEvent): """ AuditConditionOutOfServiceEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(AuditConditionOutOfServiceEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.AuditConditionOutOfServiceEventType) class RoleMappingRuleChangedAuditEvent(AuditUpdateMethodEvent): """ RoleMappingRuleChangedAuditEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(RoleMappingRuleChangedAuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.RoleMappingRuleChangedAuditEventType) class KeyCredentialAuditEvent(AuditUpdateMethodEvent): """ KeyCredentialAuditEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(KeyCredentialAuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.KeyCredentialAuditEventType) self.add_property('ResourceUri', None, ua.VariantType.String) class KeyCredentialUpdatedAuditEvent(KeyCredentialAuditEvent): """ KeyCredentialUpdatedAuditEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(KeyCredentialUpdatedAuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.KeyCredentialUpdatedAuditEventType) class KeyCredentialDeletedAuditEvent(KeyCredentialAuditEvent): """ KeyCredentialDeletedAuditEvent: """ def __init__(self, sourcenode=None, message=None, severity=1, emitting_node=ua.ObjectIds.Server): super(KeyCredentialDeletedAuditEvent, self).__init__(sourcenode, message, severity, emitting_node=emitting_node) self.EventType = ua.NodeId(ua.ObjectIds.KeyCredentialDeletedAuditEventType) IMPLEMENTED_EVENTS = { ua.ObjectIds.BaseEventType: BaseEvent, ua.ObjectIds.AuditEventType: AuditEvent, ua.ObjectIds.AuditSecurityEventType: AuditSecurityEvent, ua.ObjectIds.AuditChannelEventType: AuditChannelEvent, ua.ObjectIds.AuditOpenSecureChannelEventType: AuditOpenSecureChannelEvent, ua.ObjectIds.AuditSessionEventType: AuditSessionEvent, ua.ObjectIds.AuditCreateSessionEventType: AuditCreateSessionEvent, ua.ObjectIds.AuditActivateSessionEventType: AuditActivateSessionEvent, ua.ObjectIds.AuditCancelEventType: AuditCancelEvent, ua.ObjectIds.AuditCertificateEventType: AuditCertificateEvent, ua.ObjectIds.AuditCertificateDataMismatchEventType: AuditCertificateDataMismatchEvent, ua.ObjectIds.AuditCertificateExpiredEventType: AuditCertificateExpiredEvent, ua.ObjectIds.AuditCertificateInvalidEventType: AuditCertificateInvalidEvent, ua.ObjectIds.AuditCertificateUntrustedEventType: AuditCertificateUntrustedEvent, ua.ObjectIds.AuditCertificateRevokedEventType: AuditCertificateRevokedEvent, ua.ObjectIds.AuditCertificateMismatchEventType: AuditCertificateMismatchEvent, ua.ObjectIds.AuditNodeManagementEventType: AuditNodeManagementEvent, ua.ObjectIds.AuditAddNodesEventType: AuditAddNodesEvent, ua.ObjectIds.AuditDeleteNodesEventType: AuditDeleteNodesEvent, ua.ObjectIds.AuditAddReferencesEventType: AuditAddReferencesEvent, ua.ObjectIds.AuditDeleteReferencesEventType: AuditDeleteReferencesEvent, ua.ObjectIds.AuditUpdateEventType: AuditUpdateEvent, ua.ObjectIds.AuditWriteUpdateEventType: AuditWriteUpdateEvent, ua.ObjectIds.AuditHistoryUpdateEventType: AuditHistoryUpdateEvent, ua.ObjectIds.AuditUpdateMethodEventType: AuditUpdateMethodEvent, ua.ObjectIds.SystemEventType: SystemEvent, ua.ObjectIds.DeviceFailureEventType: DeviceFailureEvent, ua.ObjectIds.BaseModelChangeEventType: BaseModelChangeEvent, ua.ObjectIds.GeneralModelChangeEventType: GeneralModelChangeEvent, ua.ObjectIds.TransitionEventType: TransitionEvent, ua.ObjectIds.AuditUpdateStateEventType: AuditUpdateStateEvent, ua.ObjectIds.ProgramTransitionEventType: ProgramTransitionEvent, ua.ObjectIds.SemanticChangeEventType: SemanticChangeEvent, ua.ObjectIds.AuditUrlMismatchEventType: AuditUrlMismatchEvent, ua.ObjectIds.RefreshStartEventType: RefreshStartEvent, ua.ObjectIds.RefreshEndEventType: RefreshEndEvent, ua.ObjectIds.RefreshRequiredEventType: RefreshRequiredEvent, ua.ObjectIds.AuditConditionEventType: AuditConditionEvent, ua.ObjectIds.AuditConditionEnableEventType: AuditConditionEnableEvent, ua.ObjectIds.AuditConditionCommentEventType: AuditConditionCommentEvent, ua.ObjectIds.AuditHistoryEventUpdateEventType: AuditHistoryEventUpdateEvent, ua.ObjectIds.AuditHistoryValueUpdateEventType: AuditHistoryValueUpdateEvent, ua.ObjectIds.AuditHistoryDeleteEventType: AuditHistoryDeleteEvent, ua.ObjectIds.AuditHistoryRawModifyDeleteEventType: AuditHistoryRawModifyDeleteEvent, ua.ObjectIds.AuditHistoryAtTimeDeleteEventType: AuditHistoryAtTimeDeleteEvent, ua.ObjectIds.AuditHistoryEventDeleteEventType: AuditHistoryEventDeleteEvent, ua.ObjectIds.EventQueueOverflowEventType: EventQueueOverflowEvent, ua.ObjectIds.ProgramTransitionAuditEventType: ProgramTransitionAuditEvent, ua.ObjectIds.AuditConditionRespondEventType: AuditConditionRespondEvent, ua.ObjectIds.AuditConditionAcknowledgeEventType: AuditConditionAcknowledgeEvent, ua.ObjectIds.AuditConditionConfirmEventType: AuditConditionConfirmEvent, ua.ObjectIds.AuditConditionShelvingEventType: AuditConditionShelvingEvent, ua.ObjectIds.ProgressEventType: ProgressEvent, ua.ObjectIds.SystemStatusChangeEventType: SystemStatusChangeEvent, ua.ObjectIds.AuditProgramTransitionEventType: AuditProgramTransitionEvent, ua.ObjectIds.TrustListUpdatedAuditEventType: TrustListUpdatedAuditEvent, ua.ObjectIds.CertificateUpdatedAuditEventType: CertificateUpdatedAuditEvent, ua.ObjectIds.AuditConditionResetEventType: AuditConditionResetEvent, ua.ObjectIds.PubSubStatusEventType: PubSubStatusEvent, ua.ObjectIds.PubSubTransportLimitsExceedEventType: PubSubTransportLimitsExceedEvent, ua.ObjectIds.PubSubCommunicationFailureEventType: PubSubCommunicationFailureEvent, ua.ObjectIds.AuditConditionSuppressEventType: AuditConditionSuppressEvent, ua.ObjectIds.AuditConditionSilenceEventType: AuditConditionSilenceEvent, ua.ObjectIds.AuditConditionOutOfServiceEventType: AuditConditionOutOfServiceEvent, ua.ObjectIds.RoleMappingRuleChangedAuditEventType: RoleMappingRuleChangedAuditEvent, ua.ObjectIds.KeyCredentialAuditEventType: KeyCredentialAuditEvent, ua.ObjectIds.KeyCredentialUpdatedAuditEventType: KeyCredentialUpdatedAuditEvent, ua.ObjectIds.KeyCredentialDeletedAuditEventType: KeyCredentialDeletedAuditEvent, } python-opcua-0.98.9/opcua/common/events.py000066400000000000000000000176671357637245100205620ustar00rootroot00000000000000import copy from opcua import ua import opcua from opcua.ua.uaerrors import UaError from opcua.common import ua_utils class Event(object): """ OPC UA Event object. This is class in inherited by the common event objects such as BaseEvent, other auto standard events and custom events Events are used to trigger events on server side and are sent to clients for every events from server Developper Warning: On server side the data type of attributes should be known, thus add properties using the add_property method!!! """ def __init__(self, emitting_node=ua.ObjectIds.Server): self.server_handle = None self.select_clauses = None self.event_fields = None self.data_types = {} if isinstance(emitting_node, ua.NodeId): self.emitting_node = emitting_node else: self.emitting_node = ua.NodeId(emitting_node) # save current attributes self.internal_properties = list(self.__dict__.keys())[:] + ["internal_properties"] def __str__(self): return "{0}({1})".format( self.__class__.__name__, [str(k) + ":" + str(v) for k, v in self.__dict__.items() if k not in self.internal_properties]) __repr__ = __str__ def add_property(self, name, val, datatype): """ Add a property to event and tore its data type """ setattr(self, name, val) self.data_types[name] = datatype def get_event_props_as_fields_dict(self): """ convert all properties of the Event class to a dict of variants """ field_vars = {} for key, value in vars(self).items(): if not key.startswith("__") and key not in self.internal_properties: field_vars[key] = ua.Variant(value, self.data_types[key]) return field_vars @staticmethod def from_field_dict(fields): """ Create an Event object from a dict of name and variants """ ev = Event() for k, v in fields.items(): ev.add_property(k, v.Value, v.VariantType) return ev def to_event_fields_using_subscription_fields(self, select_clauses): """ Using a new select_clauses and the original select_clauses used during subscription, return a field list """ fields = [] for sattr in select_clauses: for idx, o_sattr in enumerate(self.select_clauses): if sattr.BrowsePath == o_sattr.BrowsePath and sattr.AttributeId == o_sattr.AttributeId: fields.append(self.event_fields[idx]) break return fields def to_event_fields(self, select_clauses): """ return a field list using a select clause and the object properties """ fields = [] for sattr in select_clauses: if not sattr.BrowsePath: name = ua.AttributeIds(sattr.AttributeId).name else: name = sattr.BrowsePath[0].Name try: val = getattr(self, name) except AttributeError: field = ua.Variant(None) else: field = ua.Variant(copy.deepcopy(val), self.data_types[name]) fields.append(field) return fields @staticmethod def from_event_fields(select_clauses, fields): """ Instantiate an Event object from a select_clauses and fields """ ev = Event() ev.select_clauses = select_clauses ev.event_fields = fields for idx, sattr in enumerate(select_clauses): if len(sattr.BrowsePath) == 0: name = sattr.AttributeId.name else: name = sattr.BrowsePath[0].Name ev.add_property(name, fields[idx].Value, fields[idx].VariantType) return ev def get_filter_from_event_type(eventtypes): evfilter = ua.EventFilter() evfilter.SelectClauses = select_clauses_from_evtype(eventtypes) evfilter.WhereClause = where_clause_from_evtype(eventtypes) return evfilter def select_clauses_from_evtype(evtypes): clauses = [] selected_paths = [] for evtype in evtypes: for prop in get_event_properties_from_type_node(evtype): if prop.get_browse_name() not in selected_paths: op = ua.SimpleAttributeOperand() op.AttributeId = ua.AttributeIds.Value op.BrowsePath = [prop.get_browse_name()] clauses.append(op) selected_paths.append(prop.get_browse_name()) return clauses def where_clause_from_evtype(evtypes): cf = ua.ContentFilter() el = ua.ContentFilterElement() # operands can be ElementOperand, LiteralOperand, AttributeOperand, SimpleAttribute # Create a clause where the generate event type property EventType # must be a subtype of events in evtypes argument # the first operand is the attribute event type op = ua.SimpleAttributeOperand() # op.TypeDefinitionId = evtype.nodeid op.BrowsePath.append(ua.QualifiedName("EventType", 0)) op.AttributeId = ua.AttributeIds.Value el.FilterOperands.append(op) # now create a list of all subtypes we want to accept subtypes = [] for evtype in evtypes: subtypes += [st.nodeid for st in ua_utils.get_node_subtypes(evtype)] subtypes = list(set(subtypes)) # remove duplicates for subtypeid in subtypes: op = ua.LiteralOperand() op.Value = ua.Variant(subtypeid) el.FilterOperands.append(op) el.FilterOperator = ua.FilterOperator.InList cf.Elements.append(el) return cf def get_event_properties_from_type_node(node): properties = [] curr_node = node while True: properties.extend(curr_node.get_properties()) if curr_node.nodeid.Identifier == ua.ObjectIds.BaseEventType: break parents = curr_node.get_referenced_nodes(refs=ua.ObjectIds.HasSubtype, direction=ua.BrowseDirection.Inverse, includesubtypes=True) if len(parents) != 1: # Something went wrong return None curr_node = parents[0] return properties def get_event_obj_from_type_node(node): """ return an Event object from an event type node """ if node.nodeid.Identifier in opcua.common.event_objects.IMPLEMENTED_EVENTS.keys(): return opcua.common.event_objects.IMPLEMENTED_EVENTS[node.nodeid.Identifier]() else: parent_identifier, parent_eventtype = _find_parent_eventtype(node) class CustomEvent(parent_eventtype): def __init__(self): parent_eventtype.__init__(self) self.EventType = node.nodeid curr_node = node while curr_node.nodeid.Identifier != parent_identifier: for prop in curr_node.get_properties(): name = prop.get_browse_name().Name val = prop.get_data_value() self.add_property(name, val.Value.Value, val.Value.VariantType) parents = curr_node.get_referenced_nodes(refs=ua.ObjectIds.HasSubtype, direction=ua.BrowseDirection.Inverse, includesubtypes=True) if len(parents) != 1: # Something went wrong raise UaError("Parent of event type could notbe found") curr_node = parents[0] self._freeze = True return CustomEvent() def _find_parent_eventtype(node): """ """ parents = node.get_referenced_nodes(refs=ua.ObjectIds.HasSubtype, direction=ua.BrowseDirection.Inverse, includesubtypes=True) if len(parents) != 1: # Something went wrong raise UaError("Parent of event type could notbe found") if parents[0].nodeid.Identifier in opcua.common.event_objects.IMPLEMENTED_EVENTS.keys(): return parents[0].nodeid.Identifier, opcua.common.event_objects.IMPLEMENTED_EVENTS[parents[0].nodeid.Identifier] else: return _find_parent_eventtype(parents[0]) python-opcua-0.98.9/opcua/common/instantiate.py000066400000000000000000000124001357637245100215550ustar00rootroot00000000000000""" Instantiate a new node and its child nodes from a node type. """ import logging from opcua import Node from opcua import ua from opcua.common import ua_utils from opcua.common.copy_node import _rdesc_from_node, _read_and_copy_attrs logger = logging.getLogger(__name__) def instantiate(parent, node_type, nodeid=None, bname=None, dname=None, idx=0, instantiate_optional=True): """ instantiate a node type under a parent node. nodeid and browse name of new node can be specified, or just namespace index If they exists children of the node type, such as components, variables and properties are also instantiated """ rdesc = _rdesc_from_node(parent, node_type) rdesc.TypeDefinition = node_type.nodeid if nodeid is None: nodeid = ua.NodeId(namespaceidx=idx) # will trigger automatic node generation in namespace idx if bname is None: bname = rdesc.BrowseName elif isinstance(bname, str): bname = ua.QualifiedName.from_string(bname) nodeids = _instantiate_node( parent.server, Node(parent.server, rdesc.NodeId), parent.nodeid, rdesc, nodeid, bname, dname=dname, instantiate_optional=instantiate_optional) return [Node(parent.server, nid) for nid in nodeids] def _instantiate_node(server, node_type, parentid, rdesc, nodeid, bname, dname=None, recursive=True, instantiate_optional=True): """ instantiate a node type under parent """ addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = bname addnode.ParentNodeId = parentid addnode.ReferenceTypeId = rdesc.ReferenceTypeId addnode.TypeDefinition = rdesc.TypeDefinition if rdesc.NodeClass in (ua.NodeClass.Object, ua.NodeClass.ObjectType): addnode.NodeClass = ua.NodeClass.Object _read_and_copy_attrs(node_type, ua.ObjectAttributes(), addnode) elif rdesc.NodeClass in (ua.NodeClass.Variable, ua.NodeClass.VariableType): addnode.NodeClass = ua.NodeClass.Variable _read_and_copy_attrs(node_type, ua.VariableAttributes(), addnode) elif rdesc.NodeClass in (ua.NodeClass.Method, ): addnode.NodeClass = ua.NodeClass.Method _read_and_copy_attrs(node_type, ua.MethodAttributes(), addnode) elif rdesc.NodeClass in (ua.NodeClass.DataType, ): addnode.NodeClass = ua.NodeClass.DataType _read_and_copy_attrs(node_type, ua.DataTypeAttributes(), addnode) else: logger.error("Instantiate: Node class not supported: %s", rdesc.NodeClass) raise RuntimeError("Instantiate: Node class not supported") return if dname is not None: addnode.NodeAttributes.DisplayName = dname res = server.add_nodes([addnode])[0] added_nodes = [res.AddedNodeId] if recursive: parents = ua_utils.get_node_supertypes(node_type, includeitself=True) node = Node(server, res.AddedNodeId) for parent in parents: descs = parent.get_children_descriptions(includesubtypes=False) for c_rdesc in descs: # skip items that already exists, prefer the 'lowest' one in object hierarchy if not ua_utils.is_child_present(node, c_rdesc.BrowseName): c_node_type = Node(server, c_rdesc.NodeId) refs = c_node_type.get_referenced_nodes(refs=ua.ObjectIds.HasModellingRule) if not refs: # spec says to ignore nodes without modelling rules logger.info("Instantiate: Skip node without modelling rule %s as part of %s", c_rdesc.BrowseName, addnode.BrowseName) continue # exclude nodes with optional ModellingRule if requested if not instantiate_optional and refs[0].nodeid == ua.NodeId(ua.ObjectIds.ModellingRule_Optional): logger.info("Instantiate: Skip optional node %s as part of %s", c_rdesc.BrowseName, addnode.BrowseName) continue # if root node being instantiated has a String NodeId, create the children with a String NodeId if res.AddedNodeId.NodeIdType is ua.NodeIdType.String: inst_nodeid = res.AddedNodeId.Identifier + "." + c_rdesc.BrowseName.Name nodeids = _instantiate_node( server, c_node_type, res.AddedNodeId, c_rdesc, nodeid=ua.NodeId(identifier=inst_nodeid, namespaceidx=res.AddedNodeId.NamespaceIndex), bname=c_rdesc.BrowseName) else: nodeids = _instantiate_node( server, c_node_type, res.AddedNodeId, c_rdesc, nodeid=ua.NodeId(namespaceidx=res.AddedNodeId.NamespaceIndex), bname=c_rdesc.BrowseName) added_nodes.extend(nodeids) return added_nodes python-opcua-0.98.9/opcua/common/manage_nodes.py000066400000000000000000000362441357637245100216660ustar00rootroot00000000000000""" High level functions to create nodes """ from opcua import ua from opcua.common import node from opcua.common.instantiate import instantiate def _parse_nodeid_qname(*args): try: if isinstance(args[0], int): nodeid = ua.NodeId(0, int(args[0])) qname = ua.QualifiedName(args[1], int(args[0])) return nodeid, qname if isinstance(args[0], ua.NodeId): nodeid = args[0] elif isinstance(args[0], str): nodeid = ua.NodeId.from_string(args[0]) else: raise RuntimeError() if isinstance(args[1], ua.QualifiedName): qname = args[1] elif isinstance(args[1], str): qname = ua.QualifiedName.from_string(args[1]) else: raise RuntimeError() return nodeid, qname except ua.UaError: raise except Exception as ex: raise TypeError("This method takes either a namespace index and a string as argument or a nodeid and a qualifiedname. Received arguments {0} and got exception {1}".format(args, ex)) def create_folder(parent, nodeid, bname): """ create a child node folder arguments are nodeid, browsename or namespace index, name """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) return node.Node(parent.server, _create_object(parent.server, parent.nodeid, nodeid, qname, ua.ObjectIds.FolderType)) def create_object(parent, nodeid, bname, objecttype=None): """ create a child node object arguments are nodeid, browsename, [objecttype] or namespace index, name, [objecttype] if objectype is given (a NodeId) then the type node is instantiated inclusive its child nodes """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) if objecttype is not None: objecttype = node.Node(parent.server, objecttype) dname = ua.LocalizedText(qname.Name) nodes = instantiate(parent, objecttype, nodeid, bname=qname, dname=dname)[0] return nodes else: return node.Node(parent.server, _create_object(parent.server, parent.nodeid, nodeid, qname, ua.ObjectIds.BaseObjectType)) def create_property(parent, nodeid, bname, val, varianttype=None, datatype=None): """ create a child node property args are nodeid, browsename, value, [variant type] or idx, name, value, [variant type] """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) var = ua.Variant(val, varianttype) if datatype and isinstance(datatype, int): datatype = ua.NodeId(datatype, 0) if datatype and not isinstance(datatype, ua.NodeId): raise RuntimeError("datatype argument must be a nodeid or an int refering to a nodeid") return node.Node(parent.server, _create_variable(parent.server, parent.nodeid, nodeid, qname, var, datatype=datatype, isproperty=True)) def create_variable(parent, nodeid, bname, val, varianttype=None, datatype=None): """ create a child node variable args are nodeid, browsename, value, [variant type], [data type] or idx, name, value, [variant type], [data type] """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) var = ua.Variant(val, varianttype) if datatype and isinstance(datatype, int): datatype = ua.NodeId(datatype, 0) if datatype and not isinstance(datatype, ua.NodeId): raise RuntimeError("datatype argument must be a nodeid or an int refering to a nodeid") return node.Node(parent.server, _create_variable(parent.server, parent.nodeid, nodeid, qname, var, datatype=datatype, isproperty=False)) def create_variable_type(parent, nodeid, bname, datatype): """ Create a new variable type args are nodeid, browsename and datatype or idx, name and data type """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) if datatype and isinstance(datatype, int): datatype = ua.NodeId(datatype, 0) if datatype and not isinstance(datatype, ua.NodeId): raise RuntimeError("Data type argument must be a nodeid or an int refering to a nodeid, received: {}".format(datatype)) return node.Node(parent.server, _create_variable_type(parent.server, parent.nodeid, nodeid, qname, datatype)) def create_reference_type(parent, nodeid, bname, symmetric=True, inversename=None): """ Create a new reference type args are nodeid and browsename or idx and name """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) return node.Node(parent.server, _create_reference_type(parent.server, parent.nodeid, nodeid, qname, symmetric, inversename)) def create_object_type(parent, nodeid, bname): """ Create a new object type to be instanciated in address space. arguments are nodeid, browsename or namespace index, name """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) return node.Node(parent.server, _create_object_type(parent.server, parent.nodeid, nodeid, qname)) def create_method(parent, *args): """ create a child method object This is only possible on server side!! args are nodeid, browsename, method_to_be_called, [input argument types], [output argument types] or idx, name, method_to_be_called, [input argument types], [output argument types] if argument types is specified, child nodes advertising what arguments the method uses and returns will be created a callback is a method accepting the nodeid of the parent as first argument and variants after. returns a list of variants """ nodeid, qname = _parse_nodeid_qname(*args[:2]) callback = args[2] if len(args) > 3: inputs = args[3] else: inputs = [] if len(args) > 4: outputs = args[4] else: outputs = [] return node.Node(parent.server, _create_method(parent, nodeid, qname, callback, inputs, outputs)) def _create_object(server, parentnodeid, nodeid, qname, objecttype): addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = qname addnode.ParentNodeId = parentnodeid if node.Node(server, parentnodeid).get_type_definition() == ua.NodeId(ua.ObjectIds.FolderType): addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.Organizes) else: addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasComponent) addnode.NodeClass = ua.NodeClass.Object if isinstance(objecttype, int): addnode.TypeDefinition = ua.NodeId(objecttype) else: addnode.TypeDefinition = objecttype attrs = ua.ObjectAttributes() attrs.EventNotifier = 0 attrs.Description = ua.LocalizedText(qname.Name) attrs.DisplayName = ua.LocalizedText(qname.Name) attrs.WriteMask = 0 attrs.UserWriteMask = 0 addnode.NodeAttributes = attrs results = server.add_nodes([addnode]) results[0].StatusCode.check() return results[0].AddedNodeId def _create_reference_type(server, parentnodeid, nodeid, qname, symmetric, inversename): addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = qname addnode.NodeClass = ua.NodeClass.ReferenceType addnode.ParentNodeId = parentnodeid addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasSubtype) attrs = ua.ReferenceTypeAttributes() attrs.IsAbstract = False attrs.Description = ua.LocalizedText(qname.Name) attrs.DisplayName = ua.LocalizedText(qname.Name) attrs.Symmetric = symmetric attrs.InverseName = ua.LocalizedText(inversename) attrs.UserWriteMask = 0 addnode.NodeAttributes = attrs results = server.add_nodes([addnode]) results[0].StatusCode.check() return results[0].AddedNodeId def _create_object_type(server, parentnodeid, nodeid, qname): addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = qname addnode.ParentNodeId = parentnodeid addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasSubtype) addnode.NodeClass = ua.NodeClass.ObjectType attrs = ua.ObjectTypeAttributes() attrs.IsAbstract = False attrs.Description = ua.LocalizedText(qname.Name) attrs.DisplayName = ua.LocalizedText(qname.Name) attrs.WriteMask = 0 attrs.UserWriteMask = 0 addnode.NodeAttributes = attrs results = server.add_nodes([addnode]) results[0].StatusCode.check() return results[0].AddedNodeId def _create_variable(server, parentnodeid, nodeid, qname, var, datatype=None, isproperty=False): addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = qname addnode.NodeClass = ua.NodeClass.Variable addnode.ParentNodeId = parentnodeid if isproperty: addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasProperty) addnode.TypeDefinition = ua.NodeId(ua.ObjectIds.PropertyType) else: addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasComponent) addnode.TypeDefinition = ua.NodeId(ua.ObjectIds.BaseDataVariableType) attrs = ua.VariableAttributes() attrs.Description = ua.LocalizedText(qname.Name) attrs.DisplayName = ua.LocalizedText(qname.Name) if datatype: attrs.DataType = datatype else: attrs.DataType = _guess_datatype(var) attrs.Value = var if not isinstance(var.Value, (list, tuple)): attrs.ValueRank = ua.ValueRank.Scalar else: if var.Dimensions: attrs.ValueRank = len(var.Dimensions) attrs.ArrayDimensions = var.Dimensions attrs.WriteMask = 0 attrs.UserWriteMask = 0 attrs.Historizing = 0 attrs.AccessLevel = ua.AccessLevel.CurrentRead.mask attrs.UserAccessLevel = ua.AccessLevel.CurrentRead.mask addnode.NodeAttributes = attrs results = server.add_nodes([addnode]) results[0].StatusCode.check() return results[0].AddedNodeId def _create_variable_type(server, parentnodeid, nodeid, qname, datatype, value=None): addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = qname addnode.NodeClass = ua.NodeClass.VariableType addnode.ParentNodeId = parentnodeid addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasSubtype) #addnode.TypeDefinition = ua.NodeId(ua.ObjectIds.BaseDataVariableType) attrs = ua.VariableTypeAttributes() attrs.Description = ua.LocalizedText(qname.Name) attrs.DisplayName = ua.LocalizedText(qname.Name) attrs.DataType = datatype attrs.IsAbstract = False if value: attrs.Value = value if isinstance(value, (list, tuple)): attrs.ValueRank = ua.ValueRank.OneDimension else: attrs.ValueRank = ua.ValueRank.Scalar #attrs.ArrayDimensions = None attrs.WriteMask = 0 attrs.UserWriteMask = 0 addnode.NodeAttributes = attrs results = server.add_nodes([addnode]) results[0].StatusCode.check() return results[0].AddedNodeId def create_data_type(parent, nodeid, bname, description=None): """ Create a new data type to be used in new variables, etc .. arguments are nodeid, browsename or namespace index, name """ nodeid, qname = _parse_nodeid_qname(nodeid, bname) addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = qname addnode.NodeClass = ua.NodeClass.DataType addnode.ParentNodeId = parent.nodeid addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasSubtype) #addnode.TypeDefinition = ua.NodeId(ua.ObjectIds.BaseDataVariableType) # No type definition for types attrs = ua.DataTypeAttributes() if description is None: attrs.Description = ua.LocalizedText(qname.Name) else: attrs.Description = ua.LocalizedText(description) attrs.DisplayName = ua.LocalizedText(qname.Name) attrs.WriteMask = 0 attrs.UserWriteMask = 0 attrs.IsAbstract = False # True mean they cannot be instanciated addnode.NodeAttributes = attrs results = parent.server.add_nodes([addnode]) results[0].StatusCode.check() return node.Node(parent.server, results[0].AddedNodeId) def _create_method(parent, nodeid, qname, callback, inputs, outputs): addnode = ua.AddNodesItem() addnode.RequestedNewNodeId = nodeid addnode.BrowseName = qname addnode.NodeClass = ua.NodeClass.Method addnode.ParentNodeId = parent.nodeid addnode.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasComponent) #node.TypeDefinition = ua.NodeId(ua.ObjectIds.BaseObjectType) attrs = ua.MethodAttributes() attrs.Description = ua.LocalizedText(qname.Name) attrs.DisplayName = ua.LocalizedText(qname.Name) attrs.WriteMask = 0 attrs.UserWriteMask = 0 attrs.Executable = True attrs.UserExecutable = True addnode.NodeAttributes = attrs results = parent.server.add_nodes([addnode]) results[0].StatusCode.check() method = node.Node(parent.server, results[0].AddedNodeId) if inputs: create_property(method, ua.NodeId(namespaceidx=method.nodeid.NamespaceIndex), ua.QualifiedName("InputArguments", 0), [_vtype_to_argument(vtype) for vtype in inputs], varianttype=ua.VariantType.ExtensionObject, datatype=ua.ObjectIds.Argument) if outputs: create_property(method, ua.NodeId(namespaceidx=method.nodeid.NamespaceIndex), ua.QualifiedName("OutputArguments", 0), [_vtype_to_argument(vtype) for vtype in outputs], varianttype=ua.VariantType.ExtensionObject, datatype=ua.ObjectIds.Argument) if hasattr(parent.server, "add_method_callback"): parent.server.add_method_callback(method.nodeid, callback) return results[0].AddedNodeId def _vtype_to_argument(vtype): if isinstance(vtype, ua.Argument): return vtype arg = ua.Argument() if isinstance(vtype, ua.VariantType): arg.DataType = ua.NodeId(vtype.value) else: arg.DataType = ua.NodeId(vtype) return arg def _guess_datatype(variant): if variant.VariantType == ua.VariantType.ExtensionObject: if variant.Value is None: raise ua.UaError("Cannot guess DataType from Null ExtensionObject") if type(variant.Value) in (list, tuple): if len(variant.Value) == 0: raise ua.UaError("Cannot guess DataType from Null ExtensionObject") extobj = variant.Value[0] else: extobj = variant.Value classname = extobj.__class__.__name__ return ua.NodeId(getattr(ua.ObjectIds, classname)) else: return ua.NodeId(getattr(ua.ObjectIds, variant.VariantType.name)) def delete_nodes(server, nodes, recursive=False, delete_target_references=True): """ Delete specified nodes. Optionally delete recursively all nodes with a downward hierachic references to the node return the list of deleted node and the result """ nodestodelete = [] if recursive: nodes = _add_childs(nodes) for mynode in nodes: it = ua.DeleteNodesItem() it.NodeId = mynode.nodeid it.DeleteTargetReferences = delete_target_references nodestodelete.append(it) params = ua.DeleteNodesParameters() params.NodesToDelete = nodestodelete return nodes, server.delete_nodes(params) def _add_childs(nodes): results = [] for mynode in nodes: results += _add_childs(mynode.get_children()) results += [mynode] return results python-opcua-0.98.9/opcua/common/methods.py000066400000000000000000000054041357637245100207030ustar00rootroot00000000000000""" High level method related functions """ from opcua import ua from opcua.common import node def call_method(parent, methodid, *args): """ Call an OPC-UA method. methodid is browse name of child method or the nodeid of method as a NodeId object arguments are variants or python object convertible to variants. which may be of different types returns a list of values or a single value depending on the output of the method """ result = call_method_full(parent, methodid, *args) if len(result.OutputArguments) == 0: return None elif len(result.OutputArguments) == 1: return result.OutputArguments[0] else: return result.OutputArguments def call_method_full(parent, methodid, *args): """ Call an OPC-UA method. methodid is browse name of child method or the nodeid of method as a NodeId object arguments are variants or python object convertible to variants. which may be of different types returns a CallMethodResult object with converted OutputArguments """ if isinstance(methodid, (str, ua.uatypes.QualifiedName)): methodid = parent.get_child(methodid).nodeid elif isinstance(methodid, node.Node): methodid = methodid.nodeid result = _call_method(parent.server, parent.nodeid, methodid, to_variant(*args)) result.OutputArguments = [var.Value for var in result.OutputArguments] return result def _call_method(server, parentnodeid, methodid, arguments): request = ua.CallMethodRequest() request.ObjectId = parentnodeid request.MethodId = methodid request.InputArguments = arguments methodstocall = [request] results = server.call(methodstocall) res = results[0] res.StatusCode.check() return res def uamethod(func): """ Method decorator to automatically convert arguments and output to and from variants """ def wrapper(parent, *args): if isinstance(parent, ua.NodeId): result = func(parent, *[arg.Value for arg in args]) else: self = parent parent = args[0] args = args[1:] result = func(self, parent, *[arg.Value for arg in args]) if result is None: return [] elif isinstance(result, ua.CallMethodResult): result.OutputArguments = to_variant(*result.OutputArguments) return result elif isinstance(result, ua.StatusCode): return result elif isinstance(result, tuple): return to_variant(*result) else: return to_variant(result) return wrapper def to_variant(*args): uaargs = [] for arg in args: if not isinstance(arg, ua.Variant): arg = ua.Variant(arg) uaargs.append(arg) return uaargs python-opcua-0.98.9/opcua/common/node.py000066400000000000000000000634011357637245100201660ustar00rootroot00000000000000""" High level node object, to access node attribute and browse address space """ from datetime import datetime from opcua import ua from opcua.common import events import opcua.common def _check_results(results, reqlen=1): assert len(results) == reqlen, results for r in results: r.check() def _to_nodeid(nodeid): if isinstance(nodeid, int): return ua.TwoByteNodeId(nodeid) elif isinstance(nodeid, Node): return nodeid.nodeid elif isinstance(nodeid, ua.NodeId): return nodeid elif type(nodeid) in (str, bytes): return ua.NodeId.from_string(nodeid) else: raise ua.UaError("Could not resolve '{0}' to a type id".format(nodeid)) class Node(object): """ High level node object, to access node attribute, browse and populate address space. Node objects are usefull as-is but they do not expose the entire OPC-UA protocol. Feel free to look at the code of this class and call directly UA services methods to optimize your code """ def __init__(self, server, nodeid): self.server = server self.nodeid = None if isinstance(nodeid, Node): self.nodeid = nodeid.nodeid elif isinstance(nodeid, ua.NodeId): self.nodeid = nodeid elif type(nodeid) in (str, bytes): self.nodeid = ua.NodeId.from_string(nodeid) elif isinstance(nodeid, int): self.nodeid = ua.NodeId(nodeid, 0) else: raise ua.UaError("argument to node must be a NodeId object or a string defining a nodeid found {0} of type {1}".format(nodeid, type(nodeid))) self.basenodeid = None def __eq__(self, other): if isinstance(other, Node) and self.nodeid == other.nodeid: return True return False def __ne__(self, other): return not self.__eq__(other) def __str__(self): return "Node({0})".format(self.nodeid) __repr__ = __str__ def __hash__(self): return self.nodeid.__hash__() def get_browse_name(self): """ Get browse name of a node. A browse name is a QualifiedName object composed of a string(name) and a namespace index. """ result = self.get_attribute(ua.AttributeIds.BrowseName) return result.Value.Value def get_display_name(self): """ get description attribute of node """ result = self.get_attribute(ua.AttributeIds.DisplayName) return result.Value.Value def get_data_type(self): """ get data type of node as NodeId """ result = self.get_attribute(ua.AttributeIds.DataType) return result.Value.Value def get_data_type_as_variant_type(self): """ get data type of node as VariantType This only works if node is a variable, otherwise type may not be convertible to VariantType """ result = self.get_attribute(ua.AttributeIds.DataType) return opcua.common.ua_utils.data_type_to_variant_type(Node(self.server, result.Value.Value)) def get_access_level(self): """ Get the access level attribute of the node as a set of AccessLevel enum values. """ result = self.get_attribute(ua.AttributeIds.AccessLevel) return ua.AccessLevel.parse_bitfield(result.Value.Value) def get_user_access_level(self): """ Get the user access level attribute of the node as a set of AccessLevel enum values. """ result = self.get_attribute(ua.AttributeIds.UserAccessLevel) return ua.AccessLevel.parse_bitfield(result.Value.Value) def get_event_notifier(self): """ Get the event notifier attribute of the node as a set of EventNotifier enum values. """ result = self.get_attribute(ua.AttributeIds.EventNotifier) return ua.EventNotifier.parse_bitfield(result.Value.Value) def set_event_notifier(self, values): """ Set the event notifier attribute. :param values: an iterable of EventNotifier enum values. """ event_notifier_bitfield = ua.EventNotifier.to_bitfield(values) self.set_attribute(ua.AttributeIds.EventNotifier, ua.DataValue(ua.Variant(event_notifier_bitfield, ua.VariantType.Byte))) def get_node_class(self): """ get node class attribute of node """ result = self.get_attribute(ua.AttributeIds.NodeClass) return result.Value.Value def get_description(self): """ get description attribute class of node """ result = self.get_attribute(ua.AttributeIds.Description) return result.Value.Value def get_value(self): """ Get value of a node as a python type. Only variables ( and properties) have values. An exception will be generated for other node types. WARNING: on server side, this function returns a ref to object in ua database. Do not modify it if it is a mutable object unless you know what you are doing """ result = self.get_data_value() return result.Value.Value def get_data_value(self): """ Get value of a node as a DataValue object. Only variables (and properties) have values. An exception will be generated for other node types. DataValue contain a variable value as a variant as well as server and source timestamps """ return self.get_attribute(ua.AttributeIds.Value) def set_array_dimensions(self, value): """ Set attribute ArrayDimensions of node make sure it has the correct data type """ v = ua.Variant(value, ua.VariantType.UInt32) self.set_attribute(ua.AttributeIds.ArrayDimensions, ua.DataValue(v)) def get_array_dimensions(self): """ Read and return ArrayDimensions attribute of node """ res = self.get_attribute(ua.AttributeIds.ArrayDimensions) return res.Value.Value def set_value_rank(self, value): """ Set attribute ArrayDimensions of node """ v = ua.Variant(value, ua.VariantType.Int32) self.set_attribute(ua.AttributeIds.ValueRank, ua.DataValue(v)) def get_value_rank(self): """ Read and return ArrayDimensions attribute of node """ res = self.get_attribute(ua.AttributeIds.ValueRank) return res.Value.Value def set_value(self, value, varianttype=None): """ Set value of a node. Only variables(properties) have values. An exception will be generated for other node types. value argument is either: * a python built-in type, converted to opc-ua optionnaly using the variantype argument. * a ua.Variant, varianttype is then ignored * a ua.DataValue, you then have full control over data send to server WARNING: On server side, ref to object is directly saved in our UA db, if this is a mutable object and you modfy it afterward, then the object in db will be modified without any data change event generated """ datavalue = None if isinstance(value, ua.DataValue): datavalue = value elif isinstance(value, ua.Variant): datavalue = ua.DataValue(value) datavalue.SourceTimestamp = datetime.utcnow() else: datavalue = ua.DataValue(ua.Variant(value, varianttype)) datavalue.SourceTimestamp = datetime.utcnow() self.set_attribute(ua.AttributeIds.Value, datavalue) set_data_value = set_value def set_writable(self, writable=True): """ Set node as writable by clients. A node is always writable on server side. """ if writable: self.set_attr_bit(ua.AttributeIds.AccessLevel, ua.AccessLevel.CurrentWrite) self.set_attr_bit(ua.AttributeIds.UserAccessLevel, ua.AccessLevel.CurrentWrite) else: self.unset_attr_bit(ua.AttributeIds.AccessLevel, ua.AccessLevel.CurrentWrite) self.unset_attr_bit(ua.AttributeIds.UserAccessLevel, ua.AccessLevel.CurrentWrite) def set_attr_bit(self, attr, bit): val = self.get_attribute(attr) val.Value.Value = ua.ua_binary.set_bit(val.Value.Value, bit) self.set_attribute(attr, val) def unset_attr_bit(self, attr, bit): val = self.get_attribute(attr) val.Value.Value = ua.ua_binary.unset_bit(val.Value.Value, bit) self.set_attribute(attr, val) def set_read_only(self): """ Set a node as read-only for clients. A node is always writable on server side. """ return self.set_writable(False) def set_attribute(self, attributeid, datavalue): """ Set an attribute of a node attributeid is a member of ua.AttributeIds datavalue is a ua.DataValue object """ attr = ua.WriteValue() attr.NodeId = self.nodeid attr.AttributeId = attributeid attr.Value = datavalue params = ua.WriteParameters() params.NodesToWrite = [attr] result = self.server.write(params) result[0].check() def get_attribute(self, attr): """ Read one attribute of a node result code from server is checked and an exception is raised in case of error """ rv = ua.ReadValueId() rv.NodeId = self.nodeid rv.AttributeId = attr params = ua.ReadParameters() params.NodesToRead.append(rv) result = self.server.read(params) result[0].StatusCode.check() return result[0] def get_attributes(self, attrs): """ Read several attributes of a node list of DataValue is returned """ params = ua.ReadParameters() for attr in attrs: rv = ua.ReadValueId() rv.NodeId = self.nodeid rv.AttributeId = attr params.NodesToRead.append(rv) results = self.server.read(params) return results def get_children(self, refs=ua.ObjectIds.HierarchicalReferences, nodeclassmask=ua.NodeClass.Unspecified): """ Get all children of a node. By default hierarchical references and all node classes are returned. Other reference types may be given: References = 31 NonHierarchicalReferences = 32 HierarchicalReferences = 33 HasChild = 34 Organizes = 35 HasEventSource = 36 HasModellingRule = 37 HasEncoding = 38 HasDescription = 39 HasTypeDefinition = 40 GeneratesEvent = 41 Aggregates = 44 HasSubtype = 45 HasProperty = 46 HasComponent = 47 HasNotifier = 48 HasOrderedComponent = 49 """ return self.get_referenced_nodes(refs, ua.BrowseDirection.Forward, nodeclassmask) def get_properties(self): """ return properties of node. properties are child nodes with a reference of type HasProperty and a NodeClass of Variable """ return self.get_children(refs=ua.ObjectIds.HasProperty, nodeclassmask=ua.NodeClass.Variable) def get_variables(self): """ return variables of node. properties are child nodes with a reference of type HasComponent and a NodeClass of Variable """ return self.get_children(refs=ua.ObjectIds.HasComponent, nodeclassmask=ua.NodeClass.Variable) def get_methods(self): """ return methods of node. properties are child nodes with a reference of type HasComponent and a NodeClass of Method """ return self.get_children(refs=ua.ObjectIds.HasComponent, nodeclassmask=ua.NodeClass.Method) def get_children_descriptions(self, refs=ua.ObjectIds.HierarchicalReferences, nodeclassmask=ua.NodeClass.Unspecified, includesubtypes=True): return self.get_references(refs, ua.BrowseDirection.Forward, nodeclassmask, includesubtypes) def get_encoding_refs(self): return self.get_referenced_nodes(ua.ObjectIds.HasEncoding, ua.BrowseDirection.Forward) def get_description_refs(self): return self.get_referenced_nodes(ua.ObjectIds.HasDescription, ua.BrowseDirection.Forward) def get_references(self, refs=ua.ObjectIds.References, direction=ua.BrowseDirection.Both, nodeclassmask=ua.NodeClass.Unspecified, includesubtypes=True): """ returns references of the node based on specific filter defined with: refs = ObjectId of the Reference direction = Browse direction for references nodeclassmask = filter nodes based on specific class includesubtypes = If true subtypes of the reference (ref) are also included """ desc = ua.BrowseDescription() desc.BrowseDirection = direction desc.ReferenceTypeId = _to_nodeid(refs) desc.IncludeSubtypes = includesubtypes desc.NodeClassMask = nodeclassmask desc.ResultMask = ua.BrowseResultMask.All desc.NodeId = self.nodeid params = ua.BrowseParameters() params.View.Timestamp = ua.get_win_epoch() params.NodesToBrowse.append(desc) params.RequestedMaxReferencesPerNode = 0 results = self.server.browse(params) references = self._browse_next(results) return references def _browse_next(self, results): references = results[0].References while results[0].ContinuationPoint: params = ua.BrowseNextParameters() params.ContinuationPoints = [results[0].ContinuationPoint] params.ReleaseContinuationPoints = False results = self.server.browse_next(params) references.extend(results[0].References) return references def get_referenced_nodes(self, refs=ua.ObjectIds.References, direction=ua.BrowseDirection.Both, nodeclassmask=ua.NodeClass.Unspecified, includesubtypes=True): """ returns referenced nodes based on specific filter Paramters are the same as for get_references """ references = self.get_references(refs, direction, nodeclassmask, includesubtypes) nodes = [] for desc in references: node = Node(self.server, desc.NodeId) nodes.append(node) return nodes def get_type_definition(self): """ returns type definition of the node. """ references = self.get_references(refs=ua.ObjectIds.HasTypeDefinition, direction=ua.BrowseDirection.Forward) if len(references) == 0: return None return references[0].NodeId def get_path(self, max_length=20, as_string=False): """ Attempt to find path of node from root node and return it as a list of Nodes. There might several possible paths to a node, this function will return one Some nodes may be missing references, so this method may return an empty list Since address space may have circular references, a max length is specified """ path = self._get_path(max_length) path = [Node(self.server, ref.NodeId) for ref in path] path.append(self) if as_string: path = [el.get_browse_name().to_string() for el in path] return path def _get_path(self, max_length=20): """ Attempt to find path of node from root node and return it as a list of Nodes. There might several possible paths to a node, this function will return one Some nodes may be missing references, so this method may return an empty list Since address space may have circular references, a max length is specified """ path = [] node = self while True: refs = node.get_references(refs=ua.ObjectIds.HierarchicalReferences, direction=ua.BrowseDirection.Inverse) if len(refs) > 0: path.insert(0, refs[0]) node = Node(self.server, refs[0].NodeId) if len(path) >= (max_length -1): return path else: return path def get_parent(self): """ returns parent of the node. A Node may have several parents, the first found is returned. This method uses reverse references, a node might be missing such a link, thus we will not find its parent. """ refs = self.get_references(refs=ua.ObjectIds.HierarchicalReferences, direction=ua.BrowseDirection.Inverse) if len(refs) > 0: return Node(self.server, refs[0].NodeId) else: return None def get_child(self, path): """ get a child specified by its path from this node. A path might be: * a string representing a qualified name. * a qualified name * a list of string * a list of qualified names """ if type(path) not in (list, tuple): path = [path] rpath = self._make_relative_path(path) bpath = ua.BrowsePath() bpath.StartingNode = self.nodeid bpath.RelativePath = rpath result = self.server.translate_browsepaths_to_nodeids([bpath]) result = result[0] result.StatusCode.check() # FIXME: seems this method may return several nodes return Node(self.server, result.Targets[0].TargetId) def _make_relative_path(self, path): rpath = ua.RelativePath() for item in path: el = ua.RelativePathElement() el.ReferenceTypeId = ua.TwoByteNodeId(ua.ObjectIds.HierarchicalReferences) el.IsInverse = False el.IncludeSubtypes = True if isinstance(item, ua.QualifiedName): el.TargetName = item else: el.TargetName = ua.QualifiedName.from_string(item) rpath.Elements.append(el) return rpath def read_raw_history(self, starttime=None, endtime=None, numvalues=0): """ Read raw history of a node result code from server is checked and an exception is raised in case of error If numvalues is > 0 and number of events in period is > numvalues then result will be truncated """ details = ua.ReadRawModifiedDetails() details.IsReadModified = False if starttime: details.StartTime = starttime else: details.StartTime = ua.get_win_epoch() if endtime: details.EndTime = endtime else: details.EndTime = ua.get_win_epoch() details.NumValuesPerNode = numvalues details.ReturnBounds = True result = self.history_read(details) return result.HistoryData.DataValues def history_read(self, details): """ Read raw history of a node, low-level function result code from server is checked and an exception is raised in case of error """ valueid = ua.HistoryReadValueId() valueid.NodeId = self.nodeid valueid.IndexRange = '' params = ua.HistoryReadParameters() params.HistoryReadDetails = details params.TimestampsToReturn = ua.TimestampsToReturn.Both params.ReleaseContinuationPoints = False params.NodesToRead.append(valueid) result = self.server.history_read(params)[0] return result def read_event_history(self, starttime=None, endtime=None, numvalues=0, evtypes=ua.ObjectIds.BaseEventType): """ Read event history of a source node result code from server is checked and an exception is raised in case of error If numvalues is > 0 and number of events in period is > numvalues then result will be truncated """ details = ua.ReadEventDetails() if starttime: details.StartTime = starttime else: details.StartTime = ua.get_win_epoch() if endtime: details.EndTime = endtime else: details.EndTime = ua.get_win_epoch() details.NumValuesPerNode = numvalues if not isinstance(evtypes, (list, tuple)): evtypes = [evtypes] evtypes = [Node(self.server, evtype) for evtype in evtypes] evfilter = events.get_filter_from_event_type(evtypes) details.Filter = evfilter result = self.history_read_events(details) event_res = [] for res in result.HistoryData.Events: event_res.append(events.Event.from_event_fields(evfilter.SelectClauses, res.EventFields)) return event_res def history_read_events(self, details): """ Read event history of a node, low-level function result code from server is checked and an exception is raised in case of error """ valueid = ua.HistoryReadValueId() valueid.NodeId = self.nodeid valueid.IndexRange = '' params = ua.HistoryReadParameters() params.HistoryReadDetails = details params.TimestampsToReturn = ua.TimestampsToReturn.Both params.ReleaseContinuationPoints = False params.NodesToRead.append(valueid) result = self.server.history_read(params)[0] return result def delete(self, delete_references=True, recursive=False): """ Delete node from address space """ nodes, results = opcua.common.manage_nodes.delete_nodes(self.server, [self], recursive, delete_references) for r in results: r.check() return nodes def _fill_delete_reference_item(self, rdesc, bidirectional = False): ditem = ua.DeleteReferencesItem() ditem.SourceNodeId = self.nodeid ditem.TargetNodeId = rdesc.NodeId ditem.ReferenceTypeId = rdesc.ReferenceTypeId ditem.IsForward = rdesc.IsForward ditem.DeleteBidirectional = bidirectional return ditem def delete_reference(self, target, reftype, forward=True, bidirectional=True): """ Delete given node's references from address space """ known_refs = self.get_references(reftype, includesubtypes=False) targetid = _to_nodeid(target) for r in known_refs: if r.NodeId == targetid and r.IsForward == forward: rdesc = r break else: raise ua.UaStatusCodeError(ua.StatusCodes.BadNotFound) ditem = self._fill_delete_reference_item(rdesc, bidirectional) self.server.delete_references([ditem])[0].check() def add_reference(self, target, reftype, forward=True, bidirectional=True): """ Add reference to node """ aitem = ua.AddReferencesItem() aitem.SourceNodeId = self.nodeid aitem.TargetNodeId = _to_nodeid(target) aitem.ReferenceTypeId = _to_nodeid(reftype) aitem.IsForward = forward params = [aitem] if bidirectional: aitem2 = ua.AddReferencesItem() aitem2.SourceNodeId = aitem.TargetNodeId aitem2.TargetNodeId = aitem.SourceNodeId aitem2.ReferenceTypeId = aitem.ReferenceTypeId aitem2.IsForward = not forward params.append(aitem2) results = self.server.add_references(params) for r in results: r.check() def set_modelling_rule(self, mandatory): """ Add a modelling rule reference to Node. When creating a new object type, its variable and child nodes will not be instanciated if they do not have modelling rule if mandatory is None, the modelling rule is removed """ # remove all existing modelling rule rules = self.get_references(ua.ObjectIds.HasModellingRule) self.server.delete_references(list(map(self._fill_delete_reference_item, rules))) # add new modelling rule as requested if mandatory is not None: rule = ua.ObjectIds.ModellingRule_Mandatory if mandatory else ua.ObjectIds.ModellingRule_Optional self.add_reference(rule, ua.ObjectIds.HasModellingRule, True, False) def add_folder(self, nodeid, bname): return opcua.common.manage_nodes.create_folder(self, nodeid, bname) def add_object(self, nodeid, bname, objecttype=None): return opcua.common.manage_nodes.create_object(self, nodeid, bname, objecttype) def add_variable(self, nodeid, bname, val, varianttype=None, datatype=None): return opcua.common.manage_nodes.create_variable(self, nodeid, bname, val, varianttype, datatype) def add_object_type(self, nodeid, bname): return opcua.common.manage_nodes.create_object_type(self, nodeid, bname) def add_variable_type(self, nodeid, bname, datatype): return opcua.common.manage_nodes.create_variable_type(self, nodeid, bname, datatype) def add_data_type(self, nodeid, bname, description=None): return opcua.common.manage_nodes.create_data_type(self, nodeid, bname, description=description) def add_property(self, nodeid, bname, val, varianttype=None, datatype=None): return opcua.common.manage_nodes.create_property(self, nodeid, bname, val, varianttype, datatype) def add_method(self, *args): return opcua.common.manage_nodes.create_method(self, *args) def add_reference_type(self, nodeid, bname, symmetric=True, inversename=None): return opcua.common.manage_nodes.create_reference_type(self, nodeid, bname, symmetric, inversename) def call_method(self, methodid, *args): return opcua.common.methods.call_method(self, methodid, *args) def register(self): """ Register node for faster read and write access (if supported by server) Rmw: This call modifies the nodeid of the node, the original nodeid is available as node.basenodeid """ nodeid = self.server.register_nodes([self.nodeid])[0] self.basenodeid = self.nodeid self.nodeid = nodeid def unregister(self): if self.basenodeid is None: return self.server.unregister_nodes([self.nodeid]) self.nodeid = self.basenodeid self.basenodeid = None python-opcua-0.98.9/opcua/common/shortcuts.py000066400000000000000000000026711357637245100213010ustar00rootroot00000000000000from opcua.ua import ObjectIds from opcua import Node class Shortcuts(object): """ This object contains Node objects to some commonly used nodes """ def __init__(self, server): self.root = Node(server, ObjectIds.RootFolder) self.objects = Node(server, ObjectIds.ObjectsFolder) self.server = Node(server, ObjectIds.Server) self.types = Node(server, ObjectIds.TypesFolder) self.base_object_type = Node(server, ObjectIds.BaseObjectType) self.base_data_type = Node(server, ObjectIds.BaseDataType) self.base_event_type = Node(server, ObjectIds.BaseEventType) self.base_variable_type = Node(server, ObjectIds.BaseVariableType) self.folder_type = Node(server, ObjectIds.FolderType) self.enum_data_type = Node(server, ObjectIds.Enumeration) self.types = Node(server, ObjectIds.TypesFolder) self.data_types = Node(server, ObjectIds.DataTypesFolder) self.event_types = Node(server, ObjectIds.EventTypesFolder) self.reference_types = Node(server, ObjectIds.ReferenceTypesFolder) self.variable_types = Node(server, ObjectIds.VariableTypesFolder) self.object_types = Node(server, ObjectIds.ObjectTypesFolder) self.namespace_array = Node(server, ObjectIds.Server_NamespaceArray) self.opc_binary = Node(server, ObjectIds.OPCBinarySchema_TypeSystem) self.base_structure_type = Node(server, ObjectIds.Structure) python-opcua-0.98.9/opcua/common/structures.py000066400000000000000000000265731357637245100214750ustar00rootroot00000000000000""" Support for custom structures in client and server We only support a subset of features but should be enough for custom structures """ import os import importlib import re import logging # The next two imports are for generated code from datetime import datetime import uuid from enum import Enum, IntEnum, EnumMeta from lxml import objectify from opcua.ua.ua_binary import Primitives from opcua import ua logger = logging.getLogger(__name__) def get_default_value(uatype, enums): if uatype == "String": return "None" elif uatype == "Guid": return "uuid.uuid4()" elif uatype in ("ByteString", "CharArray", "Char"): return "b''" elif uatype == "Boolean": return "True" elif uatype == "DateTime": return "datetime.utcnow()" elif uatype in ("Int16", "Int32", "Int64", "UInt16", "UInt32", "UInt64", "Double", "Float", "Byte", "SByte"): return 0 elif uatype in enums: return "ua." + uatype + "(" + enums[uatype] + ")" elif hasattr(ua, uatype) and issubclass(getattr(ua, uatype), Enum): # We have an enum, try to initilize it correctly val = list(getattr(ua, uatype).__members__)[0] return "ua.{}.{}".format(uatype, val) else: return "ua.{}()".format(uatype) class EnumType(object): def __init__(self, name): self.name = name self.fields = [] self.typeid = None def get_code(self): code = """ class {0}(IntEnum): ''' {0} EnumInt autogenerated from xml ''' """.format(self.name) for EnumeratedValue in self.fields: name = EnumeratedValue.Name value = EnumeratedValue.Value code += " {} = {}\n".format(name, value) return code class EnumeratedValue(object): def __init__(self, name, value): if name == "None": name = "None_" name = name.replace(" ", "") self.Name = name self.Value = value class Struct(object): def __init__(self, name): self.name = name self.fields = [] self.typeid = None def __str__(self): return "Struct(name={}, fields={}".format(self.name, self.fields) __repr__ = __str__ def get_code(self): code = """ class {0}(object): ''' {0} structure autogenerated from xml ''' """.format(self.name) code += " ua_types = [\n" for field in self.fields: prefix = "ListOf" if field.array else "" uatype = prefix + field.uatype if uatype == "ListOfChar": uatype = "String" code += " ('{}', '{}'),\n".format(field.name, uatype) code += " ]" code += """ def __str__(self): vals = [name + ": " + str(val) for name, val in self.__dict__.items()] return self.__class__.__name__ + "(" + ", ".join(vals) + ")" __repr__ = __str__ def __init__(self): """ if not self.fields: code += " pass" for field in self.fields: code += " self.{} = {}\n".format(field.name, field.value) return code class Field(object): def __init__(self, name): self.name = name self.uatype = None self.value = None self.array = False def __str__(self): return "Field(name={}, uatype={}".format(self.name, self.uatype) __repr__ = __str__ class StructGenerator(object): def __init__(self): self.model = [] def make_model_from_string(self, xml): obj = objectify.fromstring(xml) self._make_model(obj) def make_model_from_file(self, path): obj = objectify.parse(path) root = obj.getroot() self._make_model(root) def _make_model(self, root): enums = {} for child in root.iter("{*}EnumeratedType"): intenum = EnumType(child.get("Name")) for xmlfield in child.iter("{*}EnumeratedValue"): name = xmlfield.get("Name") value = xmlfield.get("Value") enumvalue = EnumeratedValue(name, value) intenum.fields.append(enumvalue) enums[child.get("Name")] = value self.model.append(intenum) for child in root.iter("{*}StructuredType"): struct = Struct(child.get("Name")) array = False for xmlfield in child.iter("{*}Field"): name = xmlfield.get("Name") if name.startswith("NoOf"): array = True continue field = Field(_clean_name(name)) field.uatype = xmlfield.get("TypeName") if ":" in field.uatype: field.uatype = field.uatype.split(":")[1] field.uatype = _clean_name(field.uatype) field.value = get_default_value(field.uatype, enums) if array: field.array = True field.value = [] array = False struct.fields.append(field) self.model.append(struct) def save_to_file(self, path, register=False): _file = open(path, "wt") self._make_header(_file) for struct in self.model: _file.write(struct.get_code()) if register: _file.write(self._make_registration()) _file.close() def _make_registration(self): code = "\n\n" for struct in self.model: code += "ua.register_extension_object('{name}', ua.NodeId.from_string('{nodeid}'), {name})\n".format(name=struct.name, nodeid=struct.typeid) return code def get_python_classes(self, env=None): return _generate_python_class(self.model, env=env) def save_and_import(self, path, append_to=None): """ save the new structures to a python file which be used later import the result and return resulting classes in a dict if append_to is a dict, the classes are added to the dict """ self.save_to_file(path) name = os.path.basename(path) name = os.path.splitext(name)[0] mymodule = importlib.import_module(name) if append_to is None: result = {} else: result = append_to for struct in self.model: result[struct.name] = getattr(mymodule, struct.name) return result def _make_header(self, _file): _file.write(""" ''' THIS FILE IS AUTOGENERATED, DO NOT EDIT!!! ''' from datetime import datetime import uuid from opcua import ua """) def set_typeid(self, name, typeid): for struct in self.model: if struct.name == name: struct.typeid = typeid return def load_type_definitions(server, nodes=None): """ Download xml from given variable node defining custom structures. If no node is given, attemps to import variables from all nodes under "0:OPC Binary" the code is generated and imported on the fly. If you know the structures are not going to be modified it might be interresting to copy the generated files and include them in you code """ if nodes is None: nodes = [] for desc in server.nodes.opc_binary.get_children_descriptions(): if desc.BrowseName != ua.QualifiedName("Opc.Ua"): nodes.append(server.get_node(desc.NodeId)) structs_dict = {} generators = [] for node in nodes: xml = node.get_value() xml = xml.decode("utf-8") generator = StructGenerator() generators.append(generator) generator.make_model_from_string(xml) # generate and execute new code on the fly generator.get_python_classes(structs_dict) # same but using a file that is imported. This can be usefull for debugging library #name = node.get_browse_name().Name # Make sure structure names do not contain charaters that cannot be used in Python class file names #name = _clean_name(name) #name = "structures_" + node.get_browse_name().Name #generator.save_and_import(name + ".py", append_to=structs_dict) # register classes # every children of our node should represent a class for ndesc in node.get_children_descriptions(): ndesc_node = server.get_node(ndesc.NodeId) ref_desc_list = ndesc_node.get_references(refs=ua.ObjectIds.HasDescription, direction=ua.BrowseDirection.Inverse) if ref_desc_list: #some server put extra things here name = _clean_name(ndesc.BrowseName.Name) if not name in structs_dict: logger.warning("%s is found as child of binary definition node but is not found in xml", name) continue nodeid = ref_desc_list[0].NodeId ua.register_extension_object(name, nodeid, structs_dict[name]) # save the typeid if user want to create static file for type definitnion generator.set_typeid(name, nodeid.to_string()) for key, val in structs_dict.items(): if isinstance(val, EnumMeta) and key is not "IntEnum": setattr(ua, key, val) return generators, structs_dict def _clean_name(name): """ Remove characters that might be present in OPC UA structures but cannot be part of of Python class names """ name = re.sub(r'\W+', '_', name) name = re.sub(r'^[0-9]+', r'_\g<0>', name) return name def _generate_python_class(model, env=None): """ generate Python code and execute in a new environment return a dict of structures {name: class} Rmw: Since the code is generated on the fly, in case of error the stack trace is not available and debugging is very hard... """ if env is None: env = {} # Add the required libraries to dict if "ua" not in env: env['ua'] = ua if "datetime" not in env: env['datetime'] = datetime if "uuid" not in env: env['uuid'] = uuid if "enum" not in env: env['IntEnum'] = IntEnum # generate classes one by one and add them to dict for element in model: code = element.get_code() exec(code, env) return env def load_enums(server, env=None): """ Read enumeration data types on server and generate python Enums in ua scope for them """ model = [] nodes = server.nodes.enum_data_type.get_children() if env is None: env = ua.__dict__ for node in nodes: name = node.get_browse_name().Name try: c = _get_enum_strings(name, node) except ua.UaError as ex: try: c = _get_enum_values(name, node) except ua.UaError as ex: logger.info("Node %s, %s under DataTypes/Enumeration, does not seem to have a child called EnumString or EumValue: %s", name, node, ex) continue if not hasattr(ua, c.name): model.append(c) return _generate_python_class(model, env=env) def _get_enum_values(name, node): def_node = node.get_child("0:EnumValues") val = def_node.get_value() c = EnumType(name) c.fields = [EnumeratedValue(enumval.DisplayName.Text, enumval.Value) for enumval in val] return c def _get_enum_strings(name, node): def_node = node.get_child("0:EnumStrings") val = def_node.get_value() c = EnumType(name) c.fields = [EnumeratedValue(st.Text, idx) for idx, st in enumerate(val)] return c python-opcua-0.98.9/opcua/common/subscription.py000066400000000000000000000364141357637245100217710ustar00rootroot00000000000000""" high level interface to subscriptions """ import time import logging from threading import Lock import collections from opcua import ua from opcua.common import events from opcua import Node class SubHandler(object): """ Subscription Handler. To receive events from server for a subscription This class is just a sample class. Whatever class having these methods can be used """ def data_change(self, handle, node, val, attr): """ Deprecated, use datachange_notification """ pass def datachange_notification(self, node, val, data): """ called for every datachange notification from server """ pass def event_notification(self, event): """ called for every event notification from server """ pass def status_change_notification(self, status): """ called for every status change notification from server """ pass class SubscriptionItemData(object): """ To store useful data from a monitored item """ def __init__(self): self.node = None self.client_handle = None self.server_handle = None self.attribute = None self.mfilter = None class DataChangeNotif(object): """ To be send to clients for every datachange notification from server """ def __init__(self, subscription_data, monitored_item): self.monitored_item = monitored_item self.subscription_data = subscription_data def __str__(self): return "DataChangeNotification({0}, {1})".format(self.subscription_data, self.monitored_item) __repr__ = __str__ class Subscription(object): """ Subscription object returned by Server or Client objects. The object represent a subscription to an opc-ua server. This is a high level class, especially subscribe_data_change and subscribe_events methods. If more control is necessary look at code and/or use create_monitored_items method. """ def __init__(self, server, params, handler): self.logger = logging.getLogger(__name__) self.server = server self._client_handle = 200 self._handler = handler self.parameters = params # move to data class self._monitoreditems_map = {} self._lock = Lock() self.subscription_id = None response = self.server.create_subscription( params, self.publish_callback, ready_callback=self.ready_callback) # Set it here to keep the old behavof as well, but this may not run if # the above times out self.subscription_id = response.SubscriptionId #Send a publish request so the server has one in its queue # Servers should alsways be able to handle at least on extra publish request per subscriptions self.server.publish() def delete(self): """ Delete subscription on server. This is automatically done by Client and Server classes on exit """ results = self.server.delete_subscriptions([self.subscription_id]) results[0].check() def is_ready(self): return bool(self.subscription_id) def ready_callback(self, response): self.subscription_id = self.subscription_id or response.Parameters.SubscriptionId self.server.publish() def publish_callback(self, publishresult): self.logger.info("Publish callback called with result: %s", publishresult) if not self.is_ready(): self.logger.warning( "Result received but subscription not ready %s", publishresult) return if publishresult.NotificationMessage.NotificationData is not None: for notif in publishresult.NotificationMessage.NotificationData: if isinstance(notif, ua.DataChangeNotification): self._call_datachange(notif) elif isinstance(notif, ua.EventNotificationList): self._call_event(notif) elif isinstance(notif, ua.StatusChangeNotification): self._call_status(notif) else: self.logger.warning("Notification type not supported yet for notification %s", notif) else: self.logger.warning("NotificationMessage is None.") ack = ua.SubscriptionAcknowledgement() ack.SubscriptionId = self.subscription_id ack.SequenceNumber = publishresult.NotificationMessage.SequenceNumber self.server.publish([ack]) def _call_datachange(self, datachange): for item in datachange.MonitoredItems: with self._lock: if item.ClientHandle not in self._monitoreditems_map: self.logger.warning("Received a notification for unknown handle: %s", item.ClientHandle) continue data = self._monitoreditems_map[item.ClientHandle] if hasattr(self._handler, "datachange_notification"): event_data = DataChangeNotif(data, item) try: self._handler.datachange_notification(data.node, item.Value.Value.Value, event_data) except Exception: self.logger.exception("Exception calling data change handler") elif hasattr(self._handler, "data_change"): # deprecated API self.logger.warning("data_change method is deprecated, use datachange_notification") try: self._handler.data_change(data.server_handle, data.node, item.Value.Value.Value, data.attribute) except Exception: self.logger.exception("Exception calling deprecated data change handler") else: self.logger.error("DataChange subscription created but handler has no datachange_notification method") def _call_event(self, eventlist): for event in eventlist.Events: with self._lock: data = self._monitoreditems_map[event.ClientHandle] result = events.Event.from_event_fields(data.mfilter.SelectClauses, event.EventFields) result.server_handle = data.server_handle if hasattr(self._handler, "event_notification"): try: self._handler.event_notification(result) except Exception: self.logger.exception("Exception calling event handler") elif hasattr(self._handler, "event"): # depcrecated API try: self._handler.event(data.server_handle, result) except Exception: self.logger.exception("Exception calling deprecated event handler") else: self.logger.error("Event subscription created but handler has no event_notification method") def _call_status(self, status): try: self._handler.status_change_notification(status.Status) except Exception: self.logger.exception("Exception calling status change handler") def subscribe_data_change(self, nodes, attr=ua.AttributeIds.Value, queuesize=0): """ Subscribe for data change events for a node or list of nodes. default attribute is Value. Return a handle which can be used to unsubscribe If more control is necessary use create_monitored_items method """ return self._subscribe(nodes, attr, queuesize=queuesize) def subscribe_events(self, sourcenode=ua.ObjectIds.Server, evtypes=ua.ObjectIds.BaseEventType, evfilter=None, queuesize=0): """ Subscribe to events from a node. Default node is Server node. In most servers the server node is the only one you can subscribe to. if evtypes is not provided, evtype defaults to BaseEventType if evtypes is a list or tuple of custom event types, the events will be filtered to the supplied types Return a handle which can be used to unsubscribe """ sourcenode = Node(self.server, sourcenode) if evfilter is None: if not type(evtypes) in (list, tuple): evtypes = [evtypes] evtypes = [Node(self.server, evtype) for evtype in evtypes] evfilter = events.get_filter_from_event_type(evtypes) return self._subscribe(sourcenode, ua.AttributeIds.EventNotifier, evfilter, queuesize=queuesize) def _subscribe(self, nodes, attr, mfilter=None, queuesize=0): is_list = True if isinstance(nodes, collections.Iterable): nodes = list(nodes) else: nodes = [nodes] is_list = False mirs = [] for node in nodes: mir = self._make_monitored_item_request(node, attr, mfilter, queuesize) mirs.append(mir) mids = self.create_monitored_items(mirs) if is_list: return mids if type(mids[0]) == ua.StatusCode: mids[0].check() return mids[0] def _make_monitored_item_request(self, node, attr, mfilter, queuesize): rv = ua.ReadValueId() rv.NodeId = node.nodeid rv.AttributeId = attr # rv.IndexRange //We leave it null, then the entire array is returned mparams = ua.MonitoringParameters() with self._lock: self._client_handle += 1 mparams.ClientHandle = self._client_handle mparams.SamplingInterval = self.parameters.RequestedPublishingInterval mparams.QueueSize = queuesize mparams.DiscardOldest = True if mfilter: mparams.Filter = mfilter mir = ua.MonitoredItemCreateRequest() mir.ItemToMonitor = rv mir.MonitoringMode = ua.MonitoringMode.Reporting mir.RequestedParameters = mparams return mir def create_monitored_items(self, monitored_items): """ low level method to have full control over subscription parameters Client handle must be unique since it will be used as key for internal registration of data """ params = ua.CreateMonitoredItemsParameters() params.SubscriptionId = self.subscription_id params.ItemsToCreate = monitored_items params.TimestampsToReturn = ua.TimestampsToReturn.Both # insert monitored item into map to avoid notification arrive before result return # server_handle is left as None in purpose as we don't get it yet. with self._lock: for mi in monitored_items: data = SubscriptionItemData() data.client_handle = mi.RequestedParameters.ClientHandle data.node = Node(self.server, mi.ItemToMonitor.NodeId) data.attribute = mi.ItemToMonitor.AttributeId #TODO: Either use the filter from request or from response. Here it uses from request, in modify it uses from response data.mfilter = mi.RequestedParameters.Filter self._monitoreditems_map[mi.RequestedParameters.ClientHandle] = data results = self.server.create_monitored_items(params) mids = [] # process result, add server_handle, or remove it if failed with self._lock: for idx, result in enumerate(results): mi = params.ItemsToCreate[idx] if not result.StatusCode.is_good(): del self._monitoreditems_map[mi.RequestedParameters.ClientHandle] mids.append(result.StatusCode) continue data = self._monitoreditems_map[mi.RequestedParameters.ClientHandle] data.server_handle = result.MonitoredItemId mids.append(result.MonitoredItemId) return mids def unsubscribe(self, handle): """ unsubscribe to datachange or events using the handle returned while subscribing if you delete subscription, you do not need to unsubscribe """ params = ua.DeleteMonitoredItemsParameters() params.SubscriptionId = self.subscription_id params.MonitoredItemIds = [handle] results = self.server.delete_monitored_items(params) results[0].check() with self._lock: for k, v in self._monitoreditems_map.items(): if v.server_handle == handle: del(self._monitoreditems_map[k]) return def modify_monitored_item(self, handle, new_samp_time, new_queuesize=0, mod_filter_val=-1): """ Modify a monitored item. :param handle: Handle returned when originally subscribing :param new_samp_time: New wanted sample time :param new_queuesize: New wanted queuesize, default is 0 :param mod_filter_val: New deadband filter value :return: Return a Modify Monitored Item Result """ for monitored_item_index in self._monitoreditems_map: if self._monitoreditems_map[monitored_item_index].server_handle == handle: item_to_change = self._monitoreditems_map[monitored_item_index] break if mod_filter_val is None: mod_filter = None elif mod_filter_val < 0: mod_filter = item_to_change.mfilter else: mod_filter = ua.DataChangeFilter() mod_filter.Trigger = ua.DataChangeTrigger(1) # send notification when status or value change mod_filter.DeadbandType = 1 mod_filter.DeadbandValue = mod_filter_val # absolute float value or from 0 to 100 for percentage deadband modif_item = ua.MonitoredItemModifyRequest() modif_item.MonitoredItemId = handle modif_item.RequestedParameters = self._modify_monitored_item_request(new_queuesize, new_samp_time, mod_filter, item_to_change.client_handle) params = ua.ModifyMonitoredItemsParameters() params.SubscriptionId = self.subscription_id params.ItemsToModify.append(modif_item) results = self.server.modify_monitored_items(params) item_to_change.mfilter = results[0].FilterResult return results def _modify_monitored_item_request(self, new_queuesize, new_samp_time, mod_filter, client_handle): req_params = ua.MonitoringParameters() with self._lock: req_params.ClientHandle = client_handle req_params.QueueSize = new_queuesize req_params.Filter = mod_filter req_params.SamplingInterval = new_samp_time return req_params def deadband_monitor(self, var, deadband_val, deadbandtype=1, queuesize=0, attr=ua.AttributeIds.Value): """ Method to create a subscription with a Deadband Value. Default deadband value type is absolute. Return a handle which can be used to unsubscribe :param var: Variable to which you want to subscribe :param deadband_val: Absolute float value :param deadbandtype: Default value is 1 (absolute), change to 2 for percentage deadband :param queuesize: Wanted queue size, default is 1 """ deadband_filter = ua.DataChangeFilter() deadband_filter.Trigger = ua.DataChangeTrigger(1) # send notification when status or value change deadband_filter.DeadbandType = deadbandtype deadband_filter.DeadbandValue = deadband_val # absolute float value or from 0 to 100 for percentage deadband return self._subscribe(var, attr, deadband_filter, queuesize) python-opcua-0.98.9/opcua/common/type_dictionary_buider.py000066400000000000000000000306641357637245100240060ustar00rootroot00000000000000from opcua import ua from enum import Enum import logging import xml.etree.ElementTree as Et import re logger = logging.getLogger(__name__) # Indicates which type should be OPC build in types _ua_build_in_types = [ua_type for ua_type in ua.VariantType.__members__ if ua_type != 'ExtensionObject'] def _repl_func(m): """ taken from https://stackoverflow.com/questions/1549641/how-to-capitalize-the-first-letter-of-each-word-in-a-string-python """ return m.group(1) + m.group(2).upper() def _to_camel_case(name): """ Create python class name from an arbitrary string to CamelCase string e.g. actionlib/TestAction -> ActionlibTestAction turtle_actionlib/ShapeActionFeedback -> TurtleActionlibShapeActionFeedback """ name = re.sub(r'[^a-zA-Z0-9]+', ' ', name) name = re.sub('(^|\s)(\S)', _repl_func, name) name = name.replace(' ', '') return name class OPCTypeDictionaryBuilder: def __init__(self, idx_name): """ :param idx_name: name of the name space types in dict is created as opc:xxx, otherwise as tns:xxx """ head_attributes = {'xmlns:xsi': 'http://www.w3.org/2001/XMLSchema-instance', 'xmlns:tns': idx_name, 'DefaultByteOrder': 'LittleEndian', 'xmlns:opc': 'http://opcfoundation.org/BinarySchema/', 'xmlns:ua': 'http://opcfoundation.org/UA/', 'TargetNamespace': idx_name} self.etree = Et.ElementTree(Et.Element('opc:TypeDictionary', head_attributes)) name_space = Et.SubElement(self.etree.getroot(), 'opc:Import') name_space.attrib['Namespace'] = 'http://opcfoundation.org/UA/' self._structs_dict = {} self._build_in_list = _ua_build_in_types def _process_type(self, data_type): if data_type in self._build_in_list: data_type = 'opc:' + data_type else: #data_type = 'tns:' + _to_camel_case(data_type) data_type = 'tns:' + data_type return data_type def _add_field(self, variable_name, data_type, struct_name): data_type = self._process_type(data_type) field = Et.SubElement(self._structs_dict[struct_name], 'opc:Field') field.attrib['Name'] = variable_name field.attrib['TypeName'] = data_type def _add_array_field(self, variable_name, data_type, struct_name): data_type = self._process_type(data_type) array_len = 'NoOf' + variable_name field = Et.SubElement(self._structs_dict[struct_name], 'opc:Field') field.attrib['Name'] = array_len field.attrib['TypeName'] = 'opc:Int32' field = Et.SubElement(self._structs_dict[struct_name], 'opc:Field') field.attrib['Name'] = variable_name field.attrib['TypeName'] = data_type field.attrib['LengthField'] = array_len def add_field(self, variable_name, data_type, struct_name, is_array=False): if isinstance(data_type, Enum): data_type = data_type.name if is_array: self._add_array_field(variable_name, data_type, struct_name) else: self._add_field(variable_name, data_type, struct_name) def append_struct(self, name): appended_struct = Et.SubElement(self.etree.getroot(), 'opc:StructuredType') appended_struct.attrib['BaseType'] = 'ua:ExtensionObject' #appended_struct.attrib['Name'] = _to_camel_case(name) appended_struct.attrib['Name'] = name self._structs_dict[name] = appended_struct return appended_struct def get_dict_value(self): self.indent(self.etree.getroot()) # For debugging # Et.dump(self.etree.getroot()) return Et.tostring(self.etree.getroot(), encoding='utf-8') def indent(self, elem, level=0): i = '\n' + level * ' ' if len(elem): if not elem.text or not elem.text.strip(): elem.text = i + ' ' if not elem.tail or not elem.tail.strip(): elem.tail = i for elem in elem: self.indent(elem, level + 1) if not elem.tail or not elem.tail.strip(): elem.tail = i else: if level and (not elem.tail or not elem.tail.strip()): elem.tail = i def _reference_generator(source_id, target_id, reference_type, is_forward=True): ref = ua.AddReferencesItem() ref.IsForward = is_forward ref.ReferenceTypeId = reference_type ref.SourceNodeId = source_id ref.TargetNodeClass = ua.NodeClass.DataType ref.TargetNodeId = target_id return ref class DataTypeDictionaryBuilder: def __init__(self, server, idx, ns_urn, dict_name, dict_node_id=None): self._server = server self._session_server = server.get_node(ua.ObjectIds.RootFolder).server self._idx = idx if dict_node_id is None: self.dict_id = self._add_dictionary(dict_name) else: self.dict_id = dict_node_id self._type_dictionary = OPCTypeDictionaryBuilder(ns_urn) def _add_dictionary(self, name): try: node = self._server.nodes.opc_binary.get_child("{}:{}".format(self._idx, name)) except ua.uaerrors.BadNoMatch: node = ua.AddNodesItem() node.RequestedNewNodeId = ua.NodeId(0, self._idx) node.BrowseName = ua.QualifiedName(name, self._idx) node.NodeClass = ua.NodeClass.Variable node.ParentNodeId = ua.NodeId(ua.ObjectIds.OPCBinarySchema_TypeSystem, 0) node.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasComponent, 0) node.TypeDefinition = ua.NodeId(ua.ObjectIds.DataTypeDictionaryType, 0) attrs = ua.VariableAttributes() attrs.DisplayName = ua.LocalizedText(name) attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) # Value should be set after all data types created by calling set_dict_byte_string attrs.Value = ua.Variant(None, ua.VariantType.Null) attrs.ValueRank = -1 node.NodeAttributes = attrs res = self._session_server.add_nodes([node]) return res[0].AddedNodeId logger.warning("Making %s object for node %s which already exist, its data will be overriden", self, node) #FIXME: we have an issue return node.nodeid def _link_nodes(self, linked_obj_node_id, data_type_node_id, description_node_id): """link the three node by their node ids according to UA standard""" refs = [ # add reverse reference to BaseDataType -> Structure _reference_generator(data_type_node_id, ua.NodeId(ua.ObjectIds.Structure, 0), ua.NodeId(ua.ObjectIds.HasSubtype, 0), False), # add reverse reference to created data type _reference_generator(linked_obj_node_id, data_type_node_id, ua.NodeId(ua.ObjectIds.HasEncoding, 0), False), # add HasDescription link to dictionary description _reference_generator(linked_obj_node_id, description_node_id, ua.NodeId(ua.ObjectIds.HasDescription, 0)), # add reverse HasDescription link _reference_generator(description_node_id, linked_obj_node_id, ua.NodeId(ua.ObjectIds.HasDescription, 0), False), # add link to the type definition node _reference_generator(linked_obj_node_id, ua.NodeId(ua.ObjectIds.DataTypeEncodingType, 0), ua.NodeId(ua.ObjectIds.HasTypeDefinition, 0)), # add has type definition link _reference_generator(description_node_id, ua.NodeId(ua.ObjectIds.DataTypeDescriptionType, 0), ua.NodeId(ua.ObjectIds.HasTypeDefinition, 0)), # add forward link of dict to description item _reference_generator(self.dict_id, description_node_id, ua.NodeId(ua.ObjectIds.HasComponent, 0)), # add reverse link to dictionary _reference_generator(description_node_id, self.dict_id, ua.NodeId(ua.ObjectIds.HasComponent, 0), False)] self._session_server.add_references(refs) def _create_data_type(self, type_name, nodeid=None, init=True): #name = _to_camel_case(type_name) name = type_name if nodeid is None: # create data type node dt_node = ua.AddNodesItem() dt_node.RequestedNewNodeId = ua.NodeId(0, self._idx) dt_node.BrowseName = ua.QualifiedName(name, self._idx) dt_node.NodeClass = ua.NodeClass.DataType dt_node.ParentNodeId = ua.NodeId(ua.ObjectIds.Structure, 0) dt_node.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasSubtype, 0) dt_attributes = ua.DataTypeAttributes() dt_attributes.DisplayName = ua.LocalizedText(type_name) dt_node.NodeAttributes = dt_attributes res = self._session_server.add_nodes([dt_node]) data_type_node_id = res[0].AddedNodeId else: data_type_node_id = nodeid added = [data_type_node_id] if init: # create description node desc_node = ua.AddNodesItem() desc_node.RequestedNewNodeId = ua.NodeId(0, self._idx) desc_node.BrowseName = ua.QualifiedName(name, self._idx) desc_node.NodeClass = ua.NodeClass.Variable desc_node.ParentNodeId = self.dict_id desc_node.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasComponent, 0) desc_node.TypeDefinition = ua.NodeId(ua.ObjectIds.DataTypeDescriptionType, 0) desc_attributes = ua.VariableAttributes() desc_attributes.DisplayName = ua.LocalizedText(type_name) desc_attributes.DataType = ua.NodeId(ua.ObjectIds.String) desc_attributes.Value = ua.Variant(name, ua.VariantType.String) desc_attributes.ValueRank = -1 desc_node.NodeAttributes = desc_attributes res = self._session_server.add_nodes([desc_node]) description_node_id = res[0].AddedNodeId added.append(description_node_id) # create object node which the loaded python class should link to obj_node = ua.AddNodesItem() obj_node.RequestedNewNodeId = ua.NodeId(0, self._idx) obj_node.BrowseName = ua.QualifiedName('Default Binary', 0) obj_node.NodeClass = ua.NodeClass.Object obj_node.ParentNodeId = data_type_node_id obj_node.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasEncoding, 0) obj_node.TypeDefinition = ua.NodeId(ua.ObjectIds.DataTypeEncodingType, 0) obj_attributes = ua.ObjectAttributes() obj_attributes.DisplayName = ua.LocalizedText('Default Binary') obj_attributes.EventNotifier = 0 obj_node.NodeAttributes = obj_attributes res = self._session_server.add_nodes([obj_node]) bind_obj_node_id = res[0].AddedNodeId added.append(bind_obj_node_id) self._link_nodes(bind_obj_node_id, data_type_node_id, description_node_id) self._type_dictionary.append_struct(type_name) return StructNode(self, data_type_node_id, type_name, added) def create_data_type(self, type_name, nodeid=None, init=True): return self._create_data_type(type_name, nodeid, init) def add_field(self, variable_name, data_type, struct_name, is_array=False): self._type_dictionary.add_field(variable_name, data_type, struct_name, is_array) def set_dict_byte_string(self): dict_node = self._server.get_node(self.dict_id) value = self._type_dictionary.get_dict_value() dict_node.set_value(value, ua.VariantType.ByteString) class StructNode: def __init__(self, type_dict, data_type, name, node_ids): self._type_dict = type_dict self.data_type = data_type self.name = name self.node_ids = node_ids def add_field(self, field_name, data_type, is_array=False): # nested structure could directly use simple structure as field if isinstance(data_type, StructNode): data_type = data_type.name self._type_dict.add_field(field_name, data_type, self.name, is_array) def get_ua_class(ua_class_name): #return getattr(ua, _to_camel_case(ua_class_name)) return getattr(ua, ua_class_name) python-opcua-0.98.9/opcua/common/ua_utils.py000066400000000000000000000222701357637245100210650ustar00rootroot00000000000000""" Usefull method and classes not belonging anywhere and depending on opcua library """ from dateutil import parser from datetime import datetime from enum import Enum, IntEnum import uuid from opcua import ua from opcua.ua.uaerrors import UaError def value_to_datavalue(val, varianttype=None): """ convert anyting to a DataValue using varianttype """ datavalue = None if isinstance(val, ua.DataValue): datavalue = val elif isinstance(val, ua.Variant): datavalue = ua.DataValue(val) datavalue.SourceTimestamp = datetime.utcnow() else: datavalue = ua.DataValue(ua.Variant(val, varianttype)) datavalue.SourceTimestamp = datetime.utcnow() return datavalue def val_to_string(val, truncate=False): """ convert a python object or python-opcua object to a string which should be easy to understand for human easy to modify, and not too hard to parse back ....not easy meant for UI or command lines if truncate is true then huge strings or bytes are tuncated """ if isinstance(val, (list, tuple)): res = [] for v in val: res.append(val_to_string(v)) return "[" + ", ".join(res) + "]" if hasattr(val, "to_string"): val = val.to_string() elif isinstance(val, ua.StatusCode): val = val.name elif isinstance(val, (Enum, IntEnum)): val = val.name elif isinstance(val, ua.DataValue): val = variant_to_string(val.Value) elif isinstance(val, ua.XmlElement): val = val.Value elif isinstance(val, str): if truncate and len(val) > 100: val = val[:10] + "...." + val[-10:] elif isinstance(val, bytes): if truncate and len(val) > 100: val = val[:10].decode("utf-8", errors="replace") + "...." + val[-10:].decode("utf-8", errors="replace") else: val = val.decode("utf-8", errors="replace") elif isinstance(val, datetime): val = val.isoformat() elif isinstance(val, (int, float)): val = str(val) else: # FIXME: Some types are probably missing! val = str(val) return val def variant_to_string(var): """ convert a variant to a string which should be easy to understand for human easy to modify, and not too hard to parse back ....not easy meant for UI or command lines """ return val_to_string(var.Value) def string_to_val(string, vtype): """ Convert back a string to a python or python-opcua object Note: no error checking is done here, supplying null strings could raise exceptions (datetime and guid) """ string = string.strip() if string.startswith("["): string = string[1:-1] var = [] for s in string.split(","): s = s.strip() val = string_to_val(s, vtype) var.append(val) return var if vtype == ua.VariantType.Null: val = None elif vtype == ua.VariantType.Boolean: if string in ("True", "true", "on", "On", "1"): val = True else: val = False elif vtype in (ua.VariantType.SByte, ua.VariantType.Int16, ua.VariantType.Int32, ua.VariantType.Int64): val = int(string) elif vtype in (ua.VariantType.Byte, ua.VariantType.UInt16, ua.VariantType.UInt32, ua.VariantType.UInt64): val = int(string) elif vtype in (ua.VariantType.Float, ua.VariantType.Double): val = float(string) elif vtype == ua.VariantType.XmlElement: val = ua.XmlElement(string) elif vtype == ua.VariantType.String: val = string elif vtype == ua.VariantType.ByteString: val = string.encode() elif vtype in (ua.VariantType.NodeId, ua.VariantType.ExpandedNodeId): val = ua.NodeId.from_string(string) elif vtype == ua.VariantType.QualifiedName: val = ua.QualifiedName.from_string(string) elif vtype == ua.VariantType.DateTime: val = parser.parse(string) elif vtype == ua.VariantType.LocalizedText: val = ua.LocalizedText(string) elif vtype == ua.VariantType.StatusCode: val = ua.StatusCode(string) elif vtype == ua.VariantType.Guid: val = uuid.UUID(string) else: # FIXME: Some types are probably missing! raise NotImplementedError return val def string_to_variant(string, vtype): """ convert back a string to an ua.Variant """ return ua.Variant(string_to_val(string, vtype), vtype) def get_node_children(node, nodes=None): """ Get recursively all children of a node """ if nodes is None: nodes = [node] for child in node.get_children(): nodes.append(child) get_node_children(child, nodes) return nodes def get_node_subtypes(node, nodes=None): if nodes is None: nodes = [node] for child in node.get_children(refs=ua.ObjectIds.HasSubtype): nodes.append(child) get_node_subtypes(child, nodes) return nodes def get_node_supertypes(node, includeitself=False, skipbase=True): """ return get all subtype parents of node recursive :param node: can be a ua.Node or ua.NodeId :param includeitself: include also node to the list :param skipbase don't include the toplevel one :returns list of ua.Node, top parent first """ parents = [] if includeitself: parents.append(node) parents.extend(_get_node_supertypes(node)) if skipbase and len(parents) > 1: parents = parents[:-1] return parents def _get_node_supertypes(node): """ recursive implementation of get_node_derived_from_types """ basetypes = [] parent = get_node_supertype(node) if parent: basetypes.append(parent) basetypes.extend(_get_node_supertypes(parent)) return basetypes def get_node_supertype(node): """ return node supertype or None """ supertypes = node.get_referenced_nodes(refs=ua.ObjectIds.HasSubtype, direction=ua.BrowseDirection.Inverse, includesubtypes=True) if supertypes: return supertypes[0] else: return None def is_child_present(node, browsename): """ return if a browsename is present a child from the provide node :param node: node wherein to find the browsename :param browsename: browsename to search :returns returne True if the browsename is present else False """ child_descs = node.get_children_descriptions() for child_desc in child_descs: if child_desc.BrowseName == browsename: return True return False def data_type_to_variant_type(dtype_node): """ Given a Node datatype, find out the variant type to encode data. This is not exactly straightforward... """ base = get_base_data_type(dtype_node) if base.nodeid.Identifier != 29: return ua.VariantType(base.nodeid.Identifier) else: # we have an enumeration, value is a Int32 return ua.VariantType.Int32 def get_base_data_type(datatype): """ Looks up the base datatype of the provided datatype Node The base datatype is either: A primitive type (ns=0, i<=21) or a complex one (ns=0 i>21 and i<=30) like Enum and Struct. Args: datatype: NodeId of a datype of a variable Returns: NodeId of datatype base or None in case base datype can not be determined """ base = datatype while base: if base.nodeid.NamespaceIndex == 0 and isinstance(base.nodeid.Identifier, int) and base.nodeid.Identifier <= 30: return base base = get_node_supertype(base) raise ua.UaError("Datatype must be a subtype of builtin types {0!s}".format(datatype)) def get_nodes_of_namespace(server, namespaces=None): """ Get the nodes of one or more namespaces . Args: server: opc ua server to use namespaces: list of string uri or int indexes of the namespace to export Returns: List of nodes that are part of the provided namespaces """ if namespaces is None: namespaces = [] ns_available = server.get_namespace_array() if not namespaces: namespaces = ns_available[1:] elif isinstance(namespaces, (str, int)): namespaces = [namespaces] # make sure all namespace are indexes (if needed convert strings to indexes) namespace_indexes = [n if isinstance(n, int) else ns_available.index(n) for n in namespaces] # filter nodeis based on the provide namespaces and convert the nodeid to a node nodes = [server.get_node(nodeid) for nodeid in server.iserver.aspace.keys() if nodeid.NamespaceIndex != 0 and nodeid.NamespaceIndex in namespace_indexes] return nodes def get_default_value(uatype): if isinstance(uatype, ua.VariantType): return ua.get_default_values(uatype) elif hasattr(ua.VariantType, uatype): return ua.get_default_value(getattr(ua.VariantType, uatype)) else: return getattr(ua, uatype)() def data_type_to_string(dtype): # we could just display browse name of node but it requires a query if dtype.NamespaceIndex == 0 and dtype.Identifier in ua.ObjectIdNames: string = ua.ObjectIdNames[dtype.Identifier] else: string = dtype.to_string() return string python-opcua-0.98.9/opcua/common/utils.py000066400000000000000000000131321357637245100203750ustar00rootroot00000000000000""" Helper function and classes that do not rely on opcua library. Helper function and classes depending on ua object are in ua_utils.py """ import logging import os from concurrent.futures import Future import functools import threading from socket import error as SocketError try: import asyncio except ImportError: import trollius as asyncio from opcua.ua.uaerrors import UaError class ServiceError(UaError): def __init__(self, code): super(ServiceError, self).__init__('UA Service Error') self.code = code class NotEnoughData(UaError): pass class SocketClosedException(UaError): pass class Buffer(object): """ alternative to io.BytesIO making debug easier and added a few conveniance methods """ def __init__(self, data, start_pos=0, size=-1): # self.logger = logging.getLogger(__name__) self._data = data self._cur_pos = start_pos if size == -1: size = len(data) - start_pos self._size = size def __str__(self): return "Buffer(size:{0}, data:{1})".format( self._size, self._data[self._cur_pos:self._cur_pos + self._size]) __repr__ = __str__ def __len__(self): return self._size def read(self, size): """ read and pop number of bytes for buffer """ if size > self._size: raise NotEnoughData("Not enough data left in buffer, request for {0}, we have {1}".format(size, self)) # self.logger.debug("Request for %s bytes, from %s", size, self) self._size -= size pos = self._cur_pos self._cur_pos += size data = self._data[pos:self._cur_pos] # self.logger.debug("Returning: %s ", data) return data def copy(self, size=-1): """ return a shadow copy, optionnaly only copy 'size' bytes """ if size == -1 or size > self._size: size = self._size return Buffer(self._data, self._cur_pos, size) def skip(self, size): """ skip size bytes in buffer """ if size > self._size: raise NotEnoughData("Not enough data left in buffer, request for {0}, we have {1}".format(size, self)) self._size -= size self._cur_pos += size class SocketWrapper(object): """ wrapper to make it possible to have same api for normal sockets, socket from asyncio, StringIO, etc.... """ def __init__(self, sock): self.socket = sock def read(self, size): """ Receive up to size bytes from socket """ data = b'' while size > 0: try: chunk = self.socket.recv(size) except (OSError, SocketError) as ex: raise SocketClosedException("Server socket has closed", ex) if not chunk: raise SocketClosedException("Server socket has closed") data += chunk size -= len(chunk) return data def write(self, data): self.socket.sendall(data) def create_nonce(size=32): return os.urandom(size) class ThreadLoop(threading.Thread): """ run an asyncio loop in a thread """ def __init__(self): threading.Thread.__init__(self) self.logger = logging.getLogger(__name__) self.loop = None self._cond = threading.Condition() def start(self): with self._cond: threading.Thread.start(self) self._cond.wait() def run(self): self.logger.debug("Starting subscription thread") self.loop = asyncio.new_event_loop() asyncio.set_event_loop(self.loop) with self._cond: self._cond.notify_all() self.loop.run_forever() self.logger.debug("subscription thread ended") def create_server(self, proto, hostname, port): return self.loop.create_server(proto, hostname, port) def stop(self): """ stop subscription loop, thus the subscription thread """ self.loop.call_soon_threadsafe(self.loop.stop) def close(self): self.loop.close() self.loop = None def call_soon(self, callback): self.loop.call_soon_threadsafe(callback) def call_later(self, delay, callback): """ threadsafe call_later from asyncio """ p = functools.partial(self.loop.call_later, delay, callback) self.loop.call_soon_threadsafe(p) def _create_task(self, future, coro, cb=None): #task = self.loop.create_task(coro) task = asyncio.ensure_future(coro, loop=self.loop) if cb: task.add_done_callback(cb) future.set_result(task) def create_task(self, coro, cb=None): """ threadsafe create_task from asyncio """ future = Future() p = functools.partial(self._create_task, future, coro, cb) self.loop.call_soon_threadsafe(p) return future.result() def run_coro_and_wait(self, coro): cond = threading.Condition() def cb(_): with cond: cond.notify_all() with cond: task = self.create_task(coro, cb) cond.wait() return task.result() def _run_until_complete(self, future, coro): task = self.loop.run_until_complete(coro) future.set_result(task) def run_until_complete(self, coro): """ threadsafe run_until_completed from asyncio """ future = Future() p = functools.partial(self._run_until_complete, future, coro) self.loop.call_soon_threadsafe(p) return future.result() python-opcua-0.98.9/opcua/common/xmlexporter.py000066400000000000000000000437571357637245100216460ustar00rootroot00000000000000""" from a list of nodes in the address space, build an XML file format is the one from opc-ua specification """ import logging from collections import OrderedDict import xml.etree.ElementTree as Et from copy import copy import base64 from opcua import ua from opcua.ua import object_ids as o_ids from opcua.common.ua_utils import get_base_data_type from opcua.ua.uatypes import extension_object_ids from opcua.ua.uaerrors import UaError class XmlExporter(object): ''' If it is required that for _extobj_to_etree members to the value should be written in a certain order it can be added to the dictionary below. ''' extobj_ordered_elements = { ua.NodeId(ua.ObjectIds.Argument) : ['Name', 'DataType', 'ValueRank', 'ArrayDimensions', 'Description'] } def __init__(self, server): self.logger = logging.getLogger(__name__) self.server = server self.aliases = {} self._addr_idx_to_xml_idx = {} node_set_attributes = OrderedDict() node_set_attributes['xmlns:xsi'] = 'http://www.w3.org/2001/XMLSchema-instance' node_set_attributes['xmlns:uax'] = 'http://opcfoundation.org/UA/2008/02/Types.xsd' node_set_attributes['xmlns:xsd'] = 'http://www.w3.org/2001/XMLSchema' node_set_attributes['xmlns'] = 'http://opcfoundation.org/UA/2011/03/UANodeSet.xsd' self.etree = Et.ElementTree(Et.Element('UANodeSet', node_set_attributes)) def build_etree(self, node_list, uris=None): """ Create an XML etree object from a list of nodes; custom namespace uris are optional Namespaces used by nodes are always exported for consistency. Args: node_list: list of Node objects for export uris: list of namespace uri strings Returns: """ self.logger.info('Building XML etree') self._add_namespaces(node_list, uris) # add all nodes in the list to the XML etree for node in node_list: self.node_to_etree(node) # add aliases to the XML etree self._add_alias_els() def _add_namespaces(self, nodes, uris): idxs = self._get_ns_idxs_of_nodes(nodes) ns_array = self.server.get_namespace_array() # now add index of provided uris if necessary if uris: self._add_idxs_from_uris(idxs, uris, ns_array) # now create a dict of idx_in_address_space to idx_in_exported_file self._addr_idx_to_xml_idx = self._make_idx_dict(idxs, ns_array) ns_to_export = [ns_array[i] for i in sorted(list(self._addr_idx_to_xml_idx.keys())) if i != 0] # write namespaces to xml self._add_namespace_uri_els(ns_to_export) def _make_idx_dict(self, idxs, ns_array): idxs.sort() addr_idx_to_xml_idx = {0: 0} for xml_idx, addr_idx in enumerate(idxs): if addr_idx >= len(ns_array): break addr_idx_to_xml_idx[addr_idx] = xml_idx + 1 return addr_idx_to_xml_idx def _get_ns_idxs_of_nodes(self, nodes): """ get a list of all indexes used or references by nodes """ idxs = [] for node in nodes: node_idxs = [node.nodeid.NamespaceIndex] try: node_idxs.append(node.get_browse_name().NamespaceIndex) except UaError: self.logger.exception("Error retrieving browse name of node %s", node) raise node_idxs.extend(ref.NodeId.NamespaceIndex for ref in node.get_references()) node_idxs = list(set(node_idxs)) # remove duplicates for i in node_idxs: if i != 0 and i not in idxs: idxs.append(i) return idxs def _add_idxs_from_uris(self, idxs, uris, ns_array): for uri in uris: if uri in ns_array: i = ns_array.index(uri) if i not in idxs: idxs.append(i) def write_xml(self, xmlpath, pretty=True): """ Write the XML etree in the exporter object to a file Args: xmlpath: string representing the path/file name Returns: """ # try to write the XML etree to a file self.logger.info('Exporting XML file to %s', xmlpath) # from IPython import embed # embed() if pretty: indent(self.etree.getroot()) self.etree.write(xmlpath, encoding='utf-8', xml_declaration=True ) else: self.etree.write(xmlpath, encoding='utf-8', xml_declaration=True ) def dump_etree(self): """ Dump etree to console for debugging Returns: """ self.logger.info('Dumping XML etree to console') Et.dump(self.etree) def node_to_etree(self, node): """ Add the necessary XML sub elements to the etree for exporting the node Args: node: Node object which will be added to XML etree Returns: """ node_class = node.get_node_class() if node_class is ua.NodeClass.Object: self.add_etree_object(node) elif node_class is ua.NodeClass.ObjectType: self.add_etree_object_type(node) elif node_class is ua.NodeClass.Variable: self.add_etree_variable(node) elif node_class is ua.NodeClass.VariableType: self.add_etree_variable_type(node) elif node_class is ua.NodeClass.ReferenceType: self.add_etree_reference_type(node) elif node_class is ua.NodeClass.DataType: self.add_etree_datatype(node) elif node_class is ua.NodeClass.Method: self.add_etree_method(node) else: self.logger.info("Exporting node class not implemented: %s ", node_class) def _add_sub_el(self, el, name, text): child_el = Et.SubElement(el, name) child_el.text = text return child_el def _node_to_string(self, nodeid): if not isinstance(nodeid, ua.NodeId): nodeid = nodeid.nodeid if nodeid.NamespaceIndex in self._addr_idx_to_xml_idx: nodeid = copy(nodeid) nodeid.NamespaceIndex = self._addr_idx_to_xml_idx[nodeid.NamespaceIndex] return nodeid.to_string() def _bname_to_string(self, bname): if bname.NamespaceIndex in self._addr_idx_to_xml_idx: bname = copy(bname) bname.NamespaceIndex = self._addr_idx_to_xml_idx[bname.NamespaceIndex] return bname.to_string() def _add_node_common(self, nodetype, node): browsename = node.get_browse_name() nodeid = node.nodeid parent = node.get_parent() displayname = node.get_display_name().Text desc = node.get_description().Text if node.get_description() else None node_el = Et.SubElement(self.etree.getroot(), nodetype) node_el.attrib["NodeId"] = self._node_to_string(nodeid) node_el.attrib["BrowseName"] = self._bname_to_string(browsename) if parent is not None: node_class = node.get_node_class() if node_class in (ua.NodeClass.Object, ua.NodeClass.Variable, ua.NodeClass.Method): node_el.attrib["ParentNodeId"] = self._node_to_string(parent) self._add_sub_el(node_el, 'DisplayName', displayname) if desc not in (None, ""): self._add_sub_el(node_el, 'Description', desc) # FIXME: add WriteMask and UserWriteMask return node_el def add_etree_object(self, node): """ Add a UA object element to the XML etree """ obj_el = self._add_node_common("UAObject", node) var = node.get_attribute(ua.AttributeIds.EventNotifier) if var.Value.Value != 0: obj_el.attrib["EventNotifier"] = str(var.Value.Value) self._add_ref_els(obj_el, node) def add_etree_object_type(self, node): """ Add a UA object type element to the XML etree """ obj_el = self._add_node_common("UAObjectType", node) abstract = node.get_attribute(ua.AttributeIds.IsAbstract).Value.Value if abstract: obj_el.attrib["IsAbstract"] = 'true' self._add_ref_els(obj_el, node) def add_variable_common(self, node, el): dtype = node.get_data_type() if dtype.NamespaceIndex == 0 and dtype.Identifier in o_ids.ObjectIdNames: dtype_name = o_ids.ObjectIdNames[dtype.Identifier] self.aliases[dtype] = dtype_name else: dtype_name = dtype.to_string() rank = node.get_value_rank() if rank != -1: el.attrib["ValueRank"] = str(int(rank)) dim = node.get_attribute(ua.AttributeIds.ArrayDimensions) if dim.Value.Value: el.attrib["ArrayDimensions"] = ",".join([str(i) for i in dim.Value.Value]) el.attrib["DataType"] = dtype_name self.value_to_etree(el, dtype_name, dtype, node) def add_etree_variable(self, node): """ Add a UA variable element to the XML etree """ var_el = self._add_node_common("UAVariable", node) self._add_ref_els(var_el, node) self.add_variable_common(node, var_el) accesslevel = node.get_attribute(ua.AttributeIds.AccessLevel).Value.Value useraccesslevel = node.get_attribute(ua.AttributeIds.UserAccessLevel).Value.Value # We only write these values if they are different from defaults # Not sure where default is defined.... if accesslevel not in (0, ua.AccessLevel.CurrentRead.mask): var_el.attrib["AccessLevel"] = str(accesslevel) if useraccesslevel not in (0, ua.AccessLevel.CurrentRead.mask): var_el.attrib["UserAccessLevel"] = str(useraccesslevel) var = node.get_attribute(ua.AttributeIds.MinimumSamplingInterval) if var.Value.Value: var_el.attrib["MinimumSamplingInterval"] = str(var.Value.Value) var = node.get_attribute(ua.AttributeIds.Historizing) if var.Value.Value: var_el.attrib["Historizing"] = 'true' def add_etree_variable_type(self, node): """ Add a UA variable type element to the XML etree """ var_el = self._add_node_common("UAVariableType", node) self.add_variable_common(node, var_el) abstract = node.get_attribute(ua.AttributeIds.IsAbstract) if abstract.Value.Value: var_el.attrib["IsAbstract"] = "true" self._add_ref_els(var_el, node) def add_etree_method(self, node): obj_el = self._add_node_common("UAMethod", node) var = node.get_attribute(ua.AttributeIds.Executable) if var.Value.Value is False: obj_el.attrib["Executable"] = "false" var = node.get_attribute(ua.AttributeIds.UserExecutable) if var.Value.Value is False: obj_el.attrib["UserExecutable"] = "false" self._add_ref_els(obj_el, node) def add_etree_reference_type(self, obj): obj_el = self._add_node_common("UAReferenceType", obj) self._add_ref_els(obj_el, obj) var = obj.get_attribute(ua.AttributeIds.InverseName) if var is not None and var.Value.Value is not None and var.Value.Value.Text is not None: self._add_sub_el(obj_el, 'InverseName', var.Value.Value.Text) def add_etree_datatype(self, obj): """ Add a UA data type element to the XML etree """ obj_el = self._add_node_common("UADataType", obj) self._add_ref_els(obj_el, obj) def _add_namespace_uri_els(self, uris): nuris_el = Et.Element('NamespaceUris') for uri in uris: self._add_sub_el(nuris_el, 'Uri', uri) self.etree.getroot().insert(0, nuris_el) def _add_alias_els(self): aliases_el = Et.Element('Aliases') ordered_keys = list(self.aliases.keys()) ordered_keys.sort() for nodeid in ordered_keys: name = self.aliases[nodeid] ref_el = Et.SubElement(aliases_el, 'Alias', Alias=name) ref_el.text = nodeid.to_string() # insert behind the namespace element self.etree.getroot().insert(1, aliases_el) def _add_ref_els(self, parent_el, obj): refs = obj.get_references() refs_el = Et.SubElement(parent_el, 'References') for ref in refs: if ref.ReferenceTypeId.Identifier in o_ids.ObjectIdNames: ref_name = o_ids.ObjectIdNames[ref.ReferenceTypeId.Identifier] else: ref_name = ref.ReferenceTypeId.to_string() ref_el = Et.SubElement(refs_el, 'Reference') ref_el.attrib['ReferenceType'] = ref_name if not ref.IsForward: ref_el.attrib['IsForward'] = 'false' ref_el.text = self._node_to_string(ref.NodeId) self.aliases[ref.ReferenceTypeId] = ref_name def member_to_etree(self, el, name, dtype, val): member_el = Et.SubElement(el, "uax:" + name) if isinstance(val, (list, tuple)): for v in val: self._value_to_etree(member_el, ua.ObjectIdNames[dtype.Identifier], dtype, v) else: self._val_to_etree(member_el, dtype, val) def _val_to_etree(self, el, dtype, val): if dtype == ua.NodeId(ua.ObjectIds.NodeId): id_el = Et.SubElement(el, "uax:Identifier") id_el.text = val.to_string() elif dtype == ua.NodeId(ua.ObjectIds.Guid): id_el = Et.SubElement(el, "uax:String") id_el.text = str(val) elif dtype == ua.NodeId(ua.ObjectIds.Boolean): el.text = 'true' if val else 'false' elif dtype == ua.NodeId(ua.ObjectIds.ByteString): if val is None: val = b"" data = base64.b64encode(val) el.text = data.decode("utf-8") elif not hasattr(val, "ua_types"): if isinstance(val, bytes): # FIXME: should we also encode this (localized text I guess) using base64?? el.text = val.decode("utf-8") else: if val is not None: el.text = str(val) else: for name, vtype in val.ua_types: self.member_to_etree(el, name, ua.NodeId(getattr(ua.ObjectIds, vtype)), getattr(val, name)) def value_to_etree(self, el, dtype_name, dtype, node): var = node.get_data_value().Value if var.Value is not None: val_el = Et.SubElement(el, 'Value') self._value_to_etree(val_el, dtype_name, dtype, var.Value) def _value_to_etree(self, el, type_name, dtype, val): if val is None: return if isinstance(val, (list, tuple)): if dtype.NamespaceIndex == 0 and dtype.Identifier <= 21: elname = "uax:ListOf" + type_name else: # this is an extentionObject: elname = "uax:ListOfExtensionObject" list_el = Et.SubElement(el, elname) for nval in val: self._value_to_etree(list_el, type_name, dtype, nval) else: dtype_base = get_base_data_type(self.server.get_node(dtype)) dtype_base = dtype_base.nodeid if dtype_base == ua.NodeId(ua.ObjectIds.Enumeration): dtype_base = ua.NodeId(ua.ObjectIds.Int32) type_name = ua.ObjectIdNames[dtype_base.Identifier] if dtype_base.NamespaceIndex == 0 and dtype_base.Identifier <= 21: type_name = ua.ObjectIdNames[dtype_base.Identifier] val_el = Et.SubElement(el, "uax:" + type_name) self._val_to_etree(val_el, dtype_base, val) else: self._extobj_to_etree(el, type_name, dtype, val) def _extobj_to_etree(self, val_el, name, dtype, val): obj_el = Et.SubElement(val_el, "uax:ExtensionObject") type_el = Et.SubElement(obj_el, "uax:TypeId") id_el = Et.SubElement(type_el, "uax:Identifier") id_el.text = dtype.to_string() body_el = Et.SubElement(obj_el, "uax:Body") struct_el = Et.SubElement(body_el, "uax:" + name) for name, vtype in val.ua_types: # FIXME; what happend if we have a custom type which is not part of ObjectIds??? if vtype.startswith("ListOf"): vtype = vtype[6:] self.member_to_etree(struct_el, name, ua.NodeId(getattr(ua.ObjectIds, vtype)), getattr(val, name)) #self.member_to_etree(struct_el, name, extension_object_ids[vtype], getattr(val, name)) #for name in self._get_member_order(dtype, val): #self.member_to_etree(struct_el, name, ua.NodeId(getattr(ua.ObjectIds, val.ua_types[name])), getattr(val, name)) def _get_member_order(self, dtype, val): ''' If an dtype has an entry in XmlExporter.extobj_ordered_elements return the export order of the elements else return the unordered members. ''' if dtype not in XmlExporter.extobj_ordered_elements.keys(): return val.ua_types.keys() else: member_keys = [name for name in XmlExporter.extobj_ordered_elements[dtype] if name in val.ua_types.keys() and getattr(val, name) is not None ] return member_keys def indent(elem, level=0): """ copy and paste from http://effbot.org/zone/element-lib.htm#prettyprint it basically walks your tree and adds spaces and newlines so the tree is printed in a nice way """ i = "\n" + level * " " if len(elem): if not elem.text or not elem.text.strip(): elem.text = i + " " if not elem.tail or not elem.tail.strip(): elem.tail = i for elem in elem: indent(elem, level + 1) if not elem.tail or not elem.tail.strip(): elem.tail = i else: if level and (not elem.tail or not elem.tail.strip()): elem.tail = i python-opcua-0.98.9/opcua/common/xmlimporter.py000066400000000000000000000424231357637245100216240ustar00rootroot00000000000000""" add nodes defined in XML to address space format is the one from opc-ua specification """ import logging import uuid from copy import copy import opcua from opcua import ua from opcua.common import xmlparser from opcua.ua.uaerrors import UaError import sys if sys.version_info.major > 2: unicode = str class XmlImporter(object): def __init__(self, server): self.logger = logging.getLogger(__name__) self.parser = None self.server = server self.namespaces = {} self.aliases = {} self.refs = None def _map_namespaces(self, namespaces_uris): """ creates a mapping between the namespaces in the xml file and in the server. if not present the namespace is registered. """ namespaces = {} for ns_index, ns_uri in enumerate(namespaces_uris): ns_server_index = self.server.register_namespace(ns_uri) namespaces[ns_index + 1] = ns_server_index return namespaces def _map_aliases(self, aliases): """ maps the import aliases to the correct namespaces """ aliases_mapped = {} for alias, node_id in aliases.items(): aliases_mapped[alias] = self.to_nodeid(node_id) return aliases_mapped def import_xml(self, xmlpath=None, xmlstring=None): """ import xml and return added nodes """ self.logger.info("Importing XML file %s", xmlpath) self.parser = xmlparser.XMLParser(xmlpath, xmlstring) self.namespaces = self._map_namespaces(self.parser.get_used_namespaces()) self.aliases = self._map_aliases(self.parser.get_aliases()) self.refs = [] dnodes = self.parser.get_node_datas() dnodes = self.make_objects(dnodes) nodes_parsed = self._sort_nodes_by_parentid(dnodes) nodes = [] for nodedata in nodes_parsed: # self.parser: try: node = self._add_node_data(nodedata) except Exception: self.logger.warning("failure adding node %s", nodedata) raise nodes.append(node) self.refs, remaining_refs = [], self.refs self._add_references(remaining_refs) if len(self.refs) != 0: self.logger.warning("The following references could not be imported and are probaly broken: %s", self.refs) return nodes def _add_node_data(self, nodedata): if nodedata.nodetype == 'UAObject': node = self.add_object(nodedata) elif nodedata.nodetype == 'UAObjectType': node = self.add_object_type(nodedata) elif nodedata.nodetype == 'UAVariable': node = self.add_variable(nodedata) elif nodedata.nodetype == 'UAVariableType': node = self.add_variable_type(nodedata) elif nodedata.nodetype == 'UAReferenceType': node = self.add_reference_type(nodedata) elif nodedata.nodetype == 'UADataType': node = self.add_datatype(nodedata) elif nodedata.nodetype == 'UAMethod': node = self.add_method(nodedata) else: self.logger.warning("Not implemented node type: %s ", nodedata.nodetype) return node def _add_node(self, node): if isinstance(self.server, opcua.server.server.Server): return self.server.iserver.isession.add_nodes([node]) else: return self.server.uaclient.add_nodes([node]) def _add_references(self, refs): if isinstance(self.server, opcua.server.server.Server): res = self.server.iserver.isession.add_references(refs) else: res = self.server.uaclient.add_references(refs) for sc, ref in zip(res, refs): if not sc.is_good(): self.refs.append(ref) def make_objects(self, node_datas): new_nodes = [] for ndata in node_datas: ndata.nodeid = ua.NodeId.from_string(ndata.nodeid) ndata.browsename = ua.QualifiedName.from_string(ndata.browsename) if ndata.parent: ndata.parent = ua.NodeId.from_string(ndata.parent) if ndata.parentlink: ndata.parentlink = self._to_nodeid(ndata.parentlink) if ndata.typedef: ndata.typedef = self._to_nodeid(ndata.typedef) new_nodes.append(ndata) return new_nodes def _migrate_ns(self, nodeid): """ Check if the index of nodeid or browsename given in the xml model file must be converted to a already existing namespace id based on the files namespace uri :returns: NodeId (str) """ if nodeid.NamespaceIndex in self.namespaces: nodeid = copy(nodeid) nodeid.NamespaceIndex = self.namespaces[nodeid.NamespaceIndex] return nodeid def _get_node(self, obj): node = ua.AddNodesItem() node.RequestedNewNodeId = self._migrate_ns(obj.nodeid) node.BrowseName = self._migrate_ns(obj.browsename) self.logger.info("Importing xml node (%s, %s) as (%s %s)", obj.browsename, obj.nodeid, node.BrowseName, node.RequestedNewNodeId) node.NodeClass = getattr(ua.NodeClass, obj.nodetype[2:]) if obj.parent and obj.parentlink: node.ParentNodeId = self._migrate_ns(obj.parent) node.ReferenceTypeId = self._migrate_ns(obj.parentlink) if obj.typedef: node.TypeDefinition = self._migrate_ns(obj.typedef) return node def _to_nodeid(self, nodeid): if isinstance(nodeid, ua.NodeId): return nodeid elif not nodeid: return ua.NodeId(ua.ObjectIds.String) elif "=" in nodeid: return ua.NodeId.from_string(nodeid) elif hasattr(ua.ObjectIds, nodeid): return ua.NodeId(getattr(ua.ObjectIds, nodeid)) else: if nodeid in self.aliases: return self.aliases[nodeid] else: return ua.NodeId(getattr(ua.ObjectIds, nodeid)) def to_nodeid(self, nodeid): return self._migrate_ns(self._to_nodeid(nodeid)) def add_object(self, obj): node = self._get_node(obj) attrs = ua.ObjectAttributes() if obj.desc: attrs.Description = ua.LocalizedText(obj.desc) attrs.DisplayName = ua.LocalizedText(obj.displayname) attrs.EventNotifier = obj.eventnotifier node.NodeAttributes = attrs res = self._add_node(node) self._add_refs(obj) res[0].StatusCode.check() return res[0].AddedNodeId def add_object_type(self, obj): node = self._get_node(obj) attrs = ua.ObjectTypeAttributes() if obj.desc: attrs.Description = ua.LocalizedText(obj.desc) attrs.DisplayName = ua.LocalizedText(obj.displayname) attrs.IsAbstract = obj.abstract node.NodeAttributes = attrs res = self._add_node(node) self._add_refs(obj) res[0].StatusCode.check() return res[0].AddedNodeId def add_variable(self, obj): node = self._get_node(obj) attrs = ua.VariableAttributes() if obj.desc: attrs.Description = ua.LocalizedText(obj.desc) attrs.DisplayName = ua.LocalizedText(obj.displayname) attrs.DataType = self.to_nodeid(obj.datatype) if obj.value is not None: attrs.Value = self._add_variable_value(obj,) if obj.rank: attrs.ValueRank = obj.rank if obj.accesslevel: attrs.AccessLevel = obj.accesslevel if obj.useraccesslevel: attrs.UserAccessLevel = obj.useraccesslevel if obj.minsample: attrs.MinimumSamplingInterval = obj.minsample if obj.dimensions: attrs.ArrayDimensions = obj.dimensions node.NodeAttributes = attrs res = self._add_node(node) self._add_refs(obj) res[0].StatusCode.check() return res[0].AddedNodeId def _get_ext_class(self, name): if hasattr(ua, name): return getattr(ua, name) elif name in self.aliases.keys(): nodeid = self.aliases[name] class_type = ua.uatypes.get_extensionobject_class_type(nodeid) if class_type: return class_type else: raise Exception("Error no extension class registered ", name, nodeid) else: raise Exception("Error no alias found for extension class", name) def _make_ext_obj(self, obj): ext = self._get_ext_class(obj.objname)() for name, val in obj.body: if not isinstance(val, list): raise Exception("Error val should be a list, this is a python-opcua bug", name, type(val), val) else: for attname, v in val: self._set_attr(ext, attname, v) return ext def _get_val_type(self, obj, attname): for name, uatype in obj.ua_types: if name == attname: return uatype raise UaError("Attribute '{}' defined in xml is not found in object '{}'".format(attname, ext)) def _set_attr(self, obj, attname, val): # tow possible values: # either we get value directly # or a dict if it s an object or a list if isinstance(val, (str, unicode)): pval = xmlparser.ua_type_to_python(val, self._get_val_type(obj, attname)) setattr(obj, attname, pval) else: # so we have either an object or a list... obj2 = getattr(obj, attname) if isinstance(obj2, ua.NodeId): # NodeId representation does not follow common rules!! for attname2, v2 in val: if attname2 == "Identifier": if hasattr(ua.ObjectIds, v2): obj2 = ua.NodeId(getattr(ua.ObjectIds, v2)) else: obj2 = ua.NodeId.from_string(v2) setattr(obj, attname, self._migrate_ns(obj2)) break elif not hasattr(obj2, "ua_types"): # we probably have a list my_list = [] for vtype, v2 in val: my_list.append(xmlparser.ua_type_to_python(v2, vtype)) setattr(obj, attname, my_list) else: for attname2, v2 in val: self._set_attr(obj2, attname2, v2) setattr(obj, attname, obj2) def _add_variable_value(self, obj): """ Returns the value for a Variable based on the objects value type. """ self.logger.debug("Setting value with type %s and value %s", obj.valuetype, obj.value) if obj.valuetype == 'ListOfExtensionObject': values = [] for ext in obj.value: extobj = self._make_ext_obj(ext) values.append(extobj) return ua.Variant(values, ua.VariantType.ExtensionObject) elif obj.valuetype == 'ListOfGuid': return ua.Variant([ uuid.UUID(guid) for guid in obj.value ], getattr(ua.VariantType, obj.valuetype[6:])) elif obj.valuetype.startswith("ListOf"): vtype = obj.valuetype[6:] if hasattr(ua.ua_binary.Primitives, vtype): return ua.Variant(obj.value, getattr(ua.VariantType, vtype)) else: return ua.Variant([getattr(ua, vtype)(v) for v in obj.value]) elif obj.valuetype == 'ExtensionObject': extobj = self._make_ext_obj(obj.value) return ua.Variant(extobj, getattr(ua.VariantType, obj.valuetype)) elif obj.valuetype == 'Guid': return ua.Variant(uuid.UUID(obj.value), getattr(ua.VariantType, obj.valuetype)) elif obj.valuetype == 'LocalizedText': ltext = ua.LocalizedText() for name, val in obj.value: if name == "Text": ltext.Text = val else: self.logger.warning("While parsing localizedText value, unkown element: %s with val: %s", name, val) return ua.Variant(ltext, ua.VariantType.LocalizedText) elif obj.valuetype == 'NodeId': return ua.Variant(ua.NodeId.from_string(obj.value)) else: return ua.Variant(obj.value, getattr(ua.VariantType, obj.valuetype)) def add_variable_type(self, obj): node = self._get_node(obj) attrs = ua.VariableTypeAttributes() if obj.desc: attrs.Description = ua.LocalizedText(obj.desc) attrs.DisplayName = ua.LocalizedText(obj.displayname) attrs.DataType = self.to_nodeid(obj.datatype) if obj.value and len(obj.value) == 1: attrs.Value = obj.value[0] if obj.rank: attrs.ValueRank = obj.rank if obj.abstract: attrs.IsAbstract = obj.abstract if obj.dimensions: attrs.ArrayDimensions = obj.dimensions node.NodeAttributes = attrs res = self._add_node(node) self._add_refs(obj) res[0].StatusCode.check() return res[0].AddedNodeId def add_method(self, obj): node = self._get_node(obj) attrs = ua.MethodAttributes() if obj.desc: attrs.Description = ua.LocalizedText(obj.desc) attrs.DisplayName = ua.LocalizedText(obj.displayname) if obj.accesslevel: attrs.AccessLevel = obj.accesslevel if obj.useraccesslevel: attrs.UserAccessLevel = obj.useraccesslevel if obj.minsample: attrs.MinimumSamplingInterval = obj.minsample if obj.dimensions: attrs.ArrayDimensions = obj.dimensions node.NodeAttributes = attrs res = self._add_node(node) self._add_refs(obj) res[0].StatusCode.check() return res[0].AddedNodeId def add_reference_type(self, obj): node = self._get_node(obj) attrs = ua.ReferenceTypeAttributes() if obj.desc: attrs.Description = ua.LocalizedText(obj.desc) attrs.DisplayName = ua.LocalizedText(obj.displayname) if obj. inversename: attrs.InverseName = ua.LocalizedText(obj.inversename) if obj.abstract: attrs.IsAbstract = obj.abstract if obj.symmetric: attrs.Symmetric = obj.symmetric node.NodeAttributes = attrs res = self._add_node(node) self._add_refs(obj) res[0].StatusCode.check() return res[0].AddedNodeId def add_datatype(self, obj): node = self._get_node(obj) attrs = ua.DataTypeAttributes() if obj.desc: attrs.Description = ua.LocalizedText(obj.desc) attrs.DisplayName = ua.LocalizedText(obj.displayname) if obj.abstract: attrs.IsAbstract = obj.abstract node.NodeAttributes = attrs res = self._add_node(node) self._add_refs(obj) res[0].StatusCode.check() return res[0].AddedNodeId def _add_refs(self, obj): if not obj.refs: return refs = [] for data in obj.refs: ref = ua.AddReferencesItem() ref.IsForward = data.forward ref.ReferenceTypeId = self.to_nodeid(data.reftype) ref.SourceNodeId = self._migrate_ns(obj.nodeid) ref.TargetNodeId = self.to_nodeid(data.target) refs.append(ref) self._add_references(refs) def _sort_nodes_by_parentid(self, ndatas): """ Sort the list of nodes according their parent node in order to respect the dependency between nodes. :param nodes: list of NodeDataObjects :returns: list of sorted nodes """ _ndatas = list(ndatas) # list of node ids that are already sorted / inserted sorted_nodes_ids = [] # list of sorted nodes (i.e. XML Elements) sorted_ndatas = [] all_node_ids = [data.nodeid for data in ndatas] # list of namespace indexes that are relevant for this import # we can only respect ordering nodes for namespaces indexes that # are defined in the xml file itself. Thus we assume that all other # references namespaces are already known to the server and should # not create any dependency problems (like "NodeNotFound") while len(_ndatas) > 0: pop_nodes = [] for ndata in _ndatas: # Insert nodes that # (1) have no parent / parent_ns is None (e.g. namespace 0) # (2) ns is not in list of relevant namespaces if ndata.nodeid.NamespaceIndex not in self.namespaces or \ ndata.parent is None or \ ndata.parent not in all_node_ids: sorted_ndatas.append(ndata) sorted_nodes_ids.append(ndata.nodeid) pop_nodes.append(ndata) else: # Check if the nodes parent is already in the list of # inserted nodes if ndata.parent in sorted_nodes_ids: sorted_ndatas.append(ndata) sorted_nodes_ids.append(ndata.nodeid) pop_nodes.append(ndata) # Remove inserted nodes from the list for ndata in pop_nodes: _ndatas.pop(_ndatas.index(ndata)) return sorted_ndatas python-opcua-0.98.9/opcua/common/xmlparser.py000066400000000000000000000273521357637245100212630ustar00rootroot00000000000000""" parse xml file from opcua-spec """ import logging from pytz import utc import uuid import re import sys import base64 import xml.etree.ElementTree as ET from opcua.common import ua_utils from opcua import ua def ua_type_to_python(val, uatype_as_str): """ Converts a string value to a python value according to ua_utils. """ return ua_utils.string_to_val(val, getattr(ua.VariantType, uatype_as_str)) def _to_bool(val): """ Easy access to boolean conversion. """ return ua_type_to_python(val, "Boolean") class NodeData(object): def __init__(self): self.nodetype = None self.nodeid = None self.browsename = None self.displayname = None self.symname = None # FIXME: this param is never used, why? self.parent = None self.parentlink = None self.desc = "" self.typedef = None self.refs = [] self.nodeclass = None self.eventnotifier = 0 # variable self.datatype = None self.rank = -1 # check default value self.value = None self.valuetype = None self.dimensions = None self.accesslevel = None self.useraccesslevel = None self.minsample = None # referencetype self.inversename = "" self.abstract = False self.symmetric = False # datatype self.definition = [] def __str__(self): return "NodeData(nodeid:{0})".format(self.nodeid) __repr__ = __str__ class RefStruct(object): def __init__(self): self.reftype = None self.forward = True self.target = None class ExtObj(object): def __init__(self): self.typeid = None self.objname = None self.bodytype = None self.body = {} def __str__(self): return "ExtObj({0}, {1})".format(self.objname, self.body) __repr__ = __str__ class XMLParser(object): def __init__(self, xmlpath=None, xmlstring=None): self.logger = logging.getLogger(__name__) self._retag = re.compile(r"(\{.*\})(.*)") self.path = xmlpath if xmlstring: self.root = ET.fromstring(xmlstring) else: self.root = ET.parse(xmlpath).getroot() # FIXME: hard to get these xml namespaces with ElementTree, we may have to shift to lxml self.ns = { 'base': "http://opcfoundation.org/UA/2011/03/UANodeSet.xsd", 'uax': "http://opcfoundation.org/UA/2008/02/Types.xsd", 'xsd': "http://www.w3.org/2001/XMLSchema", 'xsi': "http://www.w3.org/2001/XMLSchema-instance" } def get_used_namespaces(self): """ Return the used namespace uris in this import file """ namespaces_uris = [] for child in self.root: tag = self._retag.match(child.tag).groups()[1] if tag == 'NamespaceUris': namespaces_uris = [ns_element.text for ns_element in child] break return namespaces_uris def get_aliases(self): """ Return the used node aliases in this import file """ aliases = {} for child in self.root: tag = self._retag.match(child.tag).groups()[1] if tag == 'Aliases': for el in child: aliases[el.attrib["Alias"]] = el.text break return aliases def get_node_datas(self): nodes = [] for child in self.root: tag = self._retag.match(child.tag).groups()[1] if tag not in ["Aliases", "NamespaceUris", "Extensions", "Models"]: # these XML tags don't contain nodes node = self._parse_node(tag, child) nodes.append(node) return nodes def _parse_node(self, nodetype, child): """ Parse a XML node and create a NodeData object. """ obj = NodeData() obj.nodetype = nodetype for key, val in child.attrib.items(): self._set_attr(key, val, obj) self.logger.info("Parsing node: %s %s", obj.nodeid, obj.browsename) obj.displayname = obj.browsename # give a default value to display name for el in child: self._parse_attr(el, obj) return obj def _set_attr(self, key, val, obj): if key == "NodeId": obj.nodeid = val elif key == "BrowseName": obj.browsename = val elif key == "SymbolicName": obj.symname = val elif key == "ParentNodeId": obj.parent = val elif key == "DataType": obj.datatype = val elif key == "IsAbstract": obj.abstract = _to_bool(val) elif key == "Executable": obj.executable = _to_bool(val) elif key == "EventNotifier": obj.eventnotifier = int(val) elif key == "ValueRank": obj.rank = int(val) elif key == "ArrayDimensions": obj.dimensions = [int(i) for i in val.split(",")] elif key == "MinimumSamplingInterval": obj.minsample = int(val) elif key == "AccessLevel": obj.accesslevel = int(val) elif key == "UserAccessLevel": obj.useraccesslevel = int(val) elif key == "Symmetric": obj.symmetric = _to_bool(val) else: self.logger.info("Attribute not implemented: %s:%s", key, val) def _parse_attr(self, el, obj): tag = self._retag.match(el.tag).groups()[1] if tag == "DisplayName": obj.displayname = el.text elif tag == "Description": obj.desc = el.text elif tag == "References": self._parse_refs(el, obj) elif tag == "Value": self._parse_contained_value(el, obj) elif tag == "InverseName": obj.inversename = el.text elif tag == "Definition": for field in el: obj.definition.append(field) else: self.logger.info("Not implemented tag: %s", el) def _parse_contained_value(self, el, obj): """ Parse the child of el as a constant. """ val_el = el.find(".//") # should be only one child self._parse_value(val_el, obj) def _parse_value(self, val_el, obj): """ Parse the node val_el as a constant. """ if val_el is not None and val_el.text is not None: ntag = self._retag.match(val_el.tag).groups()[1] else: ntag = "Null" obj.valuetype = ntag if ntag == "Null": obj.value = None elif hasattr(ua.ua_binary.Primitives1, ntag): # Elementary types have their parsing directly relying on ua_type_to_python. obj.value = ua_type_to_python(val_el.text, ntag) elif ntag == "DateTime": obj.value = ua_type_to_python(val_el.text, ntag) # According to specs, DateTime should be either UTC or with a timezone. if obj.value.tzinfo is None or obj.value.tzinfo.utcoffset(obj.value) is None: utc.localize(obj.value) # FIXME Forcing to UTC if unaware, maybe should raise? elif ntag == "ByteString": if val_el.text is None: mytext = b"" else: mytext = val_el.text.encode() mytext = base64.b64decode(mytext) obj.value = mytext elif ntag == "String": mytext = val_el.text if mytext is None: # Support importing null strings. mytext = "" #mytext = mytext.replace('\n', '').replace('\r', '') obj.value = mytext elif ntag == "Guid": self._parse_contained_value(val_el, obj) # Override parsed string type to guid. obj.valuetype = ntag elif ntag == "NodeId": id_el = val_el.find("uax:Identifier", self.ns) if id_el is not None: obj.value = id_el.text elif ntag == "ExtensionObject": obj.value = self._parse_ext_obj(val_el) elif ntag == "LocalizedText": obj.value = self._parse_body(val_el) elif ntag == "ListOfLocalizedText": obj.value = self._parse_list_of_localized_text(val_el) elif ntag == "ListOfExtensionObject": obj.value = self._parse_list_of_extension_object(val_el) elif ntag.startswith("ListOf"): # Default case for "ListOf" types. # Should stay after particular cases (e.g.: "ListOfLocalizedText"). obj.value = [] for val_el in val_el: tmp = NodeData() self._parse_value(val_el, tmp) obj.value.append(tmp.value) else: # Missing according to string_to_val: XmlElement, ExpandedNodeId, # QualifiedName, StatusCode. # Missing according to ua.VariantType (also missing in string_to_val): # DataValue, Variant, DiagnosticInfo. self.logger.warning("Parsing value of type '%s' not implemented", ntag) def _get_text(self, el): txtlist = [txt.strip() for txt in el.itertext()] return "".join(txtlist) def _parse_list_of_localized_text(self, el): value = [] for localized_text in el: mylist = self._parse_body(localized_text) # small hack since we did not handle LocalizedText as ExtensionObject at begynning for name, val in mylist: if name == "Text": value.append(val) return value def _parse_list_of_extension_object(self, el): """ Parse a uax:ListOfExtensionObject Value Return an list of ExtObj """ value = [] for extension_object in el: ext_obj = self._parse_ext_obj(extension_object) value.append(ext_obj) return value def _parse_ext_obj(self, el): ext = ExtObj() for extension_object_part in el: ntag = self._retag.match(extension_object_part.tag).groups()[1] if ntag == 'TypeId': ntag = self._retag.match(extension_object_part.find('*').tag).groups()[1] ext.typeid = self._get_text(extension_object_part) elif ntag == 'Body': ext.objname = self._retag.match(extension_object_part.find('*').tag).groups()[1] ext.body = self._parse_body(extension_object_part) else: self.logger.warning("Unknown ntag", ntag) return ext def _parse_body(self, el): body = [] for body_item in el: otag = self._retag.match(body_item.tag).groups()[1] childs = [i for i in body_item] if not childs: val = self._get_text(body_item) else: val = self._parse_body(body_item) if val: body.append((otag, val)) return body def _parse_refs(self, el, obj): parent, parentlink = obj.parent, None for ref in el: struct = RefStruct() struct.forward = "IsForward" not in ref.attrib or ref.attrib["IsForward"] not in ("false", "False") struct.target = ref.text struct.reftype = ref.attrib["ReferenceType"] obj.refs.append(struct) if ref.attrib["ReferenceType"] == "HasTypeDefinition": obj.typedef = ref.text elif not struct.forward: parent, parentlink = struct.target, struct.reftype if obj.parent == parent: obj.parentlink = parentlink if not obj.parent or not obj.parentlink: obj.parent, obj.parentlink = parent, parentlink self.logger.info("Could not detect backward reference to parent for node '%s'", obj.nodeid) python-opcua-0.98.9/opcua/compat.py000066400000000000000000000003501357637245100172260ustar00rootroot00000000000000""" Module with Python 2/3 compatibility functions. """ def with_metaclass(Meta, *bases): """ Allows to specify metaclasses in Python 2 and 3 compatible ways. Might not allow """ return Meta("Meta", bases, {}) python-opcua-0.98.9/opcua/crypto/000077500000000000000000000000001357637245100167135ustar00rootroot00000000000000python-opcua-0.98.9/opcua/crypto/__init__.py000066400000000000000000000000001357637245100210120ustar00rootroot00000000000000python-opcua-0.98.9/opcua/crypto/security_policies.py000066400000000000000000000470421357637245100230320ustar00rootroot00000000000000import logging from abc import ABCMeta, abstractmethod from opcua.ua import CryptographyNone, SecurityPolicy from opcua.ua import MessageSecurityMode from opcua.ua import UaError try: from opcua.crypto import uacrypto CRYPTOGRAPHY_AVAILABLE = True except ImportError: CRYPTOGRAPHY_AVAILABLE = False POLICY_NONE_URI = 'http://opcfoundation.org/UA/SecurityPolicy#None' def require_cryptography(obj): """ Raise exception if cryptography module is not available. Call this function in constructors. """ if not CRYPTOGRAPHY_AVAILABLE: raise UaError("Can't use {0}, cryptography module is not installed".format(obj.__class__.__name__)) class Signer(object): """ Abstract base class for cryptographic signature algorithm """ __metaclass__ = ABCMeta @abstractmethod def signature_size(self): pass @abstractmethod def signature(self, data): pass class Verifier(object): """ Abstract base class for cryptographic signature verification """ __metaclass__ = ABCMeta @abstractmethod def signature_size(self): pass @abstractmethod def verify(self, data, signature): pass class Encryptor(object): """ Abstract base class for encryption algorithm """ __metaclass__ = ABCMeta @abstractmethod def plain_block_size(self): pass @abstractmethod def encrypted_block_size(self): pass @abstractmethod def encrypt(self, data): pass class Decryptor(object): """ Abstract base class for decryption algorithm """ __metaclass__ = ABCMeta @abstractmethod def plain_block_size(self): pass @abstractmethod def encrypted_block_size(self): pass @abstractmethod def decrypt(self, data): pass class Cryptography(CryptographyNone): """ Security policy: Sign or SignAndEncrypt """ def __init__(self, mode=MessageSecurityMode.Sign): self.Signer = None self.Verifier = None self.Encryptor = None self.Decryptor = None assert mode in (MessageSecurityMode.Sign, MessageSecurityMode.SignAndEncrypt) self.is_encrypted = (mode == MessageSecurityMode.SignAndEncrypt) def plain_block_size(self): """ Size of plain text block for block cipher. """ if self.is_encrypted: return self.Encryptor.plain_block_size() return 1 def encrypted_block_size(self): """ Size of encrypted text block for block cipher. """ if self.is_encrypted: return self.Encryptor.encrypted_block_size() return 1 def padding(self, size): """ Create padding for a block of given size. plain_size = size + len(padding) + signature_size() plain_size = N * plain_block_size() """ if not self.is_encrypted: return b'' block_size = self.Encryptor.plain_block_size() rem = (size + self.signature_size() + 1) % block_size if rem != 0: rem = block_size - rem return bytes(bytearray([rem])) * (rem + 1) def min_padding_size(self): if self.is_encrypted: return 1 return 0 def signature_size(self): return self.Signer.signature_size() def signature(self, data): return self.Signer.signature(data) def vsignature_size(self): return self.Verifier.signature_size() def verify(self, data, sig): self.Verifier.verify(data, sig) def encrypt(self, data): if self.is_encrypted: assert len(data) % self.Encryptor.plain_block_size() == 0 return self.Encryptor.encrypt(data) return data def decrypt(self, data): if self.is_encrypted: return self.Decryptor.decrypt(data) return data def remove_padding(self, data): if self.is_encrypted: pad_size = bytearray(data[-1:])[0] + 1 return data[:-pad_size] return data class SignerRsa(Signer): def __init__(self, client_pk): require_cryptography(self) self.client_pk = client_pk self.key_size = self.client_pk.key_size // 8 def signature_size(self): return self.key_size def signature(self, data): return uacrypto.sign_sha1(self.client_pk, data) class VerifierRsa(Verifier): def __init__(self, server_cert): require_cryptography(self) self.server_cert = server_cert self.key_size = self.server_cert.public_key().key_size // 8 def signature_size(self): return self.key_size def verify(self, data, signature): uacrypto.verify_sha1(self.server_cert, data, signature) class EncryptorRsa(Encryptor): def __init__(self, server_cert, enc_fn, padding_size): require_cryptography(self) self.server_cert = server_cert self.key_size = self.server_cert.public_key().key_size // 8 self.encryptor = enc_fn self.padding_size = padding_size def plain_block_size(self): return self.key_size - self.padding_size def encrypted_block_size(self): return self.key_size def encrypt(self, data): encrypted = b'' block_size = self.plain_block_size() for i in range(0, len(data), block_size): encrypted += self.encryptor(self.server_cert.public_key(), data[i: i + block_size]) return encrypted class DecryptorRsa(Decryptor): def __init__(self, client_pk, dec_fn, padding_size): require_cryptography(self) self.client_pk = client_pk self.key_size = self.client_pk.key_size // 8 self.decryptor = dec_fn self.padding_size = padding_size def plain_block_size(self): return self.key_size - self.padding_size def encrypted_block_size(self): return self.key_size def decrypt(self, data): decrypted = b'' block_size = self.encrypted_block_size() for i in range(0, len(data), block_size): decrypted += self.decryptor(self.client_pk, data[i: i + block_size]) return decrypted class SignerAesCbc(Signer): def __init__(self, key): require_cryptography(self) self.key = key def signature_size(self): return uacrypto.sha1_size() def signature(self, data): return uacrypto.hmac_sha1(self.key, data) class VerifierAesCbc(Verifier): def __init__(self, key): require_cryptography(self) self.key = key def signature_size(self): return uacrypto.sha1_size() def verify(self, data, signature): expected = uacrypto.hmac_sha1(self.key, data) if signature != expected: raise uacrypto.InvalidSignature class EncryptorAesCbc(Encryptor): def __init__(self, key, init_vec): require_cryptography(self) self.cipher = uacrypto.cipher_aes_cbc(key, init_vec) def plain_block_size(self): return self.cipher.algorithm.key_size // 8 def encrypted_block_size(self): return self.cipher.algorithm.key_size // 8 def encrypt(self, data): return uacrypto.cipher_encrypt(self.cipher, data) class DecryptorAesCbc(Decryptor): def __init__(self, key, init_vec): require_cryptography(self) self.cipher = uacrypto.cipher_aes_cbc(key, init_vec) def plain_block_size(self): return self.cipher.algorithm.key_size // 8 def encrypted_block_size(self): return self.cipher.algorithm.key_size // 8 def decrypt(self, data): return uacrypto.cipher_decrypt(self.cipher, data) class SignerSha256(Signer): def __init__(self, client_pk): require_cryptography(self) self.client_pk = client_pk self.key_size = self.client_pk.key_size // 8 def signature_size(self): return self.key_size def signature(self, data): return uacrypto.sign_sha256(self.client_pk, data) class VerifierSha256(Verifier): def __init__(self, server_cert): require_cryptography(self) self.server_cert = server_cert self.key_size = self.server_cert.public_key().key_size // 8 def signature_size(self): return self.key_size def verify(self, data, signature): uacrypto.verify_sha256(self.server_cert, data, signature) class SignerHMac256(Signer): def __init__(self, key): require_cryptography(self) self.key = key def signature_size(self): return uacrypto.sha256_size() def signature(self, data): return uacrypto.hmac_sha256(self.key, data) class VerifierHMac256(Verifier): def __init__(self, key): require_cryptography(self) self.key = key def signature_size(self): return uacrypto.sha256_size() def verify(self, data, signature): expected = uacrypto.hmac_sha256(self.key, data) if signature != expected: raise uacrypto.InvalidSignature class SecurityPolicyBasic128Rsa15(SecurityPolicy): """ DEPRECATED, do not use anymore! Security Basic 128Rsa15 A suite of algorithms that uses RSA15 as Key-Wrap-algorithm and 128-Bit (16 bytes) for encryption algorithms. - SymmetricSignatureAlgorithm - HmacSha1 (http://www.w3.org/2000/09/xmldsig#hmac-sha1) - SymmetricEncryptionAlgorithm - Aes128 (http://www.w3.org/2001/04/xmlenc#aes128-cbc) - AsymmetricSignatureAlgorithm - RsaSha1 (http://www.w3.org/2000/09/xmldsig#rsa-sha1) - AsymmetricKeyWrapAlgorithm - KwRsa15 (http://www.w3.org/2001/04/xmlenc#rsa-1_5) - AsymmetricEncryptionAlgorithm - Rsa15 (http://www.w3.org/2001/04/xmlenc#rsa-1_5) - KeyDerivationAlgorithm - PSha1 (http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512/dk/p_sha1) - DerivedSignatureKeyLength - 128 (16 bytes) - MinAsymmetricKeyLength - 1024 (128 bytes) - MaxAsymmetricKeyLength - 2048 (256 bytes) - CertificateSignatureAlgorithm - Sha1 If a certificate or any certificate in the chain is not signed with a hash that is Sha1 or stronger then the certificate shall be rejected. """ URI = "http://opcfoundation.org/UA/SecurityPolicy#Basic128Rsa15" signature_key_size = 16 symmetric_key_size = 16 AsymmetricEncryptionURI = "http://www.w3.org/2001/04/xmlenc#rsa-1_5" AsymmetricSignatureURI = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" @staticmethod def encrypt_asymmetric(pubkey, data): return uacrypto.encrypt_rsa15(pubkey, data) def __init__(self, server_cert, client_cert, client_pk, mode): logger = logging.getLogger(__name__) logger.warning("DEPRECATED! Do not use SecurityPolicyBasic128Rsa15 anymore!") require_cryptography(self) if isinstance(server_cert, bytes): server_cert = uacrypto.x509_from_der(server_cert) # even in Sign mode we need to asymmetrically encrypt secrets # transmitted in OpenSecureChannel. So SignAndEncrypt here self.asymmetric_cryptography = Cryptography( MessageSecurityMode.SignAndEncrypt) self.asymmetric_cryptography.Signer = SignerRsa(client_pk) self.asymmetric_cryptography.Verifier = VerifierRsa(server_cert) self.asymmetric_cryptography.Encryptor = EncryptorRsa( server_cert, uacrypto.encrypt_rsa15, 11) self.asymmetric_cryptography.Decryptor = DecryptorRsa( client_pk, uacrypto.decrypt_rsa15, 11) self.symmetric_cryptography = Cryptography(mode) self.Mode = mode self.server_certificate = uacrypto.der_from_x509(server_cert) self.client_certificate = uacrypto.der_from_x509(client_cert) def make_local_symmetric_key(self, secret, seed): key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(secret, seed, key_sizes) self.symmetric_cryptography.Signer = SignerAesCbc(sigkey) self.symmetric_cryptography.Encryptor = EncryptorAesCbc(key, init_vec) def make_remote_symmetric_key(self, secret, seed): key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(secret, seed, key_sizes) self.symmetric_cryptography.Verifier = VerifierAesCbc(sigkey) self.symmetric_cryptography.Decryptor = DecryptorAesCbc(key, init_vec) class SecurityPolicyBasic256(SecurityPolicy): """ DEPRECATED, do not use anymore! Security Basic 256 A suite of algorithms that are for 256-Bit (32 bytes) encryption, algorithms include: - SymmetricSignatureAlgorithm - HmacSha1 (http://www.w3.org/2000/09/xmldsig#hmac-sha1) - SymmetricEncryptionAlgorithm - Aes256 (http://www.w3.org/2001/04/xmlenc#aes256-cbc) - AsymmetricSignatureAlgorithm - RsaSha1 (http://www.w3.org/2000/09/xmldsig#rsa-sha1) - AsymmetricKeyWrapAlgorithm - KwRsaOaep (http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p) - AsymmetricEncryptionAlgorithm - RsaOaep (http://www.w3.org/2001/04/xmlenc#rsa-oaep) - KeyDerivationAlgorithm - PSha1 (http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512/dk/p_sha1) - DerivedSignatureKeyLength - 192 (24 bytes) - MinAsymmetricKeyLength - 1024 (128 bytes) - MaxAsymmetricKeyLength - 2048 (256 bytes) - CertificateSignatureAlgorithm - Sha1 If a certificate or any certificate in the chain is not signed with a hash that is Sha1 or stronger then the certificate shall be rejected. """ URI = "http://opcfoundation.org/UA/SecurityPolicy#Basic256" signature_key_size = 24 symmetric_key_size = 32 AsymmetricEncryptionURI = "http://www.w3.org/2001/04/xmlenc#rsa-oaep" AsymmetricSignatureURI = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" @staticmethod def encrypt_asymmetric(pubkey, data): return uacrypto.encrypt_rsa_oaep(pubkey, data) def __init__(self, server_cert, client_cert, client_pk, mode): logger = logging.getLogger(__name__) logger.warning("DEPRECATED! Do not use SecurityPolicyBasic256 anymore!") require_cryptography(self) if isinstance(server_cert, bytes): server_cert = uacrypto.x509_from_der(server_cert) # even in Sign mode we need to asymmetrically encrypt secrets # transmitted in OpenSecureChannel. So SignAndEncrypt here self.asymmetric_cryptography = Cryptography( MessageSecurityMode.SignAndEncrypt) self.asymmetric_cryptography.Signer = SignerRsa(client_pk) self.asymmetric_cryptography.Verifier = VerifierRsa(server_cert) self.asymmetric_cryptography.Encryptor = EncryptorRsa( server_cert, uacrypto.encrypt_rsa_oaep, 42) self.asymmetric_cryptography.Decryptor = DecryptorRsa( client_pk, uacrypto.decrypt_rsa_oaep, 42) self.symmetric_cryptography = Cryptography(mode) self.Mode = mode self.server_certificate = uacrypto.der_from_x509(server_cert) self.client_certificate = uacrypto.der_from_x509(client_cert) def make_local_symmetric_key(self, secret, seed): # specs part 6, 6.7.5 key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(secret, seed, key_sizes) self.symmetric_cryptography.Signer = SignerAesCbc(sigkey) self.symmetric_cryptography.Encryptor = EncryptorAesCbc(key, init_vec) def make_remote_symmetric_key(self, secret, seed): # specs part 6, 6.7.5 key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha1(secret, seed, key_sizes) self.symmetric_cryptography.Verifier = VerifierAesCbc(sigkey) self.symmetric_cryptography.Decryptor = DecryptorAesCbc(key, init_vec) class SecurityPolicyBasic256Sha256(SecurityPolicy): """ Security Basic 256Sha256 A suite of algorithms that uses Sha256 as Key-Wrap-algorithm and 256-Bit (32 bytes) for encryption algorithms. - SymmetricSignatureAlgorithm_HMAC-SHA2-256 https://tools.ietf.org/html/rfc4634 - SymmetricEncryptionAlgorithm_AES256-CBC http://www.w3.org/2001/04/xmlenc#aes256-cbc - AsymmetricSignatureAlgorithm_RSA-PKCS15-SHA2-256 http://www.w3.org/2001/04/xmldsig-more#rsa-sha256 - AsymmetricEncryptionAlgorithm_RSA-OAEP-SHA1 http://www.w3.org/2001/04/xmlenc#rsa-oaep - KeyDerivationAlgorithm_P-SHA2-256 http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512/dk/p_sha256 - CertificateSignatureAlgorithm_RSA-PKCS15-SHA2-256 http://www.w3.org/2001/04/xmldsig-more#rsa-sha256 - Basic256Sha256_Limits -> DerivedSignatureKeyLength: 256 bits -> MinAsymmetricKeyLength: 2048 bits -> MaxAsymmetricKeyLength: 4096 bits -> SecureChannelNonceLength: 32 bytes """ URI = "http://opcfoundation.org/UA/SecurityPolicy#Basic256Sha256" signature_key_size = 32 symmetric_key_size = 32 AsymmetricEncryptionURI = "http://www.w3.org/2001/04/xmlenc#rsa-oaep" AsymmetricSignatureURI = "http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" @staticmethod def encrypt_asymmetric(pubkey, data): return uacrypto.encrypt_rsa_oaep(pubkey, data) def __init__(self, server_cert, client_cert, client_pk, mode): require_cryptography(self) if isinstance(server_cert, bytes): server_cert = uacrypto.x509_from_der(server_cert) # even in Sign mode we need to asymmetrically encrypt secrets # transmitted in OpenSecureChannel. So SignAndEncrypt here self.asymmetric_cryptography = Cryptography( MessageSecurityMode.SignAndEncrypt) self.asymmetric_cryptography.Signer = SignerSha256(client_pk) self.asymmetric_cryptography.Verifier = VerifierSha256(server_cert) self.asymmetric_cryptography.Encryptor = EncryptorRsa( server_cert, uacrypto.encrypt_rsa_oaep, 42) self.asymmetric_cryptography.Decryptor = DecryptorRsa( client_pk, uacrypto.decrypt_rsa_oaep, 42) self.symmetric_cryptography = Cryptography(mode) self.Mode = mode self.server_certificate = uacrypto.der_from_x509(server_cert) self.client_certificate = uacrypto.der_from_x509(client_cert) def make_local_symmetric_key(self, secret, seed): # specs part 6, 6.7.5 key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha256(secret, seed, key_sizes) self.symmetric_cryptography.Signer = SignerHMac256(sigkey) self.symmetric_cryptography.Encryptor = EncryptorAesCbc(key, init_vec) def make_remote_symmetric_key(self, secret, seed): # specs part 6, 6.7.5 key_sizes = (self.signature_key_size, self.symmetric_key_size, 16) (sigkey, key, init_vec) = uacrypto.p_sha256(secret, seed, key_sizes) self.symmetric_cryptography.Verifier = VerifierHMac256(sigkey) self.symmetric_cryptography.Decryptor = DecryptorAesCbc(key, init_vec) def encrypt_asymmetric(pubkey, data, policy_uri): """ Encrypt data with pubkey using an asymmetric algorithm. The algorithm is selected by policy_uri. Returns a tuple (encrypted_data, algorithm_uri) """ for cls in [SecurityPolicyBasic256Sha256, SecurityPolicyBasic256, SecurityPolicyBasic128Rsa15]: if policy_uri == cls.URI: return (cls.encrypt_asymmetric(pubkey, data), cls.AsymmetricEncryptionURI) if not policy_uri or policy_uri == POLICY_NONE_URI: return (data, '') raise UaError("Unsupported security policy `{0}`".format(policy_uri)) python-opcua-0.98.9/opcua/crypto/uacrypto.py000066400000000000000000000133571357637245100211440ustar00rootroot00000000000000import os from cryptography import x509 from cryptography.exceptions import InvalidSignature from cryptography.hazmat.backends import default_backend from cryptography.hazmat.primitives import serialization from cryptography.hazmat.primitives import hashes from cryptography.hazmat.primitives import hmac from cryptography.hazmat.primitives.asymmetric import padding from cryptography.hazmat.primitives.ciphers import Cipher from cryptography.hazmat.primitives.ciphers import algorithms from cryptography.hazmat.primitives.ciphers import modes def load_certificate(path): _, ext = os.path.splitext(path) with open(path, "rb") as f: if ext == ".pem": return x509.load_pem_x509_certificate(f.read(), default_backend()) else: return x509.load_der_x509_certificate(f.read(), default_backend()) def x509_from_der(data): if not data: return None return x509.load_der_x509_certificate(data, default_backend()) def load_private_key(path): _, ext = os.path.splitext(path) with open(path, "rb") as f: if ext == ".pem": return serialization.load_pem_private_key(f.read(), password=None, backend=default_backend()) else: return serialization.load_der_private_key(f.read(), password=None, backend=default_backend()) def der_from_x509(certificate): if certificate is None: return b"" return certificate.public_bytes(serialization.Encoding.DER) def sign_sha1(private_key, data): return private_key.sign( data, padding.PKCS1v15(), hashes.SHA1() ) def sign_sha256(private_key, data): return private_key.sign( data, padding.PKCS1v15(), hashes.SHA256() ) def verify_sha1(certificate, data, signature): certificate.public_key().verify( signature, data, padding.PKCS1v15(), hashes.SHA1()) def verify_sha256(certificate, data, signature): certificate.public_key().verify( signature, data, padding.PKCS1v15(), hashes.SHA256()) def encrypt_basic256(public_key, data): ciphertext = public_key.encrypt( data, padding.OAEP( mgf=padding.MGF1(algorithm=hashes.SHA256()), algorithm=hashes.SHA256(), label=None) ) return ciphertext def encrypt_rsa_oaep(public_key, data): ciphertext = public_key.encrypt( data, padding.OAEP( mgf=padding.MGF1(algorithm=hashes.SHA1()), algorithm=hashes.SHA1(), label=None) ) return ciphertext def encrypt_rsa15(public_key, data): ciphertext = public_key.encrypt( data, padding.PKCS1v15() ) return ciphertext def decrypt_rsa_oaep(private_key, data): text = private_key.decrypt( data, padding.OAEP( mgf=padding.MGF1(algorithm=hashes.SHA1()), algorithm=hashes.SHA1(), label=None) ) return text def decrypt_rsa15(private_key, data): text = private_key.decrypt( data, padding.PKCS1v15() ) return text def cipher_aes_cbc(key, init_vec): return Cipher(algorithms.AES(key), modes.CBC(init_vec), default_backend()) def cipher_encrypt(cipher, data): encryptor = cipher.encryptor() return encryptor.update(data) + encryptor.finalize() def cipher_decrypt(cipher, data): decryptor = cipher.decryptor() return decryptor.update(data) + decryptor.finalize() def hmac_sha1(key, message): hasher = hmac.HMAC(key, hashes.SHA1(), backend=default_backend()) hasher.update(message) return hasher.finalize() def hmac_sha256(key, message): hasher = hmac.HMAC(key, hashes.SHA256(), backend=default_backend()) hasher.update(message) return hasher.finalize() def sha1_size(): return hashes.SHA1.digest_size def sha256_size(): return hashes.SHA256.digest_size def p_sha1(secret, seed, sizes=()): """ Derive one or more keys from secret and seed. (See specs part 6, 6.7.5 and RFC 2246 - TLS v1.0) Lengths of keys will match sizes argument """ full_size = 0 for size in sizes: full_size += size result = b'' accum = seed while len(result) < full_size: accum = hmac_sha1(secret, accum) result += hmac_sha1(secret, accum + seed) parts = [] for size in sizes: parts.append(result[:size]) result = result[size:] return tuple(parts) def p_sha256(secret, seed, sizes=()): """ Derive one or more keys from secret and seed. (See specs part 6, 6.7.5 and RFC 2246 - TLS v1.0) Lengths of keys will match sizes argument """ full_size = 0 for size in sizes: full_size += size result = b'' accum = seed while len(result) < full_size: accum = hmac_sha256(secret, accum) result += hmac_sha256(secret, accum + seed) parts = [] for size in sizes: parts.append(result[:size]) result = result[size:] return tuple(parts) def x509_name_to_string(name): parts = ["{0}={1}".format(attr.oid._name, attr.value) for attr in name] return ', '.join(parts) def x509_to_string(cert): """ Convert x509 certificate to human-readable string """ if cert.subject == cert.issuer: issuer = ' (self-signed)' else: issuer = ', issuer: {0}'.format(x509_name_to_string(cert.issuer)) # TODO: show more information return "{0}{1}, {2} - {3}".format(x509_name_to_string(cert.subject), issuer, cert.not_valid_before, cert.not_valid_after) if __name__ == "__main__": # Convert from PEM to DER cert = load_certificate("../examples/server_cert.pem") #rsa_pubkey = pubkey_from_dercert(der) rsa_privkey = load_private_key("../examples/mykey.pem") from IPython import embed embed() python-opcua-0.98.9/opcua/server/000077500000000000000000000000001357637245100167015ustar00rootroot00000000000000python-opcua-0.98.9/opcua/server/__init__.py000066400000000000000000000000001357637245100210000ustar00rootroot00000000000000python-opcua-0.98.9/opcua/server/address_space.py000066400000000000000000000724051357637245100220630ustar00rootroot00000000000000from threading import RLock import logging from datetime import datetime import collections import shelve try: import cPickle as pickle except: import pickle from opcua import ua from opcua.server.user_manager import UserManager class AttributeValue(object): def __init__(self, value): self.value = value self.value_callback = None self.datachange_callbacks = {} def __str__(self): return "AttributeValue({0})".format(self.value) __repr__ = __str__ class NodeData(object): def __init__(self, nodeid): self.nodeid = nodeid self.attributes = {} self.references = [] self.call = None def __str__(self): return "NodeData(id:{0}, attrs:{1}, refs:{2})".format(self.nodeid, self.attributes, self.references) __repr__ = __str__ class AttributeService(object): def __init__(self, aspace): self.logger = logging.getLogger(__name__) self._aspace = aspace def read(self, params): self.logger.debug("read %s", params) res = [] for readvalue in params.NodesToRead: res.append(self._aspace.get_attribute_value(readvalue.NodeId, readvalue.AttributeId)) return res def write(self, params, user=UserManager.User.Admin): self.logger.debug("write %s as user %s", params, user) res = [] for writevalue in params.NodesToWrite: if user != UserManager.User.Admin: if writevalue.AttributeId != ua.AttributeIds.Value: res.append(ua.StatusCode(ua.StatusCodes.BadUserAccessDenied)) continue al = self._aspace.get_attribute_value(writevalue.NodeId, ua.AttributeIds.AccessLevel) ual = self._aspace.get_attribute_value(writevalue.NodeId, ua.AttributeIds.UserAccessLevel) if not ua.ua_binary.test_bit(al.Value.Value, ua.AccessLevel.CurrentWrite) or not ua.ua_binary.test_bit(ual.Value.Value, ua.AccessLevel.CurrentWrite): res.append(ua.StatusCode(ua.StatusCodes.BadUserAccessDenied)) continue res.append(self._aspace.set_attribute_value(writevalue.NodeId, writevalue.AttributeId, writevalue.Value)) return res class ViewService(object): def __init__(self, aspace): self.logger = logging.getLogger(__name__) self._aspace = aspace def browse(self, params): self.logger.debug("browse %s", params) res = [] for desc in params.NodesToBrowse: res.append(self._browse(desc)) return res def _browse(self, desc): res = ua.BrowseResult() if desc.NodeId not in self._aspace: res.StatusCode = ua.StatusCode(ua.StatusCodes.BadNodeIdInvalid) return res node = self._aspace[desc.NodeId] for ref in node.references: if not self._is_suitable_ref(desc, ref): continue res.References.append(ref) return res def _is_suitable_ref(self, desc, ref): if not self._suitable_direction(desc.BrowseDirection, ref.IsForward): self.logger.debug("%s is not suitable due to direction", ref) return False if not self._suitable_reftype(desc.ReferenceTypeId, ref.ReferenceTypeId, desc.IncludeSubtypes): self.logger.debug("%s is not suitable due to type", ref) return False if desc.NodeClassMask and ((desc.NodeClassMask & ref.NodeClass) == 0): self.logger.debug("%s is not suitable due to class", ref) return False self.logger.debug("%s is a suitable ref for desc %s", ref, desc) return True def _suitable_reftype(self, ref1, ref2, subtypes): """ """ if ref1 == ua.NodeId(ua.ObjectIds.Null): # If ReferenceTypeId is not specified in the BrowseDescription, # all References are returned and includeSubtypes is ignored. return True if not subtypes and ref2.Identifier == ua.ObjectIds.HasSubtype: return False if ref1.Identifier == ref2.Identifier: return True oktypes = self._get_sub_ref(ref1) if not subtypes and ua.NodeId(ua.ObjectIds.HasSubtype) in oktypes: oktypes.remove(ua.NodeId(ua.ObjectIds.HasSubtype)) return ref2 in oktypes def _get_sub_ref(self, ref): res = [] nodedata = self._aspace[ref] if nodedata is not None: for ref in nodedata.references: if ref.ReferenceTypeId.Identifier == ua.ObjectIds.HasSubtype and ref.IsForward: res.append(ref.NodeId) res += self._get_sub_ref(ref.NodeId) return res def _suitable_direction(self, desc, isforward): if desc == ua.BrowseDirection.Both: return True if desc == ua.BrowseDirection.Forward and isforward: return True if desc == ua.BrowseDirection.Inverse and not isforward: return True return False def translate_browsepaths_to_nodeids(self, browsepaths): self.logger.debug("translate browsepath: %s", browsepaths) results = [] for path in browsepaths: results.append(self._translate_browsepath_to_nodeid(path)) return results def _translate_browsepath_to_nodeid(self, path): self.logger.debug("looking at path: %s", path) res = ua.BrowsePathResult() if path.StartingNode not in self._aspace: res.StatusCode = ua.StatusCode(ua.StatusCodes.BadNodeIdInvalid) return res current = path.StartingNode for el in path.RelativePath.Elements: nodeid = self._find_element_in_node(el, current) if not nodeid: res.StatusCode = ua.StatusCode(ua.StatusCodes.BadNoMatch) return res current = nodeid target = ua.BrowsePathTarget() target.TargetId = current target.RemainingPathIndex = 4294967295 res.Targets = [target] return res def _find_element_in_node(self, el, nodeid): nodedata = self._aspace[nodeid] for ref in nodedata.references: # FIXME: here we should check other arguments!! if ref.BrowseName == el.TargetName: return ref.NodeId self.logger.info("element %s was not found in node %s", el, nodeid) return None class NodeManagementService(object): def __init__(self, aspace): self.logger = logging.getLogger(__name__) self._aspace = aspace def add_nodes(self, addnodeitems, user=UserManager.User.Admin): results = [] for item in addnodeitems: results.append(self._add_node(item, user)) return results def try_add_nodes(self, addnodeitems, user=UserManager.User.Admin, check=True): for item in addnodeitems: ret = self._add_node(item, user, check=check) if not ret.StatusCode.is_good(): yield item def _add_node(self, item, user, check=True): self.logger.debug("Adding node %s %s", item.RequestedNewNodeId, item.BrowseName) result = ua.AddNodesResult() if not user == UserManager.User.Admin: result.StatusCode = ua.StatusCode(ua.StatusCodes.BadUserAccessDenied) return result if item.RequestedNewNodeId.has_null_identifier(): # If Identifier of requested NodeId is null we generate a new NodeId using # the namespace of the nodeid, this is an extention of the spec to allow # to requests the server to generate a new nodeid in a specified namespace self.logger.debug("RequestedNewNodeId has null identifier, generating Identifier") item.RequestedNewNodeId = self._aspace.generate_nodeid(item.RequestedNewNodeId.NamespaceIndex) else: if item.RequestedNewNodeId in self._aspace: self.logger.warning("AddNodesItem: Requested NodeId %s already exists", item.RequestedNewNodeId) result.StatusCode = ua.StatusCode(ua.StatusCodes.BadNodeIdExists) return result if item.ParentNodeId.is_null(): self.logger.info("add_node: while adding node %s, requested parent node is null %s %s", item.RequestedNewNodeId, item.ParentNodeId, item.ParentNodeId.is_null()) if check: result.StatusCode = ua.StatusCode(ua.StatusCodes.BadParentNodeIdInvalid) return result parentdata = self._aspace.get(item.ParentNodeId) if parentdata is None and not item.ParentNodeId.is_null(): self.logger.info("add_node: while adding node %s, requested parent node %s does not exists", item.RequestedNewNodeId, item.ParentNodeId) result.StatusCode = ua.StatusCode(ua.StatusCodes.BadParentNodeIdInvalid) return result nodedata = NodeData(item.RequestedNewNodeId) self._add_node_attributes(nodedata, item, add_timestamps=check) # now add our node to db self._aspace[nodedata.nodeid] = nodedata if parentdata is not None: self._add_ref_from_parent(nodedata, item, parentdata) self._add_ref_to_parent(nodedata, item, parentdata) # add type definition if item.TypeDefinition != ua.NodeId(): self._add_type_definition(nodedata, item) result.StatusCode = ua.StatusCode() result.AddedNodeId = nodedata.nodeid return result def _add_node_attributes(self, nodedata, item, add_timestamps): # add common attrs nodedata.attributes[ua.AttributeIds.NodeId] = AttributeValue( ua.DataValue(ua.Variant(nodedata.nodeid, ua.VariantType.NodeId)) ) nodedata.attributes[ua.AttributeIds.BrowseName] = AttributeValue( ua.DataValue(ua.Variant(item.BrowseName, ua.VariantType.QualifiedName)) ) nodedata.attributes[ua.AttributeIds.NodeClass] = AttributeValue( ua.DataValue(ua.Variant(item.NodeClass, ua.VariantType.Int32)) ) # add requested attrs self._add_nodeattributes(item.NodeAttributes, nodedata, add_timestamps) def _add_unique_reference(self, nodedata, desc): for r in nodedata.references: if r.ReferenceTypeId == desc.ReferenceTypeId and r.NodeId == desc.NodeId: if r.IsForward != desc.IsForward: self.logger.error("Cannot add conflicting reference %s ", str(desc)) return ua.StatusCode(ua.StatusCodes.BadReferenceNotAllowed) break # ref already exists else: nodedata.references.append(desc) return ua.StatusCode() def _add_ref_from_parent(self, nodedata, item, parentdata): desc = ua.ReferenceDescription() desc.ReferenceTypeId = item.ReferenceTypeId desc.NodeId = nodedata.nodeid desc.NodeClass = item.NodeClass desc.BrowseName = item.BrowseName desc.DisplayName = item.NodeAttributes.DisplayName desc.TypeDefinition = item.TypeDefinition desc.IsForward = True self._add_unique_reference(parentdata, desc) def _add_ref_to_parent(self, nodedata, item, parentdata): addref = ua.AddReferencesItem() addref.ReferenceTypeId = item.ReferenceTypeId addref.SourceNodeId = nodedata.nodeid addref.TargetNodeId = item.ParentNodeId addref.TargetNodeClass = parentdata.attributes[ua.AttributeIds.NodeClass].value.Value.Value addref.IsForward = False self._add_reference_no_check(nodedata, addref) def _add_type_definition(self, nodedata, item): addref = ua.AddReferencesItem() addref.SourceNodeId = nodedata.nodeid addref.IsForward = True addref.ReferenceTypeId = ua.NodeId(ua.ObjectIds.HasTypeDefinition) addref.TargetNodeId = item.TypeDefinition addref.TargetNodeClass = ua.NodeClass.DataType self._add_reference_no_check(nodedata, addref) def delete_nodes(self, deletenodeitems, user=UserManager.User.Admin): results = [] for item in deletenodeitems.NodesToDelete: results.append(self._delete_node(item, user)) return results def _delete_node(self, item, user): if user != UserManager.User.Admin: return ua.StatusCode(ua.StatusCodes.BadUserAccessDenied) if item.NodeId not in self._aspace: self.logger.warning("DeleteNodesItem: NodeId %s does not exists", item.NodeId) return ua.StatusCode(ua.StatusCodes.BadNodeIdUnknown) if item.DeleteTargetReferences: for elem in self._aspace.keys(): for rdesc in self._aspace[elem].references: if rdesc.NodeId == item.NodeId: self._aspace[elem].references.remove(rdesc) self._delete_node_callbacks(self._aspace[item.NodeId]) del(self._aspace[item.NodeId]) return ua.StatusCode() def _delete_node_callbacks(self, nodedata): if ua.AttributeIds.Value in nodedata.attributes: for handle, callback in list(nodedata.attributes[ua.AttributeIds.Value].datachange_callbacks.items()): try: callback(handle, None, ua.StatusCode(ua.StatusCodes.BadNodeIdUnknown)) self._aspace.delete_datachange_callback(handle) except Exception as ex: self.logger.exception("Error calling delete node callback callback %s, %s, %s", nodedata, ua.AttributeIds.Value, ex) def add_references(self, refs, user=UserManager.User.Admin): result = [] for ref in refs: result.append(self._add_reference(ref, user)) return result def try_add_references(self, refs, user=UserManager.User.Admin): for ref in refs: if not self._add_reference(ref, user).is_good(): yield ref def _add_reference(self, addref, user): sourcedata = self._aspace.get(addref.SourceNodeId) if sourcedata is None: return ua.StatusCode(ua.StatusCodes.BadSourceNodeIdInvalid) if addref.TargetNodeId not in self._aspace: return ua.StatusCode(ua.StatusCodes.BadTargetNodeIdInvalid) if user != UserManager.User.Admin: return ua.StatusCode(ua.StatusCodes.BadUserAccessDenied) return self._add_reference_no_check(sourcedata, addref) def _add_reference_no_check(self, sourcedata, addref): rdesc = ua.ReferenceDescription() rdesc.ReferenceTypeId = addref.ReferenceTypeId rdesc.IsForward = addref.IsForward rdesc.NodeId = addref.TargetNodeId if addref.TargetNodeClass == ua.NodeClass.Unspecified: rdesc.NodeClass = self._aspace.get_attribute_value(addref.TargetNodeId, ua.AttributeIds.NodeClass).Value.Value else: rdesc.NodeClass = addref.TargetNodeClass bname = self._aspace.get_attribute_value(addref.TargetNodeId, ua.AttributeIds.BrowseName).Value.Value if bname: rdesc.BrowseName = bname dname = self._aspace.get_attribute_value(addref.TargetNodeId, ua.AttributeIds.DisplayName).Value.Value if dname: rdesc.DisplayName = dname return self._add_unique_reference(sourcedata, rdesc) def delete_references(self, refs, user=UserManager.User.Admin): result = [] for ref in refs: result.append(self._delete_reference(ref, user)) return result def _delete_unique_reference(self, item, invert=False): if invert: source, target, forward = item.TargetNodeId, item.SourceNodeId, not item.IsForward else: source, target, forward = item.SourceNodeId, item.TargetNodeId, item.IsForward for rdesc in self._aspace[source].references: if rdesc.NodeId == target and rdesc.ReferenceTypeId == item.ReferenceTypeId: if rdesc.IsForward == forward: self._aspace[source].references.remove(rdesc) return ua.StatusCode() return ua.StatusCode(ua.StatusCodes.BadNotFound) def _delete_reference(self, item, user): if item.SourceNodeId not in self._aspace: return ua.StatusCode(ua.StatusCodes.BadSourceNodeIdInvalid) if item.TargetNodeId not in self._aspace: return ua.StatusCode(ua.StatusCodes.BadTargetNodeIdInvalid) if item.ReferenceTypeId not in self._aspace: return ua.StatusCode(ua.StatusCodes.BadReferenceTypeIdInvalid) if user != UserManager.User.Admin: return ua.StatusCode(ua.StatusCodes.BadUserAccessDenied) if item.DeleteBidirectional: self._delete_unique_reference(item, True) return self._delete_unique_reference(item) def _add_node_attr(self, item, nodedata, name, vtype=None, add_timestamps=False): if item.SpecifiedAttributes & getattr(ua.NodeAttributesMask, name): dv = ua.DataValue(ua.Variant(getattr(item, name), vtype)) if add_timestamps: # dv.ServerTimestamp = datetime.utcnow() # Disabled until someone explains us it should be there dv.SourceTimestamp = datetime.utcnow() nodedata.attributes[getattr(ua.AttributeIds, name)] = AttributeValue(dv) def _add_nodeattributes(self, item, nodedata, add_timestamps): self._add_node_attr(item, nodedata, "AccessLevel", ua.VariantType.Byte) self._add_node_attr(item, nodedata, "ArrayDimensions", ua.VariantType.UInt32) self._add_node_attr(item, nodedata, "BrowseName", ua.VariantType.QualifiedName) self._add_node_attr(item, nodedata, "ContainsNoLoops", ua.VariantType.Boolean) self._add_node_attr(item, nodedata, "DataType", ua.VariantType.NodeId) self._add_node_attr(item, nodedata, "Description", ua.VariantType.LocalizedText) self._add_node_attr(item, nodedata, "DisplayName", ua.VariantType.LocalizedText) self._add_node_attr(item, nodedata, "EventNotifier", ua.VariantType.Byte) self._add_node_attr(item, nodedata, "Executable", ua.VariantType.Boolean) self._add_node_attr(item, nodedata, "Historizing", ua.VariantType.Boolean) self._add_node_attr(item, nodedata, "InverseName", ua.VariantType.LocalizedText) self._add_node_attr(item, nodedata, "IsAbstract", ua.VariantType.Boolean) self._add_node_attr(item, nodedata, "MinimumSamplingInterval", ua.VariantType.Double) self._add_node_attr(item, nodedata, "NodeClass", ua.VariantType.Int32) self._add_node_attr(item, nodedata, "NodeId", ua.VariantType.NodeId) self._add_node_attr(item, nodedata, "Symmetric", ua.VariantType.Boolean) self._add_node_attr(item, nodedata, "UserAccessLevel", ua.VariantType.Byte) self._add_node_attr(item, nodedata, "UserExecutable", ua.VariantType.Boolean) self._add_node_attr(item, nodedata, "UserWriteMask", ua.VariantType.Byte) self._add_node_attr(item, nodedata, "ValueRank", ua.VariantType.Int32) self._add_node_attr(item, nodedata, "WriteMask", ua.VariantType.UInt32) self._add_node_attr(item, nodedata, "UserWriteMask", ua.VariantType.UInt32) self._add_node_attr(item, nodedata, "Value", add_timestamps=add_timestamps) class MethodService(object): def __init__(self, aspace): self.logger = logging.getLogger(__name__) self._aspace = aspace def call(self, methods): results = [] for method in methods: results.append(self._call(method)) return results def _call(self, method): res = ua.CallMethodResult() if method.ObjectId not in self._aspace or method.MethodId not in self._aspace: res.StatusCode = ua.StatusCode(ua.StatusCodes.BadNodeIdInvalid) else: node = self._aspace[method.MethodId] if node.call is None: res.StatusCode = ua.StatusCode(ua.StatusCodes.BadNothingToDo) else: try: result = node.call(method.ObjectId, *method.InputArguments) if isinstance(result, ua.CallMethodResult): res = result elif isinstance(result, ua.StatusCode): res.StatusCode = result else: res.OutputArguments = result while len(res.InputArgumentResults) < len(method.InputArguments): res.InputArgumentResults.append(ua.StatusCode()) except Exception: self.logger.exception("Error executing method call %s, an exception was raised: ", method) res.StatusCode = ua.StatusCode(ua.StatusCodes.BadUnexpectedError) return res class AddressSpace(object): """ The address space object stores all the nodes of the OPC-UA server and helper methods. The methods are thread safe """ def __init__(self): self.logger = logging.getLogger(__name__) self._nodes = {} self._lock = RLock() # FIXME: should use multiple reader, one writter pattern self._datachange_callback_counter = 200 self._handle_to_attribute_map = {} self._default_idx = 2 self._nodeid_counter = {0: 20000, 1: 2000} def __getitem__(self, nodeid): with self._lock: return self._nodes.__getitem__(nodeid) def get(self, nodeid): with self._lock: return self._nodes.get(nodeid, None) def __setitem__(self, nodeid, value): with self._lock: return self._nodes.__setitem__(nodeid, value) def __contains__(self, nodeid): with self._lock: return self._nodes.__contains__(nodeid) def __delitem__(self, nodeid): with self._lock: self._nodes.__delitem__(nodeid) def generate_nodeid(self, idx=None): if idx is None: idx = self._default_idx if idx in self._nodeid_counter: self._nodeid_counter[idx] += 1 else: # get the biggest identifier number from the existed nodes in address space identifier_list = sorted([nodeid.Identifier for nodeid in self._nodes.keys() if nodeid.NamespaceIndex == idx and nodeid.NodeIdType in (ua.NodeIdType.Numeric, ua.NodeIdType.TwoByte, ua.NodeIdType.FourByte)]) if identifier_list: self._nodeid_counter[idx] = identifier_list[-1] else: self._nodeid_counter[idx] = 1 nodeid = ua.NodeId(self._nodeid_counter[idx], idx) with self._lock: # OK since reentrant lock while True: if nodeid in self._nodes: nodeid = self.generate_nodeid(idx) else: return nodeid def keys(self): with self._lock: return self._nodes.keys() def empty(self): """ Delete all nodes in address space """ with self._lock: self._nodes = {} def dump(self, path): """ Dump address space as binary to file; note that server must be stopped for this method to work DO NOT DUMP AN ADDRESS SPACE WHICH IS USING A SHELF (load_aspace_shelf), ONLY CACHED NODES WILL GET DUMPED! """ # prepare nodes in address space for being serialized for nodeid, ndata in self._nodes.items(): # if the node has a reference to a method call, remove it so the object can be serialized if ndata.call is not None: self._nodes[nodeid].call = None with open(path, 'wb') as f: pickle.dump(self._nodes, f, pickle.HIGHEST_PROTOCOL) def load(self, path): """ Load address space from a binary file, overwriting everything in the current address space """ with open(path, 'rb') as f: self._nodes = pickle.load(f) def make_aspace_shelf(self, path): """ Make a shelf for containing the nodes from the standard address space; this is typically only done on first start of the server. Subsequent server starts will load the shelf, nodes are then moved to a cache by the LazyLoadingDict class when they are accessed. Saving data back to the shelf is currently NOT supported, it is only used for the default OPC UA standard address space Note: Intended for slow devices, such as Raspberry Pi, to greatly improve start up time """ s = shelve.open(path, "n", protocol=pickle.HIGHEST_PROTOCOL) for nodeid, ndata in self._nodes.items(): s[nodeid.to_string()] = ndata s.close() def load_aspace_shelf(self, path): """ Load the standard address space nodes from a python shelve via LazyLoadingDict as needed. The dump() method can no longer be used if the address space is being loaded from a shelf Note: Intended for slow devices, such as Raspberry Pi, to greatly improve start up time """ class LazyLoadingDict(collections.MutableMapping): """ Special dict that only loads nodes as they are accessed. If a node is accessed it gets copied from the shelve to the cache dict. All user nodes are saved in the cache ONLY. Saving data back to the shelf is currently NOT supported """ def __init__(self, source): self.source = source # python shelf self.cache = {} # internal dict def __getitem__(self, key): # try to get the item (node) from the cache, if it isn't there get it from the shelf try: return self.cache[key] except KeyError: node = self.cache[key] = self.source[key.to_string()] return node def __setitem__(self, key, value): # add a new item to the cache; if this item is in the shelf it is not updated self.cache[key] = value def __contains__(self, key): return key in self.cache or key.to_string() in self.source def __delitem__(self, key): # only deleting items from the cache is allowed del self.cache[key] def __iter__(self): # only the cache can be iterated over return iter(self.cache.keys()) def __len__(self): # only returns the length of items in the cache, not unaccessed items in the shelf return len(self.cache) self._nodes = LazyLoadingDict(shelve.open(path, "r")) def get_attribute_value(self, nodeid, attr): with self._lock: self.logger.debug("get attr val: %s %s", nodeid, attr) if nodeid not in self._nodes: dv = ua.DataValue() dv.StatusCode = ua.StatusCode(ua.StatusCodes.BadNodeIdUnknown) return dv node = self._nodes[nodeid] if attr not in node.attributes: dv = ua.DataValue() dv.StatusCode = ua.StatusCode(ua.StatusCodes.BadAttributeIdInvalid) return dv attval = node.attributes[attr] if attval.value_callback: return attval.value_callback() return attval.value def set_attribute_value(self, nodeid, attr, value): with self._lock: self.logger.debug("set attr val: %s %s %s", nodeid, attr, value) node = self._nodes.get(nodeid, None) if node is None: return ua.StatusCode(ua.StatusCodes.BadNodeIdUnknown) attval = node.attributes.get(attr, None) if attval is None: return ua.StatusCode(ua.StatusCodes.BadAttributeIdInvalid) old = attval.value attval.value = value cbs = [] if old.Value != value.Value: # only send call callback when a value change has happend cbs = list(attval.datachange_callbacks.items()) for k, v in cbs: try: v(k, value) except Exception as ex: self.logger.exception("Error calling datachange callback %s, %s, %s", k, v, ex) return ua.StatusCode() def add_datachange_callback(self, nodeid, attr, callback): with self._lock: self.logger.debug("set attr callback: %s %s %s", nodeid, attr, callback) if nodeid not in self._nodes: return ua.StatusCode(ua.StatusCodes.BadNodeIdUnknown), 0 node = self._nodes[nodeid] if attr not in node.attributes: return ua.StatusCode(ua.StatusCodes.BadAttributeIdInvalid), 0 attval = node.attributes[attr] self._datachange_callback_counter += 1 handle = self._datachange_callback_counter attval.datachange_callbacks[handle] = callback self._handle_to_attribute_map[handle] = (nodeid, attr) return ua.StatusCode(), handle def delete_datachange_callback(self, handle): with self._lock: if handle in self._handle_to_attribute_map: nodeid, attr = self._handle_to_attribute_map.pop(handle) self._nodes[nodeid].attributes[attr].datachange_callbacks.pop(handle) def add_method_callback(self, methodid, callback): with self._lock: node = self._nodes[methodid] node.call = callback python-opcua-0.98.9/opcua/server/binary_server_asyncio.py000066400000000000000000000110441357637245100236520ustar00rootroot00000000000000""" Socket server forwarding request to internal server """ import logging try: # we prefer to use bundles asyncio version, otherwise fallback to trollius import asyncio except ImportError: import trollius as asyncio from opcua import ua import opcua.ua.ua_binary as uabin from opcua.server.uaprocessor import UaProcessor logger = logging.getLogger(__name__) class OPCUAProtocol(asyncio.Protocol): """Interface for OPCUA protocol. """ iserver = None loop = None logger = None policies = None clients = None def __str__(self): return "OPCUAProtocol({}, {})".format(self.peername, self.processor.session) __repr__ = __str__ def connection_made(self, transport): self.peername = transport.get_extra_info('peername') self.logger.info('New connection from %s', self.peername) self.transport = transport self.processor = UaProcessor(self.iserver, self.transport) self.processor.set_policies(self.policies) self.data = b"" self.iserver.asyncio_transports.append(transport) self.clients.append(self) def connection_lost(self, ex): self.logger.info('Lost connection from %s, %s', self.peername, ex) self.transport.close() self.iserver.asyncio_transports.remove(self.transport) self.processor.close() if self in self.clients: self.clients.remove(self) def data_received(self, data): logger.debug("received %s bytes from socket", len(data)) if self.data: data = self.data + data self.data = b"" self._process_data(data) def _process_data(self, data): buf = ua.utils.Buffer(data) while True: try: backup_buf = buf.copy() try: hdr = uabin.header_from_binary(buf) except ua.utils.NotEnoughData: logger.info("We did not receive enough data from client, waiting for more") self.data = backup_buf.read(len(backup_buf)) return if len(buf) < hdr.body_size: logger.info("We did not receive enough data from client, waiting for more") self.data = backup_buf.read(len(backup_buf)) return ret = self.processor.process(hdr, buf) if not ret: logger.info("processor returned False, we close connection from %s", self.peername) self.transport.close() return if len(buf) == 0: return except Exception: logger.exception("Exception raised while parsing message from client, closing") return class BinaryServer(object): def __init__(self, internal_server, hostname, port): self.logger = logging.getLogger(__name__) self.hostname = hostname self.port = port self.iserver = internal_server self.loop = None self._server = None self._policies = [] self.clients = [] def set_policies(self, policies): self._policies = policies def set_loop(self, loop): self.loop = loop def start(self): prop = dict( iserver=self.iserver, loop=self.loop, logger=self.logger, policies=self._policies, clients=self.clients ) protocol_factory = type('OPCUAProtocol', (OPCUAProtocol,), prop) coro = self.loop.create_server(protocol_factory, self.hostname, self.port) self._server = self.loop.run_coro_and_wait(coro) # get the port and the hostname from the created server socket # only relevant for dynamic port asignment (when self.port == 0) if self.port == 0 and len(self._server.sockets) == 1: # will work for AF_INET and AF_INET6 socket names # these are to only families supported by the create_server call sockname = self._server.sockets[0].getsockname() self.hostname = sockname[0] self.port = sockname[1] self.logger.warning('Listening on {0}:{1}'.format(self.hostname, self.port)) def stop(self): self.logger.info("Closing asyncio socket server") for transport in self.iserver.asyncio_transports: transport.close() if self._server: self.loop.call_soon(self._server.close) self.loop.run_coro_and_wait(self._server.wait_closed()) self.loop = None python-opcua-0.98.9/opcua/server/discovery_service.py000066400000000000000000000101431357637245100230010ustar00rootroot00000000000000 from opcua import ua from threading import Lock from functools import partial class LocalDiscoveryService(object): REG_EXPIRE_TIMEOUT = 600 # [s] registration expiration (remote servers only). MAX_REGISTRATIONS = 32 # [-] Limits the number of simultaneous registrations. class ServerDescription(object): def __init__(self, appDesc, uaDiscoveryConfiguration=None): assert(isinstance(appDesc, ua.uaprotocol_auto.ApplicationDescription)) self.applicationDescription = appDesc self.discoveryConfiguration = uaDiscoveryConfiguration self.isExpired = False def __init__(self, parent=None): self._parent = parent self._lock = Lock() # server registration & expiration from different threads. self._known_servers = {} # _known_servers[appUri] = ServerDescription instance @property def thread_loop(self): return self._parent.thread_loop def find_servers(self, params): servers = [] with self._lock: for srvDesc in self._known_servers.values(): # No Filtering. if not params.ServerUris: servers.append(srvDesc.applicationDescription) continue # Filter on server uris. srv_uri = srvDesc.applicationDescription.ApplicationUri.split(":") for uri in params.ServerUris: uri = uri.split(":") if srv_uri[:len(uri)] == uri: servers.append(srvDesc.applicationDescription) break return servers def add_server_description(self, srvDesc): assert(isinstance(srvDesc, LocalDiscoveryService.ServerDescription)) appUri = srvDesc.applicationDescription.ApplicationUri # Prevent DOS by flooding with fake registrations, # but always allow existing registrations to renew. if appUri in self._known_servers: pass elif len(self._known_servers) >= self.MAX_REGISTRATIONS: raise Exception('Maximum number of registrations reached: {:d}'.format(self.MAX_REGISTRATIONS)) with self._lock: self._known_servers[appUri] = srvDesc def _expire_server_description(self, srvDesc): """ Expire a server registration. srvDesc must be a reference to the original (registered) description instance. """ assert(isinstance(srvDesc, LocalDiscoveryService.ServerDescription)) appUri = srvDesc.applicationDescription.ApplicationUri # Set expired flag, then check if the registration in _known_servers was # renewed. If not renewed before expiration, remove from _known_servers. srvDesc.isExpired = True with self._lock: if self._known_servers[appUri].isExpired: del self._known_servers[appUri] def register_server(self, registeredServer, uaDiscoveryConfiguration=None): assert(isinstance(registeredServer, ua.uaprotocol_auto.RegisteredServer)) appDesc = ua.ApplicationDescription() appDesc.ApplicationUri = registeredServer.ServerUri appDesc.ProductUri = registeredServer.ProductUri # FIXME: select name from client locale appDesc.ApplicationName = registeredServer.ServerNames[0] appDesc.ApplicationType = registeredServer.ServerType appDesc.DiscoveryUrls = registeredServer.DiscoveryUrls # FIXME: select discovery uri using reachability from client network appDesc.GatewayServerUri = registeredServer.GatewayServerUri # Create and add ServerDescription, so it is resolved by find_servers(). srvDesc = LocalDiscoveryService.ServerDescription(appDesc, uaDiscoveryConfiguration) self.add_server_description(srvDesc) # Auto-expire server registrations after REG_EXPIRE_TIMEOUT seconds. expire_cb = partial(self._expire_server_description, srvDesc) self.thread_loop.call_later(self.REG_EXPIRE_TIMEOUT, expire_cb) def register_server2(self, params): return self.register_server(params.Server, params.DiscoveryConfiguration) python-opcua-0.98.9/opcua/server/event_generator.py000066400000000000000000000101121357637245100224350ustar00rootroot00000000000000import logging from datetime import datetime import time import uuid import sys from opcua import ua from opcua import Node from opcua.common import events from opcua.common import event_objects class EventGenerator(object): """ Create an event based on an event type. Per default is BaseEventType used. Object members are dynamically created from the base event type and send to client when evebt is triggered (see example code in source) Arguments to constructor are: server: The InternalSession object to use for query and event triggering source: The emiting source for the node, either an objectId, NodeId or a Node etype: The event type, either an objectId, a NodeId or a Node object """ def __init__(self, isession, etype=None, emitting_node=ua.ObjectIds.Server): if not etype: etype = event_objects.BaseEvent() self.logger = logging.getLogger(__name__) self.isession = isession self.event = None node = None if isinstance(etype, event_objects.BaseEvent): self.event = etype elif isinstance(etype, Node): node = etype elif isinstance(etype, ua.NodeId): node = Node(self.isession, etype) else: node = Node(self.isession, ua.NodeId(etype)) if node: self.event = events.get_event_obj_from_type_node(node) if isinstance(emitting_node, Node): pass elif isinstance(emitting_node, ua.NodeId): emitting_node = Node(isession, emitting_node) else: emitting_node = Node(isession, ua.NodeId(emitting_node)) self.event.emitting_node = emitting_node.nodeid if not self.event.SourceNode: self.event.SourceNode = emitting_node.nodeid self.event.SourceName = emitting_node.get_browse_name().Name emitting_node.set_event_notifier([ua.EventNotifier.SubscribeToEvents]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = ua.NodeId(ua.ObjectIds.GeneratesEvent) ref.SourceNodeId = emitting_node.nodeid ref.TargetNodeClass = ua.NodeClass.ObjectType ref.TargetNodeId = self.event.EventType refs.append(ref) results = self.isession.add_references(refs) # result.StatusCode.check() self.emitting_node = emitting_node def __str__(self): return "EventGenerator(Type:{0}, Emitting Node:{1}, Time:{2}, Message: {3})".format(self.event.EventType, self.emitting_node, self.event.Time, self.event.Message) __repr__ = __str__ def trigger(self, time_attr=None, message=None): """ Trigger the event. This will send a notification to all subscribed clients """ self.event.EventId = ua.Variant(uuid.uuid4().hex.encode('utf-8'), ua.VariantType.ByteString) if time_attr: self.event.Time = time_attr else: self.event.Time = datetime.utcnow() self.event.ReceiveTime = datetime.utcnow() self.event.LocalTime = ua.uaprotocol_auto.TimeZoneDataType() if sys.version_info.major > 2: localtime = time.localtime(self.event.Time.timestamp()) self.event.LocalTime.Offset = localtime.tm_gmtoff//60 else: localtime = time.localtime(time.mktime(self.event.Time.timetuple())) self.event.LocalTime.Offset = -(time.altzone if localtime.tm_isdst else time.timezone) self.event.LocalTime.DaylightSavingInOffset = bool(localtime.tm_isdst != -1) if message: self.event.Message = ua.LocalizedText(message) elif not self.event.Message: self.event.Message = ua.LocalizedText(Node(self.isession, self.event.SourceNode).get_browse_name().Text) self.isession.subscription_service.trigger_event(self.event) python-opcua-0.98.9/opcua/server/history.py000066400000000000000000000342361357637245100207640ustar00rootroot00000000000000import logging from datetime import timedelta from datetime import datetime from opcua import Subscription from opcua import ua from opcua.common import utils class UaNodeAlreadyHistorizedError(ua.UaError): pass class HistoryStorageInterface(object): """ Interface of a history backend. Must be implemented by backends """ def new_historized_node(self, node_id, period, count=0): """ Called when a new node is to be historized Returns None """ raise NotImplementedError def save_node_value(self, node_id, datavalue): """ Called when the value of a historized node has changed and should be saved in history Returns None """ raise NotImplementedError def read_node_history(self, node_id, start, end, nb_values): """ Called when a client make a history read request for a node if start or end is missing then nb_values is used to limit query nb_values is the max number of values to read. Ignored if 0 Start time and end time are inclusive Returns a list of DataValues and a continuation point which is None if all nodes are read or the SourceTimeStamp of the last rejected DataValue """ raise NotImplementedError def new_historized_event(self, source_id, evtypes, period, count=0): """ Called when historization of events is enabled on server side Returns None """ raise NotImplementedError def save_event(self, event): """ Called when a new event has been generated ans should be saved in history Returns None """ raise NotImplementedError def read_event_history(self, source_id, start, end, nb_values, evfilter): """ Called when a client make a history read request for events Start time and end time are inclusive Returns a list of Events and a continuation point which is None if all events are read or the SourceTimeStamp of the last rejected event """ raise NotImplementedError def stop(self): """ Called when the server shuts down Can be used to close database connections etc. """ raise NotImplementedError class HistoryDict(HistoryStorageInterface): """ Very minimal history backend storing data in memory using a Python dictionary """ def __init__(self): self._datachanges = {} self._datachanges_period = {} self._events = {} self._events_periods = {} self.logger = logging.getLogger(__name__) def new_historized_node(self, node_id, period, count=0): if node_id in self._datachanges: raise UaNodeAlreadyHistorizedError(node_id) self._datachanges[node_id] = [] self._datachanges_period[node_id] = period, count def save_node_value(self, node_id, datavalue): data = self._datachanges[node_id] period, count = self._datachanges_period[node_id] data.append(datavalue) now = datetime.utcnow() if period: while len(data) and now - data[0].SourceTimestamp > period: data.pop(0) if count and len(data) > count: data.pop(0) def read_node_history(self, node_id, start, end, nb_values): cont = None if node_id not in self._datachanges: self.logger.warning("Error attempt to read history for a node which is not historized") return [], cont else: if start is None: start = ua.get_win_epoch() if end is None: end = ua.get_win_epoch() if start == ua.get_win_epoch(): results = [dv for dv in reversed(self._datachanges[node_id]) if start <= dv.SourceTimestamp] elif end == ua.get_win_epoch(): results = [dv for dv in self._datachanges[node_id] if start <= dv.SourceTimestamp] elif start > end: results = [dv for dv in reversed(self._datachanges[node_id]) if end <= dv.SourceTimestamp <= start] else: results = [dv for dv in self._datachanges[node_id] if start <= dv.SourceTimestamp <= end] if nb_values and len(results) > nb_values: cont = results[nb_values + 1].SourceTimestamp results = results[:nb_values] return results, cont def new_historized_event(self, source_id, evtypes, period, count=0): if source_id in self._events: raise UaNodeAlreadyHistorizedError(source_id) self._events[source_id] = [] self._events_periods[source_id] = period, count def save_event(self, event): evts = self._events[event.emitting_node] evts.append(event) period, count = self._events_periods[event.emitting_node] now = datetime.utcnow() if period: while len(evts) and now - evts[0].SourceTimestamp > period: evts.pop(0) if count and len(evts) > count: evts.pop(0) def read_event_history(self, source_id, start, end, nb_values, evfilter): cont = None if source_id not in self._events: print("Error attempt to read event history for a node which does not historize events") return [], cont else: if start is None: start = ua.get_win_epoch() if end is None: end = ua.get_win_epoch() if start == ua.get_win_epoch(): results = [ev for ev in reversed(self._events[source_id]) if start <= ev.Time] elif end == ua.get_win_epoch(): results = [ev for ev in self._events[source_id] if start <= ev.Time] elif start > end: results = [ev for ev in reversed(self._events[source_id]) if end <= ev.Time <= start] else: results = [ev for ev in self._events[source_id] if start <= ev.Time <= end] if nb_values and len(results) > nb_values: cont = results[nb_values + 1].Time results = results[:nb_values] return results, cont def stop(self): pass class SubHandler(object): def __init__(self, storage): self.storage = storage def datachange_notification(self, node, val, data): self.storage.save_node_value(node.nodeid, data.monitored_item.Value) def event_notification(self, event): self.storage.save_event(event) class HistoryManager(object): def __init__(self, iserver): self.logger = logging.getLogger(__name__) self.iserver = iserver self.storage = HistoryDict() self._sub = None self._handlers = {} def set_storage(self, storage): """ set the desired HistoryStorageInterface which History Manager will use for historizing """ self.storage = storage def _create_subscription(self, handler): params = ua.CreateSubscriptionParameters() params.RequestedPublishingInterval = 10 params.RequestedLifetimeCount = 3000 params.RequestedMaxKeepAliveCount = 10000 params.MaxNotificationsPerPublish = 0 params.PublishingEnabled = True params.Priority = 0 return Subscription(self.iserver.isession, params, handler) def historize_data_change(self, node, period=timedelta(days=7), count=0): """ Subscribe to the nodes' data changes and store the data in the active storage. """ if not self._sub: self._sub = self._create_subscription(SubHandler(self.storage)) if node in self._handlers: raise ua.UaError("Node {0} is already historized".format(node)) self.storage.new_historized_node(node.nodeid, period, count) handler = self._sub.subscribe_data_change(node) self._handlers[node] = handler def historize_event(self, source, period=timedelta(days=7), count=0): """ Subscribe to the source nodes' events and store the data in the active storage. SQL Implementation The default is to historize every event type the source generates, custom event properties are included. At this time there is no way to historize a specific event type. The user software can filter out events which are not desired when reading. Note that adding custom events to a source node AFTER historizing has been activated is not supported at this time (in SQL history there will be no columns in the SQL table for the new event properties). For SQL The table must be deleted manually so that a new table with the custom event fields can be created. """ if not self._sub: self._sub = self._create_subscription(SubHandler(self.storage)) if source in self._handlers: raise ua.UaError("Events from {0} are already historized".format(source)) # get list of all event types that the source node generates; change this to only historize specific events event_types = source.get_referenced_nodes(ua.ObjectIds.GeneratesEvent) self.storage.new_historized_event(source.nodeid, event_types, period, count) handler = self._sub.subscribe_events(source, event_types) self._handlers[source] = handler def dehistorize(self, node): """ Remove subscription to the node/source which is being historized SQL Implementation Only the subscriptions is removed. The historical data remains. """ if node in self._handlers: self._sub.unsubscribe(self._handlers[node]) del(self._handlers[node]) else: self.logger.error("History Manager isn't subscribed to %s", node) def read_history(self, params): """ Read history for a node This is the part AttributeService, but implemented as its own service since it requires more logic than other attribute service methods """ results = [] for rv in params.NodesToRead: res = self._read_history(params.HistoryReadDetails, rv) results.append(res) return results def _read_history(self, details, rv): """ determine if the history read is for a data changes or events; then read the history for that node """ result = ua.HistoryReadResult() if isinstance(details, ua.ReadRawModifiedDetails): if details.IsReadModified: result.HistoryData = ua.HistoryModifiedData() # we do not support modified history by design so we return what we have else: result.HistoryData = ua.HistoryData() dv, cont = self._read_datavalue_history(rv, details) result.HistoryData.DataValues = dv result.ContinuationPoint = cont elif isinstance(details, ua.ReadEventDetails): result.HistoryData = ua.HistoryEvent() # FIXME: filter is a cumbersome type, maybe transform it something easier # to handle for storage ev, cont = self._read_event_history(rv, details) result.HistoryData.Events = ev result.ContinuationPoint = cont else: # we do not currently support the other types, clients can process data themselves result.StatusCode = ua.StatusCode(ua.StatusCodes.BadNotImplemented) return result def _read_datavalue_history(self, rv, details): starttime = details.StartTime if rv.ContinuationPoint: # Spec says we should ignore details if cont point is present # but they also say we can use cont point as timestamp to enable stateless # implementation. This is contradictory, so we assume details is # send correctly with continuation point starttime = ua.ua_binary.Primitives.DateTime.unpack(utils.Buffer(rv.ContinuationPoint)) dv, cont = self.storage.read_node_history(rv.NodeId, starttime, details.EndTime, details.NumValuesPerNode) if cont: cont = ua.ua_binary.Primitives.DateTime.pack(cont) # rv.IndexRange # rv.DataEncoding # xml or binary, seems spec say we can ignore that one return dv, cont def _read_event_history(self, rv, details): starttime = details.StartTime if rv.ContinuationPoint: # Spec says we should ignore details if cont point is present # but they also say we can use cont point as timestamp to enable stateless # implementation. This is contradictory, so we assume details is # send correctly with continuation point starttime = ua.ua_binary.Primitives.DateTime.unpack(utils.Buffer(rv.ContinuationPoint)) evts, cont = self.storage.read_event_history(rv.NodeId, starttime, details.EndTime, details.NumValuesPerNode, details.Filter) results = [] for ev in evts: field_list = ua.HistoryEventFieldList() field_list.EventFields = ev.to_event_fields(details.Filter.SelectClauses) results.append(field_list) if cont: cont = ua.ua_binary.Primitives.DateTime.pack(cont) return results, cont def update_history(self, params): """ Update history for a node This is the part AttributeService, but implemented as its own service since it requires more logic than other attribute service methods """ results = [] for _ in params.HistoryUpdateDetails: result = ua.HistoryUpdateResult() # we do not accept to rewrite history result.StatusCode = ua.StatusCode(ua.StatusCodes.BadNotWritable) results.append(results) return results def stop(self): """ call stop methods of active storage interface whenever the server is stopped """ self.storage.stop() python-opcua-0.98.9/opcua/server/history_sql.py000066400000000000000000000335451357637245100216450ustar00rootroot00000000000000import logging from datetime import timedelta from datetime import datetime from threading import Lock import sqlite3 from opcua import ua from opcua.ua.ua_binary import variant_from_binary, variant_to_binary from opcua.common.utils import Buffer from opcua.common import events from opcua.server.history import HistoryStorageInterface class HistorySQLite(HistoryStorageInterface): """ history backend which stores data values and object events in a SQLite database this backend is intended to only be accessed via OPC UA, therefore all UA Variants saved in the history database are in binary format (SQLite BLOBs) note that PARSE_DECLTYPES is active so certain data types (such as datetime) will not be BLOBs """ def __init__(self, path="history.db"): self.logger = logging.getLogger(__name__) self._datachanges_period = {} self._db_file = path self._lock = Lock() self._event_fields = {} self._conn = sqlite3.connect(self._db_file, detect_types=sqlite3.PARSE_DECLTYPES, check_same_thread=False) def new_historized_node(self, node_id, period, count=0): with self._lock: _c_new = self._conn.cursor() table = self._get_table_name(node_id) self._datachanges_period[node_id] = period, count # create a table for the node which will store attributes of the DataValue object # note: Value/VariantType TEXT is only for human reading, the actual data is stored in VariantBinary column try: _c_new.execute('CREATE TABLE "{tn}" (_Id INTEGER PRIMARY KEY NOT NULL,' ' ServerTimestamp TIMESTAMP,' ' SourceTimestamp TIMESTAMP,' ' StatusCode INTEGER,' ' Value TEXT,' ' VariantType TEXT,' ' VariantBinary BLOB)'.format(tn=table)) except sqlite3.Error as e: self.logger.info('Historizing SQL Table Creation Error for %s: %s', node_id, e) self._conn.commit() def save_node_value(self, node_id, datavalue): with self._lock: _c_sub = self._conn.cursor() table = self._get_table_name(node_id) # insert the data change into the database try: _c_sub.execute('INSERT INTO "{tn}" VALUES (NULL, ?, ?, ?, ?, ?, ?)'.format(tn=table), ( datavalue.ServerTimestamp, datavalue.SourceTimestamp, datavalue.StatusCode.value, str(datavalue.Value.Value), datavalue.Value.VariantType.name, sqlite3.Binary(variant_to_binary(datavalue.Value)) ) ) except sqlite3.Error as e: self.logger.error('Historizing SQL Insert Error for %s: %s', node_id, e) self._conn.commit() # get this node's period from the period dict and calculate the limit period, count = self._datachanges_period[node_id] def execute_sql_delete(condition, args): query = ('DELETE FROM "{tn}" WHERE ' + condition).format(tn=table) try: _c_sub.execute(query, args) except sqlite3.Error as e: self.logger.error('Historizing SQL Delete Old Data Error for %s: %s', node_id, e) self._conn.commit() if period: # after the insert, if a period was specified delete all records older than period date_limit = datetime.utcnow() - period execute_sql_delete('SourceTimestamp < ?', (date_limit,)) if count: # ensure that no more than count records are stored for the specified node execute_sql_delete('SourceTimestamp = (SELECT CASE WHEN COUNT(*) > ? ' 'THEN MIN(SourceTimestamp) ELSE NULL END FROM "{tn}")', (count,)) def read_node_history(self, node_id, start, end, nb_values): with self._lock: _c_read = self._conn.cursor() table = self._get_table_name(node_id) start_time, end_time, order, limit = self._get_bounds(start, end, nb_values) cont = None results = [] # select values from the database; recreate UA Variant from binary try: for row in _c_read.execute('SELECT * FROM "{tn}" WHERE "SourceTimestamp" BETWEEN ? AND ? ' 'ORDER BY "_Id" {dir} LIMIT ?'.format(tn=table, dir=order), (start_time, end_time, limit,)): # rebuild the data value object dv = ua.DataValue(variant_from_binary(Buffer(row[6]))) dv.ServerTimestamp = row[1] dv.SourceTimestamp = row[2] dv.StatusCode = ua.StatusCode(row[3]) results.append(dv) except sqlite3.Error as e: self.logger.error('Historizing SQL Read Error for %s: %s', node_id, e) if nb_values: if len(results) > nb_values: cont = results[nb_values].SourceTimestamp results = results[:nb_values] return results, cont def new_historized_event(self, source_id, evtypes, period, count=0): with self._lock: _c_new = self._conn.cursor() # get all fields for the event type nodes ev_fields = self._get_event_fields(evtypes) self._datachanges_period[source_id] = period self._event_fields[source_id] = ev_fields table = self._get_table_name(source_id) columns = self._get_event_columns(ev_fields) # create a table for the event which will store fields generated by the source object's events # note that _Timestamp is for SQL query, _EventTypeName is for debugging, be careful not to create event # properties with these names try: _c_new.execute( 'CREATE TABLE "{tn}" (_Id INTEGER PRIMARY KEY NOT NULL, _Timestamp TIMESTAMP, _EventTypeName TEXT, {co})' .format(tn=table, co=columns)) except sqlite3.Error as e: self.logger.info('Historizing SQL Table Creation Error for events from %s: %s', source_id, e) self._conn.commit() def save_event(self, event): with self._lock: _c_sub = self._conn.cursor() table = self._get_table_name(event.emitting_node) columns, placeholders, evtup = self._format_event(event) event_type = event.EventType # useful for troubleshooting database # insert the event into the database try: _c_sub.execute( 'INSERT INTO "{tn}" ("_Id", "_Timestamp", "_EventTypeName", {co}) VALUES (NULL, "{ts}", "{et}", {pl})' .format(tn=table, co=columns, ts=event.Time, et=event_type, pl=placeholders), evtup) except sqlite3.Error as e: self.logger.error('Historizing SQL Insert Error for events from %s: %s', event.emitting_node, e) self._conn.commit() # get this node's period from the period dict and calculate the limit period = self._datachanges_period[event.emitting_node] if period: # after the insert, if a period was specified delete all records older than period date_limit = datetime.utcnow() - period try: _c_sub.execute('DELETE FROM "{tn}" WHERE Time < ?'.format(tn=table), (date_limit.isoformat(' '),)) except sqlite3.Error as e: self.logger.error('Historizing SQL Delete Old Data Error for events from %s: %s', event.emitting_node, e) self._conn.commit() def read_event_history(self, source_id, start, end, nb_values, evfilter): with self._lock: _c_read = self._conn.cursor() table = self._get_table_name(source_id) start_time, end_time, order, limit = self._get_bounds(start, end, nb_values) clauses, clauses_str = self._get_select_clauses(source_id, evfilter) cont = None cont_timestamps = [] results = [] # select events from the database; SQL select clause is built from EventFilter and available fields try: for row in _c_read.execute( 'SELECT "_Timestamp", {cl} FROM "{tn}" WHERE "_Timestamp" BETWEEN ? AND ? ORDER BY "_Id" {dir} LIMIT ?' .format(cl=clauses_str, tn=table, dir=order), (start_time, end_time, limit)): fdict = {} cont_timestamps.append(row[0]) for i, field in enumerate(row[1:]): if field is not None: fdict[clauses[i]] = variant_from_binary(Buffer(field)) else: fdict[clauses[i]] = ua.Variant(None) results.append(events.Event.from_field_dict(fdict)) except sqlite3.Error as e: self.logger.error('Historizing SQL Read Error events for node %s: %s', source_id, e) if nb_values: if len(results) > nb_values: # start > ua.get_win_epoch() and cont = cont_timestamps[nb_values] results = results[:nb_values] return results, cont def _get_table_name(self, node_id): return str(node_id.NamespaceIndex) + '_' + str(node_id.Identifier) def _get_event_fields(self, evtypes): """ Get all fields from the event types that are to be historized Args: evtypes: List of event type nodes Returns: List of fields for all event types """ # get all fields from the event types that are to be historized ev_aggregate_fields = [] for event_type in evtypes: ev_aggregate_fields.extend((events.get_event_properties_from_type_node(event_type))) ev_fields = [] for field in set(ev_aggregate_fields): ev_fields.append(field.get_display_name().Text) return ev_fields @staticmethod def _get_bounds(start, end, nb_values): order = "ASC" if start is None or start == ua.get_win_epoch(): order = "DESC" start = ua.get_win_epoch() if end is None or end == ua.get_win_epoch(): end = datetime.utcnow() + timedelta(days=1) if start < end: start_time = start.isoformat(' ') end_time = end.isoformat(' ') else: order = "DESC" start_time = end.isoformat(' ') end_time = start.isoformat(' ') if nb_values: limit = nb_values + 1 # add 1 to the number of values for retrieving a continuation point else: limit = -1 # in SQLite a LIMIT of -1 returns all results return start_time, end_time, order, limit def _format_event(self, event): """ Convert an event object triggered by the subscription into ordered lists for the SQL insert string Args: event: The event returned by the subscription Returns: List of event fields (SQL column names), List of '?' placeholders, Tuple of variant binaries """ placeholders = [] ev_variant_binaries = [] ev_variant_dict = event.get_event_props_as_fields_dict() names = list(ev_variant_dict.keys()) names.sort() # sort alphabetically since dict is not sorted # split dict into two synchronized lists which will be converted to SQL strings # note that the variants are converted to binary objects for storing in SQL BLOB format for name in names: variant = ev_variant_dict[name] placeholders.append('?') ev_variant_binaries.append(sqlite3.Binary(variant_to_binary(variant))) return self._list_to_sql_str(names), self._list_to_sql_str(placeholders, False), tuple(ev_variant_binaries) def _get_event_columns(self, ev_fields): fields = [] for field in ev_fields: fields.append(field + ' BLOB') return self._list_to_sql_str(fields, False) def _get_select_clauses(self, source_id, evfilter): s_clauses = [] for select_clause in evfilter.SelectClauses: try: if not select_clause.BrowsePath: s_clauses.append(select_clause.Attribute.name) else: name = select_clause.BrowsePath[0].Name s_clauses.append(name) except AttributeError: self.logger.warning('Historizing SQL OPC UA Select Clause Warning for node %s,' ' Clause: %s:', source_id, select_clause) # remove select clauses that the event type doesn't have; SQL will error because the column doesn't exist clauses = [x for x in s_clauses if x in self._event_fields[source_id]] return clauses, self._list_to_sql_str(clauses) @staticmethod def _list_to_sql_str(ls, quotes=True): sql_str = '' for item in ls: if quotes: sql_str += '"' + item + '", ' else: sql_str += item + ', ' return sql_str[:-2] # remove trailing space and comma for SQL syntax def stop(self): with self._lock: self._conn.close() self.logger.info('Historizing SQL connection closed') python-opcua-0.98.9/opcua/server/internal_server.py000066400000000000000000000431361357637245100224640ustar00rootroot00000000000000""" Internal server implementing opcu-ua interface. Can be used on server side or to implement binary/https opc-ua servers """ from datetime import datetime, timedelta from copy import copy import os import logging from threading import Lock from enum import Enum try: from urllib.parse import urlparse except ImportError: from urlparse import urlparse from opcua import ua from opcua.common import utils from opcua.common.callback import (CallbackType, ServerItemCallback, CallbackDispatcher) from opcua.common.node import Node from opcua.server.history import HistoryManager from opcua.server.address_space import AddressSpace from opcua.server.address_space import AttributeService from opcua.server.address_space import ViewService from opcua.server.address_space import NodeManagementService from opcua.server.address_space import MethodService from opcua.server.subscription_service import SubscriptionService from opcua.server.discovery_service import LocalDiscoveryService from opcua.server.standard_address_space import standard_address_space from opcua.server.user_manager import UserManager #from opcua.common import xmlimporter class SessionState(Enum): Created = 0 Activated = 1 Closed = 2 class InternalServer(object): def __init__(self, shelffile=None, parent=None, session_cls=None): self.logger = logging.getLogger(__name__) self._parent = parent self.server_callback_dispatcher = CallbackDispatcher() self.endpoints = [] self._channel_id_counter = 5 self.disabled_clock = False # for debugging we may want to disable clock that writes too much in log self._local_discovery_service = None # lazy-loading self.aspace = AddressSpace() self.attribute_service = AttributeService(self.aspace) self.view_service = ViewService(self.aspace) self.method_service = MethodService(self.aspace) self.node_mgt_service = NodeManagementService(self.aspace) self.load_standard_address_space(shelffile) self.loop = None self.asyncio_transports = [] self.subscription_service = SubscriptionService(self.aspace) self.history_manager = HistoryManager(self) # create a session to use on server side self.session_cls = session_cls or InternalSession self.isession = self.session_cls(self, self.aspace, \ self.subscription_service, "Internal", user=UserManager.User.Admin) self.current_time_node = Node(self.isession, ua.NodeId(ua.ObjectIds.Server_ServerStatus_CurrentTime)) self._address_space_fixes() self.setup_nodes() @property def user_manager(self): return self._parent.user_manager @property def thread_loop(self): if self.loop is None: raise Exception("InternalServer stopped: async threadloop is not running.") return self.loop @property def local_discovery_service(self): if self._local_discovery_service is None: self._local_discovery_service = LocalDiscoveryService(parent = self) for edp in self.endpoints: srvDesc = LocalDiscoveryService.ServerDescription(edp.Server) self._local_discovery_service.add_server_description(srvDesc) return self._local_discovery_service def setup_nodes(self): """ Set up some nodes as defined by spec """ uries = ["http://opcfoundation.org/UA/"] ns_node = Node(self.isession, ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) ns_node.set_value(uries) def load_standard_address_space(self, shelffile=None): if (shelffile is not None) and (os.path.isfile(shelffile) or os.path.isfile(shelffile+".db")): # import address space from shelf self.aspace.load_aspace_shelf(shelffile) else: # import address space from code generated from xml standard_address_space.fill_address_space(self.node_mgt_service) # import address space directly from xml, this has performance impact so disabled # importer = xmlimporter.XmlImporter(self.node_mgt_service) # importer.import_xml("/path/to/python-opcua/schemas/Opc.Ua.NodeSet2.xml", self) # if a cache file was supplied a shelve of the standard address space can now be built for next start up if shelffile: self.aspace.make_aspace_shelf(shelffile) def _address_space_fixes(self): """ Looks like the xml definition of address space has some error. This is a good place to fix them """ it = ua.AddReferencesItem() it.SourceNodeId = ua.NodeId(ua.ObjectIds.BaseObjectType) it.ReferenceTypeId = ua.NodeId(ua.ObjectIds.Organizes) it.IsForward = False it.TargetNodeId = ua.NodeId(ua.ObjectIds.ObjectTypesFolder) it.TargetNodeClass = ua.NodeClass.Object it2 = ua.AddReferencesItem() it2.SourceNodeId = ua.NodeId(ua.ObjectIds.BaseDataType) it2.ReferenceTypeId = ua.NodeId(ua.ObjectIds.Organizes) it2.IsForward = False it2.TargetNodeId = ua.NodeId(ua.ObjectIds.DataTypesFolder) it2.TargetNodeClass = ua.NodeClass.Object results = self.isession.add_references([it, it2]) params = ua.WriteParameters() for nodeid in (ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerRead, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadData, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadEvents, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerWrite, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateData, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateEvents, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerMethodCall, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerBrowse, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerRegisterNodes, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerTranslateBrowsePathsToNodeIds, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxNodesPerNodeManagement, ua.ObjectIds.Server_ServerCapabilities_OperationLimits_MaxMonitoredItemsPerCall): attr = ua.WriteValue() attr.NodeId = ua.NodeId(nodeid) attr.AttributeId = ua.AttributeIds.Value attr.Value = ua.DataValue(ua.Variant(10000, ua.VariantType.UInt32), ua.StatusCode(ua.StatusCodes.Good)) attr.Value.ServerTimestamp = datetime.utcnow() params.NodesToWrite.append(attr) result = self.isession.write(params) result[0].check() def load_address_space(self, path): """ Load address space from path """ self.aspace.load(path) def dump_address_space(self, path): """ Dump current address space to path """ self.aspace.dump(path) def start(self): self.logger.info("starting internal server") self.loop = utils.ThreadLoop() self.loop.start() self.subscription_service.set_loop(self.loop) Node(self.isession, ua.NodeId(ua.ObjectIds.Server_ServerStatus_State)).set_value(0, ua.VariantType.Int32) Node(self.isession, ua.NodeId(ua.ObjectIds.Server_ServerStatus_StartTime)).set_value(datetime.utcnow()) if not self.disabled_clock: self._set_current_time() def stop(self): self.logger.info("stopping internal server") self.isession.close_session() self.subscription_service.set_loop(None) self.history_manager.stop() if self.loop: self.loop.stop() # wait for ThreadLoop to finish before proceeding self.loop.join() self.loop.close() self.loop = None def is_running(self): return self.loop is not None def _set_current_time(self): self.current_time_node.set_value(datetime.utcnow()) self.loop.call_later(1, self._set_current_time) def get_new_channel_id(self): self._channel_id_counter += 1 return self._channel_id_counter def add_endpoint(self, endpoint): self.endpoints.append(endpoint) def get_endpoints(self, params=None, sockname=None): self.logger.info("get endpoint") if sockname: # return to client the ip address it has access to edps = [] for edp in self.endpoints: edp1 = copy(edp) url = urlparse(edp1.EndpointUrl) url = url._replace(netloc=sockname[0] + ":" + str(sockname[1])) edp1.EndpointUrl = url.geturl() edps.append(edp1) return edps return self.endpoints[:] def create_session(self, name, user=UserManager.User.Anonymous, external=False): return self.session_cls(self, self.aspace, self.subscription_service, name, user=user, external=external) def enable_history_data_change(self, node, period=timedelta(days=7), count=0): """ Set attribute Historizing of node to True and start storing data for history """ node.set_attribute(ua.AttributeIds.Historizing, ua.DataValue(True)) node.set_attr_bit(ua.AttributeIds.AccessLevel, ua.AccessLevel.HistoryRead) node.set_attr_bit(ua.AttributeIds.UserAccessLevel, ua.AccessLevel.HistoryRead) self.history_manager.historize_data_change(node, period, count) def disable_history_data_change(self, node): """ Set attribute Historizing of node to False and stop storing data for history """ node.set_attribute(ua.AttributeIds.Historizing, ua.DataValue(False)) node.unset_attr_bit(ua.AttributeIds.AccessLevel, ua.AccessLevel.HistoryRead) node.unset_attr_bit(ua.AttributeIds.UserAccessLevel, ua.AccessLevel.HistoryRead) self.history_manager.dehistorize(node) def enable_history_event(self, source, period=timedelta(days=7), count=0): """ Set attribute History Read of object events to True and start storing data for history """ event_notifier = source.get_event_notifier() if ua.EventNotifier.SubscribeToEvents not in event_notifier: raise ua.UaError("Node does not generate events", event_notifier) if ua.EventNotifier.HistoryRead not in event_notifier: event_notifier.add(ua.EventNotifier.HistoryRead) source.set_event_notifier(event_notifier) self.history_manager.historize_event(source, period, count) def disable_history_event(self, source): """ Set attribute History Read of node to False and stop storing data for history """ source.unset_attr_bit(ua.AttributeIds.EventNotifier, ua.EventNotifier.HistoryRead) self.history_manager.dehistorize(source) def subscribe_server_callback(self, event, handle): """ Create a subscription from event to handle """ self.server_callback_dispatcher.addListener(event, handle) def unsubscribe_server_callback(self, event, handle): """ Remove a subscription from event to handle """ self.server_callback_dispatcher.removeListener(event, handle) def set_attribute_value(self, nodeid, datavalue, attr=ua.AttributeIds.Value): """ directly write datavalue to the Attribute, bypasing some checks and structure creation so it is a little faster """ self.aspace.set_attribute_value(nodeid, ua.AttributeIds.Value, datavalue) class InternalSession(object): _counter = 10 _auth_counter = 1000 def __init__(self, internal_server, aspace, submgr, name, user=UserManager.User.Anonymous, external=False): self.logger = logging.getLogger(__name__) self.iserver = internal_server self.external = external # define if session is external, we need to copy some objects if it is internal self.aspace = aspace self.subscription_service = submgr self.name = name self.user = user self.nonce = None self.state = SessionState.Created self.session_id = ua.NodeId(self._counter) InternalSession._counter += 1 self.authentication_token = ua.NodeId(self._auth_counter) InternalSession._auth_counter += 1 self.subscriptions = [] self.logger.info("Created internal session %s", self.name) self._lock = Lock() @property def user_manager(self): return self.iserver.user_manager def __str__(self): return "InternalSession(name:{0}, user:{1}, id:{2}, auth_token:{3})".format( self.name, self.user, self.session_id, self.authentication_token) def get_endpoints(self, params=None, sockname=None): return self.iserver.get_endpoints(params, sockname) def create_session(self, params, sockname=None): self.logger.info("Create session request") result = ua.CreateSessionResult() result.SessionId = self.session_id result.AuthenticationToken = self.authentication_token result.RevisedSessionTimeout = params.RequestedSessionTimeout result.MaxRequestMessageSize = 65536 self.nonce = utils.create_nonce(32) result.ServerNonce = self.nonce result.ServerEndpoints = self.get_endpoints(sockname=sockname) return result def close_session(self, delete_subs=True): self.logger.info("close session %s with subscriptions %s", self, self.subscriptions) self.state = SessionState.Closed self.delete_subscriptions(self.subscriptions[:]) def activate_session(self, params): self.logger.info("activate session") result = ua.ActivateSessionResult() if self.state != SessionState.Created: raise utils.ServiceError(ua.StatusCodes.BadSessionIdInvalid) self.nonce = utils.create_nonce(32) result.ServerNonce = self.nonce for _ in params.ClientSoftwareCertificates: result.Results.append(ua.StatusCode()) self.state = SessionState.Activated id_token = params.UserIdentityToken if isinstance(id_token, ua.UserNameIdentityToken): if self.user_manager.check_user_token(self, id_token) == False: raise utils.ServiceError(ua.StatusCodes.BadUserAccessDenied) self.logger.info("Activated internal session %s for user %s", self.name, self.user) return result def read(self, params): results = self.iserver.attribute_service.read(params) return results def history_read(self, params): return self.iserver.history_manager.read_history(params) def write(self, params): return self.iserver.attribute_service.write(params, self.user) def browse(self, params): return self.iserver.view_service.browse(params) def translate_browsepaths_to_nodeids(self, params): return self.iserver.view_service.translate_browsepaths_to_nodeids(params) def add_nodes(self, params): return self.iserver.node_mgt_service.add_nodes(params, self.user) def delete_nodes(self, params): return self.iserver.node_mgt_service.delete_nodes(params, self.user) def add_references(self, params): return self.iserver.node_mgt_service.add_references(params, self.user) def delete_references(self, params): return self.iserver.node_mgt_service.delete_references(params, self.user) def add_method_callback(self, methodid, callback): return self.aspace.add_method_callback(methodid, callback) def call(self, params): return self.iserver.method_service.call(params) def create_subscription(self, params, callback, ready_callback=None): result = self.subscription_service.create_subscription(params, callback) with self._lock: self.subscriptions.append(result.SubscriptionId) return result def modify_subscription(self, params, callback): return self.subscription_service.modify_subscription(params, callback) def create_monitored_items(self, params): subscription_result = self.subscription_service.create_monitored_items(params) self.iserver.server_callback_dispatcher.dispatch( CallbackType.ItemSubscriptionCreated, ServerItemCallback(params, subscription_result)) return subscription_result def modify_monitored_items(self, params): subscription_result = self.subscription_service.modify_monitored_items(params) self.iserver.server_callback_dispatcher.dispatch( CallbackType.ItemSubscriptionModified, ServerItemCallback(params, subscription_result)) return subscription_result def republish(self, params): return self.subscription_service.republish(params) def delete_subscriptions(self, ids): for i in ids: with self._lock: if i in self.subscriptions: self.subscriptions.remove(i) return self.subscription_service.delete_subscriptions(ids) def delete_monitored_items(self, params): subscription_result = self.subscription_service.delete_monitored_items(params) self.iserver.server_callback_dispatcher.dispatch( CallbackType.ItemSubscriptionDeleted, ServerItemCallback(params, subscription_result)) return subscription_result def publish(self, acks=None): if acks is None: acks = [] return self.subscription_service.publish(acks) python-opcua-0.98.9/opcua/server/internal_subscription.py000066400000000000000000000520731357637245100237020ustar00rootroot00000000000000""" server side implementation of a subscription object """ from threading import RLock import logging # import copy # import traceback from opcua import ua class MonitoredItemData(object): def __init__(self): self.client_handle = None self.callback_handle = None self.monitored_item_id = None self.mode = None self.filter = None self.mvalue = MonitoredItemValues() self.where_clause_evaluator = None self.queue_size = 0 class MonitoredItemValues(object): def __init__(self): self.current_value = None self.old_value = None def set_current_value(self, cur_val): self.old_value = self.current_value self.current_value = cur_val def get_current_value(self): return self.current_value def get_old_value(self): return self.old_value class MonitoredItemService(object): """ implement monitoreditem service for 1 subscription """ def __init__(self, isub, aspace): self.logger = logging.getLogger(__name__ + "." + str(isub.data.SubscriptionId)) self.isub = isub self.aspace = aspace self._lock = RLock() self._monitored_items = {} self._monitored_events = {} self._monitored_datachange = {} self._monitored_item_counter = 111 def delete_all_monitored_items(self): self.delete_monitored_items([mdata.monitored_item_id for mdata in self._monitored_items.values()]) def create_monitored_items(self, params): results = [] for item in params.ItemsToCreate: with self._lock: if item.ItemToMonitor.AttributeId == ua.AttributeIds.EventNotifier: result = self._create_events_monitored_item(item) else: result = self._create_data_change_monitored_item(item) results.append(result) return results def modify_monitored_items(self, params): results = [] for item in params.ItemsToModify: results.append(self._modify_monitored_item(item)) return results def trigger_datachange(self, handle, nodeid, attr): self.logger.debug("triggering datachange for handle %s, nodeid %s, and attribute %s", handle, nodeid, attr) variant = self.aspace.get_attribute_value(nodeid, attr) self.datachange_callback(handle, variant) def _modify_monitored_item(self, params): with self._lock: for mdata in self._monitored_items.values(): result = ua.MonitoredItemModifyResult() if mdata.monitored_item_id == params.MonitoredItemId: result.RevisedSamplingInterval = params.RequestedParameters.SamplingInterval result.RevisedQueueSize = params.RequestedParameters.QueueSize if params.RequestedParameters.Filter is not None: mdata.filter = params.RequestedParameters.Filter mdata.queue_size = params.RequestedParameters.QueueSize return result result = ua.MonitoredItemModifyResult() result.StatusCode(ua.StatusCodes.BadMonitoredItemIdInvalid) return result def _commit_monitored_item(self, result, mdata): if result.StatusCode.is_good(): self._monitored_items[result.MonitoredItemId] = mdata self._monitored_item_counter += 1 def _make_monitored_item_common(self, params): result = ua.MonitoredItemCreateResult() result.RevisedSamplingInterval = self.isub.data.RevisedPublishingInterval result.RevisedQueueSize = params.RequestedParameters.QueueSize self._monitored_item_counter += 1 result.MonitoredItemId = self._monitored_item_counter self.logger.debug("Creating MonitoredItem with id %s", result.MonitoredItemId) mdata = MonitoredItemData() mdata.mode = params.MonitoringMode mdata.client_handle = params.RequestedParameters.ClientHandle mdata.monitored_item_id = result.MonitoredItemId mdata.queue_size = params.RequestedParameters.QueueSize mdata.filter = params.RequestedParameters.Filter return result, mdata def _create_events_monitored_item(self, params): self.logger.info("request to subscribe to events for node %s and attribute %s", params.ItemToMonitor.NodeId, params.ItemToMonitor.AttributeId) result, mdata = self._make_monitored_item_common(params) ev_notify_byte = self.aspace.get_attribute_value( params.ItemToMonitor.NodeId, ua.AttributeIds.EventNotifier).Value.Value if ev_notify_byte is None or not ua.ua_binary.test_bit(ev_notify_byte, ua.EventNotifier.SubscribeToEvents): result.StatusCode = ua.StatusCode(ua.StatusCodes.BadServiceUnsupported) return result # result.FilterResult = ua.EventFilterResult() # spec says we can ignore if not error mdata.where_clause_evaluator = WhereClauseEvaluator(self.logger, self.aspace, mdata.filter.WhereClause) self._commit_monitored_item(result, mdata) if params.ItemToMonitor.NodeId not in self._monitored_events: self._monitored_events[params.ItemToMonitor.NodeId] = [] self._monitored_events[params.ItemToMonitor.NodeId].append(result.MonitoredItemId) return result def _create_data_change_monitored_item(self, params): self.logger.info("request to subscribe to datachange for node %s and attribute %s", params.ItemToMonitor.NodeId, params.ItemToMonitor.AttributeId) result, mdata = self._make_monitored_item_common(params) result.FilterResult = params.RequestedParameters.Filter result.StatusCode, handle = self.aspace.add_datachange_callback( params.ItemToMonitor.NodeId, params.ItemToMonitor.AttributeId, self.datachange_callback) self.logger.debug("adding callback return status %s and handle %s", result.StatusCode, handle) mdata.callback_handle = handle self._commit_monitored_item(result, mdata) if result.StatusCode.is_good(): self._monitored_datachange[handle] = result.MonitoredItemId # force data change event generation self.trigger_datachange(handle, params.ItemToMonitor.NodeId, params.ItemToMonitor.AttributeId) return result def delete_monitored_items(self, ids): self.logger.debug("delete monitored items %s", ids) with self._lock: results = [] for mid in ids: results.append(self._delete_monitored_items(mid)) return results def _delete_monitored_items(self, mid): if mid not in self._monitored_items: return ua.StatusCode(ua.StatusCodes.BadMonitoredItemIdInvalid) for k, v in self._monitored_events.items(): if mid in v: v.remove(mid) if not v: self._monitored_events.pop(k) break for k, v in self._monitored_datachange.items(): if v == mid: self.aspace.delete_datachange_callback(k) self._monitored_datachange.pop(k) break self._monitored_items.pop(mid) return ua.StatusCode() def datachange_callback(self, handle, value, error=None): if error: self.logger.info("subscription %s: datachange callback called with handle '%s' and erorr '%s'", self, handle, error) self.trigger_statuschange(error) else: self.logger.info("subscription %s: datachange callback called with handle '%s' and value '%s'", self, handle, value.Value) event = ua.MonitoredItemNotification() with self._lock: mid = self._monitored_datachange[handle] mdata = self._monitored_items[mid] mdata.mvalue.set_current_value(value.Value.Value) if mdata.filter: deadband_flag_pass = self.deadband_callback(mdata.mvalue, mdata.filter) else: deadband_flag_pass = True if deadband_flag_pass: event.ClientHandle = mdata.client_handle event.Value = value self.isub.enqueue_datachange_event(mid, event, mdata.queue_size) def deadband_callback(self, values, flt): if flt.DeadbandType == ua.DeadbandType.None_ or values.get_old_value() is None: return True elif flt.DeadbandType == ua.DeadbandType.Absolute and \ ((abs(values.get_current_value() - values.get_old_value())) > flt.DeadbandValue): return True elif flt.DeadbandType == ua.DeadbandType.Percent: self.logger.warn("DeadbandType Percent is not implemented !") return True else: return False def trigger_event(self, event): with self._lock: if event.emitting_node not in self._monitored_events: self.logger.debug("%s has no subscription for events %s from node: %s", self, event, event.emitting_node) return False self.logger.debug("%s has subscription for events %s from node: %s", self, event, event.emitting_node) mids = self._monitored_events[event.emitting_node] for mid in mids: self._trigger_event(event, mid) def _trigger_event(self, event, mid): if mid not in self._monitored_items: self.logger.debug("Could not find monitored items for id %s for event %s in subscription %s", mid, event, self) return mdata = self._monitored_items[mid] if not mdata.where_clause_evaluator.eval(event): self.logger.info("%s, %s, Event %s does not fit WhereClause, not generating event", self, mid, event) return fieldlist = ua.EventFieldList() fieldlist.ClientHandle = mdata.client_handle fieldlist.EventFields = event.to_event_fields(mdata.filter.SelectClauses) self.isub.enqueue_event(mid, fieldlist, mdata.queue_size) def trigger_statuschange(self, code): self.isub.enqueue_statuschange(code) class InternalSubscription(object): def __init__(self, subservice, data, addressspace, callback): self.logger = logging.getLogger(__name__) self.aspace = addressspace self.subservice = subservice self.data = data self.callback = callback self.monitored_item_srv = MonitoredItemService(self, addressspace) self.task = None self._lock = RLock() self._triggered_datachanges = {} self._triggered_events = {} self._triggered_statuschanges = [] self._notification_seq = 1 self._not_acknowledged_results = {} self._startup = True self._keep_alive_count = 0 self._publish_cycles_count = 0 self._stopev = False def __str__(self): return "Subscription(id:{0})".format(self.data.SubscriptionId) def start(self): self.logger.debug("starting subscription %s", self.data.SubscriptionId) if self.data.RevisedPublishingInterval > 0.0: self._subscription_loop() def stop(self): self.logger.debug("stopping subscription %s", self.data.SubscriptionId) self._stopev = True self.monitored_item_srv.delete_all_monitored_items() def _trigger_publish(self): if not self._stopev and self.data.RevisedPublishingInterval <= 0.0: self.subservice.loop.call_soon(self.publish_results) def _subscription_loop(self): if not self._stopev: self.subservice.loop.call_later(self.data.RevisedPublishingInterval / 1000.0, self._sub_loop) def _sub_loop(self): if self._stopev: return self.publish_results() self._subscription_loop() def has_published_results(self): with self._lock: if self._startup or self._triggered_datachanges or self._triggered_events: return True if self._keep_alive_count > self.data.RevisedMaxKeepAliveCount: self.logger.debug("keep alive count %s is > than max keep alive count %s, sending publish event", self._keep_alive_count, self.data.RevisedMaxKeepAliveCount) return True self._keep_alive_count += 1 return False def publish_results(self): if self._publish_cycles_count > self.data.RevisedLifetimeCount: self.logger.warning("Subscription %s has expired, publish cycle count(%s) > lifetime count (%s)", self, self._publish_cycles_count, self.data.RevisedLifetimeCount) # FIXME this will never be send since we do not have publish request anyway self.monitored_item_srv.trigger_statuschange(ua.StatusCode(ua.StatusCodes.BadTimeout)) self._stopev = True result = None with self._lock: if self.has_published_results(): # FIXME: should we pop a publish request here? or we do not care? self._publish_cycles_count += 1 result = self._pop_publish_result() if result is not None: self.callback(result) def _pop_publish_result(self): result = ua.PublishResult() result.SubscriptionId = self.data.SubscriptionId self._pop_triggered_datachanges(result) self._pop_triggered_events(result) self._pop_triggered_statuschanges(result) self._keep_alive_count = 0 self._startup = False result.NotificationMessage.SequenceNumber = self._notification_seq if len(result.NotificationMessage.NotificationData) != 0: self._notification_seq += 1 self._not_acknowledged_results[result.NotificationMessage.SequenceNumber] = result result.MoreNotifications = False result.AvailableSequenceNumbers = list(self._not_acknowledged_results.keys()) return result def _pop_triggered_datachanges(self, result): if self._triggered_datachanges: notif = ua.DataChangeNotification() notif.MonitoredItems = [item for sublist in self._triggered_datachanges.values() for item in sublist] self._triggered_datachanges = {} self.logger.debug("sending datachanges notification with %s events", len(notif.MonitoredItems)) result.NotificationMessage.NotificationData.append(notif) def _pop_triggered_events(self, result): if self._triggered_events: notif = ua.EventNotificationList() notif.Events = [item for sublist in self._triggered_events.values() for item in sublist] self._triggered_events = {} result.NotificationMessage.NotificationData.append(notif) self.logger.debug("sending event notification with %s events", len(notif.Events)) def _pop_triggered_statuschanges(self, result): if self._triggered_statuschanges: notif = ua.StatusChangeNotification() notif.Status = self._triggered_statuschanges.pop(0) result.NotificationMessage.NotificationData.append(notif) self.logger.debug("sending event notification %s", notif.Status) def publish(self, acks): self.logger.info("publish request with acks %s", acks) with self._lock: self._publish_cycles_count = 0 for nb in acks: self._not_acknowledged_results.pop(nb, None) def republish(self, nb): self.logger.info("re-publish request for ack %s in subscription %s", nb, self) with self._lock: notificationMessage = self._not_acknowledged_results.pop(nb, None) if notificationMessage: self.logger.info("re-publishing ack %s in subscription %s", nb, self) return notificationMessage else: self.logger.info("Error request to re-published non existing ack %s in subscription %s", nb, self) return ua.NotificationMessage() def enqueue_datachange_event(self, mid, eventdata, maxsize): self._enqueue_event(mid, eventdata, maxsize, self._triggered_datachanges) def enqueue_event(self, mid, eventdata, maxsize): self._enqueue_event(mid, eventdata, maxsize, self._triggered_events) def enqueue_statuschange(self, code): self._triggered_statuschanges.append(code) self._trigger_publish() def _enqueue_event(self, mid, eventdata, size, queue): with self._lock: if mid not in queue: queue[mid] = [eventdata] self._trigger_publish() return if size != 0: if len(queue[mid]) >= size: queue[mid].pop(0) queue[mid].append(eventdata) class WhereClauseEvaluator(object): def __init__(self, logger, aspace, whereclause): self.logger = logger self.elements = whereclause.Elements self._aspace = aspace def eval(self, event): if not self.elements: return True # spec says we should only evaluate first element, which may use other elements try: res = self._eval_el(0, event) except Exception as ex: self.logger.exception("Exception while evaluating WhereClause %s for event %s: %s", self.elements, event, ex) return False return res def _eval_el(self, index, event): el = self.elements[index] # ops = [self._eval_op(op, event) for op in el.FilterOperands] ops = el.FilterOperands # just to make code more readable if el.FilterOperator == ua.FilterOperator.Equals: return self._eval_op(ops[0], event) == self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.IsNull: return self._eval_op(ops[0], event) is None # FIXME: might be too strict elif el.FilterOperator == ua.FilterOperator.GreaterThan: return self._eval_op(ops[0], event) > self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.LessThan: return self._eval_op(ops[0], event) < self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.GreaterThanOrEqual: return self._eval_op(ops[0], event) >= self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.LessThanOrEqual: return self._eval_op(ops[0], event) <= self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.Like: return self._likeoperator(self._eval_op(ops[0], event), self._eval_op(ops[1], event)) elif el.FilterOperator == ua.FilterOperator.Not: return not self._eval_op(ops[0], event) elif el.FilterOperator == ua.FilterOperator.Between: return self._eval_el(ops[2], event) >= self._eval_op(ops[0], event) >= self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.InList: return self._eval_op(ops[0], event) in [self._eval_op(op, event) for op in ops[1:]] elif el.FilterOperator == ua.FilterOperator.And: return self._eval_op(ops[0], event) and self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.Or: return self._eval_op(ops[0], event) or self._eval_op(ops[1], event) elif el.FilterOperator == ua.FilterOperator.Cast: self.logger.warn("Cast operand not implemented, assuming True") return True elif el.FilterOperator == ua.FilterOperator.OfType: return event.EventType == self._eval_op(ops[0], event) else: # TODO: implement missing operators self.logger.warning("WhereClause not implemented for element: %s", el) raise NotImplementedError def _like_operator(self, string, pattern): raise NotImplementedError def _eval_op(self, op, event): # seems spec says we should return Null if issues if type(op) is ua.ElementOperand: return self._eval_el(op.Index, event) elif type(op) is ua.AttributeOperand: if op.BrowsePath: return getattr(event, op.BrowsePath.Elements[0].TargetName.Name) else: return self._aspace.get_attribute_value(event.EventType, op.AttributeId).Value.Value # FIXME: check, this is probably broken elif type(op) is ua.SimpleAttributeOperand: if op.BrowsePath: # we only support depth of 1 return getattr(event, op.BrowsePath[0].Name) else: # TODO: write code for index range.... but doe it make any sense return self._aspace.get_attribute_value(event.EventType, op.AttributeId).Value.Value elif type(op) is ua.LiteralOperand: return op.Value.Value else: self.logger.warning("Where clause element % is not of a known type", op) raise NotImplementedError python-opcua-0.98.9/opcua/server/registration_service.py000066400000000000000000000131761357637245100235150ustar00rootroot00000000000000 import logging from threading import Lock from functools import partial try: from urllib.parse import urlparse except ImportError: # support for python2 from urlparse import urlparse from opcua import ua from opcua.client.client import Client class RegistrationService(object): DEF_DISCOVERY_URL = "opc.tcp://localhost:4840" # By OPC-UA specification. MAX_CLIENT = 32 # [-] Max. number of simultaneous client connections. DEF_REGINT = 60 # [sec] Default re-registration interval. MIN_REGINT = 10 # [sec] Minimal re-registration interval. # FIXME monitor connection to serverToRegister. def __init__(self): self.logger = logging.getLogger(__name__) self._registration_clients = [] self._lock = Lock() def __enter__(self): return self def __exit__(self, exc_type, exc_value, traceback): with self._lock: for client in self._registration_clients: client.disconnect() self._registration_clients = [] def register_to_discovery(self, serverToRegister=None, discoveryUrl=DEF_DISCOVERY_URL, period=DEF_REGINT): """ Register to an OPC-UA Discovery server. Registering must be renewed at least every 10 minutes, so this method will use our asyncio thread to re-register every period seconds if period is 0 registration is not automatically renewed """ # Detect accidental registration loops. if len(self._registration_clients) >= self.MAX_CLIENT: raise Exception('Max. discovery servers reached: {:d}'.format(self.MAX_CLIENT)) # Prevent multiple registrations to one discovery server. netloc = urlparse(discoveryUrl).netloc for client in self._registration_clients: if client.server_url.netloc != netloc: continue raise Exception('Already registering to discovery server: {:s}'.format(discoveryUrl)) # Create and store client connection to discovery server. registrationClient = Client(discoveryUrl) registrationClient.connect() self._registration_clients.append(registrationClient) self._renew_registration(serverToRegister, registrationClient, period=period) def unregister_to_discovery(self, discoveryUrl=DEF_DISCOVERY_URL): """ Unregister from OPC-UA Discovery server. """ # FIXME: is there really no way to deregister? netloc = urlparse(discoveryUrl).netloc with self._lock: for client in self._registration_clients[:]: if client.server_url.netloc != netloc: continue self._registration_clients.remove(client) client.disconnect() break # This method is called once from the main thread. # Subsequent periodic calls are from asyncio loop. def _renew_registration(self, serverToRegister, registrationClient, period=DEF_REGINT): # Send registration request to discovery server. try: with self._lock: # So we don't client.disconnect() from main thread. if registrationClient not in self._registration_clients: return self._register_server(serverToRegister, registrationClient) except (BrokenPipeError, OSError) as e: self.logger.info("Discovery server registration failure: {:s}".format(str(e))) return # TODO handle connection loss (retry x times?). except TimeoutError: self.logger.info("Discovery server registration timeout: {:s}".format(str(e))) # Decide whether to schedule a registration renewal. if period == 0: return # no periodic registrations. elif not serverToRegister.iserver.is_running(): return # won't happen as we currently use serverToRegister's own event loop. else: self._schedule_registration(serverToRegister, registrationClient, period) def _schedule_registration(self, serverToRegister, registrationClient, period=DEF_REGINT): # Schedule automatic re-registrations every sec. if (period < RegistrationService.MIN_REGINT): raise ValueError("Period must be larger than {:d} [sec].".format(RegistrationService.MIN_REGINT)) renew_cb = partial(self._renew_registration, serverToRegister = serverToRegister, registrationClient = registrationClient, period = period ) # Piggyback on the serverToRegister's asyncio loop. serverToRegister.iserver.loop.call_later(period, renew_cb) @staticmethod def _register_server(serverToRegister, registrationClient, uaDiscoveryConfiguration=None): """ Register serverToRegister to discovery server if uaDiscoveryConfiguration is provided, the newer register_server2 service call is used """ uaRegSrv = ua.RegisteredServer() uaRegSrv.ServerUri = serverToRegister.get_application_uri() uaRegSrv.ProductUri = serverToRegister.product_uri uaRegSrv.DiscoveryUrls = [serverToRegister.endpoint.geturl()] uaRegSrv.ServerType = serverToRegister.application_type uaRegSrv.ServerNames = [ua.LocalizedText(serverToRegister.name)] uaRegSrv.IsOnline = serverToRegister.iserver.is_running() if uaDiscoveryConfiguration: params = ua.RegisterServer2Parameters() params.Server = uaRegSrv params.DiscoveryConfiguration = uaDiscoveryConfiguration return registrationClient.uaclient.register_server2(params) else: return registrationClient.uaclient.register_server(uaRegSrv) python-opcua-0.98.9/opcua/server/server.py000066400000000000000000000610631357637245100205670ustar00rootroot00000000000000""" High level interface to pure python OPC-UA server """ import logging from datetime import timedelta, datetime try: from urllib.parse import urlparse except ImportError: from urlparse import urlparse from opcua import ua # from opcua.binary_server import BinaryServer from opcua.server.binary_server_asyncio import BinaryServer from opcua.server.internal_server import InternalServer from opcua.server.event_generator import EventGenerator from opcua.server.user_manager import UserManager from opcua.server.discovery_service import LocalDiscoveryService from opcua.common.node import Node from opcua.common.subscription import Subscription from opcua.common.manage_nodes import delete_nodes from opcua.crypto import security_policies from opcua.common.event_objects import BaseEvent from opcua.common.shortcuts import Shortcuts from opcua.common.structures import load_type_definitions, load_enums from opcua.common.xmlexporter import XmlExporter from opcua.common.xmlimporter import XmlImporter from opcua.common.ua_utils import get_nodes_of_namespace use_crypto = True try: from opcua.crypto import uacrypto except ImportError: logging.getLogger(__name__).warning("cryptography is not installed, use of crypto disabled") use_crypto = False class Server(object): """ High level Server class This class creates an opcua server with default values Create your own namespace and then populate your server address space using use the get_root() or get_objects() to get Node objects. and get_event_object() to fire events. Then start server. See example_server.py All methods are threadsafe If you need more flexibility you call directly the Ua Service methods on the iserver or iserver.isession object members. During startup the standard address space will be constructed, which may be time-consuming when running a server on a less powerful device (e.g. a Raspberry Pi). In order to improve startup performance, a optional path to a cache file can be passed to the server constructor. If the parameter is defined, the address space will be loaded from the cache file or the file will be created if it does not exist yet. As a result the first startup will be even slower due to the cache file generation but all further start ups will be significantly faster. :ivar product_uri: :vartype product_uri: uri :ivar name: :vartype name: string :ivar default_timeout: timeout in milliseconds for sessions and secure channel :vartype default_timeout: int :ivar iserver: internal server object :vartype default_timeout: InternalServer :ivar bserver: binary protocol server :vartype bserver: BinaryServer :ivar nodes: shortcuts to common nodes :vartype nodes: Shortcuts """ def __init__(self, shelffile=None, iserver=None): self.logger = logging.getLogger(__name__) self.endpoint = urlparse("opc.tcp://0.0.0.0:4840/freeopcua/server/") self._application_uri = "urn:freeopcua:python:server" self.product_uri = "urn:freeopcua.github.io:python:server" self.name = "FreeOpcUa Python Server" self.manufacturer_name = "FreeOpcUa" self.application_type = ua.ApplicationType.ClientAndServer self.default_timeout = 3600000 if iserver is not None: self.iserver = iserver else: self.iserver = InternalServer(shelffile = shelffile, parent = self) self.bserver = None self._policies = [] self.nodes = Shortcuts(self.iserver.isession) # setup some expected values self.set_application_uri(self._application_uri) sa_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerArray)) sa_node.set_value([self._application_uri]) self.set_build_info(self.product_uri, self.manufacturer_name, self.name, "1.0pre", "0", datetime.now()) # enable all endpoints by default self.certificate = None self.private_key = None self.user_manager = UserManager(parent = self) self._security_policy = [ ua.SecurityPolicyType.NoSecurity, ua.SecurityPolicyType.Basic256Sha256_SignAndEncrypt, ua.SecurityPolicyType.Basic256Sha256_Sign ] self._policyIDs = ["Anonymous", "Basic256Sha256", "Username"] def __enter__(self): self.start() return self def __exit__(self, exc_type, exc_value, traceback): self.stop() @property def local_discovery_service(self): return self.iserver.local_discovery_service def load_certificate(self, path): """ load server certificate from file, either pem or der """ self.certificate = uacrypto.load_certificate(path) def load_private_key(self, path): self.private_key = uacrypto.load_private_key(path) def disable_clock(self, val=True): """ for debugging you may want to disable clock that write every second to address space """ self.iserver.disabled_clock = val def set_application_uri(self, uri): """ Set application/server URI. This uri is supposed to be unique. If you intent to register your server to a discovery server, it really should be unique in your system! default is : "urn:freeopcua:python:server" """ self._application_uri = uri ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) uries = ns_node.get_value() if len(uries) > 1: uries[1] = uri # application uri is always namespace 1 else: uries.append(uri) ns_node.set_value(uries) def get_application_uri(self): """ Get application/server URI. """ return self._application_uri def find_servers(self, uris=None): """ find_servers. mainly implemented for symmetry with client """ if uris is None: uris = [] params = ua.FindServersParameters() params.EndpointUrl = self.endpoint.geturl() params.ServerUris = uris return self.local_discovery_service.find_servers(params) def allow_remote_admin(self, allow): """ Enable or disable the builtin Admin user from network clients """ self.user_manager.allow_remote_admin = allow def set_endpoint(self, url): self.endpoint = urlparse(url) def get_endpoints(self): return self.iserver.get_endpoints() def set_security_policy(self, security_policy): """ Method setting up the security policies for connections to the server, where security_policy is a list of integers. During server initialization, all endpoints are enabled: security_policy = [ ua.SecurityPolicyType.NoSecurity, ua.SecurityPolicyType.Basic256Sha256_SignAndEncrypt, ua.SecurityPolicyType.Basic256Sha256_Sign ] E.g. to limit the number of endpoints and disable no encryption: set_security_policy([ ua.SecurityPolicyType.Basic256Sha256_SignAndEncrypt]) """ self._security_policy = security_policy def set_security_IDs(self, policyIDs): """ Method setting up the security endpoints for identification of clients. During server object initialization, all possible endpoints are enabled: self._policyIDs = ["Anonymous", "Basic256Sha256", "Username"] E.g. to limit the number of IDs and disable anonymous clients: set_security_policy(["Basic256Sha256"]) (Implementation for ID check is currently not finalized...) """ self._policyIDs = policyIDs def _setup_server_nodes(self): # to be called just before starting server since it needs all parameters to be setup if ua.SecurityPolicyType.NoSecurity in self._security_policy: self._set_endpoints() self._policies = [ua.SecurityPolicyFactory()] if self._security_policy != [ua.SecurityPolicyType.NoSecurity]: if not (self.certificate and self.private_key): self.logger.warning("Endpoints other than open requested but private key and certificate are not set.") return if ua.SecurityPolicyType.NoSecurity in self._security_policy: self.logger.warning("Creating an open endpoint to the server, although encrypted endpoints are enabled.") if ua.SecurityPolicyType.Basic256Sha256_SignAndEncrypt in self._security_policy: self._set_endpoints(security_policies.SecurityPolicyBasic256Sha256, ua.MessageSecurityMode.SignAndEncrypt) self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic256Sha256, ua.MessageSecurityMode.SignAndEncrypt, self.certificate, self.private_key) ) if ua.SecurityPolicyType.Basic256Sha256_Sign in self._security_policy: self._set_endpoints(security_policies.SecurityPolicyBasic256Sha256, ua.MessageSecurityMode.Sign) self._policies.append(ua.SecurityPolicyFactory(security_policies.SecurityPolicyBasic256Sha256, ua.MessageSecurityMode.Sign, self.certificate, self.private_key) ) def _set_endpoints(self, policy=ua.SecurityPolicy, mode=ua.MessageSecurityMode.None_): idtokens = [] if "Anonymous" in self._policyIDs: idtoken = ua.UserTokenPolicy() idtoken.PolicyId = 'anonymous' idtoken.TokenType = ua.UserTokenType.Anonymous idtokens.append(idtoken) if "Basic256Sha256" in self._policyIDs: idtoken = ua.UserTokenPolicy() idtoken.PolicyId = 'certificate_basic256sha256' idtoken.TokenType = ua.UserTokenType.Certificate idtokens.append(idtoken) if "Username" in self._policyIDs: idtoken = ua.UserTokenPolicy() idtoken.PolicyId = 'username' idtoken.TokenType = ua.UserTokenType.UserName idtokens.append(idtoken) appdesc = ua.ApplicationDescription() appdesc.ApplicationName = ua.LocalizedText(self.name) appdesc.ApplicationUri = self._application_uri appdesc.ApplicationType = self.application_type appdesc.ProductUri = self.product_uri appdesc.DiscoveryUrls.append(self.endpoint.geturl()) edp = ua.EndpointDescription() edp.EndpointUrl = self.endpoint.geturl() edp.Server = appdesc if self.certificate: edp.ServerCertificate = uacrypto.der_from_x509(self.certificate) edp.SecurityMode = mode edp.SecurityPolicyUri = policy.URI edp.UserIdentityTokens = idtokens edp.TransportProfileUri = 'http://opcfoundation.org/UA-Profile/Transport/uatcp-uasc-uabinary' edp.SecurityLevel = 0 self.iserver.add_endpoint(edp) def set_server_name(self, name): self.name = name def set_build_info(self, product_uri, manufacturer_name, product_name, software_version, build_number, build_date): """ Update the servers build information. This needs to be added to the ServerStatus, BuildInfo and all underlying nodes """ status_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus)) build_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo)) status = status_node.get_value() if status is None: status = ua.ServerStatusDataType() status.BuildInfo.ProductUri = product_uri status.BuildInfo.ManufacturerName = manufacturer_name status.BuildInfo.ProductName = product_name status.BuildInfo.SoftwareVersion = software_version status.BuildInfo.BuildNumber = build_number status.BuildInfo.BuildDate = build_date status_node.set_value(status) build_node.set_value(status.BuildInfo) # we also need to update all individual nodes :/ product_uri_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_ProductUri)) product_name_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_ProductName)) product_manufacturer_name_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_ManufacturerName)) product_software_version_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_SoftwareVersion)) product_build_number_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_BuildNumber)) product_build_date_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_BuildInfo_BuildDate)) product_uri_node.set_value(status.BuildInfo.ProductUri) product_name_node.set_value(status.BuildInfo.ProductName) product_manufacturer_name_node.set_value(status.BuildInfo.ManufacturerName) product_software_version_node.set_value(status.BuildInfo.SoftwareVersion) product_build_number_node.set_value(status.BuildInfo.BuildNumber) product_build_date_node.set_value(status.BuildInfo.BuildDate) def start(self): """ Start to listen on network """ self._setup_server_nodes() self.iserver.start() try: if not self.bserver: self.bserver = BinaryServer(self.iserver, self.endpoint.hostname, self.endpoint.port) self.bserver.set_policies(self._policies) self.bserver.set_loop(self.iserver.loop) self.bserver.start() except Exception as exp: self.iserver.stop() raise exp def stop(self): """ Stop server """ self.bserver.stop() self.iserver.stop() def get_root_node(self): """ Get Root node of server. Returns a Node object. """ return self.get_node(ua.TwoByteNodeId(ua.ObjectIds.RootFolder)) def get_objects_node(self): """ Get Objects node of server. Returns a Node object. """ return self.get_node(ua.TwoByteNodeId(ua.ObjectIds.ObjectsFolder)) def get_server_node(self): """ Get Server node of server. Returns a Node object. """ return self.get_node(ua.TwoByteNodeId(ua.ObjectIds.Server)) def get_node(self, nodeid): """ Get a specific node using NodeId object or a string representing a NodeId """ return Node(self.iserver.isession, nodeid) def create_subscription(self, period, handler): """ Create a subscription. returns a Subscription object which allow to subscribe to events or data on server period is in milliseconds handler is a python object with following methods: def datachange_notification(self, node, val, data): def event_notification(self, event): def status_change_notification(self, status): """ params = ua.CreateSubscriptionParameters() params.RequestedPublishingInterval = period params.RequestedLifetimeCount = 3000 params.RequestedMaxKeepAliveCount = 10000 params.MaxNotificationsPerPublish = 0 params.PublishingEnabled = True params.Priority = 0 return Subscription(self.iserver.isession, params, handler) def get_namespace_array(self): """ get all namespace defined in server """ ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) return ns_node.get_value() def register_namespace(self, uri): """ Register a new namespace. Nodes should in custom namespace, not 0. """ ns_node = self.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) uries = ns_node.get_value() if uri in uries: return uries.index(uri) uries.append(uri) ns_node.set_value(uries) return len(uries) - 1 def get_namespace_index(self, uri): """ get index of a namespace using its uri """ uries = self.get_namespace_array() return uries.index(uri) def get_event_generator(self, etype=None, emitting_node=ua.ObjectIds.Server): """ Returns an event object using an event type from address space. Use this object to fire events """ if not etype: etype = BaseEvent() return EventGenerator(self.iserver.isession, etype, emitting_node=emitting_node) def create_custom_data_type(self, idx, name, basetype=ua.ObjectIds.BaseDataType, properties=None, description=None): if properties is None: properties = [] if isinstance(basetype, Node): base_t = basetype elif isinstance(basetype, ua.NodeId): base_t = Node(self.iserver.isession, basetype) else: base_t = Node(self.iserver.isession, ua.NodeId(basetype)) custom_t = base_t.add_data_type(idx, name, description) for prop in properties: datatype = None if len(prop) > 2: datatype = prop[2] custom_t.add_property(idx, prop[0], ua.get_default_value(prop[1]), varianttype=prop[1], datatype=datatype) return custom_t def create_custom_event_type(self, idx, name, basetype=ua.ObjectIds.BaseEventType, properties=None): if properties is None: properties = [] return self._create_custom_type(idx, name, basetype, properties, [], []) def create_custom_object_type(self, idx, name, basetype=ua.ObjectIds.BaseObjectType, properties=None, variables=None, methods=None): if properties is None: properties = [] if variables is None: variables = [] if methods is None: methods = [] return self._create_custom_type(idx, name, basetype, properties, variables, methods) # def create_custom_reference_type(self, idx, name, basetype=ua.ObjectIds.BaseReferenceType, properties=[]): # return self._create_custom_type(idx, name, basetype, properties) def create_custom_variable_type(self, idx, name, basetype=ua.ObjectIds.BaseVariableType, properties=None, variables=None, methods=None): if properties is None: properties = [] if variables is None: variables = [] if methods is None: methods = [] return self._create_custom_type(idx, name, basetype, properties, variables, methods) def _create_custom_type(self, idx, name, basetype, properties, variables, methods): if isinstance(basetype, Node): base_t = basetype elif isinstance(basetype, ua.NodeId): base_t = Node(self.iserver.isession, basetype) else: base_t = Node(self.iserver.isession, ua.NodeId(basetype)) custom_t = base_t.add_object_type(idx, name) for prop in properties: datatype = None if len(prop) > 2: datatype = prop[2] custom_t.add_property(idx, prop[0], ua.get_default_value(prop[1]), varianttype=prop[1], datatype=datatype) for variable in variables: datatype = None if len(variable) > 2: datatype = variable[2] custom_t.add_variable(idx, variable[0], ua.get_default_value(variable[1]), varianttype=variable[1], datatype=datatype) for method in methods: custom_t.add_method(idx, method[0], method[1], method[2], method[3]) return custom_t def import_xml(self, path=None, xmlstring=None): """ Import nodes defined in xml """ importer = XmlImporter(self) return importer.import_xml(path, xmlstring) def export_xml(self, nodes, path): """ Export defined nodes to xml """ exp = XmlExporter(self) exp.build_etree(nodes) return exp.write_xml(path) def export_xml_by_ns(self, path, namespaces=None): """ Export nodes of one or more namespaces to an XML file. Namespaces used by nodes are always exported for consistency. Args: server: opc ua server to use path: name of the xml file to write namespaces: list of string uris or int indexes of the namespace to export, if not provide all ns are used except 0 Returns: """ if namespaces is None: namespaces = [] nodes = get_nodes_of_namespace(self, namespaces) self.export_xml(nodes, path) def delete_nodes(self, nodes, recursive=False): return delete_nodes(self.iserver.isession, nodes, recursive) def historize_node_data_change(self, node, period=timedelta(days=7), count=0): """ Start historizing supplied nodes; see history module Args: node: node or list of nodes that can be historized (variables/properties) period: time delta to store the history; older data will be deleted from the storage count: number of changes to store in the history Returns: """ nodes = node if isinstance(node, (list, tuple)) else [node] for node in nodes: self.iserver.enable_history_data_change(node, period, count) def dehistorize_node_data_change(self, node): """ Stop historizing supplied nodes; see history module Args: node: node or list of nodes that can be historized (UA variables/properties) Returns: """ nodes = node if isinstance(node, (list, tuple)) else [node] for node in nodes: self.iserver.disable_history_data_change(node) def historize_node_event(self, node, period=timedelta(days=7), count=0): """ Start historizing events from node (typically a UA object); see history module Args: node: node or list of nodes that can be historized (UA objects) period: time delta to store the history; older data will be deleted from the storage count: number of events to store in the history Returns: """ nodes = node if isinstance(node, (list, tuple)) else [node] for node in nodes: self.iserver.enable_history_event(node, period, count) def dehistorize_node_event(self, node): """ Stop historizing events from node (typically a UA object); see history module Args: node: node or list of nodes that can be historized (UA objects) Returns: """ nodes = node if isinstance(node, (list, tuple)) else [node] for node in nodes: self.iserver.disable_history_event(node) def subscribe_server_callback(self, event, handle): self.iserver.subscribe_server_callback(event, handle) def unsubscribe_server_callback(self, event, handle): self.iserver.unsubscribe_server_callback(event, handle) def link_method(self, node, callback): """ Link a python function to a UA method in the address space; required when a UA method has been imported to the address space via XML; the python executable must be linked manually Args: node: UA method node callback: python function that the UA method will call Returns: """ self.iserver.isession.add_method_callback(node.nodeid, callback) def load_type_definitions(self, nodes=None): """ load custom structures from our server. Server side this can be used to create python objects from custom structures imported through xml into server """ return load_type_definitions(self, nodes) def load_enums(self): """ load UA structures and generate python Enums in ua module for custom enums in server """ return load_enums(self) def set_attribute_value(self, nodeid, datavalue, attr=ua.AttributeIds.Value): """ directly write datavalue to the Attribute, bypasing some checks and structure creation so it is a little faster """ return self.iserver.set_attribute_value(nodeid, datavalue, attr) python-opcua-0.98.9/opcua/server/standard_address_space/000077500000000000000000000000001357637245100233615ustar00rootroot00000000000000python-opcua-0.98.9/opcua/server/standard_address_space/__init__.py000066400000000000000000000000001357637245100254600ustar00rootroot00000000000000python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space.py000066400000000000000000000045761357637245100304270ustar00rootroot00000000000000 import os.path import opcua from opcua.server.standard_address_space.standard_address_space_part3 import create_standard_address_space_Part3 from opcua.server.standard_address_space.standard_address_space_part4 import create_standard_address_space_Part4 from opcua.server.standard_address_space.standard_address_space_part5 import create_standard_address_space_Part5 from opcua.server.standard_address_space.standard_address_space_part8 import create_standard_address_space_Part8 from opcua.server.standard_address_space.standard_address_space_part9 import create_standard_address_space_Part9 from opcua.server.standard_address_space.standard_address_space_part10 import create_standard_address_space_Part10 from opcua.server.standard_address_space.standard_address_space_part11 import create_standard_address_space_Part11 from opcua.server.standard_address_space.standard_address_space_part13 import create_standard_address_space_Part13 class PostponeReferences(object): def __init__(self, server): self.server = server self.postponed_refs = None self.postponed_nodes = None #self.add_nodes = self.server.add_nodes def add_nodes(self,nodes): self.postponed_nodes.extend(self.server.try_add_nodes(nodes, check=False)) def add_references(self, refs): self.postponed_refs.extend(self.server.try_add_references(refs)) # no return def __enter__(self): self.postponed_refs = [] self.postponed_nodes = [] return self def __exit__(self, exc_type, exc_val, exc_tb): if exc_type is None and exc_val is None: remaining_nodes = list(self.server.try_add_nodes(self.postponed_nodes, check=False)) assert len(remaining_nodes) == 0, remaining_nodes remaining_refs = list(self.server.try_add_references(self.postponed_refs)) assert len(remaining_refs) == 0, remaining_refs def fill_address_space(nodeservice): with PostponeReferences(nodeservice) as server: create_standard_address_space_Part3(server) create_standard_address_space_Part4(server) create_standard_address_space_Part5(server) create_standard_address_space_Part8(server) create_standard_address_space_Part9(server) create_standard_address_space_Part10(server) create_standard_address_space_Part11(server) create_standard_address_space_Part13(server) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part10.py000066400000000000000000005023511357637245100316100ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part10(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2391, 0) node.BrowseName = QualifiedName('ProgramStateMachineType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A state machine for a program.") attrs.DisplayName = LocalizedText("ProgramStateMachineType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3830, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3835, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2392, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2393, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2394, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2395, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2396, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2397, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2398, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3850, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2406, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2400, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2404, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2408, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2410, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2412, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2414, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2416, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2418, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2420, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2422, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2424, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2426, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2427, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2428, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2429, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2430, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3830, 0) node.BrowseName = QualifiedName('CurrentState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2760, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3831, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3833, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2760, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3831, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3833, 0) node.BrowseName = QualifiedName('Number', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Number") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3835, 0) node.BrowseName = QualifiedName('LastTransition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2767, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransition") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3836, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3838, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3839, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2767, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3836, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3835, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3835, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3838, 0) node.BrowseName = QualifiedName('Number', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3835, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Number") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3835, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3839, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3835, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3835, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2392, 0) node.BrowseName = QualifiedName('Creatable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Creatable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2393, 0) node.BrowseName = QualifiedName('Deletable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Deletable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2394, 0) node.BrowseName = QualifiedName('AutoDelete', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AutoDelete") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2395, 0) node.BrowseName = QualifiedName('RecycleCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RecycleCount") attrs.DataType = ua.NodeId(ua.ObjectIds.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2396, 0) node.BrowseName = QualifiedName('InstanceCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InstanceCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2397, 0) node.BrowseName = QualifiedName('MaxInstanceCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxInstanceCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2398, 0) node.BrowseName = QualifiedName('MaxRecycleCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxRecycleCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2399, 0) node.BrowseName = QualifiedName('ProgramDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(15383, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnostics") attrs.DataType = NumericNodeId(15396, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3840, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3841, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3842, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3843, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3844, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3845, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3846, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3847, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15038, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15040, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3848, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3849, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3840, 0) node.BrowseName = QualifiedName('CreateSessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateSessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3841, 0) node.BrowseName = QualifiedName('CreateClientName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateClientName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3842, 0) node.BrowseName = QualifiedName('InvocationCreationTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InvocationCreationTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3843, 0) node.BrowseName = QualifiedName('LastTransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3844, 0) node.BrowseName = QualifiedName('LastMethodCall', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodCall") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3845, 0) node.BrowseName = QualifiedName('LastMethodSessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodSessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3846, 0) node.BrowseName = QualifiedName('LastMethodInputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodInputArguments") attrs.DataType = NumericNodeId(296, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3847, 0) node.BrowseName = QualifiedName('LastMethodOutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodOutputArguments") attrs.DataType = NumericNodeId(296, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3847, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3847, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3847, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15038, 0) node.BrowseName = QualifiedName('LastMethodInputValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodInputValues") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15040, 0) node.BrowseName = QualifiedName('LastMethodOutputValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodOutputValues") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3848, 0) node.BrowseName = QualifiedName('LastMethodCallTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodCallTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3848, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3848, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3848, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3849, 0) node.BrowseName = QualifiedName('LastMethodReturnStatus', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2399, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodReturnStatus") attrs.DataType = ua.NodeId(ua.ObjectIds.StatusCode) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2399, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3850, 0) node.BrowseName = QualifiedName('FinalResultData', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(58, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("FinalResultData") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3850, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3850, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3850, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2406, 0) node.BrowseName = QualifiedName('Halted', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Program is in a terminal or failed state, and it cannot be started or resumed without being reset.") attrs.DisplayName = LocalizedText("Halted") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2407, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2408, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2412, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2420, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2424, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2407, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(11, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2400, 0) node.BrowseName = QualifiedName('Ready', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Program is properly initialized and may be started.") attrs.DisplayName = LocalizedText("Ready") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2401, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2408, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2410, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2414, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2422, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2424, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2401, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2400, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(12, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2400, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2402, 0) node.BrowseName = QualifiedName('Running', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Program is executing making progress towards completion.") attrs.DisplayName = LocalizedText("Running") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2403, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2410, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2412, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2414, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2416, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2418, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2403, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2402, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(13, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2403, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2403, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2403, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2402, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2404, 0) node.BrowseName = QualifiedName('Suspended', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Program has been stopped prior to reaching a terminal state but may be resumed.") attrs.DisplayName = LocalizedText("Suspended") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2404, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2405, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2404, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2416, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2404, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2418, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2404, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2420, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2404, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2422, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2404, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2404, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2405, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2404, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(14, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2405, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2405, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2405, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2404, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2408, 0) node.BrowseName = QualifiedName('HaltedToReady', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("HaltedToReady") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2409, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2406, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2400, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2430, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2409, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2408, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(1, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2409, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2409, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2409, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2408, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2410, 0) node.BrowseName = QualifiedName('ReadyToRunning', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadyToRunning") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2411, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2400, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2426, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2411, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2410, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(2, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2410, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2412, 0) node.BrowseName = QualifiedName('RunningToHalted', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("RunningToHalted") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2413, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2406, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2429, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2413, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2412, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(3, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2412, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2414, 0) node.BrowseName = QualifiedName('RunningToReady', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("RunningToReady") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2415, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2400, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2415, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2414, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(4, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2414, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2416, 0) node.BrowseName = QualifiedName('RunningToSuspended', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("RunningToSuspended") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2417, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2404, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2427, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2417, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2416, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(5, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2416, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2418, 0) node.BrowseName = QualifiedName('SuspendedToRunning', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("SuspendedToRunning") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2419, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2404, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2428, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2419, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2418, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(6, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2419, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2419, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2419, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2418, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2420, 0) node.BrowseName = QualifiedName('SuspendedToHalted', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("SuspendedToHalted") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2421, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2404, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2406, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2429, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2421, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2420, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(7, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2421, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2421, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2421, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2420, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2422, 0) node.BrowseName = QualifiedName('SuspendedToReady', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("SuspendedToReady") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2423, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2404, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2400, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2423, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2422, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(8, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2422, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2424, 0) node.BrowseName = QualifiedName('ReadyToHalted', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadyToHalted") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2425, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2400, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2406, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2429, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2425, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2424, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.Value = ua.Variant(9, ua.VariantType.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2425, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2425, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2425, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2424, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2426, 0) node.BrowseName = QualifiedName('Start', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.Description = LocalizedText("Causes the Program to transition from the Ready state to the Running state.") attrs.DisplayName = LocalizedText("Start") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2426, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2410, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2426, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2426, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2427, 0) node.BrowseName = QualifiedName('Suspend', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.Description = LocalizedText("Causes the Program to transition from the Running state to the Suspended state.") attrs.DisplayName = LocalizedText("Suspend") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2427, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2416, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2427, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2427, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2428, 0) node.BrowseName = QualifiedName('Resume', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.Description = LocalizedText("Causes the Program to transition from the Suspended state to the Running state.") attrs.DisplayName = LocalizedText("Resume") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2428, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2418, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2428, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2428, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2429, 0) node.BrowseName = QualifiedName('Halt', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.Description = LocalizedText("Causes the Program to transition from the Ready, Running or Suspended state to the Halted state.") attrs.DisplayName = LocalizedText("Halt") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2412, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2420, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2424, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2430, 0) node.BrowseName = QualifiedName('Reset', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2391, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.Description = LocalizedText("Causes the Program to transition from the Halted state to the Ready state.") attrs.DisplayName = LocalizedText("Reset") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2430, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2408, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2430, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2430, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2391, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2378, 0) node.BrowseName = QualifiedName('ProgramTransitionEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2311, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ProgramTransitionEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2379, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2311, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2379, 0) node.BrowseName = QualifiedName('IntermediateResult', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2378, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("IntermediateResult") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2378, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11856, 0) node.BrowseName = QualifiedName('AuditProgramTransitionEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2315, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditProgramTransitionEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11856, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11875, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11856, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2315, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11875, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11856, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11856, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3806, 0) node.BrowseName = QualifiedName('ProgramTransitionAuditEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2315, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ProgramTransitionAuditEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3806, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3825, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3806, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2315, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3825, 0) node.BrowseName = QualifiedName('Transition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3806, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2767, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Transition") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3826, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2767, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3806, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3826, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3825, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3825, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2380, 0) node.BrowseName = QualifiedName('ProgramDiagnosticType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnosticType") attrs.DisplayName = LocalizedText("ProgramDiagnosticType") attrs.DataType = NumericNodeId(894, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2381, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2382, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2383, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2384, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2385, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2386, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2387, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2388, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2389, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2390, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2381, 0) node.BrowseName = QualifiedName('CreateSessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateSessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2382, 0) node.BrowseName = QualifiedName('CreateClientName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateClientName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2383, 0) node.BrowseName = QualifiedName('InvocationCreationTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InvocationCreationTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2384, 0) node.BrowseName = QualifiedName('LastTransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2385, 0) node.BrowseName = QualifiedName('LastMethodCall', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodCall") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2386, 0) node.BrowseName = QualifiedName('LastMethodSessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodSessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2387, 0) node.BrowseName = QualifiedName('LastMethodInputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodInputArguments") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2388, 0) node.BrowseName = QualifiedName('LastMethodOutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodOutputArguments") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2389, 0) node.BrowseName = QualifiedName('LastMethodCallTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodCallTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2390, 0) node.BrowseName = QualifiedName('LastMethodReturnStatus', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodReturnStatus") attrs.DataType = ua.NodeId(ua.ObjectIds.StatusCode) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15383, 0) node.BrowseName = QualifiedName('ProgramDiagnostic2Type', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnostic2Type") attrs.DisplayName = LocalizedText("ProgramDiagnostic2Type") attrs.DataType = NumericNodeId(15396, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15384, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15385, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15386, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15387, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15388, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15389, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15390, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15391, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15392, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15393, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15394, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15395, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15384, 0) node.BrowseName = QualifiedName('CreateSessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateSessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15385, 0) node.BrowseName = QualifiedName('CreateClientName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateClientName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15386, 0) node.BrowseName = QualifiedName('InvocationCreationTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InvocationCreationTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15387, 0) node.BrowseName = QualifiedName('LastTransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15388, 0) node.BrowseName = QualifiedName('LastMethodCall', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodCall") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15389, 0) node.BrowseName = QualifiedName('LastMethodSessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodSessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15390, 0) node.BrowseName = QualifiedName('LastMethodInputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodInputArguments") attrs.DataType = NumericNodeId(296, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15391, 0) node.BrowseName = QualifiedName('LastMethodOutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodOutputArguments") attrs.DataType = NumericNodeId(296, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15392, 0) node.BrowseName = QualifiedName('LastMethodInputValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodInputValues") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15393, 0) node.BrowseName = QualifiedName('LastMethodOutputValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodOutputValues") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15394, 0) node.BrowseName = QualifiedName('LastMethodCallTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodCallTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15395, 0) node.BrowseName = QualifiedName('LastMethodReturnStatus', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15383, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastMethodReturnStatus") attrs.DataType = ua.NodeId(ua.ObjectIds.StatusCode) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15383, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(894, 0) node.BrowseName = QualifiedName('ProgramDiagnosticDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnosticDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(894, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15396, 0) node.BrowseName = QualifiedName('ProgramDiagnostic2DataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnostic2DataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(896, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(894, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(896, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(894, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(896, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8247, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(896, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15397, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15396, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15396, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(15397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15398, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(895, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(894, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(894, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8882, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15401, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15396, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15396, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(15401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15381, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(894, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(894, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15405, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15396, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15405, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15396, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15405, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part11.py000066400000000000000000003642621357637245100316200ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part11(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(56, 0) node.BrowseName = QualifiedName('HasHistoricalConfiguration', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(44, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for a reference to the historical configuration for a data variable.") attrs.DisplayName = LocalizedText("HasHistoricalConfiguration") attrs.InverseName = LocalizedText("HistoricalConfigurationOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(56, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(44, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11192, 0) node.BrowseName = QualifiedName('HistoryServerCapabilities', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2330, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("HistoryServerCapabilities") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11193, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11242, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11273, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11274, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11196, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11197, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11198, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11199, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11200, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11281, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11282, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11283, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11502, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11275, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11201, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11193, 0) node.BrowseName = QualifiedName('AccessHistoryDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AccessHistoryDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11193, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11193, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11242, 0) node.BrowseName = QualifiedName('AccessHistoryEventsCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AccessHistoryEventsCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11273, 0) node.BrowseName = QualifiedName('MaxReturnDataValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxReturnDataValues") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11273, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11273, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11274, 0) node.BrowseName = QualifiedName('MaxReturnEventValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxReturnEventValues") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11196, 0) node.BrowseName = QualifiedName('InsertDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InsertDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11196, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11196, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11197, 0) node.BrowseName = QualifiedName('ReplaceDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReplaceDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11198, 0) node.BrowseName = QualifiedName('UpdateDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UpdateDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11199, 0) node.BrowseName = QualifiedName('DeleteRawCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteRawCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11200, 0) node.BrowseName = QualifiedName('DeleteAtTimeCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteAtTimeCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11200, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11200, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11281, 0) node.BrowseName = QualifiedName('InsertEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InsertEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11281, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11281, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11282, 0) node.BrowseName = QualifiedName('ReplaceEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReplaceEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11282, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11282, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11283, 0) node.BrowseName = QualifiedName('UpdateEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UpdateEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11283, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11283, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11502, 0) node.BrowseName = QualifiedName('DeleteEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11502, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11502, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11275, 0) node.BrowseName = QualifiedName('InsertAnnotationCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InsertAnnotationCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11201, 0) node.BrowseName = QualifiedName('AggregateFunctions', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11192, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("AggregateFunctions") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11192, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11214, 0) node.BrowseName = QualifiedName('Annotations', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Annotations") attrs.DataType = NumericNodeId(891, 0) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2318, 0) node.BrowseName = QualifiedName('HistoricalDataConfigurationType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("HistoricalDataConfigurationType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3059, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11876, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2323, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2324, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2325, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2326, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2327, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2328, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11499, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11500, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3059, 0) node.BrowseName = QualifiedName('AggregateConfiguration', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11187, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("AggregateConfiguration") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11168, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11169, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11170, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11187, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11168, 0) node.BrowseName = QualifiedName('TreatUncertainAsBad', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3059, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TreatUncertainAsBad") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3059, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11169, 0) node.BrowseName = QualifiedName('PercentDataBad', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3059, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PercentDataBad") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3059, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11170, 0) node.BrowseName = QualifiedName('PercentDataGood', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3059, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PercentDataGood") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3059, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11171, 0) node.BrowseName = QualifiedName('UseSlopedExtrapolation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3059, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UseSlopedExtrapolation") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3059, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11876, 0) node.BrowseName = QualifiedName('AggregateFunctions', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("AggregateFunctions") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2323, 0) node.BrowseName = QualifiedName('Stepped', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Stepped") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2324, 0) node.BrowseName = QualifiedName('Definition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Definition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2325, 0) node.BrowseName = QualifiedName('MaxTimeInterval', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxTimeInterval") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2326, 0) node.BrowseName = QualifiedName('MinTimeInterval', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MinTimeInterval") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2327, 0) node.BrowseName = QualifiedName('ExceptionDeviation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ExceptionDeviation") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2328, 0) node.BrowseName = QualifiedName('ExceptionDeviationFormat', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ExceptionDeviationFormat") attrs.DataType = NumericNodeId(890, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2328, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2328, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2328, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11499, 0) node.BrowseName = QualifiedName('StartOfArchive', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StartOfArchive") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11499, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11499, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11499, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11500, 0) node.BrowseName = QualifiedName('StartOfOnlineArchive', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2318, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StartOfOnlineArchive") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11500, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11500, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11500, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11202, 0) node.BrowseName = QualifiedName('HA Configuration', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2318, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("HA Configuration") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11203, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11208, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11203, 0) node.BrowseName = QualifiedName('AggregateConfiguration', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11202, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11187, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("AggregateConfiguration") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11204, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11205, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11206, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11207, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11187, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11202, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11204, 0) node.BrowseName = QualifiedName('TreatUncertainAsBad', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11203, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TreatUncertainAsBad") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11203, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11205, 0) node.BrowseName = QualifiedName('PercentDataBad', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11203, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PercentDataBad") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11203, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11206, 0) node.BrowseName = QualifiedName('PercentDataGood', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11203, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PercentDataGood") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11203, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11207, 0) node.BrowseName = QualifiedName('UseSlopedExtrapolation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11203, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UseSlopedExtrapolation") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11203, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11208, 0) node.BrowseName = QualifiedName('Stepped', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11202, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Stepped") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11202, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11215, 0) node.BrowseName = QualifiedName('HistoricalEventFilter', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoricalEventFilter") attrs.DataType = NumericNodeId(725, 0) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2330, 0) node.BrowseName = QualifiedName('HistoryServerCapabilitiesType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("HistoryServerCapabilitiesType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2331, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2332, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11268, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11269, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2334, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2335, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2336, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2337, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2338, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11278, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11279, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11280, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11501, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11270, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2331, 0) node.BrowseName = QualifiedName('AccessHistoryDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AccessHistoryDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2332, 0) node.BrowseName = QualifiedName('AccessHistoryEventsCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AccessHistoryEventsCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11268, 0) node.BrowseName = QualifiedName('MaxReturnDataValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxReturnDataValues") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11269, 0) node.BrowseName = QualifiedName('MaxReturnEventValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxReturnEventValues") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11269, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11269, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11269, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2334, 0) node.BrowseName = QualifiedName('InsertDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InsertDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2334, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2334, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2334, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2335, 0) node.BrowseName = QualifiedName('ReplaceDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReplaceDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2336, 0) node.BrowseName = QualifiedName('UpdateDataCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UpdateDataCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2336, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2336, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2336, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2337, 0) node.BrowseName = QualifiedName('DeleteRawCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteRawCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2338, 0) node.BrowseName = QualifiedName('DeleteAtTimeCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteAtTimeCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11278, 0) node.BrowseName = QualifiedName('InsertEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InsertEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11279, 0) node.BrowseName = QualifiedName('ReplaceEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReplaceEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11280, 0) node.BrowseName = QualifiedName('UpdateEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UpdateEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11280, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11280, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11280, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11501, 0) node.BrowseName = QualifiedName('DeleteEventCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteEventCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11501, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11501, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11501, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11270, 0) node.BrowseName = QualifiedName('InsertAnnotationCapability', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InsertAnnotationCapability") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11270, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11270, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11270, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11172, 0) node.BrowseName = QualifiedName('AggregateFunctions', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2330, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("AggregateFunctions") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2330, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2999, 0) node.BrowseName = QualifiedName('AuditHistoryEventUpdateEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2104, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditHistoryEventUpdateEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3025, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3028, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3003, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3029, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3030, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2104, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3025, 0) node.BrowseName = QualifiedName('UpdatedNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2999, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UpdatedNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2999, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3028, 0) node.BrowseName = QualifiedName('PerformInsertReplace', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2999, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PerformInsertReplace") attrs.DataType = NumericNodeId(11293, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2999, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3003, 0) node.BrowseName = QualifiedName('Filter', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2999, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Filter") attrs.DataType = NumericNodeId(725, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2999, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3029, 0) node.BrowseName = QualifiedName('NewValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2999, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NewValues") attrs.DataType = NumericNodeId(920, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2999, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3030, 0) node.BrowseName = QualifiedName('OldValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2999, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OldValues") attrs.DataType = NumericNodeId(920, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2999, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3006, 0) node.BrowseName = QualifiedName('AuditHistoryValueUpdateEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2104, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditHistoryValueUpdateEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3026, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3031, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3032, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3033, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2104, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3026, 0) node.BrowseName = QualifiedName('UpdatedNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3006, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UpdatedNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3006, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3031, 0) node.BrowseName = QualifiedName('PerformInsertReplace', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3006, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PerformInsertReplace") attrs.DataType = NumericNodeId(11293, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3006, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3032, 0) node.BrowseName = QualifiedName('NewValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3006, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NewValues") attrs.DataType = NumericNodeId(23, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3006, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3033, 0) node.BrowseName = QualifiedName('OldValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3006, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OldValues") attrs.DataType = NumericNodeId(23, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3006, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3012, 0) node.BrowseName = QualifiedName('AuditHistoryDeleteEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2104, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditHistoryDeleteEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3027, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2104, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3027, 0) node.BrowseName = QualifiedName('UpdatedNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3012, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UpdatedNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3012, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3014, 0) node.BrowseName = QualifiedName('AuditHistoryRawModifyDeleteEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(3012, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditHistoryRawModifyDeleteEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3015, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3016, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3017, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3034, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3012, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3015, 0) node.BrowseName = QualifiedName('IsDeleteModified', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3014, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("IsDeleteModified") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3015, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3015, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3015, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3014, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3016, 0) node.BrowseName = QualifiedName('StartTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3014, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StartTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3014, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3017, 0) node.BrowseName = QualifiedName('EndTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3014, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3014, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3034, 0) node.BrowseName = QualifiedName('OldValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3014, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OldValues") attrs.DataType = NumericNodeId(23, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3014, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3019, 0) node.BrowseName = QualifiedName('AuditHistoryAtTimeDeleteEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(3012, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditHistoryAtTimeDeleteEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3020, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3021, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3012, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3020, 0) node.BrowseName = QualifiedName('ReqTimes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3019, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReqTimes") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3019, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3021, 0) node.BrowseName = QualifiedName('OldValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3019, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OldValues") attrs.DataType = NumericNodeId(23, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3019, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3022, 0) node.BrowseName = QualifiedName('AuditHistoryEventDeleteEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(3012, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditHistoryEventDeleteEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3023, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3024, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3012, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3023, 0) node.BrowseName = QualifiedName('EventIds', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3022, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EventIds") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3022, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3024, 0) node.BrowseName = QualifiedName('OldValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3022, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OldValues") attrs.DataType = NumericNodeId(920, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3022, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(891, 0) node.BrowseName = QualifiedName('Annotation', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("Annotation") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(890, 0) node.BrowseName = QualifiedName('ExceptionDeviationFormat', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ExceptionDeviationFormat") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(890, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7614, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(890, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7614, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(890, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('AbsoluteValue'),LocalizedText('PercentOfValue'),LocalizedText('PercentOfRange'),LocalizedText('PercentOfEURange'),LocalizedText('Unknown')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7614, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7614, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7614, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(890, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(893, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(891, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8244, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(892, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(891, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8879, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15382, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(891, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part13.py000066400000000000000000001140521357637245100316100ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part13(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11187, 0) node.BrowseName = QualifiedName('AggregateConfigurationType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AggregateConfigurationType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11188, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11189, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11190, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11191, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11188, 0) node.BrowseName = QualifiedName('TreatUncertainAsBad', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11187, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TreatUncertainAsBad") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11187, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11189, 0) node.BrowseName = QualifiedName('PercentDataBad', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11187, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PercentDataBad") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11187, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11190, 0) node.BrowseName = QualifiedName('PercentDataGood', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11187, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PercentDataGood") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11187, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11191, 0) node.BrowseName = QualifiedName('UseSlopedExtrapolation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11187, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UseSlopedExtrapolation") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11187, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2341, 0) node.BrowseName = QualifiedName('Interpolative', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("At the beginning of each interval, retrieve the calculated value from the data points on either side of the requested timestamp.") attrs.DisplayName = LocalizedText("Interpolative") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2342, 0) node.BrowseName = QualifiedName('Average', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the average value of the data over the interval.") attrs.DisplayName = LocalizedText("Average") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2342, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2343, 0) node.BrowseName = QualifiedName('TimeAverage', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the time weighted average data over the interval using Interpolated Bounding Values.") attrs.DisplayName = LocalizedText("TimeAverage") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2343, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11285, 0) node.BrowseName = QualifiedName('TimeAverage2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the time weighted average data over the interval using Simple Bounding Values.") attrs.DisplayName = LocalizedText("TimeAverage2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2344, 0) node.BrowseName = QualifiedName('Total', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the total (time integral) of the data over the interval using Interpolated Bounding Values.") attrs.DisplayName = LocalizedText("Total") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2344, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11304, 0) node.BrowseName = QualifiedName('Total2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the total (time integral) of the data over the interval using Simple Bounding Values.") attrs.DisplayName = LocalizedText("Total2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11304, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2346, 0) node.BrowseName = QualifiedName('Minimum', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the minimum raw value in the interval with the timestamp of the start of the interval.") attrs.DisplayName = LocalizedText("Minimum") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2346, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2347, 0) node.BrowseName = QualifiedName('Maximum', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the maximum raw value in the interval with the timestamp of the start of the interval.") attrs.DisplayName = LocalizedText("Maximum") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2347, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2348, 0) node.BrowseName = QualifiedName('MinimumActualTime', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the minimum value in the interval and the Timestamp of the minimum value.") attrs.DisplayName = LocalizedText("MinimumActualTime") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2348, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2349, 0) node.BrowseName = QualifiedName('MaximumActualTime', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the maximum value in the interval and the Timestamp of the maximum value.") attrs.DisplayName = LocalizedText("MaximumActualTime") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2349, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2350, 0) node.BrowseName = QualifiedName('Range', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the difference between the minimum and maximum Value over the interval.") attrs.DisplayName = LocalizedText("Range") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2350, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11286, 0) node.BrowseName = QualifiedName('Minimum2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the minimum value in the interval including the Simple Bounding Values.") attrs.DisplayName = LocalizedText("Minimum2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11286, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11287, 0) node.BrowseName = QualifiedName('Maximum2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the maximum value in the interval including the Simple Bounding Values.") attrs.DisplayName = LocalizedText("Maximum2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11287, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11305, 0) node.BrowseName = QualifiedName('MinimumActualTime2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the minimum value with the actual timestamp including the Simple Bounding Values.") attrs.DisplayName = LocalizedText("MinimumActualTime2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11305, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11306, 0) node.BrowseName = QualifiedName('MaximumActualTime2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the maximum value with the actual timestamp including the Simple Bounding Values.") attrs.DisplayName = LocalizedText("MaximumActualTime2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11306, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11288, 0) node.BrowseName = QualifiedName('Range2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the difference between the Minimum2 and Maximum2 value over the interval.") attrs.DisplayName = LocalizedText("Range2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2351, 0) node.BrowseName = QualifiedName('AnnotationCount', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the number of Annotations in the interval.") attrs.DisplayName = LocalizedText("AnnotationCount") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2351, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2352, 0) node.BrowseName = QualifiedName('Count', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the number of raw values over the interval.") attrs.DisplayName = LocalizedText("Count") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2352, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11307, 0) node.BrowseName = QualifiedName('DurationInStateZero', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the time a Boolean or numeric was in a zero state using Simple Bounding Values.") attrs.DisplayName = LocalizedText("DurationInStateZero") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11307, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11308, 0) node.BrowseName = QualifiedName('DurationInStateNonZero', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the time a Boolean or numeric was in a non-zero state using Simple Bounding Values.") attrs.DisplayName = LocalizedText("DurationInStateNonZero") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11308, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2355, 0) node.BrowseName = QualifiedName('NumberOfTransitions', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the number of changes between zero and non-zero that a Boolean or Numeric value experienced in the interval.") attrs.DisplayName = LocalizedText("NumberOfTransitions") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2355, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2357, 0) node.BrowseName = QualifiedName('Start', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the value at the beginning of the interval using Interpolated Bounding Values.") attrs.DisplayName = LocalizedText("Start") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2357, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2358, 0) node.BrowseName = QualifiedName('End', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the value at the end of the interval using Interpolated Bounding Values.") attrs.DisplayName = LocalizedText("End") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2358, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2359, 0) node.BrowseName = QualifiedName('Delta', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the difference between the Start and End value in the interval.") attrs.DisplayName = LocalizedText("Delta") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2359, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11505, 0) node.BrowseName = QualifiedName('StartBound', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the value at the beginning of the interval using Simple Bounding Values.") attrs.DisplayName = LocalizedText("StartBound") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11505, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11506, 0) node.BrowseName = QualifiedName('EndBound', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the value at the end of the interval using Simple Bounding Values.") attrs.DisplayName = LocalizedText("EndBound") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11506, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11507, 0) node.BrowseName = QualifiedName('DeltaBounds', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the difference between the StartBound and EndBound value in the interval.") attrs.DisplayName = LocalizedText("DeltaBounds") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11507, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2360, 0) node.BrowseName = QualifiedName('DurationGood', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the total duration of time in the interval during which the data is good.") attrs.DisplayName = LocalizedText("DurationGood") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2360, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2361, 0) node.BrowseName = QualifiedName('DurationBad', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the total duration of time in the interval during which the data is bad.") attrs.DisplayName = LocalizedText("DurationBad") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2361, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2362, 0) node.BrowseName = QualifiedName('PercentGood', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the percent of data (0 to 100) in the interval which has a good StatusCode.") attrs.DisplayName = LocalizedText("PercentGood") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2362, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2363, 0) node.BrowseName = QualifiedName('PercentBad', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the percent of data (0 to 100) in the interval which has a bad StatusCode.") attrs.DisplayName = LocalizedText("PercentBad") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2364, 0) node.BrowseName = QualifiedName('WorstQuality', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the worst StatusCode of data in the interval.") attrs.DisplayName = LocalizedText("WorstQuality") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11292, 0) node.BrowseName = QualifiedName('WorstQuality2', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the worst StatusCode of data in the interval including the Simple Bounding Values.") attrs.DisplayName = LocalizedText("WorstQuality2") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11292, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11426, 0) node.BrowseName = QualifiedName('StandardDeviationSample', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the standard deviation for the interval for a sample of the population (n-1).") attrs.DisplayName = LocalizedText("StandardDeviationSample") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11426, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11427, 0) node.BrowseName = QualifiedName('StandardDeviationPopulation', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the standard deviation for the interval for a complete population (n) which includes Simple Bounding Values.") attrs.DisplayName = LocalizedText("StandardDeviationPopulation") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11427, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11428, 0) node.BrowseName = QualifiedName('VarianceSample', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the variance for the interval as calculated by the StandardDeviationSample.") attrs.DisplayName = LocalizedText("VarianceSample") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11428, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11429, 0) node.BrowseName = QualifiedName('VariancePopulation', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(2340, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Retrieve the variance for the interval as calculated by the StandardDeviationPopulation which includes Simple Bounding Values.") attrs.DisplayName = LocalizedText("VariancePopulation") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2340, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part3.py000066400000000000000000004237631357637245100315430ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part3(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3062, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(58, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The default binary encoding for a data type.") attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3063, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(58, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The default XML encoding for a data type.") attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(24, 0) node.BrowseName = QualifiedName('BaseDataType', 0) node.NodeClass = NodeClass.DataType attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that can have any valid DataType.") attrs.DisplayName = LocalizedText("BaseDataType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(26, 0) node.BrowseName = QualifiedName('Number', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that can have any numeric DataType.") attrs.DisplayName = LocalizedText("Number") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(26, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(27, 0) node.BrowseName = QualifiedName('Integer', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(26, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that can have any integer DataType.") attrs.DisplayName = LocalizedText("Integer") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(27, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(26, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(28, 0) node.BrowseName = QualifiedName('UInteger', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(26, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that can have any unsigned integer DataType.") attrs.DisplayName = LocalizedText("UInteger") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(28, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(26, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(29, 0) node.BrowseName = QualifiedName('Enumeration', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an enumerated DataType.") attrs.DisplayName = LocalizedText("Enumeration") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(29, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(1, 0) node.BrowseName = QualifiedName('Boolean', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is either TRUE or FALSE.") attrs.DisplayName = LocalizedText("Boolean") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(1, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2, 0) node.BrowseName = QualifiedName('SByte', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(27, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between -128 and 127.") attrs.DisplayName = LocalizedText("SByte") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(27, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3, 0) node.BrowseName = QualifiedName('Byte', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(28, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between 0 and 255.") attrs.DisplayName = LocalizedText("Byte") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(28, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(4, 0) node.BrowseName = QualifiedName('Int16', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(27, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between −32,768 and 32,767.") attrs.DisplayName = LocalizedText("Int16") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(4, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(27, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(5, 0) node.BrowseName = QualifiedName('UInt16', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(28, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between 0 and 65535.") attrs.DisplayName = LocalizedText("UInt16") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(5, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(28, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(6, 0) node.BrowseName = QualifiedName('Int32', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(27, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between −2,147,483,648 and 2,147,483,647.") attrs.DisplayName = LocalizedText("Int32") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(6, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(27, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7, 0) node.BrowseName = QualifiedName('UInt32', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(28, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between 0 and 4,294,967,295.") attrs.DisplayName = LocalizedText("UInt32") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(7, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(28, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8, 0) node.BrowseName = QualifiedName('Int64', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(27, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between −9,223,372,036,854,775,808 and 9,223,372,036,854,775,807.") attrs.DisplayName = LocalizedText("Int64") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(8, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(27, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9, 0) node.BrowseName = QualifiedName('UInt64', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(28, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an integer between 0 and 18,446,744,073,709,551,615.") attrs.DisplayName = LocalizedText("UInt64") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(28, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10, 0) node.BrowseName = QualifiedName('Float', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(26, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an IEEE 754-1985 single precision floating point number.") attrs.DisplayName = LocalizedText("Float") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(10, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(26, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11, 0) node.BrowseName = QualifiedName('Double', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(26, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an IEEE 754-1985 double precision floating point number.") attrs.DisplayName = LocalizedText("Double") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(26, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12, 0) node.BrowseName = QualifiedName('String', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a sequence of printable Unicode characters.") attrs.DisplayName = LocalizedText("String") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13, 0) node.BrowseName = QualifiedName('DateTime', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a Gregorian calender date and time.") attrs.DisplayName = LocalizedText("DateTime") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(13, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14, 0) node.BrowseName = QualifiedName('Guid', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a 128-bit globally unique identifier.") attrs.DisplayName = LocalizedText("Guid") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(14, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15, 0) node.BrowseName = QualifiedName('ByteString', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a sequence of bytes.") attrs.DisplayName = LocalizedText("ByteString") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16, 0) node.BrowseName = QualifiedName('XmlElement', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an XML element.") attrs.DisplayName = LocalizedText("XmlElement") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(16, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17, 0) node.BrowseName = QualifiedName('NodeId', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an identifier for a node within a Server address space.") attrs.DisplayName = LocalizedText("NodeId") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(20, 0) node.BrowseName = QualifiedName('QualifiedName', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a name qualified by a namespace.") attrs.DisplayName = LocalizedText("QualifiedName") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(20, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21, 0) node.BrowseName = QualifiedName('LocalizedText', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is human readable Unicode text with a locale identifier.") attrs.DisplayName = LocalizedText("LocalizedText") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(21, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(22, 0) node.BrowseName = QualifiedName('Structure', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is any type of structure that can be described with a data encoding.") attrs.DisplayName = LocalizedText("Structure") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(22, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(30, 0) node.BrowseName = QualifiedName('Image', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(15, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an image encoded as a string of bytes.") attrs.DisplayName = LocalizedText("Image") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(30, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(50, 0) node.BrowseName = QualifiedName('Decimal', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(26, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes an arbitrary precision decimal value.") attrs.DisplayName = LocalizedText("Decimal") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(50, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(26, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(31, 0) node.BrowseName = QualifiedName('References', 0) node.NodeClass = NodeClass.ReferenceType attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The abstract base type for all references.") attrs.DisplayName = LocalizedText("References") attrs.IsAbstract = True attrs.Symmetric = True node.NodeAttributes = attrs server.add_nodes([node]) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(32, 0) node.BrowseName = QualifiedName('NonHierarchicalReferences', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(31, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The abstract base type for all non-hierarchical references.") attrs.DisplayName = LocalizedText("NonHierarchicalReferences") attrs.InverseName = LocalizedText("NonHierarchicalReferences") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(32, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(31, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(33, 0) node.BrowseName = QualifiedName('HierarchicalReferences', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(31, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The abstract base type for all hierarchical references.") attrs.DisplayName = LocalizedText("HierarchicalReferences") attrs.InverseName = LocalizedText("HierarchicalReferences") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(33, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(31, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(34, 0) node.BrowseName = QualifiedName('HasChild', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(33, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The abstract base type for all non-looping hierarchical references.") attrs.DisplayName = LocalizedText("HasChild") attrs.InverseName = LocalizedText("ChildOf") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(34, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(33, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(35, 0) node.BrowseName = QualifiedName('Organizes', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(33, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for hierarchical references that are used to organize nodes.") attrs.DisplayName = LocalizedText("Organizes") attrs.InverseName = LocalizedText("OrganizedBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(35, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(33, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(36, 0) node.BrowseName = QualifiedName('HasEventSource', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(33, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for non-looping hierarchical references that are used to organize event sources.") attrs.DisplayName = LocalizedText("HasEventSource") attrs.InverseName = LocalizedText("EventSourceOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(36, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(33, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(37, 0) node.BrowseName = QualifiedName('HasModellingRule', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for references from instance declarations to modelling rule nodes.") attrs.DisplayName = LocalizedText("HasModellingRule") attrs.InverseName = LocalizedText("ModellingRuleOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(37, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(38, 0) node.BrowseName = QualifiedName('HasEncoding', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for references from data type nodes to to data type encoding nodes.") attrs.DisplayName = LocalizedText("HasEncoding") attrs.InverseName = LocalizedText("EncodingOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(38, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(39, 0) node.BrowseName = QualifiedName('HasDescription', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for references from data type encoding nodes to data type description nodes.") attrs.DisplayName = LocalizedText("HasDescription") attrs.InverseName = LocalizedText("DescriptionOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(39, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(40, 0) node.BrowseName = QualifiedName('HasTypeDefinition', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for references from a instance node its type defintion node.") attrs.DisplayName = LocalizedText("HasTypeDefinition") attrs.InverseName = LocalizedText("TypeDefinitionOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(40, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(41, 0) node.BrowseName = QualifiedName('GeneratesEvent', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for references from a node to an event type that is raised by node.") attrs.DisplayName = LocalizedText("GeneratesEvent") attrs.InverseName = LocalizedText("GeneratedBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(41, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3065, 0) node.BrowseName = QualifiedName('AlwaysGeneratesEvent', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(41, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for references from a node to an event type that is always raised by node.") attrs.DisplayName = LocalizedText("AlwaysGeneratesEvent") attrs.InverseName = LocalizedText("AlwaysGeneratedBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(41, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(44, 0) node.BrowseName = QualifiedName('Aggregates', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(34, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for non-looping hierarchical references that are used to aggregate nodes into complex types.") attrs.DisplayName = LocalizedText("Aggregates") attrs.InverseName = LocalizedText("AggregatedBy") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(44, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(34, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(45, 0) node.BrowseName = QualifiedName('HasSubtype', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(34, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for non-looping hierarchical references that are used to define sub types.") attrs.DisplayName = LocalizedText("HasSubtype") attrs.InverseName = LocalizedText("SubtypeOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(45, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(34, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(46, 0) node.BrowseName = QualifiedName('HasProperty', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(44, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for non-looping hierarchical reference from a node to its property.") attrs.DisplayName = LocalizedText("HasProperty") attrs.InverseName = LocalizedText("PropertyOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(46, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(44, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(47, 0) node.BrowseName = QualifiedName('HasComponent', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(44, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for non-looping hierarchical reference from a node to its component.") attrs.DisplayName = LocalizedText("HasComponent") attrs.InverseName = LocalizedText("ComponentOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(47, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(44, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(48, 0) node.BrowseName = QualifiedName('HasNotifier', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(36, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for non-looping hierarchical references that are used to indicate how events propagate from node to node.") attrs.DisplayName = LocalizedText("HasNotifier") attrs.InverseName = LocalizedText("NotifierOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(48, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(36, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(49, 0) node.BrowseName = QualifiedName('HasOrderedComponent', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(47, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for non-looping hierarchical reference from a node to its component when the order of references matters.") attrs.DisplayName = LocalizedText("HasOrderedComponent") attrs.InverseName = LocalizedText("OrderedComponentOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(49, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(47, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(120, 0) node.BrowseName = QualifiedName('NamingRuleType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that specifies the significance of the BrowseName for an instance declaration.") attrs.DisplayName = LocalizedText("NamingRuleType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12169, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12169, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(120, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) value = [] extobj = ua.EnumValueType() extobj.Value = 1 extobj.DisplayName.Text = 'Mandatory' extobj.Description.Text = 'The BrowseName must appear in all instances of the type.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2 extobj.DisplayName.Text = 'Optional' extobj.Description.Text = 'The BrowseName may appear in an instance of the type.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 3 extobj.DisplayName.Text = 'Constraint' extobj.Description.Text = 'The modelling rule defines a constraint and the BrowseName is not used in an instance of the type.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(120, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3068, 0) node.BrowseName = QualifiedName('NodeVersion', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The version number of the node (used to indicate changes to references of the owning node).") attrs.DisplayName = LocalizedText("NodeVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12170, 0) node.BrowseName = QualifiedName('ViewVersion', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The version number of the view.") attrs.DisplayName = LocalizedText("ViewVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3067, 0) node.BrowseName = QualifiedName('Icon', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A small image representing the object.") attrs.DisplayName = LocalizedText("Icon") attrs.DataType = NumericNodeId(30, 0) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3069, 0) node.BrowseName = QualifiedName('LocalTime', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The local time where the owning variable value was collected.") attrs.DisplayName = LocalizedText("LocalTime") attrs.DataType = NumericNodeId(8912, 0) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3069, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3070, 0) node.BrowseName = QualifiedName('AllowNulls', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Whether the value of the owning variable is allowed to be null.") attrs.DisplayName = LocalizedText("AllowNulls") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3070, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11433, 0) node.BrowseName = QualifiedName('ValueAsText', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The string representation of the current value for a variable with an enumerated data type.") attrs.DisplayName = LocalizedText("ValueAsText") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11433, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11498, 0) node.BrowseName = QualifiedName('MaxStringLength', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of bytes supported by the DataVariable.") attrs.DisplayName = LocalizedText("MaxStringLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11498, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15002, 0) node.BrowseName = QualifiedName('MaxCharacters', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of Unicode characters supported by the DataVariable.") attrs.DisplayName = LocalizedText("MaxCharacters") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15002, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12908, 0) node.BrowseName = QualifiedName('MaxByteStringLength', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for a byte string that can be stored in the owning variable.") attrs.DisplayName = LocalizedText("MaxByteStringLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12908, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11512, 0) node.BrowseName = QualifiedName('MaxArrayLength', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for an array that can be stored in the owning variable.") attrs.DisplayName = LocalizedText("MaxArrayLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11512, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11513, 0) node.BrowseName = QualifiedName('EngineeringUnits', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The engineering units for the value of the owning variable.") attrs.DisplayName = LocalizedText("EngineeringUnits") attrs.DataType = NumericNodeId(887, 0) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11513, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11432, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The human readable strings associated with the values of an enumerated value (when values are sequential).") attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11432, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3071, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The human readable strings associated with the values of an enumerated value (when values have no sequence).") attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12745, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Contains the human-readable representation for each bit of the bit mask.") attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12745, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3072, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The input arguments for a method.") attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3072, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3073, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The output arguments for a method.") attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16306, 0) node.BrowseName = QualifiedName('DefaultInputValues', 0) node.NodeClass = NodeClass.Variable node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specifies the default values for optional input arguments.") attrs.DisplayName = LocalizedText("DefaultInputValues") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16306, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2000, 0) node.BrowseName = QualifiedName('ImageBMP', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(30, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An image encoded in BMP format.") attrs.DisplayName = LocalizedText("ImageBMP") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2000, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(30, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2001, 0) node.BrowseName = QualifiedName('ImageGIF', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(30, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An image encoded in GIF format.") attrs.DisplayName = LocalizedText("ImageGIF") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(30, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2002, 0) node.BrowseName = QualifiedName('ImageJPG', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(30, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An image encoded in JPEG format.") attrs.DisplayName = LocalizedText("ImageJPG") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2002, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(30, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2003, 0) node.BrowseName = QualifiedName('ImagePNG', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(30, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An image encoded in PNG format.") attrs.DisplayName = LocalizedText("ImagePNG") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(30, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16307, 0) node.BrowseName = QualifiedName('AudioDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(15, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An image encoded in PNG format.") attrs.DisplayName = LocalizedText("AudioDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(16307, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(256, 0) node.BrowseName = QualifiedName('IdType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The type of identifier used in a node id.") attrs.DisplayName = LocalizedText("IdType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7591, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7591, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(256, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Numeric'),LocalizedText('String'),LocalizedText('Guid'),LocalizedText('Opaque')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(257, 0) node.BrowseName = QualifiedName('NodeClass', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A mask specifying the class of the node.") attrs.DisplayName = LocalizedText("NodeClass") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(257, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11878, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(257, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11878, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(257, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) value = [] extobj = ua.EnumValueType() extobj.Value = 0 extobj.DisplayName.Text = 'Unspecified' extobj.Description.Text = 'No classes are selected.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 1 extobj.DisplayName.Text = 'Object' extobj.Description.Text = 'The node is an object.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2 extobj.DisplayName.Text = 'Variable' extobj.Description.Text = 'The node is a variable.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 4 extobj.DisplayName.Text = 'Method' extobj.Description.Text = 'The node is a method.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 8 extobj.DisplayName.Text = 'ObjectType' extobj.Description.Text = 'The node is an object type.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 16 extobj.DisplayName.Text = 'VariableType' extobj.Description.Text = 'The node is an variable type.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 32 extobj.DisplayName.Text = 'ReferenceType' extobj.Description.Text = 'The node is a reference type.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 64 extobj.DisplayName.Text = 'DataType' extobj.Description.Text = 'The node is a data type.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 128 extobj.DisplayName.Text = 'View' extobj.Description.Text = 'The node is a view.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11878, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11878, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11878, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(257, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(94, 0) node.BrowseName = QualifiedName('PermissionType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(5, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("PermissionType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(94, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15030, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(94, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(5, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15030, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(94, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Browse'),LocalizedText('ReadRolePermissions'),LocalizedText('WriteAttribute'),LocalizedText('WriteRolePermissions'),LocalizedText('WriteHistorizing'),LocalizedText('Read'),LocalizedText('Write'),LocalizedText('ReadHistory'),LocalizedText('InsertHistory'),LocalizedText('ModifyHistory'),LocalizedText('DeleteHistory'),LocalizedText('ReceiveEvents'),LocalizedText('Call'),LocalizedText('AddReference'),LocalizedText('RemoveReference'),LocalizedText('DeleteNode'),LocalizedText('AddNode')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(94, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15031, 0) node.BrowseName = QualifiedName('AccessLevelType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(3, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("AccessLevelType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15032, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15032, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15031, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('CurrentRead'),LocalizedText('CurrentWrite'),LocalizedText('HistoryRead'),LocalizedText('Reserved'),LocalizedText('HistoryWrite'),LocalizedText('StatusWrite'),LocalizedText('TimestampWrite')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15406, 0) node.BrowseName = QualifiedName('AccessLevelExType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("AccessLevelExType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15407, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15407, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('CurrentRead'),LocalizedText('CurrentWrite'),LocalizedText('HistoryRead'),LocalizedText('Reserved'),LocalizedText('HistoryWrite'),LocalizedText('StatusWrite'),LocalizedText('TimestampWrite'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('Reserved'),LocalizedText('NonatomicRead'),LocalizedText('NonatomicWrite'),LocalizedText('WriteFullArrayOnly')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15033, 0) node.BrowseName = QualifiedName('EventNotifierType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EventNotifierType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15034, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15034, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15033, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('SubscribeToEvents'),LocalizedText('Reserved'),LocalizedText('HistoryRead'),LocalizedText('HistoryWrite')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15033, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(95, 0) node.BrowseName = QualifiedName('AccessRestrictionType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("AccessRestrictionType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(95, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15035, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(95, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15035, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(95, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('SigningRequired'),LocalizedText('EncryptionRequired'),LocalizedText('SessionRequired')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(95, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(96, 0) node.BrowseName = QualifiedName('RolePermissionType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("RolePermissionType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(96, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(97, 0) node.BrowseName = QualifiedName('DataTypeDefinition', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("DataTypeDefinition") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(97, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(98, 0) node.BrowseName = QualifiedName('StructureType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("StructureType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(98, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14528, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(98, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14528, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(98, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Structure'),LocalizedText('StructureWithOptionalFields'),LocalizedText('Union')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14528, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(14528, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(14528, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(98, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(101, 0) node.BrowseName = QualifiedName('StructureField', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("StructureField") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(99, 0) node.BrowseName = QualifiedName('StructureDefinition', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(97, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("StructureDefinition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(99, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(97, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(100, 0) node.BrowseName = QualifiedName('EnumDefinition', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(97, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EnumDefinition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(97, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(296, 0) node.BrowseName = QualifiedName('Argument', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An argument for a method.") attrs.DisplayName = LocalizedText("Argument") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7594, 0) node.BrowseName = QualifiedName('EnumValueType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A mapping between a value of an enumerated type and a name and description.") attrs.DisplayName = LocalizedText("EnumValueType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(7594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(102, 0) node.BrowseName = QualifiedName('EnumField', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7594, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EnumField") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7594, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12755, 0) node.BrowseName = QualifiedName('OptionSet', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask.") attrs.DisplayName = LocalizedText("OptionSet") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12756, 0) node.BrowseName = QualifiedName('Union', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("This abstract DataType is the base DataType for all union DataTypes.") attrs.DisplayName = LocalizedText("Union") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12756, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12877, 0) node.BrowseName = QualifiedName('NormalizedString', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A string normalized based on the rules in the unicode specification.") attrs.DisplayName = LocalizedText("NormalizedString") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12877, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12878, 0) node.BrowseName = QualifiedName('DecimalString', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An arbitraty numeric value.") attrs.DisplayName = LocalizedText("DecimalString") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12878, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12879, 0) node.BrowseName = QualifiedName('DurationString', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A period of time formatted as defined in ISO 8601-2000.") attrs.DisplayName = LocalizedText("DurationString") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12879, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12880, 0) node.BrowseName = QualifiedName('TimeString', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A time formatted as defined in ISO 8601-2000.") attrs.DisplayName = LocalizedText("TimeString") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12880, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12881, 0) node.BrowseName = QualifiedName('DateString', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A date formatted as defined in ISO 8601-2000.") attrs.DisplayName = LocalizedText("DateString") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(290, 0) node.BrowseName = QualifiedName('Duration', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(11, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A period of time measured in milliseconds.") attrs.DisplayName = LocalizedText("Duration") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(290, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(294, 0) node.BrowseName = QualifiedName('UtcTime', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(13, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A date/time value specified in Universal Coordinated Time (UTC).") attrs.DisplayName = LocalizedText("UtcTime") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(294, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(295, 0) node.BrowseName = QualifiedName('LocaleId', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An identifier for a user locale.") attrs.DisplayName = LocalizedText("LocaleId") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8912, 0) node.BrowseName = QualifiedName('TimeZoneDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("TimeZoneDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(8912, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(128, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(96, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(96, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16131, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(121, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(97, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(97, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14844, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(101, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18181, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(122, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(99, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(99, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18184, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(123, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(100, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(123, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(100, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(123, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18187, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(123, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(298, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(296, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(298, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(296, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(298, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7650, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(298, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8251, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(7594, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(8251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7594, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(8251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7656, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14845, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(102, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14870, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12765, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12755, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12765, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12755, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12765, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12767, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12765, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12766, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12756, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12756, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12770, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8917, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(8912, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(8917, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8912, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(8917, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8914, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8917, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16126, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(96, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(16126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(96, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(16126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16127, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14797, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(97, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14797, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(97, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14797, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18166, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14797, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14800, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(101, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14800, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14800, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18169, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14800, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14798, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(99, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14798, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(99, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14798, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14798, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14799, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(100, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14799, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(100, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14799, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18175, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14799, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(297, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(296, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(296, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8285, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7616, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(7594, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(7616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7594, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(7616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8291, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14801, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(102, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14801, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14801, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14826, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14801, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12757, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12755, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12757, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12755, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12757, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12759, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12757, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12758, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12756, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12758, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12756, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12758, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12762, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12758, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8913, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(8912, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(8913, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8912, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(8913, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8918, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8913, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15062, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(96, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(96, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15063, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(97, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(97, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15065, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(101, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15066, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(99, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(99, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15067, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(100, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(100, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15081, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(296, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(296, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15082, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(7594, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7594, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15083, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(102, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15084, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12755, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12755, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15085, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12756, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15085, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12756, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15085, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15086, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(8912, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8912, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part4.py000066400000000000000000005564151357637245100315450ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part4(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18, 0) node.BrowseName = QualifiedName('ExpandedNodeId', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is an absolute identifier for a node.") attrs.DisplayName = LocalizedText("ExpandedNodeId") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(18, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(19, 0) node.BrowseName = QualifiedName('StatusCode', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a code representing the outcome of an operation by a Server.") attrs.DisplayName = LocalizedText("StatusCode") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(19, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(23, 0) node.BrowseName = QualifiedName('DataValue', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a structure containing a value, a status code and timestamps.") attrs.DisplayName = LocalizedText("DataValue") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(23, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(25, 0) node.BrowseName = QualifiedName('DiagnosticInfo', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(24, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a value that is a structure containing diagnostics associated with a StatusCode.") attrs.DisplayName = LocalizedText("DiagnosticInfo") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(25, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(288, 0) node.BrowseName = QualifiedName('IntegerId', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A numeric identifier for an object.") attrs.DisplayName = LocalizedText("IntegerId") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(307, 0) node.BrowseName = QualifiedName('ApplicationType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The types of applications.") attrs.DisplayName = LocalizedText("ApplicationType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(307, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7597, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(307, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7597, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(307, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Server'),LocalizedText('Client'),LocalizedText('ClientAndServer'),LocalizedText('DiscoveryServer')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7597, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7597, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7597, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(307, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(308, 0) node.BrowseName = QualifiedName('ApplicationDescription', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes an application and how to find it.") attrs.DisplayName = LocalizedText("ApplicationDescription") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(308, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(20998, 0) node.BrowseName = QualifiedName('VersionTime', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("VersionTime") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(20998, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12189, 0) node.BrowseName = QualifiedName('ServerOnNetwork', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ServerOnNetwork") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(311, 0) node.BrowseName = QualifiedName('ApplicationInstanceCertificate', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(15, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A certificate for an instance of an application.") attrs.DisplayName = LocalizedText("ApplicationInstanceCertificate") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(311, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(302, 0) node.BrowseName = QualifiedName('MessageSecurityMode', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The type of security to use on a message.") attrs.DisplayName = LocalizedText("MessageSecurityMode") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(302, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7595, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(302, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7595, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(302, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Invalid'),LocalizedText('None'),LocalizedText('Sign'),LocalizedText('SignAndEncrypt')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7595, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7595, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7595, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(302, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(303, 0) node.BrowseName = QualifiedName('UserTokenType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The possible user token types.") attrs.DisplayName = LocalizedText("UserTokenType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(303, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7596, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(303, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7596, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(303, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Anonymous'),LocalizedText('UserName'),LocalizedText('Certificate'),LocalizedText('IssuedToken')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7596, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7596, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7596, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(303, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(304, 0) node.BrowseName = QualifiedName('UserTokenPolicy', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Describes a user token that can be used with a server.") attrs.DisplayName = LocalizedText("UserTokenPolicy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(304, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(312, 0) node.BrowseName = QualifiedName('EndpointDescription', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The description of a endpoint that can be used to access a server.") attrs.DisplayName = LocalizedText("EndpointDescription") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(432, 0) node.BrowseName = QualifiedName('RegisteredServer', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The information required to register a server with a discovery server.") attrs.DisplayName = LocalizedText("RegisteredServer") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(432, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12890, 0) node.BrowseName = QualifiedName('DiscoveryConfiguration', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A base type for discovery configuration information.") attrs.DisplayName = LocalizedText("DiscoveryConfiguration") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12890, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12891, 0) node.BrowseName = QualifiedName('MdnsDiscoveryConfiguration', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12890, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The discovery information needed for mDNS registration.") attrs.DisplayName = LocalizedText("MdnsDiscoveryConfiguration") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12890, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(315, 0) node.BrowseName = QualifiedName('SecurityTokenRequestType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Indicates whether a token if being created or renewed.") attrs.DisplayName = LocalizedText("SecurityTokenRequestType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(315, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7598, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(315, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7598, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(315, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Issue'),LocalizedText('Renew')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7598, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7598, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7598, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(315, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(344, 0) node.BrowseName = QualifiedName('SignedSoftwareCertificate', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A software certificate with a digital signature.") attrs.DisplayName = LocalizedText("SignedSoftwareCertificate") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(344, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(388, 0) node.BrowseName = QualifiedName('SessionAuthenticationToken', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(17, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A unique identifier for a session used to authenticate requests.") attrs.DisplayName = LocalizedText("SessionAuthenticationToken") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(316, 0) node.BrowseName = QualifiedName('UserIdentityToken', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A base type for a user identity token.") attrs.DisplayName = LocalizedText("UserIdentityToken") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(316, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(319, 0) node.BrowseName = QualifiedName('AnonymousIdentityToken', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(316, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A token representing an anonymous user.") attrs.DisplayName = LocalizedText("AnonymousIdentityToken") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(319, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(316, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(322, 0) node.BrowseName = QualifiedName('UserNameIdentityToken', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(316, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A token representing a user identified by a user name and password.") attrs.DisplayName = LocalizedText("UserNameIdentityToken") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(322, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(316, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(325, 0) node.BrowseName = QualifiedName('X509IdentityToken', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(316, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A token representing a user identified by an X509 certificate.") attrs.DisplayName = LocalizedText("X509IdentityToken") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(316, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(938, 0) node.BrowseName = QualifiedName('IssuedIdentityToken', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(316, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A token representing a user identified by a WS-Security XML token.") attrs.DisplayName = LocalizedText("IssuedIdentityToken") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(938, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(316, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(348, 0) node.BrowseName = QualifiedName('NodeAttributesMask', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("The bits used to specify default attributes for a new node.") attrs.DisplayName = LocalizedText("NodeAttributesMask") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(348, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11881, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(348, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11881, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(348, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) value = [] extobj = ua.EnumValueType() extobj.Value = 0 extobj.DisplayName.Text = 'None' extobj.Description.Text = 'No attribuites provided.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 1 extobj.DisplayName.Text = 'AccessLevel' extobj.Description.Text = 'The access level attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2 extobj.DisplayName.Text = 'ArrayDimensions' extobj.Description.Text = 'The array dimensions attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 4 extobj.DisplayName.Text = 'BrowseName' extobj.Description.Text = 'The browse name attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 8 extobj.DisplayName.Text = 'ContainsNoLoops' extobj.Description.Text = 'The contains no loops attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 16 extobj.DisplayName.Text = 'DataType' extobj.Description.Text = 'The data type attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 32 extobj.DisplayName.Text = 'Description' extobj.Description.Text = 'The description attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 64 extobj.DisplayName.Text = 'DisplayName' extobj.Description.Text = 'The display name attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 128 extobj.DisplayName.Text = 'EventNotifier' extobj.Description.Text = 'The event notifier attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 256 extobj.DisplayName.Text = 'Executable' extobj.Description.Text = 'The executable attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 512 extobj.DisplayName.Text = 'Historizing' extobj.Description.Text = 'The historizing attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 1024 extobj.DisplayName.Text = 'InverseName' extobj.Description.Text = 'The inverse name attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2048 extobj.DisplayName.Text = 'IsAbstract' extobj.Description.Text = 'The is abstract attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 4096 extobj.DisplayName.Text = 'MinimumSamplingInterval' extobj.Description.Text = 'The minimum sampling interval attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 8192 extobj.DisplayName.Text = 'NodeClass' extobj.Description.Text = 'The node class attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 16384 extobj.DisplayName.Text = 'NodeId' extobj.Description.Text = 'The node id attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 32768 extobj.DisplayName.Text = 'Symmetric' extobj.Description.Text = 'The symmetric attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 65536 extobj.DisplayName.Text = 'UserAccessLevel' extobj.Description.Text = 'The user access level attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 131072 extobj.DisplayName.Text = 'UserExecutable' extobj.Description.Text = 'The user executable attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 262144 extobj.DisplayName.Text = 'UserWriteMask' extobj.Description.Text = 'The user write mask attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 524288 extobj.DisplayName.Text = 'ValueRank' extobj.Description.Text = 'The value rank attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 1048576 extobj.DisplayName.Text = 'WriteMask' extobj.Description.Text = 'The write mask attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2097152 extobj.DisplayName.Text = 'Value' extobj.Description.Text = 'The value attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 4194304 extobj.DisplayName.Text = 'DataTypeDefinition' extobj.Description.Text = 'The write mask attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 8388608 extobj.DisplayName.Text = 'RolePermissions' extobj.Description.Text = 'The write mask attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 16777216 extobj.DisplayName.Text = 'AccessRestrictions' extobj.Description.Text = 'The write mask attribute is specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 33554431 extobj.DisplayName.Text = 'All' extobj.Description.Text = 'All attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 26501220 extobj.DisplayName.Text = 'BaseNode' extobj.Description.Text = 'All base attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 26501348 extobj.DisplayName.Text = 'Object' extobj.Description.Text = 'All object attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 26503268 extobj.DisplayName.Text = 'ObjectType' extobj.Description.Text = 'All object type attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 26571383 extobj.DisplayName.Text = 'Variable' extobj.Description.Text = 'All variable attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 28600438 extobj.DisplayName.Text = 'VariableType' extobj.Description.Text = 'All variable type attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 26632548 extobj.DisplayName.Text = 'Method' extobj.Description.Text = 'All method attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 26537060 extobj.DisplayName.Text = 'ReferenceType' extobj.Description.Text = 'All reference type attributes are specified.' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 26501356 extobj.DisplayName.Text = 'View' extobj.Description.Text = 'All view attributes are specified.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(348, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(376, 0) node.BrowseName = QualifiedName('AddNodesItem', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A request to add a node to the server address space.") attrs.DisplayName = LocalizedText("AddNodesItem") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(379, 0) node.BrowseName = QualifiedName('AddReferencesItem', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A request to add a reference to the server address space.") attrs.DisplayName = LocalizedText("AddReferencesItem") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(382, 0) node.BrowseName = QualifiedName('DeleteNodesItem', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A request to delete a node to the server address space.") attrs.DisplayName = LocalizedText("DeleteNodesItem") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(385, 0) node.BrowseName = QualifiedName('DeleteReferencesItem', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A request to delete a node from the server address space.") attrs.DisplayName = LocalizedText("DeleteReferencesItem") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(347, 0) node.BrowseName = QualifiedName('AttributeWriteMask', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Define bits used to indicate which attributes are writable.") attrs.DisplayName = LocalizedText("AttributeWriteMask") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(347, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15036, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(347, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15036, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(347, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('AccessLevel'),LocalizedText('ArrayDimensions'),LocalizedText('BrowseName'),LocalizedText('ContainsNoLoops'),LocalizedText('DataType'),LocalizedText('Description'),LocalizedText('DisplayName'),LocalizedText('EventNotifier'),LocalizedText('Executable'),LocalizedText('Historizing'),LocalizedText('InverseName'),LocalizedText('IsAbstract'),LocalizedText('MinimumSamplingInterval'),LocalizedText('NodeClass'),LocalizedText('NodeId'),LocalizedText('Symmetric'),LocalizedText('UserAccessLevel'),LocalizedText('UserExecutable'),LocalizedText('UserWriteMask'),LocalizedText('ValueRank'),LocalizedText('WriteMask'),LocalizedText('ValueForVariableType'),LocalizedText('DataTypeDefinition'),LocalizedText('RolePermissions'),LocalizedText('AccessRestrictions'),LocalizedText('AccessLevelEx')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(347, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(521, 0) node.BrowseName = QualifiedName('ContinuationPoint', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(15, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An identifier for a suspended query or browse operation.") attrs.DisplayName = LocalizedText("ContinuationPoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(521, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(537, 0) node.BrowseName = QualifiedName('RelativePathElement', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("An element in a relative path.") attrs.DisplayName = LocalizedText("RelativePathElement") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(537, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(540, 0) node.BrowseName = QualifiedName('RelativePath', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A relative path constructed from reference types and browse names.") attrs.DisplayName = LocalizedText("RelativePath") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(540, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(289, 0) node.BrowseName = QualifiedName('Counter', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(7, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A monotonically increasing value.") attrs.DisplayName = LocalizedText("Counter") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(289, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(291, 0) node.BrowseName = QualifiedName('NumericRange', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("Specifies a range of array indexes.") attrs.DisplayName = LocalizedText("NumericRange") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(291, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(292, 0) node.BrowseName = QualifiedName('Time', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(12, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A time value specified as HH:MM:SS.SSS.") attrs.DisplayName = LocalizedText("Time") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(292, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(293, 0) node.BrowseName = QualifiedName('Date', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(13, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A date value.") attrs.DisplayName = LocalizedText("Date") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(293, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(331, 0) node.BrowseName = QualifiedName('EndpointConfiguration', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EndpointConfiguration") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(576, 0) node.BrowseName = QualifiedName('FilterOperator', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("FilterOperator") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(576, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7605, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(576, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7605, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(576, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Equals'),LocalizedText('IsNull'),LocalizedText('GreaterThan'),LocalizedText('LessThan'),LocalizedText('GreaterThanOrEqual'),LocalizedText('LessThanOrEqual'),LocalizedText('Like'),LocalizedText('Not'),LocalizedText('Between'),LocalizedText('InList'),LocalizedText('And'),LocalizedText('Or'),LocalizedText('Cast'),LocalizedText('InView'),LocalizedText('OfType'),LocalizedText('RelatedTo'),LocalizedText('BitwiseAnd'),LocalizedText('BitwiseOr')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7605, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7605, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7605, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(576, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(583, 0) node.BrowseName = QualifiedName('ContentFilterElement', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ContentFilterElement") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(583, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(586, 0) node.BrowseName = QualifiedName('ContentFilter', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ContentFilter") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(586, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(589, 0) node.BrowseName = QualifiedName('FilterOperand', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("FilterOperand") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(589, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(592, 0) node.BrowseName = QualifiedName('ElementOperand', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(589, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ElementOperand") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(592, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(589, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(595, 0) node.BrowseName = QualifiedName('LiteralOperand', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(589, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("LiteralOperand") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(595, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(589, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(598, 0) node.BrowseName = QualifiedName('AttributeOperand', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(589, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("AttributeOperand") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(598, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(589, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(601, 0) node.BrowseName = QualifiedName('SimpleAttributeOperand', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(589, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("SimpleAttributeOperand") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(601, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(589, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(659, 0) node.BrowseName = QualifiedName('HistoryEvent', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("HistoryEvent") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(659, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11234, 0) node.BrowseName = QualifiedName('HistoryUpdateType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("HistoryUpdateType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11234, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11884, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11234, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11884, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11234, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) value = [] extobj = ua.EnumValueType() extobj.Value = 1 extobj.DisplayName.Text = 'Insert' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2 extobj.DisplayName.Text = 'Replace' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 3 extobj.DisplayName.Text = 'Update' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 4 extobj.DisplayName.Text = 'Delete' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11884, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11884, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11884, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11234, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11293, 0) node.BrowseName = QualifiedName('PerformUpdateType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("PerformUpdateType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11293, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11885, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11293, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11885, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11293, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) value = [] extobj = ua.EnumValueType() extobj.Value = 1 extobj.DisplayName.Text = 'Insert' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2 extobj.DisplayName.Text = 'Replace' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 3 extobj.DisplayName.Text = 'Update' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 4 extobj.DisplayName.Text = 'Remove' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11293, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(719, 0) node.BrowseName = QualifiedName('MonitoringFilter', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("MonitoringFilter") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(719, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(725, 0) node.BrowseName = QualifiedName('EventFilter', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(719, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EventFilter") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(725, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(719, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(948, 0) node.BrowseName = QualifiedName('AggregateConfiguration', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("AggregateConfiguration") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(920, 0) node.BrowseName = QualifiedName('HistoryEventFieldList', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("HistoryEventFieldList") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(920, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(310, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(308, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(310, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(308, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(310, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7665, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(310, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12207, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12189, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12189, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12213, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(306, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(304, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(306, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(304, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(306, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7662, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(306, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(314, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(312, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7668, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(434, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(432, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(434, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(432, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(434, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7782, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(434, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12900, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12890, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12890, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12902, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12901, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12891, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12901, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12901, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12905, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12901, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(346, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(344, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(346, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(344, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(346, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7698, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(346, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(318, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(316, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(316, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7671, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(321, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(319, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(321, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(319, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(321, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7674, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(321, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(324, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(322, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(322, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7677, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(327, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(325, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(325, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7680, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(940, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(938, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(938, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7683, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(378, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(376, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(376, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7728, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(381, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(379, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(379, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7731, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(384, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(382, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(382, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7734, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(387, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(385, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(385, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7737, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(539, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(537, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(539, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(537, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(539, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12718, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(539, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(542, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(540, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(542, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(540, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(542, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12721, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(542, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(333, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(331, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(331, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7686, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(585, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(583, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(583, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7929, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(588, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(586, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(586, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7932, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(591, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(589, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(589, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7935, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(594, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(592, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(592, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7938, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(597, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(595, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(597, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(595, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(597, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7941, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(597, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(600, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(598, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(600, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(598, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(600, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7944, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(600, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(603, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(601, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(603, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(601, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(603, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7947, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(603, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(661, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(659, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(661, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(659, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(661, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8004, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(661, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(721, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(719, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(721, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(719, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(721, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8067, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(721, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(727, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(725, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(727, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(725, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(727, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8073, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(727, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(950, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(948, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(950, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(948, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(950, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8076, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(950, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(922, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(920, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(922, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(920, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(922, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(922, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(309, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(308, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(308, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8300, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12195, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12189, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12189, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12201, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(305, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(304, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(305, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(304, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(305, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8297, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(305, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(313, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(312, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(313, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(313, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8303, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(313, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(433, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(432, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(433, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(432, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(433, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8417, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(433, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12892, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12890, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12890, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12894, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12893, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12891, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12897, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(345, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(344, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(345, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(344, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(345, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8333, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(345, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(317, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(316, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(317, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(316, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(317, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8306, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(317, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(320, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(319, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(320, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(319, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(320, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8309, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(320, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(323, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(322, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(322, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(326, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(325, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(325, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8315, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(939, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(938, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(939, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(938, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(939, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8318, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(939, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(377, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(376, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(376, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8363, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(380, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(379, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(379, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8366, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(383, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(382, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(382, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8369, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(386, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(385, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(385, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8372, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(538, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(537, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(538, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(537, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(538, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12712, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(538, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(541, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(540, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(541, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(540, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(541, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12715, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(541, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(332, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(331, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(331, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8321, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(584, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(583, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(584, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(583, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(584, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8564, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(584, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(587, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(586, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(587, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(586, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(587, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8567, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(587, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(590, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(589, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(590, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(589, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(590, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8570, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(590, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(593, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(592, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(593, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(592, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(593, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8573, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(593, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(596, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(595, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(596, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(595, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(596, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8576, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(596, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(599, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(598, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(599, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(598, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(599, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8579, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(599, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(602, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(601, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(602, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(601, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(602, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8582, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(602, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(660, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(659, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(660, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(659, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(660, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8639, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(660, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(720, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(719, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(719, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8702, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(726, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(725, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(726, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(725, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(726, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8708, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(726, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(949, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(948, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(948, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8711, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(921, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(920, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(921, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(920, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(921, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8807, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(921, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15087, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(308, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15087, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(308, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15087, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15095, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12189, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12189, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15098, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(304, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(304, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15099, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(312, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15102, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(432, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(432, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15105, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12890, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12890, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15106, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12891, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15136, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(344, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(344, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15140, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(316, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(316, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15141, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(319, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(319, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15142, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(322, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(322, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15143, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(325, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(325, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15144, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(938, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15144, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(938, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15144, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15165, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(376, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(376, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15169, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(379, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(379, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15172, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(382, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(382, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15175, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(385, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(385, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15188, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(537, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(537, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15189, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(540, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(540, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15199, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(331, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(331, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15204, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(583, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(583, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15205, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(586, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(586, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15206, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(589, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(589, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15207, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(592, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(592, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15208, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(595, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(595, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15209, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(598, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15209, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(598, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15209, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15210, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(601, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15210, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(601, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15210, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15273, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(659, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15273, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(659, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15273, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15293, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(719, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15293, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(719, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15293, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15295, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(725, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(725, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15304, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(948, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15304, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(948, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15304, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15349, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(920, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15349, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(920, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15349, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part5.py000066400000000000000000115627741357637245100315550ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part5(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(51, 0) node.BrowseName = QualifiedName('FromState', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for a reference to the state before a transition.") attrs.DisplayName = LocalizedText("FromState") attrs.InverseName = LocalizedText("ToTransition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(51, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(52, 0) node.BrowseName = QualifiedName('ToState', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for a reference to the state after a transition.") attrs.DisplayName = LocalizedText("ToState") attrs.InverseName = LocalizedText("FromTransition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(52, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(53, 0) node.BrowseName = QualifiedName('HasCause', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for a reference to a method that can cause a transition to occur.") attrs.DisplayName = LocalizedText("HasCause") attrs.InverseName = LocalizedText("MayBeCausedBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(53, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(54, 0) node.BrowseName = QualifiedName('HasEffect', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for a reference to an event that may be raised when a transition occurs.") attrs.DisplayName = LocalizedText("HasEffect") attrs.InverseName = LocalizedText("MayBeEffectedBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(54, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(117, 0) node.BrowseName = QualifiedName('HasSubStateMachine', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.Description = LocalizedText("The type for a reference to a substate for a state.") attrs.DisplayName = LocalizedText("HasSubStateMachine") attrs.InverseName = LocalizedText("SubStateMachineOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(117, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(58, 0) node.BrowseName = QualifiedName('BaseObjectType', 0) node.NodeClass = NodeClass.ObjectType attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("The base type for all object nodes.") attrs.DisplayName = LocalizedText("BaseObjectType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(61, 0) node.BrowseName = QualifiedName('FolderType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("The type for objects that organize other nodes.") attrs.DisplayName = LocalizedText("FolderType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(61, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(62, 0) node.BrowseName = QualifiedName('BaseVariableType', 0) node.NodeClass = NodeClass.VariableType attrs = ua.VariableTypeAttributes() attrs.Description = LocalizedText("The abstract base type for all variable nodes.") attrs.DisplayName = LocalizedText("BaseVariableType") attrs.IsAbstract = True attrs.Description = LocalizedText("The abstract base type for all variable nodes.") attrs.DisplayName = LocalizedText("BaseVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(63, 0) node.BrowseName = QualifiedName('BaseDataVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(62, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.Description = LocalizedText("The type for variable that represents a process value.") attrs.DisplayName = LocalizedText("BaseDataVariableType") attrs.Description = LocalizedText("The type for variable that represents a process value.") attrs.DisplayName = LocalizedText("BaseDataVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(63, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(62, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(68, 0) node.BrowseName = QualifiedName('PropertyType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(62, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.Description = LocalizedText("The type for variable that represents a property of another node.") attrs.DisplayName = LocalizedText("PropertyType") attrs.Description = LocalizedText("The type for variable that represents a property of another node.") attrs.DisplayName = LocalizedText("PropertyType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(68, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(62, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(69, 0) node.BrowseName = QualifiedName('DataTypeDescriptionType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.Description = LocalizedText("The type for variable that represents the description of a data type encoding.") attrs.DisplayName = LocalizedText("DataTypeDescriptionType") attrs.Description = LocalizedText("The type for variable that represents the description of a data type encoding.") attrs.DisplayName = LocalizedText("DataTypeDescriptionType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(69, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(104, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(69, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(105, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(69, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(104, 0) node.BrowseName = QualifiedName('DataTypeVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(69, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The version number for the data type description.") attrs.DisplayName = LocalizedText("DataTypeVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(105, 0) node.BrowseName = QualifiedName('DictionaryFragment', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(69, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A fragment of a data type dictionary that defines the data type.") attrs.DisplayName = LocalizedText("DictionaryFragment") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(72, 0) node.BrowseName = QualifiedName('DataTypeDictionaryType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.Description = LocalizedText("The type for variable that represents the collection of data type decriptions.") attrs.DisplayName = LocalizedText("DataTypeDictionaryType") attrs.Description = LocalizedText("The type for variable that represents the collection of data type decriptions.") attrs.DisplayName = LocalizedText("DataTypeDictionaryType") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(72, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(106, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(72, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(107, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(72, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15001, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(72, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(106, 0) node.BrowseName = QualifiedName('DataTypeVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(72, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The version number for the data type dictionary.") attrs.DisplayName = LocalizedText("DataTypeVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(72, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(107, 0) node.BrowseName = QualifiedName('NamespaceUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(72, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A URI that uniquely identifies the dictionary.") attrs.DisplayName = LocalizedText("NamespaceUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(72, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15001, 0) node.BrowseName = QualifiedName('Deprecated', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(72, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute.") attrs.DisplayName = LocalizedText("Deprecated") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(72, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(75, 0) node.BrowseName = QualifiedName('DataTypeSystemType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("DataTypeSystemType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(75, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(76, 0) node.BrowseName = QualifiedName('DataTypeEncodingType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("DataTypeEncodingType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(76, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(77, 0) node.BrowseName = QualifiedName('ModellingRuleType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("The type for an object that describes how an instance declaration is used when a type is instantiated.") attrs.DisplayName = LocalizedText("ModellingRuleType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(77, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(111, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(77, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(111, 0) node.BrowseName = QualifiedName('NamingRule', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(77, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specified the significances of the BrowseName when a type is instantiated.") attrs.DisplayName = LocalizedText("NamingRule") attrs.DataType = NumericNodeId(120, 0) attrs.Value = ua.Variant(1, ua.VariantType.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(77, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(78, 0) node.BrowseName = QualifiedName('Mandatory', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(77, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Specifies that an instance with the attributes and references of the instance declaration must appear when a type is instantiated.") attrs.DisplayName = LocalizedText("Mandatory") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(78, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(112, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(78, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(77, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(112, 0) node.BrowseName = QualifiedName('NamingRule', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(78, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specified the significances of the BrowseName when a type is instantiated.") attrs.DisplayName = LocalizedText("NamingRule") attrs.DataType = NumericNodeId(120, 0) attrs.Value = ua.Variant(1, ua.VariantType.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(80, 0) node.BrowseName = QualifiedName('Optional', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(77, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Specifies that an instance with the attributes and references of the instance declaration may appear when a type is instantiated.") attrs.DisplayName = LocalizedText("Optional") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(80, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(113, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(80, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(77, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(113, 0) node.BrowseName = QualifiedName('NamingRule', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(80, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specified the significances of the BrowseName when a type is instantiated.") attrs.DisplayName = LocalizedText("NamingRule") attrs.DataType = NumericNodeId(120, 0) attrs.Value = ua.Variant(2, ua.VariantType.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(83, 0) node.BrowseName = QualifiedName('ExposesItsArray', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(77, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Specifies that an instance appears for each element of the containing array variable.") attrs.DisplayName = LocalizedText("ExposesItsArray") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(83, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(114, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(83, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(77, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(114, 0) node.BrowseName = QualifiedName('NamingRule', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(83, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specified the significances of the BrowseName when a type is instantiated.") attrs.DisplayName = LocalizedText("NamingRule") attrs.DataType = NumericNodeId(120, 0) attrs.Value = ua.Variant(3, ua.VariantType.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(83, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(79, 0) node.BrowseName = QualifiedName('MandatoryShared', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(77, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Specifies that a reference to a shared instance must appear in when a type is instantiated.") attrs.DisplayName = LocalizedText("MandatoryShared") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(79, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(116, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(79, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(77, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(116, 0) node.BrowseName = QualifiedName('NamingRule', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(79, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specified the significances of the BrowseName when a type is instantiated.") attrs.DisplayName = LocalizedText("NamingRule") attrs.DataType = NumericNodeId(120, 0) attrs.Value = ua.Variant(1, ua.VariantType.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(79, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11508, 0) node.BrowseName = QualifiedName('OptionalPlaceholder', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(77, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Specifies that zero or more instances with the attributes and references of the instance declaration may appear when a type is instantiated.") attrs.DisplayName = LocalizedText("OptionalPlaceholder") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11508, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11509, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11508, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(77, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11509, 0) node.BrowseName = QualifiedName('NamingRule', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11508, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specified the significances of the BrowseName when a type is instantiated.") attrs.DisplayName = LocalizedText("NamingRule") attrs.DataType = NumericNodeId(120, 0) attrs.Value = ua.Variant(2, ua.VariantType.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11509, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11509, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11510, 0) node.BrowseName = QualifiedName('MandatoryPlaceholder', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(77, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Specifies that one or more instances with the attributes and references of the instance declaration must appear when a type is instantiated.") attrs.DisplayName = LocalizedText("MandatoryPlaceholder") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11510, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11511, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11510, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(77, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11511, 0) node.BrowseName = QualifiedName('NamingRule', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11510, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Specified the significances of the BrowseName when a type is instantiated.") attrs.DisplayName = LocalizedText("NamingRule") attrs.DataType = NumericNodeId(120, 0) attrs.Value = ua.Variant(1, ua.VariantType.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11511, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11511, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11510, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(84, 0) node.BrowseName = QualifiedName('Root', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The root of the server address space.") attrs.DisplayName = LocalizedText("Root") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(84, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(85, 0) node.BrowseName = QualifiedName('Objects', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(84, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The browse entry point when looking for objects in the server address space.") attrs.DisplayName = LocalizedText("Objects") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(85, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(84, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(85, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(86, 0) node.BrowseName = QualifiedName('Types', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(84, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The browse entry point when looking for types in the server address space.") attrs.DisplayName = LocalizedText("Types") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(86, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(84, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(86, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(87, 0) node.BrowseName = QualifiedName('Views', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(84, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The browse entry point when looking for views in the server address space.") attrs.DisplayName = LocalizedText("Views") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(87, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(84, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(87, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(88, 0) node.BrowseName = QualifiedName('ObjectTypes', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(86, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The browse entry point when looking for object types in the server address space.") attrs.DisplayName = LocalizedText("ObjectTypes") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(88, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(86, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(88, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(88, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(89, 0) node.BrowseName = QualifiedName('VariableTypes', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(86, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The browse entry point when looking for variable types in the server address space.") attrs.DisplayName = LocalizedText("VariableTypes") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(89, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(86, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(89, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(62, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(89, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(90, 0) node.BrowseName = QualifiedName('DataTypes', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(86, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The browse entry point when looking for data types in the server address space.") attrs.DisplayName = LocalizedText("DataTypes") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(90, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(86, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(90, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(24, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(90, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(91, 0) node.BrowseName = QualifiedName('ReferenceTypes', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(86, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The browse entry point when looking for reference types in the server address space.") attrs.DisplayName = LocalizedText("ReferenceTypes") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(91, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(86, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(91, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(31, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(91, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(92, 0) node.BrowseName = QualifiedName('XML Schema', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(90, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(75, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A type system which uses XML schema to describe the encoding of data types.") attrs.DisplayName = LocalizedText("XML Schema") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(92, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(90, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(92, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(75, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(93, 0) node.BrowseName = QualifiedName('OPC Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(90, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(75, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A type system which uses OPC binary schema to describe the encoding of data types.") attrs.DisplayName = LocalizedText("OPC Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(93, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(90, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(93, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(75, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15957, 0) node.BrowseName = QualifiedName('http://opcfoundation.org/UA/', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11715, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(11616, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("http://opcfoundation.org/UA/") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15958, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15959, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15960, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15961, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15962, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15963, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15964, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16134, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16135, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16136, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11715, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15958, 0) node.BrowseName = QualifiedName('NamespaceUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The URI of the namespace.") attrs.DisplayName = LocalizedText("NamespaceUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('http://opcfoundation.org/UA/', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15958, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15958, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15959, 0) node.BrowseName = QualifiedName('NamespaceVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The human readable string representing version of the namespace.") attrs.DisplayName = LocalizedText("NamespaceVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('1.04', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15959, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15959, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15960, 0) node.BrowseName = QualifiedName('NamespacePublicationDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The publication date for the namespace.") attrs.DisplayName = LocalizedText("NamespacePublicationDate") attrs.DataType = ua.NodeId(ua.ObjectIds.DateTime) attrs.Value = ua.Variant('2017-11-22', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15960, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15960, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15961, 0) node.BrowseName = QualifiedName('IsNamespaceSubset', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("If TRUE then the server only supports a subset of the namespace.") attrs.DisplayName = LocalizedText("IsNamespaceSubset") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.Value = ua.Variant(False, ua.VariantType.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15961, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15961, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15962, 0) node.BrowseName = QualifiedName('StaticNodeIdTypes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of IdTypes for nodes which are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticNodeIdTypes") attrs.DataType = NumericNodeId(256, 0) attrs.Value = ua.Variant([0], ua.VariantType.Int32) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15962, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15962, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15963, 0) node.BrowseName = QualifiedName('StaticNumericNodeIdRange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of ranges for numeric node ids which are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticNumericNodeIdRange") attrs.DataType = NumericNodeId(291, 0) attrs.Value = ua.Variant(['1:65535'], ua.VariantType.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15964, 0) node.BrowseName = QualifiedName('StaticStringNodeIdPattern', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A regular expression which matches string node ids are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticStringNodeIdPattern") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('\n ', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15964, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15964, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16134, 0) node.BrowseName = QualifiedName('DefaultRolePermissions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DefaultRolePermissions") attrs.DataType = NumericNodeId(96, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16135, 0) node.BrowseName = QualifiedName('DefaultUserRolePermissions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DefaultUserRolePermissions") attrs.DataType = NumericNodeId(96, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16136, 0) node.BrowseName = QualifiedName('DefaultAccessRestrictions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15957, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DefaultAccessRestrictions") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15957, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2004, 0) node.BrowseName = QualifiedName('ServerType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("Specifies the current status and capabilities of the server.") attrs.DisplayName = LocalizedText("ServerType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2005, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2006, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15003, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2007, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2008, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2742, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12882, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17612, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2010, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2011, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2012, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11527, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11489, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12871, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12746, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12883, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2005, 0) node.BrowseName = QualifiedName('ServerArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("The list of server URIs used by the server.") attrs.DisplayName = LocalizedText("ServerArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2005, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2005, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2005, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2006, 0) node.BrowseName = QualifiedName('NamespaceArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("The list of namespace URIs used by the server.") attrs.DisplayName = LocalizedText("NamespaceArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15003, 0) node.BrowseName = QualifiedName('UrisVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("Defines the version of the ServerArray and the NamespaceArray.") attrs.DisplayName = LocalizedText("UrisVersion") attrs.DataType = NumericNodeId(20998, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2007, 0) node.BrowseName = QualifiedName('ServerStatus', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2138, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("The current status of the server.") attrs.DisplayName = LocalizedText("ServerStatus") attrs.DataType = NumericNodeId(862, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3074, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3075, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3076, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3077, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3084, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3085, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2007, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3074, 0) node.BrowseName = QualifiedName('StartTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2007, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StartTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2007, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3075, 0) node.BrowseName = QualifiedName('CurrentTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2007, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3075, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3075, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3075, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2007, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3076, 0) node.BrowseName = QualifiedName('State', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2007, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("State") attrs.DataType = NumericNodeId(852, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2007, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3077, 0) node.BrowseName = QualifiedName('BuildInfo', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2007, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(3051, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BuildInfo") attrs.DataType = NumericNodeId(338, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3078, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3079, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3080, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3081, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3082, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3083, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2007, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3078, 0) node.BrowseName = QualifiedName('ProductUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3077, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3077, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3079, 0) node.BrowseName = QualifiedName('ManufacturerName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3077, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ManufacturerName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3079, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3079, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3079, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3077, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3080, 0) node.BrowseName = QualifiedName('ProductName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3077, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3077, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3081, 0) node.BrowseName = QualifiedName('SoftwareVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3077, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("SoftwareVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3077, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3082, 0) node.BrowseName = QualifiedName('BuildNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3077, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3077, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3083, 0) node.BrowseName = QualifiedName('BuildDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3077, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildDate") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3077, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3084, 0) node.BrowseName = QualifiedName('SecondsTillShutdown', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2007, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecondsTillShutdown") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2007, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3085, 0) node.BrowseName = QualifiedName('ShutdownReason', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2007, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ShutdownReason") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3085, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3085, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3085, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2007, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2008, 0) node.BrowseName = QualifiedName('ServiceLevel', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("A value indicating the level of service the server can provide. 255 indicates the best.") attrs.DisplayName = LocalizedText("ServiceLevel") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2008, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2008, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2008, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2742, 0) node.BrowseName = QualifiedName('Auditing', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("A flag indicating whether the server is currently generating audit events.") attrs.DisplayName = LocalizedText("Auditing") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2742, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2742, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2742, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12882, 0) node.BrowseName = QualifiedName('EstimatedReturnTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("Indicates the time at which the Server is expected to be available in the state RUNNING.") attrs.DisplayName = LocalizedText("EstimatedReturnTime") attrs.DataType = ua.NodeId(ua.ObjectIds.DateTime) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12882, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12882, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12882, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17612, 0) node.BrowseName = QualifiedName('LocalTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("Indicates the time zone the Server is is running in.") attrs.DisplayName = LocalizedText("LocalTime") attrs.DataType = NumericNodeId(8912, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17612, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17612, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17612, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2009, 0) node.BrowseName = QualifiedName('ServerCapabilities', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2013, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes capabilities supported by the server.") attrs.DisplayName = LocalizedText("ServerCapabilities") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3086, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3087, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3088, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3089, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3090, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3091, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3092, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3094, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3086, 0) node.BrowseName = QualifiedName('ServerProfileArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of profiles supported by the server.") attrs.DisplayName = LocalizedText("ServerProfileArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3087, 0) node.BrowseName = QualifiedName('LocaleIdArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of locales supported by the server.") attrs.DisplayName = LocalizedText("LocaleIdArray") attrs.DataType = NumericNodeId(295, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3087, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3087, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3087, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3088, 0) node.BrowseName = QualifiedName('MinSupportedSampleRate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The minimum sampling interval supported by the server.") attrs.DisplayName = LocalizedText("MinSupportedSampleRate") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3088, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3088, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3088, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3089, 0) node.BrowseName = QualifiedName('MaxBrowseContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for Browse operations per session.") attrs.DisplayName = LocalizedText("MaxBrowseContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3090, 0) node.BrowseName = QualifiedName('MaxQueryContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for Query operations per session.") attrs.DisplayName = LocalizedText("MaxQueryContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3090, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3090, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3090, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3091, 0) node.BrowseName = QualifiedName('MaxHistoryContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for ReadHistory operations per session.") attrs.DisplayName = LocalizedText("MaxHistoryContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3091, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3091, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3091, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3092, 0) node.BrowseName = QualifiedName('SoftwareCertificates', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The software certificates owned by the server.") attrs.DisplayName = LocalizedText("SoftwareCertificates") attrs.DataType = NumericNodeId(344, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3093, 0) node.BrowseName = QualifiedName('ModellingRules', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A folder for the modelling rules supported by the server.") attrs.DisplayName = LocalizedText("ModellingRules") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3094, 0) node.BrowseName = QualifiedName('AggregateFunctions', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2009, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A folder for the real time aggregates supported by the server.") attrs.DisplayName = LocalizedText("AggregateFunctions") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2009, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2010, 0) node.BrowseName = QualifiedName('ServerDiagnostics', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2020, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Reports diagnostics about the server.") attrs.DisplayName = LocalizedText("ServerDiagnostics") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3110, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3111, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3114, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2020, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3095, 0) node.BrowseName = QualifiedName('ServerDiagnosticsSummary', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2010, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2150, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A summary of server level diagnostics.") attrs.DisplayName = LocalizedText("ServerDiagnosticsSummary") attrs.DataType = NumericNodeId(859, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3096, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3097, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3098, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3099, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3100, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3104, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3105, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3106, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3107, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3108, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2010, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3096, 0) node.BrowseName = QualifiedName('ServerViewCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerViewCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3096, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3096, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3096, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3097, 0) node.BrowseName = QualifiedName('CurrentSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3098, 0) node.BrowseName = QualifiedName('CumulatedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3099, 0) node.BrowseName = QualifiedName('SecurityRejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3100, 0) node.BrowseName = QualifiedName('RejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3101, 0) node.BrowseName = QualifiedName('SessionTimeoutCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionTimeoutCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3102, 0) node.BrowseName = QualifiedName('SessionAbortCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionAbortCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3104, 0) node.BrowseName = QualifiedName('PublishingIntervalCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingIntervalCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3105, 0) node.BrowseName = QualifiedName('CurrentSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3106, 0) node.BrowseName = QualifiedName('CumulatedSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3107, 0) node.BrowseName = QualifiedName('SecurityRejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3108, 0) node.BrowseName = QualifiedName('RejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3095, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3108, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3108, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3108, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3110, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2010, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2171, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each active subscription.") attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsArray") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2010, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3111, 0) node.BrowseName = QualifiedName('SessionsDiagnosticsSummary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2010, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2026, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A summary of session level diagnostics.") attrs.DisplayName = LocalizedText("SessionsDiagnosticsSummary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3112, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3113, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2026, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2010, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3112, 0) node.BrowseName = QualifiedName('SessionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3111, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2196, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionDiagnosticsArray") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2196, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3111, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3113, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3111, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2243, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of security related diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsArray") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2243, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3111, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3114, 0) node.BrowseName = QualifiedName('EnabledFlag', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2010, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("If TRUE the diagnostics collection is enabled.") attrs.DisplayName = LocalizedText("EnabledFlag") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 attrs.AccessLevel = 3 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2010, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2011, 0) node.BrowseName = QualifiedName('VendorServerInfo', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2033, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Server information provided by the vendor.") attrs.DisplayName = LocalizedText("VendorServerInfo") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2033, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2012, 0) node.BrowseName = QualifiedName('ServerRedundancy', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2034, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes the redundancy capabilities of the server.") attrs.DisplayName = LocalizedText("ServerRedundancy") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3115, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2034, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3115, 0) node.BrowseName = QualifiedName('RedundancySupport', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2012, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates what style of redundancy is supported by the server.") attrs.DisplayName = LocalizedText("RedundancySupport") attrs.DataType = NumericNodeId(851, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2012, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11527, 0) node.BrowseName = QualifiedName('Namespaces', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11645, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes the namespaces supported by the server.") attrs.DisplayName = LocalizedText("Namespaces") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11527, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11645, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11527, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11527, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11489, 0) node.BrowseName = QualifiedName('GetMonitoredItems', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("GetMonitoredItems") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11489, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11490, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11489, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11491, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11489, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11489, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11490, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11489, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11490, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11490, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11490, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11489, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11491, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11489, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ServerHandles' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = 1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'ClientHandles' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = 1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11491, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11491, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11491, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11489, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12871, 0) node.BrowseName = QualifiedName('ResendData', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("ResendData") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12871, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12872, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12871, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12871, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12872, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12871, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12871, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12746, 0) node.BrowseName = QualifiedName('SetSubscriptionDurable', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("SetSubscriptionDurable") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12747, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12748, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12747, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12746, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'LifetimeInHours' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12746, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12748, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12746, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RevisedLifetimeInHours' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12746, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12883, 0) node.BrowseName = QualifiedName('RequestServerStateChange', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2004, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RequestServerStateChange") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12883, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12884, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12883, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12883, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12884, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12883, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'State' extobj.DataType = NumericNodeId(852, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'EstimatedReturnTime' extobj.DataType = NumericNodeId(13, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'SecondsTillShutdown' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Reason' extobj.DataType = NumericNodeId(21, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Restart' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12884, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12884, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12884, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12883, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2013, 0) node.BrowseName = QualifiedName('ServerCapabilitiesType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("Describes the capabilities supported by the server.") attrs.DisplayName = LocalizedText("ServerCapabilitiesType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2014, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2016, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2017, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2732, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2733, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2734, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3049, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11549, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11550, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12910, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11551, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2019, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2754, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11562, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16295, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2014, 0) node.BrowseName = QualifiedName('ServerProfileArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of profiles supported by the server.") attrs.DisplayName = LocalizedText("ServerProfileArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2014, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2016, 0) node.BrowseName = QualifiedName('LocaleIdArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of locales supported by the server.") attrs.DisplayName = LocalizedText("LocaleIdArray") attrs.DataType = NumericNodeId(295, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2017, 0) node.BrowseName = QualifiedName('MinSupportedSampleRate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The minimum sampling interval supported by the server.") attrs.DisplayName = LocalizedText("MinSupportedSampleRate") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2732, 0) node.BrowseName = QualifiedName('MaxBrowseContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for Browse operations per session.") attrs.DisplayName = LocalizedText("MaxBrowseContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2732, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2732, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2732, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2733, 0) node.BrowseName = QualifiedName('MaxQueryContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for Query operations per session.") attrs.DisplayName = LocalizedText("MaxQueryContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2733, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2733, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2733, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2734, 0) node.BrowseName = QualifiedName('MaxHistoryContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for ReadHistory operations per session.") attrs.DisplayName = LocalizedText("MaxHistoryContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2734, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2734, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2734, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3049, 0) node.BrowseName = QualifiedName('SoftwareCertificates', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The software certificates owned by the server.") attrs.DisplayName = LocalizedText("SoftwareCertificates") attrs.DataType = NumericNodeId(344, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3049, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3049, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3049, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11549, 0) node.BrowseName = QualifiedName('MaxArrayLength', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for an array value supported by the server.") attrs.DisplayName = LocalizedText("MaxArrayLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11549, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11549, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11549, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11550, 0) node.BrowseName = QualifiedName('MaxStringLength', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for a string value supported by the server.") attrs.DisplayName = LocalizedText("MaxStringLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11550, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11550, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11550, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12910, 0) node.BrowseName = QualifiedName('MaxByteStringLength', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for a byte string value supported by the server.") attrs.DisplayName = LocalizedText("MaxByteStringLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12910, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12910, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12910, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11551, 0) node.BrowseName = QualifiedName('OperationLimits', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11564, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Defines the limits supported by the server for different operations.") attrs.DisplayName = LocalizedText("OperationLimits") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11551, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11551, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11551, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2019, 0) node.BrowseName = QualifiedName('ModellingRules', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A folder for the modelling rules supported by the server.") attrs.DisplayName = LocalizedText("ModellingRules") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2754, 0) node.BrowseName = QualifiedName('AggregateFunctions', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A folder for the real time aggregates supported by the server.") attrs.DisplayName = LocalizedText("AggregateFunctions") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11562, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2137, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11562, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2137, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11562, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11562, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16295, 0) node.BrowseName = QualifiedName('Roles', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2013, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(15607, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes the roles supported by the server.") attrs.DisplayName = LocalizedText("Roles") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16296, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16299, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15607, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16296, 0) node.BrowseName = QualifiedName('AddRole', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16295, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddRole") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16297, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16298, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16295, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16297, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16296, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'NamespaceUri' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16296, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16298, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16296, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16298, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16298, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16298, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16296, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16299, 0) node.BrowseName = QualifiedName('RemoveRole', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16295, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveRole") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16299, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16300, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16299, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16299, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16295, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16300, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16299, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16299, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2020, 0) node.BrowseName = QualifiedName('ServerDiagnosticsType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("The diagnostics information for a server.") attrs.DisplayName = LocalizedText("ServerDiagnosticsType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2022, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2023, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2744, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2025, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2021, 0) node.BrowseName = QualifiedName('ServerDiagnosticsSummary', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2020, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2150, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A summary of server level diagnostics.") attrs.DisplayName = LocalizedText("ServerDiagnosticsSummary") attrs.DataType = NumericNodeId(859, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3116, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3117, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3118, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3119, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3120, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3121, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3122, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3124, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3125, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3126, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3127, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3128, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3116, 0) node.BrowseName = QualifiedName('ServerViewCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerViewCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3117, 0) node.BrowseName = QualifiedName('CurrentSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3117, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3117, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3117, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3118, 0) node.BrowseName = QualifiedName('CumulatedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3119, 0) node.BrowseName = QualifiedName('SecurityRejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3120, 0) node.BrowseName = QualifiedName('RejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3121, 0) node.BrowseName = QualifiedName('SessionTimeoutCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionTimeoutCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3122, 0) node.BrowseName = QualifiedName('SessionAbortCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionAbortCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3124, 0) node.BrowseName = QualifiedName('PublishingIntervalCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingIntervalCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3125, 0) node.BrowseName = QualifiedName('CurrentSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3126, 0) node.BrowseName = QualifiedName('CumulatedSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3127, 0) node.BrowseName = QualifiedName('SecurityRejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3128, 0) node.BrowseName = QualifiedName('RejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2021, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2022, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2020, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2164, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each sampling interval supported by the server.") attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsArray") attrs.DataType = NumericNodeId(856, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2164, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2023, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2020, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2171, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each active subscription.") attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsArray") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2744, 0) node.BrowseName = QualifiedName('SessionsDiagnosticsSummary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2020, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2026, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A summary of session level diagnostics.") attrs.DisplayName = LocalizedText("SessionsDiagnosticsSummary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3129, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3130, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2026, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3129, 0) node.BrowseName = QualifiedName('SessionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2744, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2196, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionDiagnosticsArray") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2196, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2744, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3130, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2744, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2243, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of security related diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsArray") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3130, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2243, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3130, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3130, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2744, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2025, 0) node.BrowseName = QualifiedName('EnabledFlag', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2020, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("If TRUE the diagnostics collection is enabled.") attrs.DisplayName = LocalizedText("EnabledFlag") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 attrs.AccessLevel = 3 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2026, 0) node.BrowseName = QualifiedName('SessionsDiagnosticsSummaryType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("Provides a summary of session level diagnostics.") attrs.DisplayName = LocalizedText("SessionsDiagnosticsSummaryType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2027, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2028, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12097, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2027, 0) node.BrowseName = QualifiedName('SessionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2026, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2196, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionDiagnosticsArray") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2196, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2026, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2028, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2026, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2243, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of security related diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsArray") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2243, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2026, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12097, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2026, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2029, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12152, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2029, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2026, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12098, 0) node.BrowseName = QualifiedName('SessionDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12097, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2197, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Diagnostics information for an active session.") attrs.DisplayName = LocalizedText("SessionDiagnostics") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12099, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12100, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12103, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12104, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12105, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12106, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12107, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12108, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12109, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12110, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12111, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12112, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12113, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12114, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12115, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12116, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12117, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12118, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12119, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12120, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12121, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12122, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12123, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12124, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12125, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12126, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12127, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12128, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12129, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12130, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12131, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12132, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12133, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12134, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12135, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12136, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12137, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12138, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12139, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12140, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12141, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12097, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12099, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12100, 0) node.BrowseName = QualifiedName('SessionName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12101, 0) node.BrowseName = QualifiedName('ClientDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientDescription") attrs.DataType = NumericNodeId(308, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12102, 0) node.BrowseName = QualifiedName('ServerUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12103, 0) node.BrowseName = QualifiedName('EndpointUrl', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointUrl") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12104, 0) node.BrowseName = QualifiedName('LocaleIds', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LocaleIds") attrs.DataType = NumericNodeId(295, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12105, 0) node.BrowseName = QualifiedName('ActualSessionTimeout', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActualSessionTimeout") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12105, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12106, 0) node.BrowseName = QualifiedName('MaxResponseMessageSize', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxResponseMessageSize") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12106, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12107, 0) node.BrowseName = QualifiedName('ClientConnectionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientConnectionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12108, 0) node.BrowseName = QualifiedName('ClientLastContactTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientLastContactTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12108, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12108, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12108, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12109, 0) node.BrowseName = QualifiedName('CurrentSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12109, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12109, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12109, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12110, 0) node.BrowseName = QualifiedName('CurrentMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12111, 0) node.BrowseName = QualifiedName('CurrentPublishRequestsInQueue', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentPublishRequestsInQueue") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12112, 0) node.BrowseName = QualifiedName('TotalRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TotalRequestCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12113, 0) node.BrowseName = QualifiedName('UnauthorizedRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnauthorizedRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12114, 0) node.BrowseName = QualifiedName('ReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12115, 0) node.BrowseName = QualifiedName('HistoryReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12116, 0) node.BrowseName = QualifiedName('WriteCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriteCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12117, 0) node.BrowseName = QualifiedName('HistoryUpdateCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryUpdateCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12117, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12117, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12117, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12118, 0) node.BrowseName = QualifiedName('CallCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CallCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12119, 0) node.BrowseName = QualifiedName('CreateMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12120, 0) node.BrowseName = QualifiedName('ModifyMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifyMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12121, 0) node.BrowseName = QualifiedName('SetMonitoringModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetMonitoringModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12121, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12122, 0) node.BrowseName = QualifiedName('SetTriggeringCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetTriggeringCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12122, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12123, 0) node.BrowseName = QualifiedName('DeleteMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12123, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12123, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12123, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12124, 0) node.BrowseName = QualifiedName('CreateSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateSubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12125, 0) node.BrowseName = QualifiedName('ModifySubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifySubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12126, 0) node.BrowseName = QualifiedName('SetPublishingModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetPublishingModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12127, 0) node.BrowseName = QualifiedName('PublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12128, 0) node.BrowseName = QualifiedName('RepublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12129, 0) node.BrowseName = QualifiedName('TransferSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12130, 0) node.BrowseName = QualifiedName('DeleteSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12130, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12130, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12130, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12131, 0) node.BrowseName = QualifiedName('AddNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12132, 0) node.BrowseName = QualifiedName('AddReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12132, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12132, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12132, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12133, 0) node.BrowseName = QualifiedName('DeleteNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12134, 0) node.BrowseName = QualifiedName('DeleteReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12135, 0) node.BrowseName = QualifiedName('BrowseCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12136, 0) node.BrowseName = QualifiedName('BrowseNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12137, 0) node.BrowseName = QualifiedName('TranslateBrowsePathsToNodeIdsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TranslateBrowsePathsToNodeIdsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12138, 0) node.BrowseName = QualifiedName('QueryFirstCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryFirstCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12139, 0) node.BrowseName = QualifiedName('QueryNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12140, 0) node.BrowseName = QualifiedName('RegisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RegisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12141, 0) node.BrowseName = QualifiedName('UnregisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12098, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnregisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12098, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12142, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12097, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2244, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Security related diagnostics information for an active session.") attrs.DisplayName = LocalizedText("SessionSecurityDiagnostics") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12143, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12144, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12145, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12146, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12147, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12148, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12149, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12150, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12151, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12097, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12143, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12144, 0) node.BrowseName = QualifiedName('ClientUserIdOfSession', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdOfSession") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12144, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12144, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12144, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12145, 0) node.BrowseName = QualifiedName('ClientUserIdHistory', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdHistory") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12145, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12145, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12145, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12146, 0) node.BrowseName = QualifiedName('AuthenticationMechanism', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AuthenticationMechanism") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12146, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12146, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12146, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12147, 0) node.BrowseName = QualifiedName('Encoding', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Encoding") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12147, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12147, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12147, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12148, 0) node.BrowseName = QualifiedName('TransportProtocol', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransportProtocol") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12148, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12148, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12148, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12149, 0) node.BrowseName = QualifiedName('SecurityMode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityMode") attrs.DataType = NumericNodeId(302, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12149, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12149, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12149, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12150, 0) node.BrowseName = QualifiedName('SecurityPolicyUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityPolicyUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12151, 0) node.BrowseName = QualifiedName('ClientCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12152, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12097, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2171, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each subscription owned by the session.") attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsArray") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12097, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2029, 0) node.BrowseName = QualifiedName('SessionDiagnosticsObjectType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A container for session level diagnostics information.") attrs.DisplayName = LocalizedText("SessionDiagnosticsObjectType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2032, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2030, 0) node.BrowseName = QualifiedName('SessionDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2029, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2197, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Diagnostics information for an active session.") attrs.DisplayName = LocalizedText("SessionDiagnostics") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3131, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3132, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3133, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3134, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3135, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3136, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3137, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3138, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3139, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3140, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3141, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3142, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3143, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8898, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3151, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3152, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3153, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3154, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3155, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3156, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3157, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3158, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3159, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3160, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3161, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3162, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3163, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3164, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3165, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3166, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3167, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3168, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3169, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3170, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3173, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3174, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3175, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3176, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3177, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3131, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3132, 0) node.BrowseName = QualifiedName('SessionName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3132, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3132, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3132, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3133, 0) node.BrowseName = QualifiedName('ClientDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientDescription") attrs.DataType = NumericNodeId(308, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3134, 0) node.BrowseName = QualifiedName('ServerUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3135, 0) node.BrowseName = QualifiedName('EndpointUrl', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointUrl") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3135, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3136, 0) node.BrowseName = QualifiedName('LocaleIds', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LocaleIds") attrs.DataType = NumericNodeId(295, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3136, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3137, 0) node.BrowseName = QualifiedName('ActualSessionTimeout', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActualSessionTimeout") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3138, 0) node.BrowseName = QualifiedName('MaxResponseMessageSize', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxResponseMessageSize") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3139, 0) node.BrowseName = QualifiedName('ClientConnectionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientConnectionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3140, 0) node.BrowseName = QualifiedName('ClientLastContactTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientLastContactTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3141, 0) node.BrowseName = QualifiedName('CurrentSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3142, 0) node.BrowseName = QualifiedName('CurrentMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3143, 0) node.BrowseName = QualifiedName('CurrentPublishRequestsInQueue', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentPublishRequestsInQueue") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3143, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8898, 0) node.BrowseName = QualifiedName('TotalRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TotalRequestCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11891, 0) node.BrowseName = QualifiedName('UnauthorizedRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnauthorizedRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3151, 0) node.BrowseName = QualifiedName('ReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3152, 0) node.BrowseName = QualifiedName('HistoryReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3153, 0) node.BrowseName = QualifiedName('WriteCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriteCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3153, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3153, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3153, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3154, 0) node.BrowseName = QualifiedName('HistoryUpdateCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryUpdateCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3154, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3154, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3154, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3155, 0) node.BrowseName = QualifiedName('CallCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CallCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3155, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3155, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3155, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3156, 0) node.BrowseName = QualifiedName('CreateMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3157, 0) node.BrowseName = QualifiedName('ModifyMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifyMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3157, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3157, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3157, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3158, 0) node.BrowseName = QualifiedName('SetMonitoringModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetMonitoringModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3158, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3158, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3158, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3159, 0) node.BrowseName = QualifiedName('SetTriggeringCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetTriggeringCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3160, 0) node.BrowseName = QualifiedName('DeleteMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3161, 0) node.BrowseName = QualifiedName('CreateSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateSubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3162, 0) node.BrowseName = QualifiedName('ModifySubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifySubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3163, 0) node.BrowseName = QualifiedName('SetPublishingModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetPublishingModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3164, 0) node.BrowseName = QualifiedName('PublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3165, 0) node.BrowseName = QualifiedName('RepublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3166, 0) node.BrowseName = QualifiedName('TransferSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3167, 0) node.BrowseName = QualifiedName('DeleteSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3168, 0) node.BrowseName = QualifiedName('AddNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3169, 0) node.BrowseName = QualifiedName('AddReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3170, 0) node.BrowseName = QualifiedName('DeleteNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3171, 0) node.BrowseName = QualifiedName('DeleteReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3172, 0) node.BrowseName = QualifiedName('BrowseCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3173, 0) node.BrowseName = QualifiedName('BrowseNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3174, 0) node.BrowseName = QualifiedName('TranslateBrowsePathsToNodeIdsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TranslateBrowsePathsToNodeIdsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3175, 0) node.BrowseName = QualifiedName('QueryFirstCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryFirstCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3176, 0) node.BrowseName = QualifiedName('QueryNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3177, 0) node.BrowseName = QualifiedName('RegisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RegisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3178, 0) node.BrowseName = QualifiedName('UnregisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2030, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnregisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2030, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2031, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2029, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2244, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Security related diagnostics information for an active session.") attrs.DisplayName = LocalizedText("SessionSecurityDiagnostics") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3179, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3180, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3181, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3182, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3183, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3184, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3185, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3186, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3187, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2031, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3179, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3180, 0) node.BrowseName = QualifiedName('ClientUserIdOfSession', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdOfSession") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3181, 0) node.BrowseName = QualifiedName('ClientUserIdHistory', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdHistory") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3182, 0) node.BrowseName = QualifiedName('AuthenticationMechanism', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AuthenticationMechanism") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3183, 0) node.BrowseName = QualifiedName('Encoding', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Encoding") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3184, 0) node.BrowseName = QualifiedName('TransportProtocol', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransportProtocol") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3185, 0) node.BrowseName = QualifiedName('SecurityMode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityMode") attrs.DataType = NumericNodeId(302, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3186, 0) node.BrowseName = QualifiedName('SecurityPolicyUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityPolicyUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3187, 0) node.BrowseName = QualifiedName('ClientCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2031, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2031, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2032, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2029, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2171, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each subscription owned by the session.") attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsArray") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2032, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2033, 0) node.BrowseName = QualifiedName('VendorServerInfoType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A base type for vendor specific server information.") attrs.DisplayName = LocalizedText("VendorServerInfoType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2034, 0) node.BrowseName = QualifiedName('ServerRedundancyType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A base type for an object that describe how a server supports redundancy.") attrs.DisplayName = LocalizedText("ServerRedundancyType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2035, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2035, 0) node.BrowseName = QualifiedName('RedundancySupport', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2034, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates what style of redundancy is supported by the server.") attrs.DisplayName = LocalizedText("RedundancySupport") attrs.DataType = NumericNodeId(851, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2034, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2036, 0) node.BrowseName = QualifiedName('TransparentRedundancyType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2034, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("Identifies the capabilties of server that supports transparent redundancy.") attrs.DisplayName = LocalizedText("TransparentRedundancyType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2037, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2038, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2034, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2037, 0) node.BrowseName = QualifiedName('CurrentServerId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2036, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The ID of the server that is currently in use.") attrs.DisplayName = LocalizedText("CurrentServerId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2038, 0) node.BrowseName = QualifiedName('RedundantServerArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2036, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of servers in the same redundant set.") attrs.DisplayName = LocalizedText("RedundantServerArray") attrs.DataType = NumericNodeId(853, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2039, 0) node.BrowseName = QualifiedName('NonTransparentRedundancyType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2034, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("Identifies the capabilties of server that supports non-transparent redundancy.") attrs.DisplayName = LocalizedText("NonTransparentRedundancyType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2039, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2040, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2039, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2034, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2040, 0) node.BrowseName = QualifiedName('ServerUriArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2039, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of servers in the same redundant set.") attrs.DisplayName = LocalizedText("ServerUriArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2039, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11945, 0) node.BrowseName = QualifiedName('NonTransparentNetworkRedundancyType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2039, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("NonTransparentNetworkRedundancyType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11948, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2039, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11948, 0) node.BrowseName = QualifiedName('ServerNetworkGroups', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11945, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerNetworkGroups") attrs.DataType = NumericNodeId(11944, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11945, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11564, 0) node.BrowseName = QualifiedName('OperationLimitsType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(61, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("Identifies the operation limits imposed by the server.") attrs.DisplayName = LocalizedText("OperationLimitsType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11565, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12161, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12162, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11567, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12163, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12164, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11569, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11570, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11571, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11572, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11573, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11574, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11565, 0) node.BrowseName = QualifiedName('MaxNodesPerRead', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Read request.") attrs.DisplayName = LocalizedText("MaxNodesPerRead") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11565, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11565, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11565, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12161, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryReadData', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single data HistoryRead request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryReadData") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12162, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryReadEvents', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single event HistoryRead request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryReadEvents") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11567, 0) node.BrowseName = QualifiedName('MaxNodesPerWrite', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Write request.") attrs.DisplayName = LocalizedText("MaxNodesPerWrite") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11567, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11567, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11567, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12163, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryUpdateData', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single data HistoryUpdate request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryUpdateData") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12164, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryUpdateEvents', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single event HistoryUpdate request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryUpdateEvents") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11569, 0) node.BrowseName = QualifiedName('MaxNodesPerMethodCall', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Call request.") attrs.DisplayName = LocalizedText("MaxNodesPerMethodCall") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11569, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11569, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11569, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11570, 0) node.BrowseName = QualifiedName('MaxNodesPerBrowse', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Browse request.") attrs.DisplayName = LocalizedText("MaxNodesPerBrowse") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11570, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11570, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11570, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11571, 0) node.BrowseName = QualifiedName('MaxNodesPerRegisterNodes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single RegisterNodes request.") attrs.DisplayName = LocalizedText("MaxNodesPerRegisterNodes") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11571, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11571, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11571, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11572, 0) node.BrowseName = QualifiedName('MaxNodesPerTranslateBrowsePathsToNodeIds', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single TranslateBrowsePathsToNodeIds request.") attrs.DisplayName = LocalizedText("MaxNodesPerTranslateBrowsePathsToNodeIds") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11572, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11572, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11572, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11573, 0) node.BrowseName = QualifiedName('MaxNodesPerNodeManagement', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single AddNodes, AddReferences, DeleteNodes or DeleteReferences request.") attrs.DisplayName = LocalizedText("MaxNodesPerNodeManagement") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11574, 0) node.BrowseName = QualifiedName('MaxMonitoredItemsPerCall', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11564, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single MonitoredItem related request.") attrs.DisplayName = LocalizedText("MaxMonitoredItemsPerCall") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11574, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11574, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11574, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11575, 0) node.BrowseName = QualifiedName('FileType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("An object that represents a file that can be accessed via the server.") attrs.DisplayName = LocalizedText("FileType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11576, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12686, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12687, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11579, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13341, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11580, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11583, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11585, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11588, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11590, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11593, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11576, 0) node.BrowseName = QualifiedName('Size', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The size of the file in bytes.") attrs.DisplayName = LocalizedText("Size") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt64) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11576, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11576, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11576, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12686, 0) node.BrowseName = QualifiedName('Writable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Whether the file is writable.") attrs.DisplayName = LocalizedText("Writable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12686, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12686, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12686, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12687, 0) node.BrowseName = QualifiedName('UserWritable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Whether the file is writable by the current user.") attrs.DisplayName = LocalizedText("UserWritable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12687, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12687, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12687, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11579, 0) node.BrowseName = QualifiedName('OpenCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The current number of open file handles.") attrs.DisplayName = LocalizedText("OpenCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11579, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11579, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11579, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13341, 0) node.BrowseName = QualifiedName('MimeType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The content of the file.") attrs.DisplayName = LocalizedText("MimeType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11580, 0) node.BrowseName = QualifiedName('Open', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Open") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11580, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11581, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11580, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11582, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11580, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11580, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11581, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11580, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Mode' extobj.DataType = NumericNodeId(3, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11581, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11581, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11581, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11580, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11582, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11580, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11582, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11582, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11582, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11580, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11583, 0) node.BrowseName = QualifiedName('Close', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Close") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11583, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11584, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11583, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11583, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11584, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11583, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11584, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11584, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11584, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11583, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11585, 0) node.BrowseName = QualifiedName('Read', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Read") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11586, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11587, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11586, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11585, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Length' extobj.DataType = NumericNodeId(6, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11586, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11586, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11586, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11585, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11587, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11585, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Data' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11587, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11587, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11587, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11585, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11588, 0) node.BrowseName = QualifiedName('Write', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Write") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11589, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11589, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11588, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Data' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11589, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11589, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11589, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11588, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11590, 0) node.BrowseName = QualifiedName('GetPosition', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("GetPosition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11590, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11591, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11590, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11592, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11590, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11590, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11591, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11590, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11590, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11592, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11590, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Position' extobj.DataType = NumericNodeId(9, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11592, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11592, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11592, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11590, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11593, 0) node.BrowseName = QualifiedName('SetPosition', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("SetPosition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11593, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11594, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11593, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11593, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11594, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11593, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Position' extobj.DataType = NumericNodeId(9, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11593, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11595, 0) node.BrowseName = QualifiedName('AddressSpaceFileType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11575, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A file used to store a namespace exported from the server.") attrs.DisplayName = LocalizedText("AddressSpaceFileType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11595, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11615, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11595, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11615, 0) node.BrowseName = QualifiedName('ExportNamespace', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11595, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.Description = LocalizedText("Updates the file by exporting the server namespace.") attrs.DisplayName = LocalizedText("ExportNamespace") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11615, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11615, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11595, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11616, 0) node.BrowseName = QualifiedName('NamespaceMetadataType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("Provides the metadata for a namespace used by the server.") attrs.DisplayName = LocalizedText("NamespaceMetadataType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11617, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11618, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11619, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11620, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11621, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11622, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11623, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16137, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16138, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16139, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11616, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11617, 0) node.BrowseName = QualifiedName('NamespaceUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The URI of the namespace.") attrs.DisplayName = LocalizedText("NamespaceUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11618, 0) node.BrowseName = QualifiedName('NamespaceVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The human readable string representing version of the namespace.") attrs.DisplayName = LocalizedText("NamespaceVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11618, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11618, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11618, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11619, 0) node.BrowseName = QualifiedName('NamespacePublicationDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The publication date for the namespace.") attrs.DisplayName = LocalizedText("NamespacePublicationDate") attrs.DataType = ua.NodeId(ua.ObjectIds.DateTime) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11619, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11619, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11619, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11620, 0) node.BrowseName = QualifiedName('IsNamespaceSubset', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("If TRUE then the server only supports a subset of the namespace.") attrs.DisplayName = LocalizedText("IsNamespaceSubset") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11621, 0) node.BrowseName = QualifiedName('StaticNodeIdTypes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of IdTypes for nodes which are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticNodeIdTypes") attrs.DataType = NumericNodeId(256, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11621, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11621, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11621, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11622, 0) node.BrowseName = QualifiedName('StaticNumericNodeIdRange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of ranges for numeric node ids which are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticNumericNodeIdRange") attrs.DataType = NumericNodeId(291, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11622, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11622, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11622, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11623, 0) node.BrowseName = QualifiedName('StaticStringNodeIdPattern', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A regular expression which matches string node ids are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticStringNodeIdPattern") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11623, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11623, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11623, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11624, 0) node.BrowseName = QualifiedName('NamespaceFile', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11595, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A file containing the nodes of the namespace.") attrs.DisplayName = LocalizedText("NamespaceFile") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11625, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12690, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12691, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11628, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11629, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11632, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11634, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11637, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11639, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11642, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11595, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11625, 0) node.BrowseName = QualifiedName('Size', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The size of the file in bytes.") attrs.DisplayName = LocalizedText("Size") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt64) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11625, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11625, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11625, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12690, 0) node.BrowseName = QualifiedName('Writable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Whether the file is writable.") attrs.DisplayName = LocalizedText("Writable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12690, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12690, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12690, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12691, 0) node.BrowseName = QualifiedName('UserWritable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Whether the file is writable by the current user.") attrs.DisplayName = LocalizedText("UserWritable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12691, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12691, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12691, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11628, 0) node.BrowseName = QualifiedName('OpenCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The current number of open file handles.") attrs.DisplayName = LocalizedText("OpenCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11628, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11628, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11628, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11629, 0) node.BrowseName = QualifiedName('Open', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Open") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11629, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11630, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11629, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11631, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11629, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11629, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11630, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11629, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Mode' extobj.DataType = NumericNodeId(3, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11630, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11630, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11630, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11629, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11631, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11629, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11631, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11631, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11631, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11629, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11632, 0) node.BrowseName = QualifiedName('Close', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Close") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11633, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11633, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11632, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11632, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11634, 0) node.BrowseName = QualifiedName('Read', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Read") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11634, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11635, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11634, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11636, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11634, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11634, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11635, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11634, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Length' extobj.DataType = NumericNodeId(6, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11635, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11635, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11635, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11634, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11636, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11634, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Data' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11636, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11636, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11636, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11634, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11637, 0) node.BrowseName = QualifiedName('Write', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Write") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11637, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11638, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11637, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11637, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11638, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11637, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Data' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11638, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11638, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11638, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11637, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11639, 0) node.BrowseName = QualifiedName('GetPosition', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("GetPosition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11639, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11640, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11639, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11641, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11639, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11639, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11640, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11639, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11640, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11640, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11640, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11639, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11641, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11639, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Position' extobj.DataType = NumericNodeId(9, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11641, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11641, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11641, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11639, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11642, 0) node.BrowseName = QualifiedName('SetPosition', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(11624, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("SetPosition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11642, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11643, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11642, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11642, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11643, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11642, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Position' extobj.DataType = NumericNodeId(9, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11643, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11643, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11643, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11642, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16137, 0) node.BrowseName = QualifiedName('DefaultRolePermissions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DefaultRolePermissions") attrs.DataType = NumericNodeId(96, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16138, 0) node.BrowseName = QualifiedName('DefaultUserRolePermissions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DefaultUserRolePermissions") attrs.DataType = NumericNodeId(96, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16139, 0) node.BrowseName = QualifiedName('DefaultAccessRestrictions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11616, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DefaultAccessRestrictions") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11645, 0) node.BrowseName = QualifiedName('NamespacesType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A container for the namespace metadata provided by the server.") attrs.DisplayName = LocalizedText("NamespacesType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11645, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11645, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11646, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11645, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11616, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11647, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11648, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11649, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11650, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11651, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11652, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11653, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11616, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11646, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11645, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11647, 0) node.BrowseName = QualifiedName('NamespaceUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11646, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The URI of the namespace.") attrs.DisplayName = LocalizedText("NamespaceUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11647, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11647, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11647, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11648, 0) node.BrowseName = QualifiedName('NamespaceVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11646, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The human readable string representing version of the namespace.") attrs.DisplayName = LocalizedText("NamespaceVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11648, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11648, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11648, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11649, 0) node.BrowseName = QualifiedName('NamespacePublicationDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11646, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The publication date for the namespace.") attrs.DisplayName = LocalizedText("NamespacePublicationDate") attrs.DataType = ua.NodeId(ua.ObjectIds.DateTime) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11649, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11649, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11649, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11650, 0) node.BrowseName = QualifiedName('IsNamespaceSubset', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11646, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("If TRUE then the server only supports a subset of the namespace.") attrs.DisplayName = LocalizedText("IsNamespaceSubset") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11650, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11650, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11650, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11651, 0) node.BrowseName = QualifiedName('StaticNodeIdTypes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11646, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of IdTypes for nodes which are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticNodeIdTypes") attrs.DataType = NumericNodeId(256, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11651, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11651, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11651, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11652, 0) node.BrowseName = QualifiedName('StaticNumericNodeIdRange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11646, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of ranges for numeric node ids which are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticNumericNodeIdRange") attrs.DataType = NumericNodeId(291, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11652, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11652, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11652, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11653, 0) node.BrowseName = QualifiedName('StaticStringNodeIdPattern', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11646, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A regular expression which matches string node ids are the same in every server that exposes them.") attrs.DisplayName = LocalizedText("StaticStringNodeIdPattern") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11653, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11653, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11653, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11646, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2041, 0) node.BrowseName = QualifiedName('BaseEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("The base type for all events.") attrs.DisplayName = LocalizedText("BaseEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2042, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2043, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2044, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2045, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2046, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2047, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3190, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2050, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2051, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2042, 0) node.BrowseName = QualifiedName('EventId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A globally unique identifier for the event.") attrs.DisplayName = LocalizedText("EventId") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2042, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2042, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2042, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2043, 0) node.BrowseName = QualifiedName('EventType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The identifier for the event type.") attrs.DisplayName = LocalizedText("EventType") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2044, 0) node.BrowseName = QualifiedName('SourceNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The source of the event.") attrs.DisplayName = LocalizedText("SourceNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2044, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2044, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2044, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2045, 0) node.BrowseName = QualifiedName('SourceName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A description of the source of the event.") attrs.DisplayName = LocalizedText("SourceName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2045, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2045, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2045, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2046, 0) node.BrowseName = QualifiedName('Time', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("When the event occurred.") attrs.DisplayName = LocalizedText("Time") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2047, 0) node.BrowseName = QualifiedName('ReceiveTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("When the server received the event from the underlying system.") attrs.DisplayName = LocalizedText("ReceiveTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3190, 0) node.BrowseName = QualifiedName('LocalTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Information about the local time where the event originated.") attrs.DisplayName = LocalizedText("LocalTime") attrs.DataType = NumericNodeId(8912, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2050, 0) node.BrowseName = QualifiedName('Message', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A localized description of the event.") attrs.DisplayName = LocalizedText("Message") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2051, 0) node.BrowseName = QualifiedName('Severity', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates how urgent an event is.") attrs.DisplayName = LocalizedText("Severity") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2052, 0) node.BrowseName = QualifiedName('AuditEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A base type for events used to track client initiated changes to the server state.") attrs.DisplayName = LocalizedText("AuditEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2053, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2054, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2055, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2056, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2057, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2053, 0) node.BrowseName = QualifiedName('ActionTimeStamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("When the action triggering the event occurred.") attrs.DisplayName = LocalizedText("ActionTimeStamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2054, 0) node.BrowseName = QualifiedName('Status', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("If TRUE the action was performed. If FALSE the action failed and the server state did not change.") attrs.DisplayName = LocalizedText("Status") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2055, 0) node.BrowseName = QualifiedName('ServerId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The unique identifier for the server generating the event.") attrs.DisplayName = LocalizedText("ServerId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2056, 0) node.BrowseName = QualifiedName('ClientAuditEntryId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The log entry id provided in the request that initiated the action.") attrs.DisplayName = LocalizedText("ClientAuditEntryId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2057, 0) node.BrowseName = QualifiedName('ClientUserId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The user identity associated with the session that initiated the action.") attrs.DisplayName = LocalizedText("ClientUserId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2058, 0) node.BrowseName = QualifiedName('AuditSecurityEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A base type for events used to track security related changes.") attrs.DisplayName = LocalizedText("AuditSecurityEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2058, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17615, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2058, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17615, 0) node.BrowseName = QualifiedName('StatusCodeId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2058, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StatusCodeId") attrs.DataType = ua.NodeId(ua.ObjectIds.StatusCode) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17615, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17615, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17615, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2058, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2059, 0) node.BrowseName = QualifiedName('AuditChannelEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2058, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A base type for events used to track related changes to a secure channel.") attrs.DisplayName = LocalizedText("AuditChannelEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2745, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2059, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2058, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2745, 0) node.BrowseName = QualifiedName('SecureChannelId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2059, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The identifier for the secure channel that was changed.") attrs.DisplayName = LocalizedText("SecureChannelId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2745, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2745, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2745, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2059, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2060, 0) node.BrowseName = QualifiedName('AuditOpenSecureChannelEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2059, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("An event that is raised when a secure channel is opened.") attrs.DisplayName = LocalizedText("AuditOpenSecureChannelEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2061, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2746, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2062, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2063, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2065, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2066, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2059, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2061, 0) node.BrowseName = QualifiedName('ClientCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2060, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The certificate provided by the client.") attrs.DisplayName = LocalizedText("ClientCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2061, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2061, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2061, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2060, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2746, 0) node.BrowseName = QualifiedName('ClientCertificateThumbprint', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2060, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The thumbprint for certificate provided by the client.") attrs.DisplayName = LocalizedText("ClientCertificateThumbprint") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2060, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2062, 0) node.BrowseName = QualifiedName('RequestType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2060, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The type of request (NEW or RENEW).") attrs.DisplayName = LocalizedText("RequestType") attrs.DataType = NumericNodeId(315, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2060, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2063, 0) node.BrowseName = QualifiedName('SecurityPolicyUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2060, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The security policy used by the channel.") attrs.DisplayName = LocalizedText("SecurityPolicyUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2060, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2065, 0) node.BrowseName = QualifiedName('SecurityMode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2060, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The security mode used by the channel.") attrs.DisplayName = LocalizedText("SecurityMode") attrs.DataType = NumericNodeId(302, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2060, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2066, 0) node.BrowseName = QualifiedName('RequestedLifetime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2060, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The lifetime of the channel requested by the client.") attrs.DisplayName = LocalizedText("RequestedLifetime") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2060, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2069, 0) node.BrowseName = QualifiedName('AuditSessionEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2058, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A base type for events used to track related changes to a session.") attrs.DisplayName = LocalizedText("AuditSessionEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2069, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2070, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2069, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2058, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2070, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2069, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The unique identifier for the session,.") attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2070, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2070, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2070, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2069, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2071, 0) node.BrowseName = QualifiedName('AuditCreateSessionEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2069, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("An event that is raised when a session is created.") attrs.DisplayName = LocalizedText("AuditCreateSessionEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2072, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2073, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2747, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2074, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2069, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2072, 0) node.BrowseName = QualifiedName('SecureChannelId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2071, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The secure channel associated with the session.") attrs.DisplayName = LocalizedText("SecureChannelId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2072, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2072, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2072, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2071, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2073, 0) node.BrowseName = QualifiedName('ClientCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2071, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The certificate provided by the client.") attrs.DisplayName = LocalizedText("ClientCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2071, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2747, 0) node.BrowseName = QualifiedName('ClientCertificateThumbprint', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2071, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The thumbprint of the certificate provided by the client.") attrs.DisplayName = LocalizedText("ClientCertificateThumbprint") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2071, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2074, 0) node.BrowseName = QualifiedName('RevisedSessionTimeout', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2071, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The timeout for the session.") attrs.DisplayName = LocalizedText("RevisedSessionTimeout") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2071, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2748, 0) node.BrowseName = QualifiedName('AuditUrlMismatchEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2071, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditUrlMismatchEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2749, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2071, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2749, 0) node.BrowseName = QualifiedName('EndpointUrl', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2748, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointUrl") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2748, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2075, 0) node.BrowseName = QualifiedName('AuditActivateSessionEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2069, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditActivateSessionEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2075, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2076, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2075, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2077, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2075, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11485, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2075, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2069, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2076, 0) node.BrowseName = QualifiedName('ClientSoftwareCertificates', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2075, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientSoftwareCertificates") attrs.DataType = NumericNodeId(344, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2075, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2077, 0) node.BrowseName = QualifiedName('UserIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2075, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UserIdentityToken") attrs.DataType = NumericNodeId(316, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2075, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11485, 0) node.BrowseName = QualifiedName('SecureChannelId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2075, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecureChannelId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11485, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11485, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11485, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2075, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2078, 0) node.BrowseName = QualifiedName('AuditCancelEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2069, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCancelEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2079, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2069, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2079, 0) node.BrowseName = QualifiedName('RequestHandle', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2078, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RequestHandle") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2079, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2079, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2079, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2078, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2080, 0) node.BrowseName = QualifiedName('AuditCertificateEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2058, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCertificateEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2081, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2058, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2081, 0) node.BrowseName = QualifiedName('Certificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2080, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Certificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2082, 0) node.BrowseName = QualifiedName('AuditCertificateDataMismatchEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2080, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCertificateDataMismatchEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2083, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2084, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2083, 0) node.BrowseName = QualifiedName('InvalidHostname', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2082, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InvalidHostname") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2082, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2084, 0) node.BrowseName = QualifiedName('InvalidUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2082, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InvalidUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2084, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2082, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2085, 0) node.BrowseName = QualifiedName('AuditCertificateExpiredEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2080, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCertificateExpiredEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2085, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2086, 0) node.BrowseName = QualifiedName('AuditCertificateInvalidEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2080, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCertificateInvalidEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2087, 0) node.BrowseName = QualifiedName('AuditCertificateUntrustedEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2080, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCertificateUntrustedEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2087, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2088, 0) node.BrowseName = QualifiedName('AuditCertificateRevokedEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2080, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCertificateRevokedEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2088, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2089, 0) node.BrowseName = QualifiedName('AuditCertificateMismatchEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2080, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditCertificateMismatchEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2090, 0) node.BrowseName = QualifiedName('AuditNodeManagementEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditNodeManagementEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2090, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2091, 0) node.BrowseName = QualifiedName('AuditAddNodesEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2090, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditAddNodesEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2091, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2092, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2091, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2090, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2092, 0) node.BrowseName = QualifiedName('NodesToAdd', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2091, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NodesToAdd") attrs.DataType = NumericNodeId(376, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2091, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2093, 0) node.BrowseName = QualifiedName('AuditDeleteNodesEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2090, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditDeleteNodesEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2094, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2090, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2094, 0) node.BrowseName = QualifiedName('NodesToDelete', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2093, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NodesToDelete") attrs.DataType = NumericNodeId(382, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2093, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2095, 0) node.BrowseName = QualifiedName('AuditAddReferencesEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2090, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditAddReferencesEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2096, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2090, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2096, 0) node.BrowseName = QualifiedName('ReferencesToAdd', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2095, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReferencesToAdd") attrs.DataType = NumericNodeId(379, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2096, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2096, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2096, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2095, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2097, 0) node.BrowseName = QualifiedName('AuditDeleteReferencesEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2090, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditDeleteReferencesEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2098, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2097, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2090, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2098, 0) node.BrowseName = QualifiedName('ReferencesToDelete', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2097, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReferencesToDelete") attrs.DataType = NumericNodeId(385, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2097, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2099, 0) node.BrowseName = QualifiedName('AuditUpdateEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditUpdateEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2099, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2100, 0) node.BrowseName = QualifiedName('AuditWriteUpdateEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2099, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditWriteUpdateEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2750, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2103, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2099, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2750, 0) node.BrowseName = QualifiedName('AttributeId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2100, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AttributeId") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2100, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2101, 0) node.BrowseName = QualifiedName('IndexRange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2100, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("IndexRange") attrs.DataType = NumericNodeId(291, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2100, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2102, 0) node.BrowseName = QualifiedName('OldValue', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2100, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OldValue") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2100, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2103, 0) node.BrowseName = QualifiedName('NewValue', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2100, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NewValue") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2100, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2104, 0) node.BrowseName = QualifiedName('AuditHistoryUpdateEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2099, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditHistoryUpdateEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2751, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2099, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2751, 0) node.BrowseName = QualifiedName('ParameterDataTypeId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2104, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ParameterDataTypeId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2104, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2127, 0) node.BrowseName = QualifiedName('AuditUpdateMethodEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2052, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditUpdateMethodEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2128, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2129, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2052, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2128, 0) node.BrowseName = QualifiedName('MethodId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2127, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MethodId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2128, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2127, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2129, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2127, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2129, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2127, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2130, 0) node.BrowseName = QualifiedName('SystemEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("SystemEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2130, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2131, 0) node.BrowseName = QualifiedName('DeviceFailureEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2130, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("DeviceFailureEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2130, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11446, 0) node.BrowseName = QualifiedName('SystemStatusChangeEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2130, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("SystemStatusChangeEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11446, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11696, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11446, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2130, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11696, 0) node.BrowseName = QualifiedName('SystemState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11446, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SystemState") attrs.DataType = NumericNodeId(852, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11696, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11696, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11696, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11446, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2132, 0) node.BrowseName = QualifiedName('BaseModelChangeEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("BaseModelChangeEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2132, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2133, 0) node.BrowseName = QualifiedName('GeneralModelChangeEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2132, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("GeneralModelChangeEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2134, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2133, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2132, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2134, 0) node.BrowseName = QualifiedName('Changes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2133, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Changes") attrs.DataType = NumericNodeId(877, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2134, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2133, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2738, 0) node.BrowseName = QualifiedName('SemanticChangeEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2132, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("SemanticChangeEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2738, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2739, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2738, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2132, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2739, 0) node.BrowseName = QualifiedName('Changes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2738, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Changes") attrs.DataType = NumericNodeId(897, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2739, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2739, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2739, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2738, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3035, 0) node.BrowseName = QualifiedName('EventQueueOverflowEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("EventQueueOverflowEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11436, 0) node.BrowseName = QualifiedName('ProgressEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ProgressEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11436, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12502, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11436, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12503, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11436, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12502, 0) node.BrowseName = QualifiedName('Context', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11436, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Context") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12502, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12502, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12502, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11436, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12503, 0) node.BrowseName = QualifiedName('Progress', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11436, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Progress") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12503, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12503, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12503, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11436, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2340, 0) node.BrowseName = QualifiedName('AggregateFunctionType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AggregateFunctionType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2137, 0) node.BrowseName = QualifiedName('ServerVendorCapabilityType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ServerVendorCapabilityType") attrs.IsAbstract = True attrs.DisplayName = LocalizedText("ServerVendorCapabilityType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2137, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2138, 0) node.BrowseName = QualifiedName('ServerStatusType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ServerStatusType") attrs.DisplayName = LocalizedText("ServerStatusType") attrs.DataType = NumericNodeId(862, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2139, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2140, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2141, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2142, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2752, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2753, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2138, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2139, 0) node.BrowseName = QualifiedName('StartTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2138, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StartTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2139, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2140, 0) node.BrowseName = QualifiedName('CurrentTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2138, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2140, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2141, 0) node.BrowseName = QualifiedName('State', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2138, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("State") attrs.DataType = NumericNodeId(852, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2141, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2142, 0) node.BrowseName = QualifiedName('BuildInfo', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2138, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(3051, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BuildInfo") attrs.DataType = NumericNodeId(338, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3698, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3699, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3700, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3701, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3702, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3703, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2142, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3698, 0) node.BrowseName = QualifiedName('ProductUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3699, 0) node.BrowseName = QualifiedName('ManufacturerName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ManufacturerName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3700, 0) node.BrowseName = QualifiedName('ProductName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3700, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3700, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3700, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3701, 0) node.BrowseName = QualifiedName('SoftwareVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("SoftwareVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3701, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3701, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3701, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3702, 0) node.BrowseName = QualifiedName('BuildNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3702, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3702, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3702, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3703, 0) node.BrowseName = QualifiedName('BuildDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2142, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildDate") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3703, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3703, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3703, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2142, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2752, 0) node.BrowseName = QualifiedName('SecondsTillShutdown', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2138, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecondsTillShutdown") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2752, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2752, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2752, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2753, 0) node.BrowseName = QualifiedName('ShutdownReason', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2138, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ShutdownReason") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2753, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2753, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2753, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3051, 0) node.BrowseName = QualifiedName('BuildInfoType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("BuildInfoType") attrs.DisplayName = LocalizedText("BuildInfoType") attrs.DataType = NumericNodeId(338, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3052, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3053, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3054, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3055, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3056, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3057, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(3051, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3052, 0) node.BrowseName = QualifiedName('ProductUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3051, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3053, 0) node.BrowseName = QualifiedName('ManufacturerName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3051, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ManufacturerName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3054, 0) node.BrowseName = QualifiedName('ProductName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3051, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3055, 0) node.BrowseName = QualifiedName('SoftwareVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3051, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("SoftwareVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3056, 0) node.BrowseName = QualifiedName('BuildNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3051, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3057, 0) node.BrowseName = QualifiedName('BuildDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3051, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildDate") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2150, 0) node.BrowseName = QualifiedName('ServerDiagnosticsSummaryType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ServerDiagnosticsSummaryType") attrs.DisplayName = LocalizedText("ServerDiagnosticsSummaryType") attrs.DataType = NumericNodeId(859, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2151, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2152, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2153, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2154, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2155, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2156, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2157, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2159, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2160, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2161, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2162, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2163, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2151, 0) node.BrowseName = QualifiedName('ServerViewCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerViewCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2151, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2152, 0) node.BrowseName = QualifiedName('CurrentSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2152, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2153, 0) node.BrowseName = QualifiedName('CumulatedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2153, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2153, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2153, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2154, 0) node.BrowseName = QualifiedName('SecurityRejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2154, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2154, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2154, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2155, 0) node.BrowseName = QualifiedName('RejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2155, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2155, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2155, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2156, 0) node.BrowseName = QualifiedName('SessionTimeoutCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionTimeoutCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2157, 0) node.BrowseName = QualifiedName('SessionAbortCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionAbortCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2157, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2157, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2157, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2159, 0) node.BrowseName = QualifiedName('PublishingIntervalCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingIntervalCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2160, 0) node.BrowseName = QualifiedName('CurrentSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2161, 0) node.BrowseName = QualifiedName('CumulatedSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2162, 0) node.BrowseName = QualifiedName('SecurityRejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2163, 0) node.BrowseName = QualifiedName('RejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2150, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2164, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnosticsArrayType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsArrayType") attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsArrayType") attrs.DataType = NumericNodeId(856, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12779, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12779, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2164, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2165, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SamplingIntervalDiagnostics") attrs.DataType = NumericNodeId(856, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12779, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12780, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12779, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12781, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12779, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12782, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12779, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12783, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12779, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2165, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12779, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(83, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12779, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2164, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12780, 0) node.BrowseName = QualifiedName('SamplingInterval', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12779, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SamplingInterval") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12780, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12780, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12780, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12779, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12781, 0) node.BrowseName = QualifiedName('SampledMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12779, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SampledMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12781, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12781, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12781, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12779, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12782, 0) node.BrowseName = QualifiedName('MaxSampledMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12779, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxSampledMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12779, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12783, 0) node.BrowseName = QualifiedName('DisabledMonitoredItemsSamplingCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12779, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DisabledMonitoredItemsSamplingCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12783, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12783, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12783, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12779, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2165, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnosticsType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsType") attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsType") attrs.DataType = NumericNodeId(856, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2166, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11697, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11698, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11699, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2166, 0) node.BrowseName = QualifiedName('SamplingInterval', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2165, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SamplingInterval") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2165, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11697, 0) node.BrowseName = QualifiedName('SampledMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2165, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SampledMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11697, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11697, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11697, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2165, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11698, 0) node.BrowseName = QualifiedName('MaxSampledMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2165, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxSampledMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2165, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11699, 0) node.BrowseName = QualifiedName('DisabledMonitoredItemsSamplingCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2165, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DisabledMonitoredItemsSamplingCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2165, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2171, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsArrayType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsArrayType") attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsArrayType") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12784, 0) node.BrowseName = QualifiedName('SubscriptionDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2171, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2172, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscriptionDiagnostics") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12785, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12786, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12787, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12788, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12789, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12790, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12791, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12792, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12793, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12794, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12795, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12796, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12797, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12798, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12799, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12800, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12801, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12802, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12803, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12804, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12805, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12806, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12807, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12808, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12809, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12810, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12811, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12812, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12813, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12814, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12815, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(83, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2171, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12785, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12785, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12785, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12785, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12786, 0) node.BrowseName = QualifiedName('SubscriptionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscriptionId") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12786, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12786, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12786, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12787, 0) node.BrowseName = QualifiedName('Priority', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Priority") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12787, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12787, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12787, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12788, 0) node.BrowseName = QualifiedName('PublishingInterval', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingInterval") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12788, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12788, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12788, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12789, 0) node.BrowseName = QualifiedName('MaxKeepAliveCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxKeepAliveCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12789, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12789, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12789, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12790, 0) node.BrowseName = QualifiedName('MaxLifetimeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxLifetimeCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12790, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12790, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12790, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12791, 0) node.BrowseName = QualifiedName('MaxNotificationsPerPublish', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxNotificationsPerPublish") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12791, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12791, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12791, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12792, 0) node.BrowseName = QualifiedName('PublishingEnabled', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingEnabled") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12792, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12792, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12792, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12793, 0) node.BrowseName = QualifiedName('ModifyCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifyCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12793, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12793, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12793, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12794, 0) node.BrowseName = QualifiedName('EnableCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnableCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12794, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12794, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12794, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12795, 0) node.BrowseName = QualifiedName('DisableCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DisableCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12795, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12795, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12795, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12796, 0) node.BrowseName = QualifiedName('RepublishRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12796, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12796, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12796, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12797, 0) node.BrowseName = QualifiedName('RepublishMessageRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishMessageRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12797, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12797, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12797, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12798, 0) node.BrowseName = QualifiedName('RepublishMessageCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishMessageCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12798, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12798, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12798, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12799, 0) node.BrowseName = QualifiedName('TransferRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12799, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12799, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12799, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12800, 0) node.BrowseName = QualifiedName('TransferredToAltClientCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferredToAltClientCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12800, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12800, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12800, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12801, 0) node.BrowseName = QualifiedName('TransferredToSameClientCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferredToSameClientCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12801, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12801, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12801, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12802, 0) node.BrowseName = QualifiedName('PublishRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12802, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12802, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12802, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12803, 0) node.BrowseName = QualifiedName('DataChangeNotificationsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataChangeNotificationsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12804, 0) node.BrowseName = QualifiedName('EventNotificationsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EventNotificationsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12804, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12804, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12804, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12805, 0) node.BrowseName = QualifiedName('NotificationsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NotificationsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12805, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12805, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12805, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12806, 0) node.BrowseName = QualifiedName('LatePublishRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LatePublishRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12806, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12806, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12806, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12807, 0) node.BrowseName = QualifiedName('CurrentKeepAliveCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentKeepAliveCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12807, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12807, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12807, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12808, 0) node.BrowseName = QualifiedName('CurrentLifetimeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentLifetimeCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12808, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12808, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12808, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12809, 0) node.BrowseName = QualifiedName('UnacknowledgedMessageCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnacknowledgedMessageCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12809, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12809, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12809, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12810, 0) node.BrowseName = QualifiedName('DiscardedMessageCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DiscardedMessageCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12810, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12810, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12810, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12811, 0) node.BrowseName = QualifiedName('MonitoredItemCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MonitoredItemCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12811, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12811, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12811, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12812, 0) node.BrowseName = QualifiedName('DisabledMonitoredItemCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DisabledMonitoredItemCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12812, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12812, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12812, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12813, 0) node.BrowseName = QualifiedName('MonitoringQueueOverflowCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MonitoringQueueOverflowCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12813, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12813, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12813, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12814, 0) node.BrowseName = QualifiedName('NextSequenceNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NextSequenceNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12814, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12814, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12814, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12815, 0) node.BrowseName = QualifiedName('EventQueueOverflowCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12784, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EventQueueOverflowCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12815, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12815, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12815, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12784, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2172, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsType") attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsType") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2173, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2174, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2175, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2176, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2177, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8888, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2179, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2180, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2181, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2182, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2183, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2184, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2185, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2186, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2187, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2188, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2189, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2190, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2191, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2998, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2193, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8889, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8890, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8891, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8892, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8893, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8894, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8895, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8896, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8897, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8902, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2173, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2174, 0) node.BrowseName = QualifiedName('SubscriptionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscriptionId") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2175, 0) node.BrowseName = QualifiedName('Priority', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Priority") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2176, 0) node.BrowseName = QualifiedName('PublishingInterval', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingInterval") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2177, 0) node.BrowseName = QualifiedName('MaxKeepAliveCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxKeepAliveCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8888, 0) node.BrowseName = QualifiedName('MaxLifetimeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxLifetimeCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8888, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8888, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8888, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2179, 0) node.BrowseName = QualifiedName('MaxNotificationsPerPublish', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxNotificationsPerPublish") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2180, 0) node.BrowseName = QualifiedName('PublishingEnabled', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingEnabled") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2181, 0) node.BrowseName = QualifiedName('ModifyCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifyCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2182, 0) node.BrowseName = QualifiedName('EnableCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnableCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2183, 0) node.BrowseName = QualifiedName('DisableCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DisableCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2184, 0) node.BrowseName = QualifiedName('RepublishRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2185, 0) node.BrowseName = QualifiedName('RepublishMessageRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishMessageRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2186, 0) node.BrowseName = QualifiedName('RepublishMessageCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishMessageCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2187, 0) node.BrowseName = QualifiedName('TransferRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2188, 0) node.BrowseName = QualifiedName('TransferredToAltClientCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferredToAltClientCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2189, 0) node.BrowseName = QualifiedName('TransferredToSameClientCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferredToSameClientCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2190, 0) node.BrowseName = QualifiedName('PublishRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2191, 0) node.BrowseName = QualifiedName('DataChangeNotificationsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataChangeNotificationsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2998, 0) node.BrowseName = QualifiedName('EventNotificationsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EventNotificationsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2998, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2998, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2998, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2193, 0) node.BrowseName = QualifiedName('NotificationsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NotificationsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2193, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2193, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2193, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8889, 0) node.BrowseName = QualifiedName('LatePublishRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LatePublishRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8890, 0) node.BrowseName = QualifiedName('CurrentKeepAliveCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentKeepAliveCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8890, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8890, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8890, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8891, 0) node.BrowseName = QualifiedName('CurrentLifetimeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentLifetimeCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8891, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8892, 0) node.BrowseName = QualifiedName('UnacknowledgedMessageCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnacknowledgedMessageCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8893, 0) node.BrowseName = QualifiedName('DiscardedMessageCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DiscardedMessageCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8893, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8894, 0) node.BrowseName = QualifiedName('MonitoredItemCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MonitoredItemCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8894, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8894, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8894, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8895, 0) node.BrowseName = QualifiedName('DisabledMonitoredItemCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DisabledMonitoredItemCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8896, 0) node.BrowseName = QualifiedName('MonitoringQueueOverflowCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MonitoringQueueOverflowCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8896, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8896, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8896, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8897, 0) node.BrowseName = QualifiedName('NextSequenceNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NextSequenceNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8897, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8897, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8897, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8902, 0) node.BrowseName = QualifiedName('EventQueueOverflowCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2172, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EventQueueOverflowCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8902, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8902, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8902, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2172, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2196, 0) node.BrowseName = QualifiedName('SessionDiagnosticsArrayType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SessionDiagnosticsArrayType") attrs.DisplayName = LocalizedText("SessionDiagnosticsArrayType") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2196, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2196, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12816, 0) node.BrowseName = QualifiedName('SessionDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2196, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2197, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionDiagnostics") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12817, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12818, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12819, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12820, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12821, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12822, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12823, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12824, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12825, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12826, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12827, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12828, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12829, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12830, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12831, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12832, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12833, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12834, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12835, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12836, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12837, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12838, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12839, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12840, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12841, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12842, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12843, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12844, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12845, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12846, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12847, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12848, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12849, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12850, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12851, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12852, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12853, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12854, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12855, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12856, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12857, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12858, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12859, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(83, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2196, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12817, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12818, 0) node.BrowseName = QualifiedName('SessionName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12818, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12818, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12818, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12819, 0) node.BrowseName = QualifiedName('ClientDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientDescription") attrs.DataType = NumericNodeId(308, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12819, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12819, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12819, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12820, 0) node.BrowseName = QualifiedName('ServerUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12820, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12820, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12820, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12821, 0) node.BrowseName = QualifiedName('EndpointUrl', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointUrl") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12821, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12821, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12821, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12822, 0) node.BrowseName = QualifiedName('LocaleIds', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LocaleIds") attrs.DataType = NumericNodeId(295, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12822, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12822, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12822, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12823, 0) node.BrowseName = QualifiedName('ActualSessionTimeout', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActualSessionTimeout") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12823, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12823, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12823, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12824, 0) node.BrowseName = QualifiedName('MaxResponseMessageSize', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxResponseMessageSize") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12824, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12824, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12824, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12825, 0) node.BrowseName = QualifiedName('ClientConnectionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientConnectionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12826, 0) node.BrowseName = QualifiedName('ClientLastContactTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientLastContactTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12827, 0) node.BrowseName = QualifiedName('CurrentSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12827, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12827, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12827, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12828, 0) node.BrowseName = QualifiedName('CurrentMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12828, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12828, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12828, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12829, 0) node.BrowseName = QualifiedName('CurrentPublishRequestsInQueue', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentPublishRequestsInQueue") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12830, 0) node.BrowseName = QualifiedName('TotalRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TotalRequestCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12831, 0) node.BrowseName = QualifiedName('UnauthorizedRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnauthorizedRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12832, 0) node.BrowseName = QualifiedName('ReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12833, 0) node.BrowseName = QualifiedName('HistoryReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12834, 0) node.BrowseName = QualifiedName('WriteCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriteCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12834, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12834, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12834, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12835, 0) node.BrowseName = QualifiedName('HistoryUpdateCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryUpdateCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12836, 0) node.BrowseName = QualifiedName('CallCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CallCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12837, 0) node.BrowseName = QualifiedName('CreateMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12837, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12837, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12837, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12838, 0) node.BrowseName = QualifiedName('ModifyMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifyMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12839, 0) node.BrowseName = QualifiedName('SetMonitoringModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetMonitoringModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12840, 0) node.BrowseName = QualifiedName('SetTriggeringCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetTriggeringCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12841, 0) node.BrowseName = QualifiedName('DeleteMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12842, 0) node.BrowseName = QualifiedName('CreateSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateSubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12843, 0) node.BrowseName = QualifiedName('ModifySubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifySubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12844, 0) node.BrowseName = QualifiedName('SetPublishingModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetPublishingModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12844, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12845, 0) node.BrowseName = QualifiedName('PublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12845, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12846, 0) node.BrowseName = QualifiedName('RepublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12847, 0) node.BrowseName = QualifiedName('TransferSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12847, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12847, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12847, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12848, 0) node.BrowseName = QualifiedName('DeleteSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12848, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12848, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12848, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12849, 0) node.BrowseName = QualifiedName('AddNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12850, 0) node.BrowseName = QualifiedName('AddReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12850, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12850, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12850, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12851, 0) node.BrowseName = QualifiedName('DeleteNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12852, 0) node.BrowseName = QualifiedName('DeleteReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12853, 0) node.BrowseName = QualifiedName('BrowseCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12853, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12853, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12853, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12854, 0) node.BrowseName = QualifiedName('BrowseNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12855, 0) node.BrowseName = QualifiedName('TranslateBrowsePathsToNodeIdsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TranslateBrowsePathsToNodeIdsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12856, 0) node.BrowseName = QualifiedName('QueryFirstCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryFirstCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12856, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12856, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12856, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12857, 0) node.BrowseName = QualifiedName('QueryNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12858, 0) node.BrowseName = QualifiedName('RegisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RegisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12859, 0) node.BrowseName = QualifiedName('UnregisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12816, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnregisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12859, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12859, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12859, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12816, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2197, 0) node.BrowseName = QualifiedName('SessionDiagnosticsVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SessionDiagnosticsVariableType") attrs.DisplayName = LocalizedText("SessionDiagnosticsVariableType") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2198, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2199, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2200, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2201, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2202, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2203, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2204, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3050, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2205, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2206, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2207, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2208, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2209, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8900, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11892, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2217, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2218, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2219, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2220, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2221, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2222, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2223, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2224, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2225, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2226, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2227, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2228, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2229, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2230, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2231, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2232, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2233, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2234, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2235, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2236, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2237, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2238, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2239, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2240, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2241, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2242, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2730, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2731, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2198, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2199, 0) node.BrowseName = QualifiedName('SessionName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2200, 0) node.BrowseName = QualifiedName('ClientDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientDescription") attrs.DataType = NumericNodeId(308, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2200, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2200, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2200, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2201, 0) node.BrowseName = QualifiedName('ServerUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2202, 0) node.BrowseName = QualifiedName('EndpointUrl', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointUrl") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2203, 0) node.BrowseName = QualifiedName('LocaleIds', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LocaleIds") attrs.DataType = NumericNodeId(295, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2204, 0) node.BrowseName = QualifiedName('ActualSessionTimeout', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActualSessionTimeout") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3050, 0) node.BrowseName = QualifiedName('MaxResponseMessageSize', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxResponseMessageSize") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2205, 0) node.BrowseName = QualifiedName('ClientConnectionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientConnectionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2206, 0) node.BrowseName = QualifiedName('ClientLastContactTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientLastContactTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2207, 0) node.BrowseName = QualifiedName('CurrentSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2208, 0) node.BrowseName = QualifiedName('CurrentMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentMonitoredItemsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2209, 0) node.BrowseName = QualifiedName('CurrentPublishRequestsInQueue', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentPublishRequestsInQueue") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2209, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2209, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2209, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8900, 0) node.BrowseName = QualifiedName('TotalRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TotalRequestCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11892, 0) node.BrowseName = QualifiedName('UnauthorizedRequestCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnauthorizedRequestCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11892, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2217, 0) node.BrowseName = QualifiedName('ReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2218, 0) node.BrowseName = QualifiedName('HistoryReadCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryReadCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2218, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2218, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2218, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2219, 0) node.BrowseName = QualifiedName('WriteCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriteCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2219, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2219, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2219, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2220, 0) node.BrowseName = QualifiedName('HistoryUpdateCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryUpdateCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2221, 0) node.BrowseName = QualifiedName('CallCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CallCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2221, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2221, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2221, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2222, 0) node.BrowseName = QualifiedName('CreateMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2223, 0) node.BrowseName = QualifiedName('ModifyMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifyMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2224, 0) node.BrowseName = QualifiedName('SetMonitoringModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetMonitoringModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2225, 0) node.BrowseName = QualifiedName('SetTriggeringCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetTriggeringCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2226, 0) node.BrowseName = QualifiedName('DeleteMonitoredItemsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteMonitoredItemsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2226, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2226, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2226, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2227, 0) node.BrowseName = QualifiedName('CreateSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CreateSubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2227, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2227, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2227, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2228, 0) node.BrowseName = QualifiedName('ModifySubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModifySubscriptionCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2228, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2228, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2228, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2229, 0) node.BrowseName = QualifiedName('SetPublishingModeCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetPublishingModeCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2229, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2229, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2229, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2230, 0) node.BrowseName = QualifiedName('PublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2230, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2230, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2230, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2231, 0) node.BrowseName = QualifiedName('RepublishCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RepublishCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2231, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2231, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2231, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2232, 0) node.BrowseName = QualifiedName('TransferSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransferSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2232, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2232, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2232, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2233, 0) node.BrowseName = QualifiedName('DeleteSubscriptionsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteSubscriptionsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2233, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2233, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2233, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2234, 0) node.BrowseName = QualifiedName('AddNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2234, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2234, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2234, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2235, 0) node.BrowseName = QualifiedName('AddReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2235, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2235, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2235, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2236, 0) node.BrowseName = QualifiedName('DeleteNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2236, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2236, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2236, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2237, 0) node.BrowseName = QualifiedName('DeleteReferencesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteReferencesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2237, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2237, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2237, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2238, 0) node.BrowseName = QualifiedName('BrowseCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2239, 0) node.BrowseName = QualifiedName('BrowseNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrowseNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2239, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2239, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2239, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2240, 0) node.BrowseName = QualifiedName('TranslateBrowsePathsToNodeIdsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TranslateBrowsePathsToNodeIdsCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2240, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2240, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2240, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2241, 0) node.BrowseName = QualifiedName('QueryFirstCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryFirstCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2242, 0) node.BrowseName = QualifiedName('QueryNextCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("QueryNextCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2730, 0) node.BrowseName = QualifiedName('RegisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RegisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2730, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2730, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2730, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2731, 0) node.BrowseName = QualifiedName('UnregisterNodesCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2197, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnregisterNodesCount") attrs.DataType = NumericNodeId(871, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2731, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2731, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2731, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2243, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsArrayType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsArrayType") attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsArrayType") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2243, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2243, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12860, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnostics', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2243, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2244, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionSecurityDiagnostics") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12861, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12862, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12863, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12864, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12865, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12866, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12867, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12868, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12869, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(83, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2243, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12861, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12862, 0) node.BrowseName = QualifiedName('ClientUserIdOfSession', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdOfSession") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12862, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12862, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12862, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12863, 0) node.BrowseName = QualifiedName('ClientUserIdHistory', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdHistory") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12863, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12863, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12863, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12864, 0) node.BrowseName = QualifiedName('AuthenticationMechanism', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AuthenticationMechanism") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12865, 0) node.BrowseName = QualifiedName('Encoding', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Encoding") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12865, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12865, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12865, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12866, 0) node.BrowseName = QualifiedName('TransportProtocol', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransportProtocol") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12867, 0) node.BrowseName = QualifiedName('SecurityMode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityMode") attrs.DataType = NumericNodeId(302, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12868, 0) node.BrowseName = QualifiedName('SecurityPolicyUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityPolicyUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12868, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12868, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12868, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12869, 0) node.BrowseName = QualifiedName('ClientCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12860, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12860, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2244, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsType") attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsType") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2245, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2246, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2247, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2248, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2249, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2250, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2251, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2252, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3058, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2245, 0) node.BrowseName = QualifiedName('SessionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2245, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2245, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2245, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2246, 0) node.BrowseName = QualifiedName('ClientUserIdOfSession', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdOfSession") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2246, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2246, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2246, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2247, 0) node.BrowseName = QualifiedName('ClientUserIdHistory', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserIdHistory") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2247, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2247, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2247, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2248, 0) node.BrowseName = QualifiedName('AuthenticationMechanism', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AuthenticationMechanism") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2248, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2248, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2248, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2249, 0) node.BrowseName = QualifiedName('Encoding', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Encoding") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2249, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2249, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2249, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2250, 0) node.BrowseName = QualifiedName('TransportProtocol', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransportProtocol") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2250, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2250, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2250, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2251, 0) node.BrowseName = QualifiedName('SecurityMode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityMode") attrs.DataType = NumericNodeId(302, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2252, 0) node.BrowseName = QualifiedName('SecurityPolicyUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityPolicyUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3058, 0) node.BrowseName = QualifiedName('ClientCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2244, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3058, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3058, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3058, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2244, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11487, 0) node.BrowseName = QualifiedName('OptionSetType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("OptionSetType") attrs.DisplayName = LocalizedText("OptionSetType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11487, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11488, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11487, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11701, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11487, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11488, 0) node.BrowseName = QualifiedName('OptionSetValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11487, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSetValues") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11488, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11488, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11488, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11487, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11701, 0) node.BrowseName = QualifiedName('BitMask', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11487, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BitMask") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11701, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11701, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11701, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11487, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16309, 0) node.BrowseName = QualifiedName('SelectionListType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("SelectionListType") attrs.DisplayName = LocalizedText("SelectionListType") attrs.DataType = NumericNodeId(862, 0) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17632, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17633, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(16309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17632, 0) node.BrowseName = QualifiedName('Selections', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16309, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Selections") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16309, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17633, 0) node.BrowseName = QualifiedName('SelectionDescriptions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16309, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SelectionDescriptions") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16309, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16312, 0) node.BrowseName = QualifiedName('RestrictToList', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16309, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RestrictToList") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16309, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17986, 0) node.BrowseName = QualifiedName('AudioVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("AudioVariableType") attrs.DisplayName = LocalizedText("AudioVariableType") attrs.DataType = NumericNodeId(16307, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17986, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17988, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17986, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17989, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17986, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17990, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17986, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17988, 0) node.BrowseName = QualifiedName('ListId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17986, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ListId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17988, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17988, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17988, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17986, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17989, 0) node.BrowseName = QualifiedName('AgencyId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17986, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AgencyId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17989, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17989, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17989, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17986, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17990, 0) node.BrowseName = QualifiedName('VersionId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17986, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("VersionId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17990, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17990, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17990, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17986, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3048, 0) node.BrowseName = QualifiedName('EventTypes', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(86, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("EventTypes") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(3048, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(86, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(3048, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3048, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2253, 0) node.BrowseName = QualifiedName('Server', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(85, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(2004, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Server") attrs.EventNotifier = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2254, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2255, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2256, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2267, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2994, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12885, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2274, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2295, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2296, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11715, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11492, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12873, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12749, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12886, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16313, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(85, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2004, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2254, 0) node.BrowseName = QualifiedName('ServerArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("The list of server URIs used by the server.") attrs.DisplayName = LocalizedText("ServerArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2254, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2254, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2255, 0) node.BrowseName = QualifiedName('NamespaceArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("The list of namespace URIs used by the server.") attrs.DisplayName = LocalizedText("NamespaceArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2255, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2255, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2256, 0) node.BrowseName = QualifiedName('ServerStatus', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2138, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("The current status of the server.") attrs.DisplayName = LocalizedText("ServerStatus") attrs.DataType = NumericNodeId(862, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2257, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2258, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2259, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2260, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2992, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2993, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2138, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2257, 0) node.BrowseName = QualifiedName('StartTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2256, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StartTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2257, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2257, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2258, 0) node.BrowseName = QualifiedName('CurrentTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2256, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2258, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2258, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2259, 0) node.BrowseName = QualifiedName('State', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2256, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("State") attrs.DataType = NumericNodeId(852, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2259, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2259, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2260, 0) node.BrowseName = QualifiedName('BuildInfo', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2256, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(3051, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BuildInfo") attrs.DataType = NumericNodeId(338, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2262, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2263, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2261, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2264, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2265, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2266, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3051, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2262, 0) node.BrowseName = QualifiedName('ProductUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2260, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2262, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2262, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2260, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2263, 0) node.BrowseName = QualifiedName('ManufacturerName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2260, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ManufacturerName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2263, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2263, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2260, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2261, 0) node.BrowseName = QualifiedName('ProductName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2260, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("ProductName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2261, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2261, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2260, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2264, 0) node.BrowseName = QualifiedName('SoftwareVersion', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2260, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("SoftwareVersion") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2264, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2264, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2260, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2265, 0) node.BrowseName = QualifiedName('BuildNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2260, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2265, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2265, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2260, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2266, 0) node.BrowseName = QualifiedName('BuildDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2260, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.DisplayName = LocalizedText("BuildDate") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2266, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2266, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2260, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2992, 0) node.BrowseName = QualifiedName('SecondsTillShutdown', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2256, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecondsTillShutdown") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2992, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2992, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2993, 0) node.BrowseName = QualifiedName('ShutdownReason', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2256, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ShutdownReason") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2993, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2993, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2267, 0) node.BrowseName = QualifiedName('ServiceLevel', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("A value indicating the level of service the server can provide. 255 indicates the best.") attrs.DisplayName = LocalizedText("ServiceLevel") attrs.DataType = ua.NodeId(ua.ObjectIds.Byte) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2267, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2267, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2994, 0) node.BrowseName = QualifiedName('Auditing', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("A flag indicating whether the server is currently generating audit events.") attrs.DisplayName = LocalizedText("Auditing") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2994, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2994, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12885, 0) node.BrowseName = QualifiedName('EstimatedReturnTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.MinimumSamplingInterval = 1000 attrs.Description = LocalizedText("Indicates the time at which the Server is expected to be available in the state RUNNING.") attrs.DisplayName = LocalizedText("EstimatedReturnTime") attrs.DataType = ua.NodeId(ua.ObjectIds.DateTime) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2268, 0) node.BrowseName = QualifiedName('ServerCapabilities', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2013, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes capabilities supported by the server.") attrs.DisplayName = LocalizedText("ServerCapabilities") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2269, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2271, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2272, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2735, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2736, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2737, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3704, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11702, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11703, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12911, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2996, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2997, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2013, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2269, 0) node.BrowseName = QualifiedName('ServerProfileArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of profiles supported by the server.") attrs.DisplayName = LocalizedText("ServerProfileArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2269, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2269, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2271, 0) node.BrowseName = QualifiedName('LocaleIdArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of locales supported by the server.") attrs.DisplayName = LocalizedText("LocaleIdArray") attrs.DataType = NumericNodeId(295, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2271, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2271, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2272, 0) node.BrowseName = QualifiedName('MinSupportedSampleRate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The minimum sampling interval supported by the server.") attrs.DisplayName = LocalizedText("MinSupportedSampleRate") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2272, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2272, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2735, 0) node.BrowseName = QualifiedName('MaxBrowseContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for Browse operations per session.") attrs.DisplayName = LocalizedText("MaxBrowseContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2735, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2735, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2736, 0) node.BrowseName = QualifiedName('MaxQueryContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for Query operations per session.") attrs.DisplayName = LocalizedText("MaxQueryContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2736, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2736, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2737, 0) node.BrowseName = QualifiedName('MaxHistoryContinuationPoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of continuation points for ReadHistory operations per session.") attrs.DisplayName = LocalizedText("MaxHistoryContinuationPoints") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2737, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2737, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3704, 0) node.BrowseName = QualifiedName('SoftwareCertificates', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The software certificates owned by the server.") attrs.DisplayName = LocalizedText("SoftwareCertificates") attrs.DataType = NumericNodeId(344, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11702, 0) node.BrowseName = QualifiedName('MaxArrayLength', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for an array value supported by the server.") attrs.DisplayName = LocalizedText("MaxArrayLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11702, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11702, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11703, 0) node.BrowseName = QualifiedName('MaxStringLength', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for a string value supported by the server.") attrs.DisplayName = LocalizedText("MaxStringLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11703, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11703, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12911, 0) node.BrowseName = QualifiedName('MaxByteStringLength', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum length for a byte string value supported by the server.") attrs.DisplayName = LocalizedText("MaxByteStringLength") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12911, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12911, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11704, 0) node.BrowseName = QualifiedName('OperationLimits', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11564, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Defines the limits supported by the server for different operations.") attrs.DisplayName = LocalizedText("OperationLimits") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11705, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12165, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12166, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11707, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12167, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12168, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11709, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11710, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11711, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11712, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11713, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11714, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11564, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11705, 0) node.BrowseName = QualifiedName('MaxNodesPerRead', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Read request.") attrs.DisplayName = LocalizedText("MaxNodesPerRead") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11705, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11705, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12165, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryReadData', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single data HistoryRead request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryReadData") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12166, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryReadEvents', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single event HistoryRead request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryReadEvents") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11707, 0) node.BrowseName = QualifiedName('MaxNodesPerWrite', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Write request.") attrs.DisplayName = LocalizedText("MaxNodesPerWrite") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11707, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11707, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12167, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryUpdateData', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single data HistoryUpdate request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryUpdateData") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12168, 0) node.BrowseName = QualifiedName('MaxNodesPerHistoryUpdateEvents', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single event HistoryUpdate request.") attrs.DisplayName = LocalizedText("MaxNodesPerHistoryUpdateEvents") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11709, 0) node.BrowseName = QualifiedName('MaxNodesPerMethodCall', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Call request.") attrs.DisplayName = LocalizedText("MaxNodesPerMethodCall") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11709, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11709, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11710, 0) node.BrowseName = QualifiedName('MaxNodesPerBrowse', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single Browse request.") attrs.DisplayName = LocalizedText("MaxNodesPerBrowse") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11710, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11710, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11711, 0) node.BrowseName = QualifiedName('MaxNodesPerRegisterNodes', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single RegisterNodes request.") attrs.DisplayName = LocalizedText("MaxNodesPerRegisterNodes") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11711, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11711, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11712, 0) node.BrowseName = QualifiedName('MaxNodesPerTranslateBrowsePathsToNodeIds', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single TranslateBrowsePathsToNodeIds request.") attrs.DisplayName = LocalizedText("MaxNodesPerTranslateBrowsePathsToNodeIds") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11712, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11712, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11713, 0) node.BrowseName = QualifiedName('MaxNodesPerNodeManagement', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single AddNodes, AddReferences, DeleteNodes or DeleteReferences request.") attrs.DisplayName = LocalizedText("MaxNodesPerNodeManagement") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11713, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11713, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11714, 0) node.BrowseName = QualifiedName('MaxMonitoredItemsPerCall', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum number of operations in a single MonitoredItem related request.") attrs.DisplayName = LocalizedText("MaxMonitoredItemsPerCall") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11714, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11714, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2996, 0) node.BrowseName = QualifiedName('ModellingRules', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A folder for the modelling rules supported by the server.") attrs.DisplayName = LocalizedText("ModellingRules") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2996, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2996, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2997, 0) node.BrowseName = QualifiedName('AggregateFunctions', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(61, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A folder for the real time aggregates supported by the server.") attrs.DisplayName = LocalizedText("AggregateFunctions") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2997, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2997, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15606, 0) node.BrowseName = QualifiedName('Roles', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2268, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(15607, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes the roles supported by the server.") attrs.DisplayName = LocalizedText("Roles") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15606, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16301, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15606, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16304, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15606, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15607, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15606, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2268, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16301, 0) node.BrowseName = QualifiedName('AddRole', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddRole") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16301, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16302, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16301, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16303, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16301, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16302, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16301, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'NamespaceUri' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16302, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16302, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16301, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16303, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16301, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16303, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16303, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16301, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16304, 0) node.BrowseName = QualifiedName('RemoveRole', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveRole") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16304, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16305, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16304, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16305, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16304, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16305, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16305, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16304, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2274, 0) node.BrowseName = QualifiedName('ServerDiagnostics', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2020, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Reports diagnostics about the server.") attrs.DisplayName = LocalizedText("ServerDiagnostics") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2289, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2290, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3706, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2294, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2020, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2275, 0) node.BrowseName = QualifiedName('ServerDiagnosticsSummary', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2274, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2150, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A summary of server level diagnostics.") attrs.DisplayName = LocalizedText("ServerDiagnosticsSummary") attrs.DataType = NumericNodeId(859, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2276, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2277, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2278, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2279, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3705, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2281, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2282, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2284, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2285, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2286, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2287, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2288, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2150, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2274, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2276, 0) node.BrowseName = QualifiedName('ServerViewCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerViewCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2276, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2276, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2277, 0) node.BrowseName = QualifiedName('CurrentSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2277, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2277, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2278, 0) node.BrowseName = QualifiedName('CumulatedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2279, 0) node.BrowseName = QualifiedName('SecurityRejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3705, 0) node.BrowseName = QualifiedName('RejectedSessionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedSessionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3705, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3705, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2281, 0) node.BrowseName = QualifiedName('SessionTimeoutCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionTimeoutCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2281, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2281, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2282, 0) node.BrowseName = QualifiedName('SessionAbortCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionAbortCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2282, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2282, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2284, 0) node.BrowseName = QualifiedName('PublishingIntervalCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishingIntervalCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2284, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2284, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2285, 0) node.BrowseName = QualifiedName('CurrentSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2286, 0) node.BrowseName = QualifiedName('CumulatedSubscriptionCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CumulatedSubscriptionCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2286, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2286, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2287, 0) node.BrowseName = QualifiedName('SecurityRejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SecurityRejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2287, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2287, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2288, 0) node.BrowseName = QualifiedName('RejectedRequestsCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2275, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RejectedRequestsCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2275, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2289, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2274, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2164, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each sampling interval supported by the server.") attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsArray") attrs.DataType = NumericNodeId(856, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2289, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2164, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2289, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2274, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2290, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2274, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2171, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each active subscription.") attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsArray") attrs.DataType = NumericNodeId(874, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2290, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2290, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2274, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3706, 0) node.BrowseName = QualifiedName('SessionsDiagnosticsSummary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2274, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2026, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("A summary of session level diagnostics.") attrs.DisplayName = LocalizedText("SessionsDiagnosticsSummary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3706, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3707, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3706, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3708, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3706, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2026, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3706, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2274, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3707, 0) node.BrowseName = QualifiedName('SessionDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3706, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2196, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionDiagnosticsArray") attrs.DataType = NumericNodeId(865, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3707, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2196, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3707, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3706, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3708, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3706, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2243, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A list of security related diagnostics for each active session.") attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsArray") attrs.DataType = NumericNodeId(868, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3708, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2243, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3708, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3706, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2294, 0) node.BrowseName = QualifiedName('EnabledFlag', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2274, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("If TRUE the diagnostics collection is enabled.") attrs.DisplayName = LocalizedText("EnabledFlag") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 attrs.AccessLevel = 3 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2294, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2294, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2274, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2295, 0) node.BrowseName = QualifiedName('VendorServerInfo', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2033, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Server information provided by the vendor.") attrs.DisplayName = LocalizedText("VendorServerInfo") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2033, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2295, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2296, 0) node.BrowseName = QualifiedName('ServerRedundancy', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2034, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes the redundancy capabilities of the server.") attrs.DisplayName = LocalizedText("ServerRedundancy") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3709, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11313, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11314, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14415, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2034, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2296, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3709, 0) node.BrowseName = QualifiedName('RedundancySupport', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2296, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates what style of redundancy is supported by the server.") attrs.DisplayName = LocalizedText("RedundancySupport") attrs.DataType = NumericNodeId(851, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3709, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3709, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2296, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11312, 0) node.BrowseName = QualifiedName('CurrentServerId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2296, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentServerId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2296, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11313, 0) node.BrowseName = QualifiedName('RedundantServerArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2296, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RedundantServerArray") attrs.DataType = NumericNodeId(853, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11313, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11313, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2296, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11314, 0) node.BrowseName = QualifiedName('ServerUriArray', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2296, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerUriArray") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2296, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14415, 0) node.BrowseName = QualifiedName('ServerNetworkGroups', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2296, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerNetworkGroups") attrs.DataType = NumericNodeId(11944, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(14415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2296, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11715, 0) node.BrowseName = QualifiedName('Namespaces', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11645, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("Describes the namespaces supported by the server.") attrs.DisplayName = LocalizedText("Namespaces") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11715, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11645, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11715, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11492, 0) node.BrowseName = QualifiedName('GetMonitoredItems', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("GetMonitoredItems") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11492, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11493, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11492, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11494, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11492, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11493, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11492, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11493, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11493, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11492, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11494, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11492, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ServerHandles' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = 1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'ClientHandles' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = 1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11494, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11494, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11492, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12873, 0) node.BrowseName = QualifiedName('ResendData', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("ResendData") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12874, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12874, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12873, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12874, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12874, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12873, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12749, 0) node.BrowseName = QualifiedName('SetSubscriptionDurable', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("SetSubscriptionDurable") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12750, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12751, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12750, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12749, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'LifetimeInHours' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12749, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12751, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12749, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RevisedLifetimeInHours' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12749, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12886, 0) node.BrowseName = QualifiedName('RequestServerStateChange', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RequestServerStateChange") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12886, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12887, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12886, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12887, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12886, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'State' extobj.DataType = NumericNodeId(852, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'EstimatedReturnTime' extobj.DataType = NumericNodeId(13, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'SecondsTillShutdown' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Reason' extobj.DataType = NumericNodeId(21, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Restart' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12887, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12887, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12886, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16313, 0) node.BrowseName = QualifiedName('CurrentTimeZone', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2253, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentTimeZone") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16313, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16313, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2253, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11737, 0) node.BrowseName = QualifiedName('BitFieldMaskDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(9, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.Description = LocalizedText("A mask of 32 bits that can be updated individually by using the top 32 bits as a mask.") attrs.DisplayName = LocalizedText("BitFieldMaskDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11737, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14533, 0) node.BrowseName = QualifiedName('KeyValuePair', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("KeyValuePair") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(14533, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15528, 0) node.BrowseName = QualifiedName('EndpointType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EndpointType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15528, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2299, 0) node.BrowseName = QualifiedName('StateMachineType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("StateMachineType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2299, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2769, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2299, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2770, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2299, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2769, 0) node.BrowseName = QualifiedName('CurrentState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2299, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2755, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2769, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3720, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2769, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2769, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2769, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2299, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3720, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2769, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2769, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2770, 0) node.BrowseName = QualifiedName('LastTransition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2299, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2762, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransition") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2770, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3724, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2770, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2770, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2770, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2299, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3724, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2770, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3724, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3724, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3724, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2770, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2755, 0) node.BrowseName = QualifiedName('StateVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("StateVariableType") attrs.DisplayName = LocalizedText("StateVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2756, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2757, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2758, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2759, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2756, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2755, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2756, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2756, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2756, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2757, 0) node.BrowseName = QualifiedName('Name', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2755, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Name") attrs.DataType = ua.NodeId(ua.ObjectIds.QualifiedName) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2757, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2757, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2757, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2758, 0) node.BrowseName = QualifiedName('Number', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2755, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Number") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2758, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2758, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2758, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2759, 0) node.BrowseName = QualifiedName('EffectiveDisplayName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2755, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EffectiveDisplayName") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2759, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2759, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2759, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2762, 0) node.BrowseName = QualifiedName('TransitionVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("TransitionVariableType") attrs.DisplayName = LocalizedText("TransitionVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2763, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2764, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2765, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2766, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11456, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2763, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2762, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2763, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2763, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2763, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2764, 0) node.BrowseName = QualifiedName('Name', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2762, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Name") attrs.DataType = ua.NodeId(ua.ObjectIds.QualifiedName) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2764, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2764, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2764, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2765, 0) node.BrowseName = QualifiedName('Number', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2762, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Number") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2765, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2765, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2765, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2766, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2762, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11456, 0) node.BrowseName = QualifiedName('EffectiveTransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2762, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EffectiveTransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11456, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11456, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11456, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2771, 0) node.BrowseName = QualifiedName('FiniteStateMachineType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2299, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("FiniteStateMachineType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2771, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2772, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2771, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2773, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2771, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17635, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2771, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17636, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2771, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2299, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2772, 0) node.BrowseName = QualifiedName('CurrentState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2760, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2772, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3728, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2772, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2760, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2772, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2772, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3728, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2772, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2772, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2773, 0) node.BrowseName = QualifiedName('LastTransition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2767, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransition") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2773, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3732, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2773, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2767, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2773, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2773, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3732, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2773, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3732, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3732, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3732, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2773, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17635, 0) node.BrowseName = QualifiedName('AvailableStates', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AvailableStates") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17635, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17635, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17635, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17636, 0) node.BrowseName = QualifiedName('AvailableTransitions', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(63, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AvailableTransitions") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17636, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17636, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17636, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2760, 0) node.BrowseName = QualifiedName('FiniteStateVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2755, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("FiniteStateVariableType") attrs.DisplayName = LocalizedText("FiniteStateVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2760, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2761, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2760, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2761, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2760, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2761, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2761, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2761, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2760, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2767, 0) node.BrowseName = QualifiedName('FiniteTransitionVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2762, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("FiniteTransitionVariableType") attrs.DisplayName = LocalizedText("FiniteTransitionVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2767, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2768, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2767, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2768, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2767, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2768, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2768, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2768, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2767, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2307, 0) node.BrowseName = QualifiedName('StateType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("StateType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2307, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2308, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2307, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2308, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2307, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2308, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2308, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2308, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2309, 0) node.BrowseName = QualifiedName('InitialStateType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2307, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("InitialStateType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2310, 0) node.BrowseName = QualifiedName('TransitionType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("TransitionType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2310, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2310, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2312, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2310, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2311, 0) node.BrowseName = QualifiedName('TransitionEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("TransitionEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2311, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2774, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2311, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2775, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2311, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2776, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2311, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2774, 0) node.BrowseName = QualifiedName('Transition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2311, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2762, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Transition") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2774, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3754, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2774, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2762, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2774, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2774, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2311, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3754, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2774, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2774, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2775, 0) node.BrowseName = QualifiedName('FromState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2311, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2755, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FromState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2775, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3746, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2775, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2775, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2775, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2311, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3746, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2775, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2775, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2776, 0) node.BrowseName = QualifiedName('ToState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2311, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2755, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ToState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2776, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3750, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2776, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2776, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2776, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2311, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3750, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2776, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2776, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2315, 0) node.BrowseName = QualifiedName('AuditUpdateStateEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2127, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditUpdateStateEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2315, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2777, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2315, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2778, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2315, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2127, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2777, 0) node.BrowseName = QualifiedName('OldStateId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2315, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OldStateId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2777, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2777, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2777, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2315, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2778, 0) node.BrowseName = QualifiedName('NewStateId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2315, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NewStateId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2778, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2778, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2778, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2315, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13353, 0) node.BrowseName = QualifiedName('FileDirectoryType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(61, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("FileDirectoryType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13354, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13387, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13390, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13393, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13395, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(13353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13354, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(13353, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(13353, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13355, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13358, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17718, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13363, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13355, 0) node.BrowseName = QualifiedName('CreateDirectory', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13354, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("CreateDirectory") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13355, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13356, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13355, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13357, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13355, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13355, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13354, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13356, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13355, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'DirectoryName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13356, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13356, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13356, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13355, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13357, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13355, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'DirectoryNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13357, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13357, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13357, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13355, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13358, 0) node.BrowseName = QualifiedName('CreateFile', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13354, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("CreateFile") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13358, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13359, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13358, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13360, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13358, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13358, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13354, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13359, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13358, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'RequestFileOpen' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13359, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13359, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13359, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13358, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13360, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13358, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13360, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13360, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13360, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13358, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17718, 0) node.BrowseName = QualifiedName('Delete', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13354, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Delete") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17718, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17719, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17718, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17718, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13354, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17719, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17718, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ObjectToDelete' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17719, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17719, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17719, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17718, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13363, 0) node.BrowseName = QualifiedName('MoveOrCopy', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13354, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("MoveOrCopy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13364, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13365, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13354, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13364, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13363, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ObjectToMoveOrCopy' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'TargetDirectory' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'CreateCopy' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'NewName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13363, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13365, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13363, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'NewNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13363, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13366, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(13353, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(11575, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13367, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13368, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13369, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13370, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13372, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13375, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13377, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13380, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13382, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13385, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11575, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13367, 0) node.BrowseName = QualifiedName('Size', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The size of the file in bytes.") attrs.DisplayName = LocalizedText("Size") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt64) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13368, 0) node.BrowseName = QualifiedName('Writable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Whether the file is writable.") attrs.DisplayName = LocalizedText("Writable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13369, 0) node.BrowseName = QualifiedName('UserWritable', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Whether the file is writable by the current user.") attrs.DisplayName = LocalizedText("UserWritable") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13370, 0) node.BrowseName = QualifiedName('OpenCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The current number of open file handles.") attrs.DisplayName = LocalizedText("OpenCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13372, 0) node.BrowseName = QualifiedName('Open', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Open") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13373, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13374, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13373, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13372, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Mode' extobj.DataType = NumericNodeId(3, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13372, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13374, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13372, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13372, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13375, 0) node.BrowseName = QualifiedName('Close', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Close") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13376, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13376, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13375, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13375, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13377, 0) node.BrowseName = QualifiedName('Read', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Read") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13379, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13378, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13377, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Length' extobj.DataType = NumericNodeId(6, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13377, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13379, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13377, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Data' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13377, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13380, 0) node.BrowseName = QualifiedName('Write', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Write") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13381, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13381, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Data' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13382, 0) node.BrowseName = QualifiedName('GetPosition', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("GetPosition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13383, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13384, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13382, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13383, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13382, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13383, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13382, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13384, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13382, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'Position' extobj.DataType = NumericNodeId(9, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13384, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13382, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13385, 0) node.BrowseName = QualifiedName('SetPosition', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13366, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("SetPosition") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13386, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13366, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13386, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13385, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'Position' extobj.DataType = NumericNodeId(9, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13386, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13385, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13387, 0) node.BrowseName = QualifiedName('CreateDirectory', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13353, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("CreateDirectory") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13388, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13389, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13388, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13387, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'DirectoryName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13387, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13389, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13387, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'DirectoryNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13387, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13390, 0) node.BrowseName = QualifiedName('CreateFile', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13353, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("CreateFile") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13391, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13392, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13391, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13390, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'RequestFileOpen' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13391, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13390, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13392, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13390, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13392, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13390, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13393, 0) node.BrowseName = QualifiedName('Delete', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13353, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Delete") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13394, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13393, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13394, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13393, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ObjectToDelete' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13394, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13393, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13395, 0) node.BrowseName = QualifiedName('MoveOrCopy', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(13353, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("MoveOrCopy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13396, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13397, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(13395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13396, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13395, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ObjectToMoveOrCopy' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'TargetDirectory' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'CreateCopy' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'NewName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13395, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13397, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13395, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'NewNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13395, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16314, 0) node.BrowseName = QualifiedName('FileSystem', 0) node.NodeClass = NodeClass.Object node.TypeDefinition = NumericNodeId(13353, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("FileSystem") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16348, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16351, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16354, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16356, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16314, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13353, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16348, 0) node.BrowseName = QualifiedName('CreateDirectory', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16314, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("CreateDirectory") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16348, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16349, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16348, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16350, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16348, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16314, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16349, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16348, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'DirectoryName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16349, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16349, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16348, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16350, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16348, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'DirectoryNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16350, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16350, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16348, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16351, 0) node.BrowseName = QualifiedName('CreateFile', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16314, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("CreateFile") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16351, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16352, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16351, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16353, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16351, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16314, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16352, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16351, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'RequestFileOpen' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16352, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16352, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16351, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16353, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16351, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16353, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16351, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16354, 0) node.BrowseName = QualifiedName('Delete', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16314, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Delete") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16355, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16354, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16314, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16355, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16354, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ObjectToDelete' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16355, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16355, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16354, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16356, 0) node.BrowseName = QualifiedName('MoveOrCopy', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16314, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("MoveOrCopy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16356, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16357, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16356, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16358, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16356, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16314, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16357, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16356, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ObjectToMoveOrCopy' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'TargetDirectory' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'CreateCopy' extobj.DataType = NumericNodeId(1, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'NewName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16357, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16357, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16356, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16358, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16356, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'NewNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16358, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16358, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16356, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15744, 0) node.BrowseName = QualifiedName('TemporaryFileTransferType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("TemporaryFileTransferType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15745, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15746, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15749, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15751, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15754, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15744, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15745, 0) node.BrowseName = QualifiedName('ClientProcessingTimeout', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15744, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientProcessingTimeout") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15745, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15745, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15745, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15744, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15746, 0) node.BrowseName = QualifiedName('GenerateFileForRead', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15744, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("GenerateFileForRead") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15747, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15748, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15746, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15744, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15747, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15746, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'GenerateOptions' extobj.DataType = NumericNodeId(24, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15747, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15746, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15748, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15746, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'CompletionStateMachine' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15748, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15746, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15749, 0) node.BrowseName = QualifiedName('GenerateFileForWrite', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15744, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("GenerateFileForWrite") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16359, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15750, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15749, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15744, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16359, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15749, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'GenerateOptions' extobj.DataType = NumericNodeId(24, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16359, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16359, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16359, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15749, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15750, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15749, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15750, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15749, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15751, 0) node.BrowseName = QualifiedName('CloseAndCommit', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15744, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("CloseAndCommit") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15752, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15753, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15744, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15752, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15751, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'FileHandle' extobj.DataType = NumericNodeId(7, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15752, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15752, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15752, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15751, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15753, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15751, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'CompletionStateMachine' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15753, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15753, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15753, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15751, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15754, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15744, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(15803, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15755, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15794, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15754, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15744, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15755, 0) node.BrowseName = QualifiedName('CurrentState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15754, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2760, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15756, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2760, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15755, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15754, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15756, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15755, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15756, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15756, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15756, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15755, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15794, 0) node.BrowseName = QualifiedName('Reset', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15754, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Reset") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15794, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15794, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15754, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15803, 0) node.BrowseName = QualifiedName('FileTransferStateMachineType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("FileTransferStateMachineType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15815, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15817, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15819, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15821, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15823, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15825, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15827, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15829, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15831, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15833, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15835, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15837, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15839, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15841, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15843, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15815, 0) node.BrowseName = QualifiedName('Idle', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2309, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Idle") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15815, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15816, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15815, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2309, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15815, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15816, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15815, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15816, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15815, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15817, 0) node.BrowseName = QualifiedName('ReadPrepare', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadPrepare") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15818, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15818, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15817, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15818, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15818, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15818, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15817, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15819, 0) node.BrowseName = QualifiedName('ReadTransfer', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadTransfer") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15819, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15820, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15819, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15819, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15820, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15819, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15820, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15820, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15820, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15819, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15821, 0) node.BrowseName = QualifiedName('ApplyWrite', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ApplyWrite") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15821, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15822, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15821, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15821, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15822, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15821, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15822, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15822, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15822, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15821, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15823, 0) node.BrowseName = QualifiedName('Error', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Error") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15823, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15824, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15823, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15823, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15824, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15823, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15824, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15824, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15824, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15823, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15825, 0) node.BrowseName = QualifiedName('IdleToReadPrepare', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("IdleToReadPrepare") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15826, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15825, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15826, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15825, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15825, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15827, 0) node.BrowseName = QualifiedName('ReadPrepareToReadTransfer', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadPrepareToReadTransfer") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15827, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15828, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15827, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15827, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15828, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15827, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15828, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15828, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15828, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15827, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15829, 0) node.BrowseName = QualifiedName('ReadTransferToIdle', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadTransferToIdle") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15830, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15830, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15829, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15829, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15831, 0) node.BrowseName = QualifiedName('IdleToApplyWrite', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("IdleToApplyWrite") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15832, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15832, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15831, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15831, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15833, 0) node.BrowseName = QualifiedName('ApplyWriteToIdle', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ApplyWriteToIdle") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15834, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15833, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15834, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15833, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15834, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15834, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15834, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15833, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15835, 0) node.BrowseName = QualifiedName('ReadPrepareToError', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadPrepareToError") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15836, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15836, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15835, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15836, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15835, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15837, 0) node.BrowseName = QualifiedName('ReadTransferToError', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ReadTransferToError") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15837, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15838, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15837, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15837, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15838, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15837, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15838, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15837, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15839, 0) node.BrowseName = QualifiedName('ApplyWriteToError', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ApplyWriteToError") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15840, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15839, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15840, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15839, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15840, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15839, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15841, 0) node.BrowseName = QualifiedName('ErrorToIdle', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ErrorToIdle") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15842, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15841, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15842, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15841, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15842, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15841, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15843, 0) node.BrowseName = QualifiedName('Reset', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15803, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Reset") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15803, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15607, 0) node.BrowseName = QualifiedName('RoleSetType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.Description = LocalizedText("A container for the roles supported by the server.") attrs.DisplayName = LocalizedText("RoleSetType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15607, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15608, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15607, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15997, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15607, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16000, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15607, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15608, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15607, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15608, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16162, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15608, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15608, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15608, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15607, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16162, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15608, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15608, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15997, 0) node.BrowseName = QualifiedName('AddRole', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15607, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddRole") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15997, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15998, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15997, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15999, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15997, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15997, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15607, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15998, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15997, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleName' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) extobj = ua.Argument() extobj.Name = 'NamespaceUri' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15998, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15998, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15998, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15997, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15999, 0) node.BrowseName = QualifiedName('OutputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15997, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15999, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15997, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16000, 0) node.BrowseName = QualifiedName('RemoveRole', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15607, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveRole") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16000, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16001, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16000, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16000, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15607, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16001, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16000, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RoleNodeId' extobj.DataType = NumericNodeId(17, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16000, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15620, 0) node.BrowseName = QualifiedName('RoleType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("RoleType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16173, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16174, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15410, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16175, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15411, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15624, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15626, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16176, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16180, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16182, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15620, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16173, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16174, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15410, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16175, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15411, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15624, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15625, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15624, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15625, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15624, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15625, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15625, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15625, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15624, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15626, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15626, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15627, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15626, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15626, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15627, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15626, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15627, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15627, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15627, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15626, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16176, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16177, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16177, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16176, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16176, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16178, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16179, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16179, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16178, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16178, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16180, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16181, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16181, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16180, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16180, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16182, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15620, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16183, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16183, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16182, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16182, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15632, 0) node.BrowseName = QualifiedName('IdentityCriteriaType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("IdentityCriteriaType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15633, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15632, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15633, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15632, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) value = [] extobj = ua.EnumValueType() extobj.Value = 1 extobj.DisplayName.Text = 'UserName' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 2 extobj.DisplayName.Text = 'Thumbprint' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 3 extobj.DisplayName.Text = 'Role' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 4 extobj.DisplayName.Text = 'GroupId' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 5 extobj.DisplayName.Text = 'Anonymous' value.append(extobj) extobj = ua.EnumValueType() extobj.Value = 6 extobj.DisplayName.Text = 'AuthenticatedUser' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(15633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15633, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15632, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15634, 0) node.BrowseName = QualifiedName('IdentityMappingRuleType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("IdentityMappingRuleType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15634, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17641, 0) node.BrowseName = QualifiedName('RoleMappingRuleChangedAuditEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2127, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("RoleMappingRuleChangedAuditEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17641, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2127, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15644, 0) node.BrowseName = QualifiedName('AnonymousRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role has very limited access for use when a Session has anonymous credentials.") attrs.DisplayName = LocalizedText("Anonymous") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16192, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16193, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15412, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16194, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15413, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15648, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15650, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16195, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16197, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16199, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16201, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15644, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16192, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16193, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16193, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16193, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15412, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16194, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16194, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16194, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15413, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15648, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15648, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15649, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15648, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15649, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15648, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15649, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15649, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15648, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15650, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15650, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15651, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15650, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15651, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15650, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15651, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15651, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15650, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16195, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16196, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16196, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16195, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16196, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16196, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16195, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16197, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16198, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16198, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16197, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16197, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16199, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16200, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16200, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16199, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16200, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16200, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16199, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16201, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15644, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16202, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15644, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16202, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16201, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16202, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16201, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15656, 0) node.BrowseName = QualifiedName('AuthenticatedUserRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role has limited access for use when a Session has valid non-anonymous credentials but has not been explicity granted access to a Role.") attrs.DisplayName = LocalizedText("AuthenticatedUser") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16203, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16204, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15414, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16205, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15415, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15660, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15662, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16206, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16208, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16210, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16212, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16203, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16203, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16204, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16204, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15414, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16205, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16205, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15415, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15660, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15660, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15661, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15660, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15661, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15660, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15661, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15661, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15660, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15662, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15662, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15663, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15662, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15663, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15662, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15663, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15663, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15662, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16206, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16207, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16206, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16207, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16206, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16207, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16206, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16208, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16209, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16209, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16208, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16209, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16209, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16208, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16210, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16210, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16211, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16210, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16211, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16210, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16211, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16211, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16210, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16212, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15656, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16212, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16213, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16212, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15656, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16213, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16212, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16212, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15668, 0) node.BrowseName = QualifiedName('ObserverRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.") attrs.DisplayName = LocalizedText("Observer") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16214, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16215, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15416, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16216, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15417, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15672, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15674, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16217, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16219, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16221, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16223, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16214, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16215, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15416, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16216, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15417, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15672, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15672, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15673, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15672, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15673, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15672, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15673, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15673, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15672, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15674, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15674, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15675, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15674, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15675, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15674, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15675, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15675, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15674, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16217, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16218, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16218, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16217, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16218, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16218, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16217, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16219, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16219, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16220, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16219, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16220, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16219, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16219, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16221, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16221, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16222, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16221, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16222, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16221, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16221, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16223, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15668, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16224, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15668, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16224, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16223, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16223, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15680, 0) node.BrowseName = QualifiedName('OperatorRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events.") attrs.DisplayName = LocalizedText("Operator") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16225, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16226, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15418, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16227, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15423, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15684, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15686, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16228, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16230, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16232, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16234, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16225, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16226, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16226, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16226, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15418, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15418, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16227, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16227, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16227, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15423, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15684, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15684, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15685, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15684, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15685, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15684, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15685, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15685, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15684, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15686, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15686, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15687, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15686, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15687, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15686, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15687, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15687, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15686, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16228, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16228, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16229, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16228, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16229, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16228, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16229, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16229, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16228, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16230, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16230, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16231, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16230, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16231, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16230, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16231, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16231, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16230, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16232, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16232, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16233, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16232, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16233, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16232, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16233, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16233, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16232, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16234, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15680, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16234, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16235, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16234, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15680, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16235, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16234, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16235, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16235, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16234, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16036, 0) node.BrowseName = QualifiedName('EngineerRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role is allowed to browse, read live data, read and update historical data/events, call methods or subscribe to data/events.") attrs.DisplayName = LocalizedText("Engineer") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16236, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16237, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15424, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16238, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15425, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16041, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16043, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16239, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16241, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16243, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16245, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16236, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16236, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16236, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16237, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16237, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16237, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15424, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16238, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15425, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15425, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15425, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16041, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16042, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16042, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16041, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16042, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16042, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16043, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16044, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16044, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16043, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16044, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16044, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16043, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16239, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16239, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16240, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16239, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16240, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16239, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16240, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16240, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16239, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16241, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16242, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16242, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16241, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16241, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16243, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16243, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16244, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16243, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16244, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16243, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16243, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16245, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16036, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16245, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16246, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16245, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16036, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16246, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16245, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16246, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16246, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16245, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15692, 0) node.BrowseName = QualifiedName('SupervisorRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role is allowed to browse, read live data, read and historical data/events, call methods or subscribe to data/events.") attrs.DisplayName = LocalizedText("Supervisor") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16247, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16248, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15426, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16249, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15427, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15696, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15698, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16250, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16252, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16254, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16256, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16247, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16247, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16247, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16248, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16248, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16248, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15426, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15426, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15426, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16249, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16249, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16249, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15427, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15427, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15427, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15696, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15696, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15697, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15696, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15697, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15696, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15697, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15697, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15696, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15698, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15699, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15699, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15698, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15699, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15698, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16250, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16250, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16251, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16250, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16251, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16250, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16251, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16250, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16252, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16253, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16253, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16252, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16253, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16254, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16254, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16255, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16254, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16255, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16254, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16255, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16255, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16254, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16256, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15692, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16257, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16256, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15692, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16257, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16256, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16257, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16257, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16256, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15716, 0) node.BrowseName = QualifiedName('ConfigureAdminRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role is allowed to change the non-security related configuration settings.") attrs.DisplayName = LocalizedText("ConfigureAdmin") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16269, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16270, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15428, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16271, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15429, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15720, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15722, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16272, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16274, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16276, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16278, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15716, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16269, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16269, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16269, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16270, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16270, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16270, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15428, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15428, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15428, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16271, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16271, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16271, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15429, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15429, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15720, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15721, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15720, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15721, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15720, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15721, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15721, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15720, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15722, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15722, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15723, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15722, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15723, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15722, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15723, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15723, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15722, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16272, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16272, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16273, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16272, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16273, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16272, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16273, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16273, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16272, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16274, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16275, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16274, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16275, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16274, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16275, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16274, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16276, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16276, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16277, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16276, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16277, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16276, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16277, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16277, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16276, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16278, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15716, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16279, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15716, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16279, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16278, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16278, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15704, 0) node.BrowseName = QualifiedName('SecurityAdminRole', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15606, 0) node.ReferenceTypeId = NumericNodeId(35, 0) node.TypeDefinition = NumericNodeId(15620, 0) attrs = ua.ObjectAttributes() attrs.Description = LocalizedText("The Role is allowed to change security related settings.") attrs.DisplayName = LocalizedText("SecurityAdmin") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16258, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16259, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15430, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16260, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15527, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15708, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15710, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16261, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16263, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16265, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16267, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(35, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15606, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15704, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15620, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16258, 0) node.BrowseName = QualifiedName('Identities', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Identities") attrs.DataType = NumericNodeId(15634, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16258, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16258, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16259, 0) node.BrowseName = QualifiedName('Applications', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Applications") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16259, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16259, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15430, 0) node.BrowseName = QualifiedName('ApplicationsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15430, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15430, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16260, 0) node.BrowseName = QualifiedName('Endpoints', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Endpoints") attrs.DataType = NumericNodeId(15528, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16260, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15527, 0) node.BrowseName = QualifiedName('EndpointsExclude', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointsExclude") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15527, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15527, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15708, 0) node.BrowseName = QualifiedName('AddIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15708, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15709, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15708, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15709, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15708, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15709, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15709, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15708, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15710, 0) node.BrowseName = QualifiedName('RemoveIdentity', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveIdentity") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15710, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15711, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15710, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15711, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(15710, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(15634, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15711, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15711, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15710, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16261, 0) node.BrowseName = QualifiedName('AddApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16261, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16262, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16261, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16262, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16261, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16262, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16262, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16261, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16263, 0) node.BrowseName = QualifiedName('RemoveApplication', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveApplication") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16263, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16264, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16263, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16264, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16263, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16264, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16264, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16263, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16265, 0) node.BrowseName = QualifiedName('AddEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16265, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16266, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16265, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16266, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16265, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToAdd' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16266, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16266, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16265, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16267, 0) node.BrowseName = QualifiedName('RemoveEndpoint', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(15704, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveEndpoint") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16267, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16268, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16267, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15704, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16268, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16267, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'RuleToRemove' extobj.DataType = NumericNodeId(12, 0) extobj.ValueRank = -1 value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16268, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16267, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(338, 0) node.BrowseName = QualifiedName('BuildInfo', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("BuildInfo") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(851, 0) node.BrowseName = QualifiedName('RedundancySupport', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("RedundancySupport") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7611, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7611, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(851, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('None'),LocalizedText('Cold'),LocalizedText('Warm'),LocalizedText('Hot'),LocalizedText('Transparent'),LocalizedText('HotAndMirrored')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7611, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7611, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7611, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(851, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(852, 0) node.BrowseName = QualifiedName('ServerState', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ServerState") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7612, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7612, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(852, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Running'),LocalizedText('Failed'),LocalizedText('NoConfiguration'),LocalizedText('Suspended'),LocalizedText('Shutdown'),LocalizedText('Test'),LocalizedText('CommunicationFault'),LocalizedText('Unknown')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7612, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(7612, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7612, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(852, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(853, 0) node.BrowseName = QualifiedName('RedundantServerDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("RedundantServerDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(853, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11943, 0) node.BrowseName = QualifiedName('EndpointUrlListDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EndpointUrlListDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11944, 0) node.BrowseName = QualifiedName('NetworkGroupDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("NetworkGroupDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11944, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(856, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnosticsDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(856, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(859, 0) node.BrowseName = QualifiedName('ServerDiagnosticsSummaryDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ServerDiagnosticsSummaryDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(859, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(862, 0) node.BrowseName = QualifiedName('ServerStatusDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ServerStatusDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(862, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(865, 0) node.BrowseName = QualifiedName('SessionDiagnosticsDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("SessionDiagnosticsDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(865, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(868, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(868, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(871, 0) node.BrowseName = QualifiedName('ServiceCounterDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ServiceCounterDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(871, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(299, 0) node.BrowseName = QualifiedName('StatusResult', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("StatusResult") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(299, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(874, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(874, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(877, 0) node.BrowseName = QualifiedName('ModelChangeStructureDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ModelChangeStructureDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(877, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(897, 0) node.BrowseName = QualifiedName('SemanticChangeStructureDataType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("SemanticChangeStructureDataType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(897, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14846, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(14533, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14533, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14873, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15671, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15528, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15671, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15528, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(15671, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15734, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15671, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15736, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15634, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15736, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15634, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(15736, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15738, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15736, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(340, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(338, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(338, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7692, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(855, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(853, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(853, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8208, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11957, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11943, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(11957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(11957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11959, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11957, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11958, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11944, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(11958, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11944, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(11958, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11962, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11958, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(858, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(856, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(856, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8211, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(861, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(859, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(859, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8214, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(864, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(862, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(862, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8217, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(867, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(865, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(865, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8220, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(870, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(868, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(868, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8223, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(873, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(871, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(871, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8226, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(301, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(299, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(301, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(299, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(301, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7659, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(301, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(876, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(874, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(874, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8229, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(879, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(877, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(879, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(877, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(879, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8232, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(879, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(899, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(897, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(899, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(897, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(899, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8235, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(899, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7617, 0) node.BrowseName = QualifiedName('Opc.Ua', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(93, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(72, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Opc.Ua") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.Value = ua.Variant(b'\r\n\r\n \r\n\r\n \r\n An XML element encoded as a UTF-8 string.\r\n \r\n \r\n \r\n\r\n \r\n The possible encodings for a NodeId value.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n An identifier for a node in a UA server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n An identifier for a node in a UA server address space qualified with a complete namespace string.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A 32-bit status code value.\r\n \r\n\r\n \r\n A recursive structure containing diagnostic information associated with a status code.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A string qualified with a namespace index.\r\n \r\n \r\n \r\n\r\n \r\n A string qualified with a namespace index.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A value with an associated timestamp, and quality.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A serialized object prefixed with its data type identifier.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A union of several types.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n An image encoded in BMP format.\r\n \r\n\r\n \r\n An image encoded in GIF format.\r\n \r\n\r\n \r\n An image encoded in JPEG format.\r\n \r\n\r\n \r\n An image encoded in PNG format.\r\n \r\n\r\n \r\n An image encoded in PNG format.\r\n \r\n\r\n \r\n A mask of 32 bits that can be updated individually by using the top 32 bits as a mask.\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n The type of identifier used in a node id.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A mask specifying the class of the node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies the attributes which belong to all nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies the attributes which belong to object nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies the attributes which belong to object type nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies the attributes which belong to variable nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies the attributes which belong to variable type nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies the attributes which belong to reference type nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies the attributes which belong to method nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Specifies a reference which belongs to a node.\r\n \r\n \r\n \r\n \r\n\r\n \r\n An argument for a method.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A mapping between a value of an enumerated type and a name and description.\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask.\r\n \r\n \r\n \r\n\r\n \r\n This abstract DataType is the base DataType for all union DataTypes.\r\n \r\n\r\n \r\n A string normalized based on the rules in the unicode specification.\r\n \r\n\r\n \r\n An arbitraty numeric value.\r\n \r\n\r\n \r\n A period of time formatted as defined in ISO 8601-2000.\r\n \r\n\r\n \r\n A time formatted as defined in ISO 8601-2000.\r\n \r\n\r\n \r\n A date formatted as defined in ISO 8601-2000.\r\n \r\n\r\n \r\n A period of time measured in milliseconds.\r\n \r\n\r\n \r\n A date/time value specified in Universal Coordinated Time (UTC).\r\n \r\n\r\n \r\n An identifier for a user locale.\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n A numeric identifier for an object.\r\n \r\n\r\n \r\n The types of applications.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Describes an application and how to find it.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The header passed with every server request.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The header passed with every server response.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n The response returned by all services when there is a service level error.\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Finds the servers known to the discovery server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Finds the servers known to the discovery server.\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A certificate for an instance of an application.\r\n \r\n\r\n \r\n The type of security to use on a message.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The possible user token types.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Describes a user token that can be used with a server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The description of a endpoint that can be used to access a server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Gets the endpoints used by the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Gets the endpoints used by the server.\r\n \r\n \r\n \r\n \r\n\r\n \r\n The information required to register a server with a discovery server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Registers a server with the discovery server.\r\n \r\n \r\n \r\n\r\n \r\n Registers a server with the discovery server.\r\n \r\n \r\n\r\n \r\n A base type for discovery configuration information.\r\n \r\n\r\n \r\n The discovery information needed for mDNS registration.\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Indicates whether a token if being created or renewed.\r\n \r\n \r\n \r\n\r\n \r\n The token that identifies a set of keys for an active secure channel.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Creates a secure channel with a server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Creates a secure channel with a server.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Closes a secure channel.\r\n \r\n \r\n\r\n \r\n Closes a secure channel.\r\n \r\n \r\n\r\n \r\n A software certificate with a digital signature.\r\n \r\n \r\n \r\n\r\n \r\n A unique identifier for a session used to authenticate requests.\r\n \r\n\r\n \r\n A digital signature.\r\n \r\n \r\n \r\n\r\n \r\n Creates a new session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Creates a new session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A base type for a user identity token.\r\n \r\n \r\n\r\n \r\n A token representing an anonymous user.\r\n \r\n \r\n\r\n \r\n A token representing a user identified by a user name and password.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A token representing a user identified by an X509 certificate.\r\n \r\n \r\n \r\n\r\n \r\n A token representing a user identified by a WS-Security XML token.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Activates a session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Activates a session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Closes a session with the server.\r\n \r\n \r\n \r\n\r\n \r\n Closes a session with the server.\r\n \r\n \r\n\r\n \r\n Cancels an outstanding request.\r\n \r\n \r\n \r\n\r\n \r\n Cancels an outstanding request.\r\n \r\n \r\n \r\n\r\n \r\n The bits used to specify default attributes for a new node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The base attributes for all nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for an object node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for a variable node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for a method node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for an object type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for a variable type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for a reference type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for a data type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The attributes for a view node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A request to add a node to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A result of an add node operation.\r\n \r\n \r\n \r\n\r\n \r\n Adds one or more nodes to the server address space.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Adds one or more nodes to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A request to add a reference to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Adds one or more references to the server address space.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Adds one or more references to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A request to delete a node to the server address space.\r\n \r\n \r\n \r\n\r\n \r\n Delete one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Delete one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A request to delete a node from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Delete one or more references from the server address space.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Delete one or more references from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Define bits used to indicate which attributes are writable.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The directions of the references to return.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The view to browse.\r\n \r\n \r\n \r\n \r\n\r\n \r\n A request to browse the the references from a node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A bit mask which specifies what should be returned in a browse response.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n The description of a reference.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n An identifier for a suspended query or browse operation.\r\n \r\n\r\n \r\n The result of a browse operation.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Browse the references for one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Browse the references for one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Continues one or more browse operations.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Continues one or more browse operations.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n An element in a relative path.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n A relative path constructed from reference types and browse names.\r\n \r\n \r\n \r\n\r\n \r\n A request to translate a path into a node id.\r\n \r\n \r\n \r\n\r\n \r\n The target of the translated path.\r\n \r\n \r\n \r\n\r\n \r\n The result of a translate opearation.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Translates one or more paths in the server address space.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Translates one or more paths in the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Registers one or more nodes for repeated use within a session.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Registers one or more nodes for repeated use within a session.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Unregisters one or more previously registered nodes.\r\n \r\n \r\n \r\n \r\n\r\n \r\n Unregisters one or more previously registered nodes.\r\n \r\n \r\n\r\n \r\n A monotonically increasing value.\r\n \r\n\r\n \r\n Specifies a range of array indexes.\r\n \r\n\r\n \r\n A time value specified as HH:MM:SS.SSS.\r\n \r\n\r\n \r\n A date value.\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n', ua.VariantType.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7619, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15037, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14873, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15734, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15738, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12681, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15741, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14855, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15599, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15602, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15501, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15521, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14849, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14852, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14876, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15766, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15769, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14324, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15772, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15775, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15778, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15781, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15784, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15787, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21156, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15793, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15854, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15857, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15860, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21159, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21162, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21165, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15866, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15869, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15872, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15877, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15880, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15883, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15886, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21002, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15889, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21168, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15895, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15898, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15919, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15922, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15925, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15931, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17469, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15524, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15940, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15946, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16131, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18181, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18184, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18187, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7650, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7656, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14870, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12767, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12770, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8914, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7665, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12213, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7662, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7668, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7782, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12902, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12905, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7698, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7671, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7674, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7677, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7680, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7683, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7728, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7731, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7734, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7737, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12718, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12721, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7686, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7929, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7932, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7935, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7938, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7941, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7944, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7947, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8004, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8067, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8073, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8076, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7692, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8208, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11959, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11962, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8211, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8214, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8217, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8220, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8223, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8226, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7659, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8229, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8232, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8235, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8238, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8241, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12183, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12186, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12091, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12094, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8247, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15398, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8244, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(93, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7617, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(72, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7619, 0) node.BrowseName = QualifiedName('NamespaceUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A URI that uniquely identifies the dictionary.") attrs.DisplayName = LocalizedText("NamespaceUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('http://opcfoundation.org/UA/', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7619, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(7619, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15037, 0) node.BrowseName = QualifiedName('Deprecated', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute.") attrs.DisplayName = LocalizedText("Deprecated") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.Value = ua.Variant(True, ua.VariantType.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14873, 0) node.BrowseName = QualifiedName('KeyValuePair', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("KeyValuePair") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('KeyValuePair', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15734, 0) node.BrowseName = QualifiedName('EndpointType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EndpointType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15734, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15734, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15738, 0) node.BrowseName = QualifiedName('IdentityMappingRuleType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("IdentityMappingRuleType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('IdentityMappingRuleType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15738, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15738, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12681, 0) node.BrowseName = QualifiedName('TrustListDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrustListDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('TrustListDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12681, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12681, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15741, 0) node.BrowseName = QualifiedName('DataTypeSchemaHeader', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataTypeSchemaHeader") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataTypeSchemaHeader', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15741, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15741, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14855, 0) node.BrowseName = QualifiedName('DataTypeDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataTypeDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataTypeDescription', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15599, 0) node.BrowseName = QualifiedName('StructureDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StructureDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('StructureDescription', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15599, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15599, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15602, 0) node.BrowseName = QualifiedName('EnumDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EnumDescription', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15602, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15602, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15501, 0) node.BrowseName = QualifiedName('SimpleTypeDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SimpleTypeDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SimpleTypeDescription', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15501, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15501, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15521, 0) node.BrowseName = QualifiedName('UABinaryFileDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UABinaryFileDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('UABinaryFileDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15521, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15521, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14849, 0) node.BrowseName = QualifiedName('DataSetMetaDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetMetaDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataSetMetaDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14852, 0) node.BrowseName = QualifiedName('FieldMetaData', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FieldMetaData") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('FieldMetaData', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14876, 0) node.BrowseName = QualifiedName('ConfigurationVersionDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConfigurationVersionDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ConfigurationVersionDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15766, 0) node.BrowseName = QualifiedName('PublishedDataSetDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedDataSetDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PublishedDataSetDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15766, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15769, 0) node.BrowseName = QualifiedName('PublishedDataSetSourceDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedDataSetSourceDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PublishedDataSetSourceDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15769, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15769, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14324, 0) node.BrowseName = QualifiedName('PublishedVariableDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedVariableDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PublishedVariableDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15772, 0) node.BrowseName = QualifiedName('PublishedDataItemsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedDataItemsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PublishedDataItemsDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15772, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15772, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15775, 0) node.BrowseName = QualifiedName('PublishedEventsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedEventsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PublishedEventsDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15775, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15775, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15778, 0) node.BrowseName = QualifiedName('DataSetWriterDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetWriterDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataSetWriterDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15778, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15778, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15781, 0) node.BrowseName = QualifiedName('DataSetWriterTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetWriterTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataSetWriterTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15781, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15781, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15784, 0) node.BrowseName = QualifiedName('DataSetWriterMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetWriterMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataSetWriterMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15784, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15787, 0) node.BrowseName = QualifiedName('PubSubGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PubSubGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PubSubGroupDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15787, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15787, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21156, 0) node.BrowseName = QualifiedName('WriterGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriterGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('WriterGroupDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21156, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15793, 0) node.BrowseName = QualifiedName('WriterGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriterGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('WriterGroupTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15793, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15793, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15854, 0) node.BrowseName = QualifiedName('WriterGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriterGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('WriterGroupMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15857, 0) node.BrowseName = QualifiedName('PubSubConnectionDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PubSubConnectionDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PubSubConnectionDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15860, 0) node.BrowseName = QualifiedName('ConnectionTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConnectionTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ConnectionTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21159, 0) node.BrowseName = QualifiedName('NetworkAddressDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NetworkAddressDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('NetworkAddressDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21159, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21162, 0) node.BrowseName = QualifiedName('NetworkAddressUrlDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NetworkAddressUrlDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('NetworkAddressUrlDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21162, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21165, 0) node.BrowseName = QualifiedName('ReaderGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReaderGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ReaderGroupDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15866, 0) node.BrowseName = QualifiedName('ReaderGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReaderGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ReaderGroupTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15869, 0) node.BrowseName = QualifiedName('ReaderGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReaderGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ReaderGroupMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15872, 0) node.BrowseName = QualifiedName('DataSetReaderDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetReaderDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataSetReaderDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15877, 0) node.BrowseName = QualifiedName('DataSetReaderTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetReaderTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataSetReaderTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15877, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15877, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15880, 0) node.BrowseName = QualifiedName('DataSetReaderMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetReaderMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataSetReaderMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15880, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15880, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15883, 0) node.BrowseName = QualifiedName('SubscribedDataSetDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscribedDataSetDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SubscribedDataSetDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15883, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15883, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15886, 0) node.BrowseName = QualifiedName('TargetVariablesDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TargetVariablesDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('TargetVariablesDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15886, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15886, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21002, 0) node.BrowseName = QualifiedName('FieldTargetDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FieldTargetDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('FieldTargetDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21002, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21002, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15889, 0) node.BrowseName = QualifiedName('SubscribedDataSetMirrorDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscribedDataSetMirrorDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SubscribedDataSetMirrorDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21168, 0) node.BrowseName = QualifiedName('PubSubConfigurationDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PubSubConfigurationDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('PubSubConfigurationDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15895, 0) node.BrowseName = QualifiedName('UadpWriterGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UadpWriterGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('UadpWriterGroupMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15895, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15898, 0) node.BrowseName = QualifiedName('UadpDataSetWriterMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UadpDataSetWriterMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('UadpDataSetWriterMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15919, 0) node.BrowseName = QualifiedName('UadpDataSetReaderMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UadpDataSetReaderMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('UadpDataSetReaderMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15919, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15919, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15922, 0) node.BrowseName = QualifiedName('JsonWriterGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("JsonWriterGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('JsonWriterGroupMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15922, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15922, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15925, 0) node.BrowseName = QualifiedName('JsonDataSetWriterMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("JsonDataSetWriterMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('JsonDataSetWriterMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15925, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15925, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15931, 0) node.BrowseName = QualifiedName('JsonDataSetReaderMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("JsonDataSetReaderMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('JsonDataSetReaderMessageDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15931, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15931, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17469, 0) node.BrowseName = QualifiedName('DatagramConnectionTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DatagramConnectionTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DatagramConnectionTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17469, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17469, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21171, 0) node.BrowseName = QualifiedName('DatagramWriterGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DatagramWriterGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DatagramWriterGroupTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15524, 0) node.BrowseName = QualifiedName('BrokerConnectionTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerConnectionTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('BrokerConnectionTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15524, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15524, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15940, 0) node.BrowseName = QualifiedName('BrokerWriterGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerWriterGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('BrokerWriterGroupTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15943, 0) node.BrowseName = QualifiedName('BrokerDataSetWriterTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerDataSetWriterTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('BrokerDataSetWriterTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15946, 0) node.BrowseName = QualifiedName('BrokerDataSetReaderTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerDataSetReaderTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('BrokerDataSetReaderTransportDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15946, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15946, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16131, 0) node.BrowseName = QualifiedName('RolePermissionType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RolePermissionType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('RolePermissionType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16131, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18178, 0) node.BrowseName = QualifiedName('DataTypeDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataTypeDefinition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DataTypeDefinition', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18181, 0) node.BrowseName = QualifiedName('StructureField', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StructureField") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('StructureField', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18184, 0) node.BrowseName = QualifiedName('StructureDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StructureDefinition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('StructureDefinition', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18187, 0) node.BrowseName = QualifiedName('EnumDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumDefinition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EnumDefinition', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18187, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7650, 0) node.BrowseName = QualifiedName('Argument', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Argument") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('Argument', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7650, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7650, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7656, 0) node.BrowseName = QualifiedName('EnumValueType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValueType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EnumValueType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7656, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14870, 0) node.BrowseName = QualifiedName('EnumField', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumField") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EnumField', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12767, 0) node.BrowseName = QualifiedName('OptionSet', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSet") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('OptionSet', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12767, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12767, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12770, 0) node.BrowseName = QualifiedName('Union', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Union") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('Union', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12770, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12770, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8914, 0) node.BrowseName = QualifiedName('TimeZoneDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TimeZoneDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('TimeZoneDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8914, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8914, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7665, 0) node.BrowseName = QualifiedName('ApplicationDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ApplicationDescription', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7665, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7665, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12213, 0) node.BrowseName = QualifiedName('ServerOnNetwork', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerOnNetwork") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ServerOnNetwork', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7662, 0) node.BrowseName = QualifiedName('UserTokenPolicy', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UserTokenPolicy") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('UserTokenPolicy', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7662, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7662, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7668, 0) node.BrowseName = QualifiedName('EndpointDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EndpointDescription', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7668, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7782, 0) node.BrowseName = QualifiedName('RegisteredServer', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RegisteredServer") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('RegisteredServer', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12902, 0) node.BrowseName = QualifiedName('DiscoveryConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DiscoveryConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DiscoveryConfiguration', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12902, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12902, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12905, 0) node.BrowseName = QualifiedName('MdnsDiscoveryConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MdnsDiscoveryConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('MdnsDiscoveryConfiguration', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12905, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12905, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7698, 0) node.BrowseName = QualifiedName('SignedSoftwareCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SignedSoftwareCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SignedSoftwareCertificate', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7698, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7671, 0) node.BrowseName = QualifiedName('UserIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UserIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('UserIdentityToken', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7671, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7671, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7674, 0) node.BrowseName = QualifiedName('AnonymousIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AnonymousIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('AnonymousIdentityToken', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7674, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7674, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7677, 0) node.BrowseName = QualifiedName('UserNameIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UserNameIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('UserNameIdentityToken', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7677, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7677, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7680, 0) node.BrowseName = QualifiedName('X509IdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("X509IdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('X509IdentityToken', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7680, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7683, 0) node.BrowseName = QualifiedName('IssuedIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("IssuedIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('IssuedIdentityToken', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7683, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7683, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7728, 0) node.BrowseName = QualifiedName('AddNodesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddNodesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('AddNodesItem', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7731, 0) node.BrowseName = QualifiedName('AddReferencesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddReferencesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('AddReferencesItem', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7731, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7731, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7734, 0) node.BrowseName = QualifiedName('DeleteNodesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteNodesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DeleteNodesItem', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7734, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7734, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7737, 0) node.BrowseName = QualifiedName('DeleteReferencesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteReferencesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DeleteReferencesItem', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7737, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7737, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12718, 0) node.BrowseName = QualifiedName('RelativePathElement', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RelativePathElement") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('RelativePathElement', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12718, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12718, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12721, 0) node.BrowseName = QualifiedName('RelativePath', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RelativePath") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('RelativePath', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12721, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12721, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7686, 0) node.BrowseName = QualifiedName('EndpointConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EndpointConfiguration', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7686, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7686, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7929, 0) node.BrowseName = QualifiedName('ContentFilterElement', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ContentFilterElement") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ContentFilterElement', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7932, 0) node.BrowseName = QualifiedName('ContentFilter', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ContentFilter") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ContentFilter', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7935, 0) node.BrowseName = QualifiedName('FilterOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FilterOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('FilterOperand', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7938, 0) node.BrowseName = QualifiedName('ElementOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ElementOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ElementOperand', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7938, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7938, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7941, 0) node.BrowseName = QualifiedName('LiteralOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LiteralOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('LiteralOperand', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7941, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7941, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7944, 0) node.BrowseName = QualifiedName('AttributeOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AttributeOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('AttributeOperand', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7944, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7944, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7947, 0) node.BrowseName = QualifiedName('SimpleAttributeOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SimpleAttributeOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SimpleAttributeOperand', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7947, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7947, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8004, 0) node.BrowseName = QualifiedName('HistoryEvent', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryEvent") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('HistoryEvent', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8067, 0) node.BrowseName = QualifiedName('MonitoringFilter', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MonitoringFilter") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('MonitoringFilter', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8073, 0) node.BrowseName = QualifiedName('EventFilter', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EventFilter") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EventFilter', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8076, 0) node.BrowseName = QualifiedName('AggregateConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AggregateConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('AggregateConfiguration', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8172, 0) node.BrowseName = QualifiedName('HistoryEventFieldList', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryEventFieldList") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('HistoryEventFieldList', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7692, 0) node.BrowseName = QualifiedName('BuildInfo', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BuildInfo") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('BuildInfo', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7692, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8208, 0) node.BrowseName = QualifiedName('RedundantServerDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RedundantServerDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('RedundantServerDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8208, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11959, 0) node.BrowseName = QualifiedName('EndpointUrlListDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointUrlListDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EndpointUrlListDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11959, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11959, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11962, 0) node.BrowseName = QualifiedName('NetworkGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NetworkGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('NetworkGroupDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11962, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11962, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8211, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SamplingIntervalDiagnosticsDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8211, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8211, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8214, 0) node.BrowseName = QualifiedName('ServerDiagnosticsSummaryDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerDiagnosticsSummaryDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ServerDiagnosticsSummaryDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8217, 0) node.BrowseName = QualifiedName('ServerStatusDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerStatusDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ServerStatusDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8220, 0) node.BrowseName = QualifiedName('SessionDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SessionDiagnosticsDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8223, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SessionSecurityDiagnosticsDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8226, 0) node.BrowseName = QualifiedName('ServiceCounterDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServiceCounterDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ServiceCounterDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8226, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8226, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(7659, 0) node.BrowseName = QualifiedName('StatusResult', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StatusResult") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('StatusResult', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(7659, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(7659, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8229, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SubscriptionDiagnosticsDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8229, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8229, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8232, 0) node.BrowseName = QualifiedName('ModelChangeStructureDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModelChangeStructureDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ModelChangeStructureDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8232, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8232, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8235, 0) node.BrowseName = QualifiedName('SemanticChangeStructureDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SemanticChangeStructureDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('SemanticChangeStructureDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8235, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8235, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8238, 0) node.BrowseName = QualifiedName('Range', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Range") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('Range', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8241, 0) node.BrowseName = QualifiedName('EUInformation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EUInformation") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('EUInformation', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12183, 0) node.BrowseName = QualifiedName('ComplexNumberType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ComplexNumberType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ComplexNumberType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12186, 0) node.BrowseName = QualifiedName('DoubleComplexNumberType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DoubleComplexNumberType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('DoubleComplexNumberType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12091, 0) node.BrowseName = QualifiedName('AxisInformation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AxisInformation") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('AxisInformation', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12091, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12091, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12094, 0) node.BrowseName = QualifiedName('XVType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("XVType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('XVType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8247, 0) node.BrowseName = QualifiedName('ProgramDiagnosticDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnosticDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ProgramDiagnosticDataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8247, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8247, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15398, 0) node.BrowseName = QualifiedName('ProgramDiagnostic2DataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnostic2DataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('ProgramDiagnostic2DataType', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8244, 0) node.BrowseName = QualifiedName('Annotation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(7617, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Annotation") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('Annotation', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8244, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(7617, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14802, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(14533, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(14802, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14533, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(14802, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14829, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14802, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15949, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15528, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15528, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(15949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16024, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15728, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15634, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15634, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(15728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15730, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15728, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(339, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(338, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(338, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8327, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(854, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(853, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(853, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8843, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11949, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11943, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(11949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(11949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11951, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11950, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11944, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(11950, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11944, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(11950, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11954, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11950, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(857, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(856, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(856, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8846, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(857, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(860, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(859, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(859, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8849, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(860, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(863, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(862, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(863, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(862, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(863, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8852, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(863, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(866, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(865, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(865, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8855, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(866, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(869, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(868, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(868, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8858, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(872, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(871, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(871, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8861, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(872, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(300, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(299, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(299, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8294, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(875, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(874, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(874, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8864, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(878, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(877, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(878, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(877, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(878, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8867, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(878, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(898, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(897, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(897, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8870, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(898, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8252, 0) node.BrowseName = QualifiedName('Opc.Ua', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(92, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(72, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Opc.Ua") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.Value = ua.Variant(b'\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n true\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n true\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n true\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The type of identifier used in a node id.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A mask specifying the class of the node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies the attributes which belong to all nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies the attributes which belong to object nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies the attributes which belong to object type nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies the attributes which belong to variable nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies the attributes which belong to variable type nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies the attributes which belong to reference type nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies the attributes which belong to method nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Specifies a reference which belongs to a node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n An argument for a method.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A mapping between a value of an enumerated type and a name and description.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n This abstract DataType is the base DataType for all union DataTypes.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n The types of applications.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Describes an application and how to find it.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The header passed with every server request.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The header passed with every server response.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n The response returned by all services when there is a service level error.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Finds the servers known to the discovery server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Finds the servers known to the discovery server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n The type of security to use on a message.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The possible user token types.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Describes a user token that can be used with a server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The description of a endpoint that can be used to access a server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Gets the endpoints used by the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Gets the endpoints used by the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The information required to register a server with a discovery server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Registers a server with the discovery server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Registers a server with the discovery server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A base type for discovery configuration information.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The discovery information needed for mDNS registration.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Indicates whether a token if being created or renewed.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The token that identifies a set of keys for an active secure channel.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Creates a secure channel with a server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Creates a secure channel with a server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Closes a secure channel.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Closes a secure channel.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A software certificate with a digital signature.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n A digital signature.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Creates a new session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Creates a new session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A base type for a user identity token.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A token representing an anonymous user.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A token representing a user identified by a user name and password.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A token representing a user identified by an X509 certificate.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A token representing a user identified by a WS-Security XML token.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Activates a session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Activates a session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Closes a session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Closes a session with the server.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Cancels an outstanding request.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Cancels an outstanding request.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The bits used to specify default attributes for a new node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The base attributes for all nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for an object node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for a variable node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for a method node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for an object type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for a variable type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for a reference type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for a data type node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The attributes for a view node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A request to add a node to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A result of an add node operation.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Adds one or more nodes to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Adds one or more nodes to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A request to add a reference to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Adds one or more references to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Adds one or more references to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A request to delete a node to the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Delete one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Delete one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A request to delete a node from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Delete one or more references from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Delete one or more references from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Define bits used to indicate which attributes are writable.\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The directions of the references to return.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The view to browse.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A request to browse the the references from a node.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A bit mask which specifies what should be returned in a browse response.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The description of a reference.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n The result of a browse operation.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Browse the references for one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Browse the references for one or more nodes from the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Continues one or more browse operations.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Continues one or more browse operations.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n An element in a relative path.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A relative path constructed from reference types and browse names.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n A request to translate a path into a node id.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The target of the translated path.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n The result of a translate opearation.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Translates one or more paths in the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Translates one or more paths in the server address space.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Registers one or more nodes for repeated use within a session.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Registers one or more nodes for repeated use within a session.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Unregisters one or more previously registered nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Unregisters one or more previously registered nodes.\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n', ua.VariantType.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8254, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15039, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14829, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16024, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15730, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12677, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16027, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14811, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15591, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15594, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15585, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15588, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14805, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14808, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14832, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16030, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16033, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14320, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16037, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16040, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16047, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16050, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16053, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16056, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21180, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16062, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16065, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16068, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16071, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21183, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21186, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21189, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16077, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16080, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16083, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16086, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16089, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16092, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16095, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14835, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16098, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21192, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16104, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16107, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16110, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16113, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16116, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16119, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17473, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(21195, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15640, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16125, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16144, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16147, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16127, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18166, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18169, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18175, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8285, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8291, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14826, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12759, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12762, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8918, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8300, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12201, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8297, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8303, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8417, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12894, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12897, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8333, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8306, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8309, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8312, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8315, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8318, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8363, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8366, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8369, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8372, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12712, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12715, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8321, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8564, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8567, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8570, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8573, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8576, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8579, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8582, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8639, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8702, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8708, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8711, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8807, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8327, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8843, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11951, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11954, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8846, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8849, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8852, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8855, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8858, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8861, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8294, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8864, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8867, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8870, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8873, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8876, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12175, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12083, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12086, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8882, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8879, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(92, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8252, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(72, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8254, 0) node.BrowseName = QualifiedName('NamespaceUri', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A URI that uniquely identifies the dictionary.") attrs.DisplayName = LocalizedText("NamespaceUri") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant('http://opcfoundation.org/UA/2008/02/Types.xsd', ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8254, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8254, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15039, 0) node.BrowseName = QualifiedName('Deprecated', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute.") attrs.DisplayName = LocalizedText("Deprecated") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.Value = ua.Variant(True, ua.VariantType.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15039, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(15039, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14829, 0) node.BrowseName = QualifiedName('KeyValuePair', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("KeyValuePair") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='KeyValuePair']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16024, 0) node.BrowseName = QualifiedName('EndpointType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EndpointType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15730, 0) node.BrowseName = QualifiedName('IdentityMappingRuleType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("IdentityMappingRuleType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='IdentityMappingRuleType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15730, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15730, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12677, 0) node.BrowseName = QualifiedName('TrustListDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrustListDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='TrustListDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12677, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12677, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16027, 0) node.BrowseName = QualifiedName('DataTypeSchemaHeader', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataTypeSchemaHeader") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataTypeSchemaHeader']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14811, 0) node.BrowseName = QualifiedName('DataTypeDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataTypeDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataTypeDescription']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14811, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14811, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15591, 0) node.BrowseName = QualifiedName('StructureDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StructureDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='StructureDescription']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15591, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15594, 0) node.BrowseName = QualifiedName('EnumDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EnumDescription']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15594, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15585, 0) node.BrowseName = QualifiedName('SimpleTypeDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SimpleTypeDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SimpleTypeDescription']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15585, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15588, 0) node.BrowseName = QualifiedName('UABinaryFileDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UABinaryFileDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='UABinaryFileDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15588, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14805, 0) node.BrowseName = QualifiedName('DataSetMetaDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetMetaDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataSetMetaDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14805, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14805, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14808, 0) node.BrowseName = QualifiedName('FieldMetaData', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FieldMetaData") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='FieldMetaData']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14808, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14808, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14832, 0) node.BrowseName = QualifiedName('ConfigurationVersionDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConfigurationVersionDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ConfigurationVersionDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14832, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16030, 0) node.BrowseName = QualifiedName('PublishedDataSetDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedDataSetDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PublishedDataSetDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16033, 0) node.BrowseName = QualifiedName('PublishedDataSetSourceDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedDataSetSourceDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PublishedDataSetSourceDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16033, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14320, 0) node.BrowseName = QualifiedName('PublishedVariableDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedVariableDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PublishedVariableDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14320, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14320, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16037, 0) node.BrowseName = QualifiedName('PublishedDataItemsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedDataItemsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PublishedDataItemsDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16040, 0) node.BrowseName = QualifiedName('PublishedEventsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PublishedEventsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PublishedEventsDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16040, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16047, 0) node.BrowseName = QualifiedName('DataSetWriterDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetWriterDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataSetWriterDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16050, 0) node.BrowseName = QualifiedName('DataSetWriterTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetWriterTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataSetWriterTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16050, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16053, 0) node.BrowseName = QualifiedName('DataSetWriterMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetWriterMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataSetWriterMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16053, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16056, 0) node.BrowseName = QualifiedName('PubSubGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PubSubGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PubSubGroupDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21180, 0) node.BrowseName = QualifiedName('WriterGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriterGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='WriterGroupDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16062, 0) node.BrowseName = QualifiedName('WriterGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriterGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='WriterGroupTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16065, 0) node.BrowseName = QualifiedName('WriterGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("WriterGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='WriterGroupMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16068, 0) node.BrowseName = QualifiedName('PubSubConnectionDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PubSubConnectionDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PubSubConnectionDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16071, 0) node.BrowseName = QualifiedName('ConnectionTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConnectionTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ConnectionTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16071, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21183, 0) node.BrowseName = QualifiedName('NetworkAddressDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NetworkAddressDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='NetworkAddressDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21183, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21186, 0) node.BrowseName = QualifiedName('NetworkAddressUrlDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NetworkAddressUrlDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='NetworkAddressUrlDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21186, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21189, 0) node.BrowseName = QualifiedName('ReaderGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReaderGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ReaderGroupDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16077, 0) node.BrowseName = QualifiedName('ReaderGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReaderGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ReaderGroupTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16080, 0) node.BrowseName = QualifiedName('ReaderGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReaderGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ReaderGroupMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16083, 0) node.BrowseName = QualifiedName('DataSetReaderDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetReaderDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataSetReaderDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16086, 0) node.BrowseName = QualifiedName('DataSetReaderTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetReaderTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataSetReaderTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16089, 0) node.BrowseName = QualifiedName('DataSetReaderMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataSetReaderMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataSetReaderMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16092, 0) node.BrowseName = QualifiedName('SubscribedDataSetDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscribedDataSetDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SubscribedDataSetDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16092, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16095, 0) node.BrowseName = QualifiedName('TargetVariablesDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TargetVariablesDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='TargetVariablesDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16095, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14835, 0) node.BrowseName = QualifiedName('FieldTargetDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FieldTargetDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='FieldTargetDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14835, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16098, 0) node.BrowseName = QualifiedName('SubscribedDataSetMirrorDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscribedDataSetMirrorDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SubscribedDataSetMirrorDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21192, 0) node.BrowseName = QualifiedName('PubSubConfigurationDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("PubSubConfigurationDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='PubSubConfigurationDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21192, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16104, 0) node.BrowseName = QualifiedName('UadpWriterGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UadpWriterGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='UadpWriterGroupMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16104, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16107, 0) node.BrowseName = QualifiedName('UadpDataSetWriterMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UadpDataSetWriterMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='UadpDataSetWriterMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16110, 0) node.BrowseName = QualifiedName('UadpDataSetReaderMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UadpDataSetReaderMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='UadpDataSetReaderMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16113, 0) node.BrowseName = QualifiedName('JsonWriterGroupMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("JsonWriterGroupMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='JsonWriterGroupMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16116, 0) node.BrowseName = QualifiedName('JsonDataSetWriterMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("JsonDataSetWriterMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='JsonDataSetWriterMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16116, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16119, 0) node.BrowseName = QualifiedName('JsonDataSetReaderMessageDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("JsonDataSetReaderMessageDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='JsonDataSetReaderMessageDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17473, 0) node.BrowseName = QualifiedName('DatagramConnectionTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DatagramConnectionTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DatagramConnectionTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17473, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17473, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(21195, 0) node.BrowseName = QualifiedName('DatagramWriterGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DatagramWriterGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DatagramWriterGroupTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(21195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(21195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15640, 0) node.BrowseName = QualifiedName('BrokerConnectionTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerConnectionTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='BrokerConnectionTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15640, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15640, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16125, 0) node.BrowseName = QualifiedName('BrokerWriterGroupTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerWriterGroupTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='BrokerWriterGroupTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16144, 0) node.BrowseName = QualifiedName('BrokerDataSetWriterTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerDataSetWriterTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='BrokerDataSetWriterTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16144, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16144, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16147, 0) node.BrowseName = QualifiedName('BrokerDataSetReaderTransportDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BrokerDataSetReaderTransportDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='BrokerDataSetReaderTransportDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16147, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16147, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16127, 0) node.BrowseName = QualifiedName('RolePermissionType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RolePermissionType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='RolePermissionType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18166, 0) node.BrowseName = QualifiedName('DataTypeDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DataTypeDefinition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DataTypeDefinition']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18169, 0) node.BrowseName = QualifiedName('StructureField', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StructureField") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='StructureField']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18172, 0) node.BrowseName = QualifiedName('StructureDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StructureDefinition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='StructureDefinition']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18175, 0) node.BrowseName = QualifiedName('EnumDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumDefinition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EnumDefinition']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8285, 0) node.BrowseName = QualifiedName('Argument', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Argument") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='Argument']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8291, 0) node.BrowseName = QualifiedName('EnumValueType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValueType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EnumValueType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8291, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8291, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14826, 0) node.BrowseName = QualifiedName('EnumField', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumField") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EnumField']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(14826, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12759, 0) node.BrowseName = QualifiedName('OptionSet', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OptionSet") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='OptionSet']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12759, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12759, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12762, 0) node.BrowseName = QualifiedName('Union', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Union") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='Union']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12762, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8918, 0) node.BrowseName = QualifiedName('TimeZoneDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TimeZoneDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='TimeZoneDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8918, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8918, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8300, 0) node.BrowseName = QualifiedName('ApplicationDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ApplicationDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ApplicationDescription']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8300, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12201, 0) node.BrowseName = QualifiedName('ServerOnNetwork', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerOnNetwork") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ServerOnNetwork']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12201, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8297, 0) node.BrowseName = QualifiedName('UserTokenPolicy', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UserTokenPolicy") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='UserTokenPolicy']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8297, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8303, 0) node.BrowseName = QualifiedName('EndpointDescription', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointDescription") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EndpointDescription']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8303, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8303, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8417, 0) node.BrowseName = QualifiedName('RegisteredServer', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RegisteredServer") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='RegisteredServer']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12894, 0) node.BrowseName = QualifiedName('DiscoveryConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DiscoveryConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DiscoveryConfiguration']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12894, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12894, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12897, 0) node.BrowseName = QualifiedName('MdnsDiscoveryConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MdnsDiscoveryConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='MdnsDiscoveryConfiguration']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12897, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12897, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8333, 0) node.BrowseName = QualifiedName('SignedSoftwareCertificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SignedSoftwareCertificate") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SignedSoftwareCertificate']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8306, 0) node.BrowseName = QualifiedName('UserIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UserIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='UserIdentityToken']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8306, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8306, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8309, 0) node.BrowseName = QualifiedName('AnonymousIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AnonymousIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='AnonymousIdentityToken']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8309, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8312, 0) node.BrowseName = QualifiedName('UserNameIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UserNameIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='UserNameIdentityToken']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8312, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8315, 0) node.BrowseName = QualifiedName('X509IdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("X509IdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='X509IdentityToken']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8315, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8315, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8318, 0) node.BrowseName = QualifiedName('IssuedIdentityToken', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("IssuedIdentityToken") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='IssuedIdentityToken']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8363, 0) node.BrowseName = QualifiedName('AddNodesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddNodesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='AddNodesItem']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8366, 0) node.BrowseName = QualifiedName('AddReferencesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AddReferencesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='AddReferencesItem']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8369, 0) node.BrowseName = QualifiedName('DeleteNodesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteNodesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DeleteNodesItem']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8372, 0) node.BrowseName = QualifiedName('DeleteReferencesItem', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DeleteReferencesItem") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DeleteReferencesItem']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12712, 0) node.BrowseName = QualifiedName('RelativePathElement', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RelativePathElement") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='RelativePathElement']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12712, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12712, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12715, 0) node.BrowseName = QualifiedName('RelativePath', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RelativePath") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='RelativePath']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12715, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12715, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8321, 0) node.BrowseName = QualifiedName('EndpointConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EndpointConfiguration']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8321, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8321, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8564, 0) node.BrowseName = QualifiedName('ContentFilterElement', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ContentFilterElement") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ContentFilterElement']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8564, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8567, 0) node.BrowseName = QualifiedName('ContentFilter', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ContentFilter") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ContentFilter']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8567, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8567, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8570, 0) node.BrowseName = QualifiedName('FilterOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FilterOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='FilterOperand']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8570, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8570, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8573, 0) node.BrowseName = QualifiedName('ElementOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ElementOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ElementOperand']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8576, 0) node.BrowseName = QualifiedName('LiteralOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LiteralOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='LiteralOperand']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8576, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8576, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8579, 0) node.BrowseName = QualifiedName('AttributeOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AttributeOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='AttributeOperand']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8579, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8579, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8582, 0) node.BrowseName = QualifiedName('SimpleAttributeOperand', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SimpleAttributeOperand") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SimpleAttributeOperand']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8582, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8582, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8639, 0) node.BrowseName = QualifiedName('HistoryEvent', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryEvent") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='HistoryEvent']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8639, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8639, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8702, 0) node.BrowseName = QualifiedName('MonitoringFilter', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MonitoringFilter") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='MonitoringFilter']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8702, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8702, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8708, 0) node.BrowseName = QualifiedName('EventFilter', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EventFilter") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EventFilter']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8708, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8708, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8711, 0) node.BrowseName = QualifiedName('AggregateConfiguration', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AggregateConfiguration") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='AggregateConfiguration']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8711, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8711, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8807, 0) node.BrowseName = QualifiedName('HistoryEventFieldList', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HistoryEventFieldList") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='HistoryEventFieldList']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8807, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8807, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8327, 0) node.BrowseName = QualifiedName('BuildInfo', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BuildInfo") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='BuildInfo']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8843, 0) node.BrowseName = QualifiedName('RedundantServerDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("RedundantServerDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='RedundantServerDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8843, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11951, 0) node.BrowseName = QualifiedName('EndpointUrlListDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EndpointUrlListDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EndpointUrlListDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11951, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11951, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11954, 0) node.BrowseName = QualifiedName('NetworkGroupDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NetworkGroupDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='NetworkGroupDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11954, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(11954, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8846, 0) node.BrowseName = QualifiedName('SamplingIntervalDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SamplingIntervalDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SamplingIntervalDiagnosticsDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8846, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8849, 0) node.BrowseName = QualifiedName('ServerDiagnosticsSummaryDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerDiagnosticsSummaryDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ServerDiagnosticsSummaryDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8849, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8852, 0) node.BrowseName = QualifiedName('ServerStatusDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServerStatusDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ServerStatusDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8855, 0) node.BrowseName = QualifiedName('SessionDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SessionDiagnosticsDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8858, 0) node.BrowseName = QualifiedName('SessionSecurityDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SessionSecurityDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SessionSecurityDiagnosticsDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8861, 0) node.BrowseName = QualifiedName('ServiceCounterDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ServiceCounterDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ServiceCounterDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8861, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8294, 0) node.BrowseName = QualifiedName('StatusResult', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StatusResult") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='StatusResult']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8294, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8294, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8864, 0) node.BrowseName = QualifiedName('SubscriptionDiagnosticsDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SubscriptionDiagnosticsDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SubscriptionDiagnosticsDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8864, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8867, 0) node.BrowseName = QualifiedName('ModelChangeStructureDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ModelChangeStructureDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ModelChangeStructureDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8867, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8870, 0) node.BrowseName = QualifiedName('SemanticChangeStructureDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SemanticChangeStructureDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='SemanticChangeStructureDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8873, 0) node.BrowseName = QualifiedName('Range', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Range") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='Range']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8873, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8876, 0) node.BrowseName = QualifiedName('EUInformation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EUInformation") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='EUInformation']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12175, 0) node.BrowseName = QualifiedName('ComplexNumberType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ComplexNumberType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ComplexNumberType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12175, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12178, 0) node.BrowseName = QualifiedName('DoubleComplexNumberType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DoubleComplexNumberType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='DoubleComplexNumberType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12083, 0) node.BrowseName = QualifiedName('AxisInformation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AxisInformation") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='AxisInformation']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12083, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12086, 0) node.BrowseName = QualifiedName('XVType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("XVType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='XVType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12086, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8882, 0) node.BrowseName = QualifiedName('ProgramDiagnosticDataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnosticDataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ProgramDiagnosticDataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8882, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8882, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15402, 0) node.BrowseName = QualifiedName('ProgramDiagnostic2DataType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ProgramDiagnostic2DataType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='ProgramDiagnostic2DataType']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(15402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8879, 0) node.BrowseName = QualifiedName('Annotation', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8252, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(69, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Annotation") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.Value = ua.Variant("//xs:element[@name='Annotation']", ua.VariantType.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8879, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(69, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(8879, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8252, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15041, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(14533, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14533, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15041, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16150, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15528, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(16150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15528, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16150, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15042, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(15634, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15042, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(15634, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15042, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15361, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(338, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15361, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(338, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15361, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15362, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(853, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15362, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(853, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15362, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15363, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11943, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15364, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(11944, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11944, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15365, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(856, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(856, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15366, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(859, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(859, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15367, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(862, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(862, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15368, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(865, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(865, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15369, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(868, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(868, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15370, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(871, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(871, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15371, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(299, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(299, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15372, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(874, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(874, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15373, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(877, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(877, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15374, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(897, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(897, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part8.py000066400000000000000000002321061357637245100315350ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part8(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2365, 0) node.BrowseName = QualifiedName('DataItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.Description = LocalizedText("A variable that contains live automation data.") attrs.DisplayName = LocalizedText("DataItemType") attrs.Description = LocalizedText("A variable that contains live automation data.") attrs.DisplayName = LocalizedText("DataItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2366, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2367, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2365, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2366, 0) node.BrowseName = QualifiedName('Definition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2365, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A vendor-specific, human readable string that specifies how the value of this DataItem is calculated.") attrs.DisplayName = LocalizedText("Definition") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2366, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2365, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2367, 0) node.BrowseName = QualifiedName('ValuePrecision', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2365, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The maximum precision that the server can maintain for the item based on restrictions in the target environment.") attrs.DisplayName = LocalizedText("ValuePrecision") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2367, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2365, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2368, 0) node.BrowseName = QualifiedName('AnalogItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2365, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("AnalogItemType") attrs.DisplayName = LocalizedText("AnalogItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.Number) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2370, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2369, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2371, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2365, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2370, 0) node.BrowseName = QualifiedName('InstrumentRange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2368, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InstrumentRange") attrs.DataType = NumericNodeId(884, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2370, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2368, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2369, 0) node.BrowseName = QualifiedName('EURange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2368, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EURange") attrs.DataType = NumericNodeId(884, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2369, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2368, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2371, 0) node.BrowseName = QualifiedName('EngineeringUnits', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2368, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EngineeringUnits") attrs.DataType = NumericNodeId(887, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2368, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2372, 0) node.BrowseName = QualifiedName('DiscreteItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2365, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("DiscreteItemType") attrs.IsAbstract = True attrs.DisplayName = LocalizedText("DiscreteItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2365, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2373, 0) node.BrowseName = QualifiedName('TwoStateDiscreteType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2372, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("TwoStateDiscreteType") attrs.DisplayName = LocalizedText("TwoStateDiscreteType") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2374, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2375, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2373, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2372, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2374, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2373, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2374, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2373, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2375, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2373, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2373, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2376, 0) node.BrowseName = QualifiedName('MultiStateDiscreteType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2372, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("MultiStateDiscreteType") attrs.DisplayName = LocalizedText("MultiStateDiscreteType") attrs.DataType = ua.NodeId(ua.ObjectIds.UInteger) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2377, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2372, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2377, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2376, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2376, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11238, 0) node.BrowseName = QualifiedName('MultiStateValueDiscreteType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2372, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("MultiStateValueDiscreteType") attrs.DisplayName = LocalizedText("MultiStateValueDiscreteType") attrs.DataType = ua.NodeId(ua.ObjectIds.Number) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11241, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11461, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11238, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2372, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11241, 0) node.BrowseName = QualifiedName('EnumValues', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11238, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumValues") attrs.DataType = NumericNodeId(7594, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11241, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11238, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11461, 0) node.BrowseName = QualifiedName('ValueAsText', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11238, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ValueAsText") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11238, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12021, 0) node.BrowseName = QualifiedName('ArrayItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2365, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ArrayItemType") attrs.IsAbstract = True attrs.DisplayName = LocalizedText("ArrayItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12024, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12025, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12026, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12027, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12028, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2365, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12024, 0) node.BrowseName = QualifiedName('InstrumentRange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InstrumentRange") attrs.DataType = NumericNodeId(884, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12025, 0) node.BrowseName = QualifiedName('EURange', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EURange") attrs.DataType = NumericNodeId(884, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12026, 0) node.BrowseName = QualifiedName('EngineeringUnits', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EngineeringUnits") attrs.DataType = NumericNodeId(887, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12027, 0) node.BrowseName = QualifiedName('Title', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Title") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12028, 0) node.BrowseName = QualifiedName('AxisScaleType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AxisScaleType") attrs.DataType = NumericNodeId(12077, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12029, 0) node.BrowseName = QualifiedName('YArrayItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("YArrayItemType") attrs.DisplayName = LocalizedText("YArrayItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 1 attrs.ArrayDimensions = [0] node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12037, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12037, 0) node.BrowseName = QualifiedName('XAxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12029, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("XAxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12038, 0) node.BrowseName = QualifiedName('XYArrayItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("XYArrayItemType") attrs.DisplayName = LocalizedText("XYArrayItemType") attrs.DataType = NumericNodeId(12080, 0) attrs.ValueRank = 1 attrs.ArrayDimensions = [0] node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12046, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12046, 0) node.BrowseName = QualifiedName('XAxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12038, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("XAxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12038, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12047, 0) node.BrowseName = QualifiedName('ImageItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ImageItemType") attrs.DisplayName = LocalizedText("ImageItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 2 attrs.ArrayDimensions = [0, 0] node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12055, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12056, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12055, 0) node.BrowseName = QualifiedName('XAxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12047, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("XAxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12047, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12056, 0) node.BrowseName = QualifiedName('YAxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12047, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("YAxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12047, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12057, 0) node.BrowseName = QualifiedName('CubeItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("CubeItemType") attrs.DisplayName = LocalizedText("CubeItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = 3 attrs.ArrayDimensions = [0, 0, 0] node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12065, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12066, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12067, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12057, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12065, 0) node.BrowseName = QualifiedName('XAxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12057, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("XAxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12057, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12066, 0) node.BrowseName = QualifiedName('YAxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12057, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("YAxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12057, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12067, 0) node.BrowseName = QualifiedName('ZAxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12057, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ZAxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12057, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12068, 0) node.BrowseName = QualifiedName('NDimensionArrayItemType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(12021, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("NDimensionArrayItemType") attrs.DisplayName = LocalizedText("NDimensionArrayItemType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12076, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12021, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12076, 0) node.BrowseName = QualifiedName('AxisDefinition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12068, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AxisDefinition") attrs.DataType = NumericNodeId(12079, 0) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12076, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12068, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(884, 0) node.BrowseName = QualifiedName('Range', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("Range") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(884, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(887, 0) node.BrowseName = QualifiedName('EUInformation', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("EUInformation") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(887, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12077, 0) node.BrowseName = QualifiedName('AxisScaleEnumeration', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(29, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("AxisScaleEnumeration") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12078, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12077, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(29, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12078, 0) node.BrowseName = QualifiedName('EnumStrings', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12077, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnumStrings") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = [LocalizedText('Linear'),LocalizedText('Log'),LocalizedText('Ln')] attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12078, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12077, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12171, 0) node.BrowseName = QualifiedName('ComplexNumberType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("ComplexNumberType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12171, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12172, 0) node.BrowseName = QualifiedName('DoubleComplexNumberType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("DoubleComplexNumberType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12172, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12079, 0) node.BrowseName = QualifiedName('AxisInformation', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("AxisInformation") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12079, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12080, 0) node.BrowseName = QualifiedName('XVType', 0) node.NodeClass = NodeClass.DataType node.ParentNodeId = NumericNodeId(22, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.DataTypeAttributes() attrs.DisplayName = LocalizedText("XVType") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(12080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(22, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(886, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(884, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(886, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(884, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(886, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8238, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(886, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(889, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(887, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(887, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8241, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(889, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12181, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12171, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12183, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12181, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12182, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12172, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12186, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12182, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12089, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12079, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12079, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12091, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12089, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12090, 0) node.BrowseName = QualifiedName('Default Binary', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12080, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default Binary") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12090, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12080, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12090, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12094, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12090, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(885, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(884, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(884, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8873, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(885, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(888, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(887, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(888, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(887, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(888, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8876, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(888, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12173, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12171, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12175, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12173, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12174, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12172, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12081, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12079, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12079, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12083, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12081, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12082, 0) node.BrowseName = QualifiedName('Default XML', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12080, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default XML") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(12082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12080, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(39, 0) ref.SourceNodeId = NumericNodeId(12082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12086, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12082, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15375, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(884, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(884, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15375, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15376, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(887, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(887, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15377, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12171, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12171, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15377, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15378, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12172, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12172, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15379, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12079, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12079, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15380, 0) node.BrowseName = QualifiedName('Default JSON', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(12080, 0) node.ReferenceTypeId = NumericNodeId(38, 0) node.TypeDefinition = NumericNodeId(76, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Default JSON") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(38, 0) ref.SourceNodeId = NumericNodeId(15380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12080, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(15380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(76, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/standard_address_space/standard_address_space_part9.py000066400000000000000000017616271357637245100315560ustar00rootroot00000000000000 # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_Part9(server): node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8995, 0) node.BrowseName = QualifiedName('TwoStateVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(2755, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("TwoStateVariableType") attrs.DisplayName = LocalizedText("TwoStateVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8995, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8996, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8995, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9000, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8995, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9001, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8995, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11110, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8995, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11111, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(8995, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2755, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8996, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8995, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(8996, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(8996, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8996, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9000, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8995, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9000, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9000, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9000, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9001, 0) node.BrowseName = QualifiedName('EffectiveTransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8995, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EffectiveTransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9001, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11110, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8995, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11111, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8995, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9002, 0) node.BrowseName = QualifiedName('ConditionVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("ConditionVariableType") attrs.DisplayName = LocalizedText("ConditionVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -2 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9002, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9003, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9002, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9003, 0) node.BrowseName = QualifiedName('SourceTimestamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9002, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SourceTimestamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9003, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9002, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9004, 0) node.BrowseName = QualifiedName('HasTrueSubState', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasTrueSubState") attrs.InverseName = LocalizedText("IsTrueSubStateOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9004, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9005, 0) node.BrowseName = QualifiedName('HasFalseSubState', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasFalseSubState") attrs.InverseName = LocalizedText("IsFalseSubStateOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9005, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16361, 0) node.BrowseName = QualifiedName('HasAlarmSuppressionGroup', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(47, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasAlarmSuppressionGroup") attrs.InverseName = LocalizedText("IsAlarmSuppressionGroupOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(16361, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(47, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16362, 0) node.BrowseName = QualifiedName('AlarmGroupMember', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(35, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("AlarmGroupMember") attrs.InverseName = LocalizedText("MemberOfAlarmGroup") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(16362, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(35, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2782, 0) node.BrowseName = QualifiedName('ConditionType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2041, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ConditionType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11112, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11113, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16363, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16364, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9009, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9010, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3874, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9011, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9020, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9022, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9024, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9026, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9028, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9027, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9029, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3875, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12912, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2782, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2041, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11112, 0) node.BrowseName = QualifiedName('ConditionClassId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionClassId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11113, 0) node.BrowseName = QualifiedName('ConditionClassName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionClassName") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16363, 0) node.BrowseName = QualifiedName('ConditionSubClassId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionSubClassId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16363, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16364, 0) node.BrowseName = QualifiedName('ConditionSubClassName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionSubClassName") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16364, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9009, 0) node.BrowseName = QualifiedName('ConditionName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9009, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9010, 0) node.BrowseName = QualifiedName('BranchId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BranchId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9010, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3874, 0) node.BrowseName = QualifiedName('Retain', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Retain") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3874, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3874, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3874, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9011, 0) node.BrowseName = QualifiedName('EnabledState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnabledState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9012, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9015, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9016, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9017, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9018, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9019, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9011, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9012, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9011, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9012, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9011, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9015, 0) node.BrowseName = QualifiedName('EffectiveDisplayName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9011, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EffectiveDisplayName") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9015, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9015, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9015, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9011, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9016, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9011, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9016, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9011, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9017, 0) node.BrowseName = QualifiedName('EffectiveTransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9011, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EffectiveTransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9017, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9011, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9018, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9011, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Enabled"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9018, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9018, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9018, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9011, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9019, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9011, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Disabled"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9019, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9011, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9020, 0) node.BrowseName = QualifiedName('Quality', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(9002, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Quality") attrs.DataType = ua.NodeId(ua.ObjectIds.StatusCode) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9021, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9002, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9021, 0) node.BrowseName = QualifiedName('SourceTimestamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9020, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SourceTimestamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9022, 0) node.BrowseName = QualifiedName('LastSeverity', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(9002, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastSeverity") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9023, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9002, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9022, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9023, 0) node.BrowseName = QualifiedName('SourceTimestamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9022, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SourceTimestamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9023, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9022, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9024, 0) node.BrowseName = QualifiedName('Comment', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(9002, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Comment") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9025, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9002, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9024, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9025, 0) node.BrowseName = QualifiedName('SourceTimestamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9024, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SourceTimestamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9024, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9026, 0) node.BrowseName = QualifiedName('ClientUserId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9026, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9028, 0) node.BrowseName = QualifiedName('Disable', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Disable") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2803, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9027, 0) node.BrowseName = QualifiedName('Enable', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Enable") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2803, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9029, 0) node.BrowseName = QualifiedName('AddComment', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddComment") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9030, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2829, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9030, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9029, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'EventId' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the event to comment.' value.append(extobj) extobj = ua.Argument() extobj.Name = 'Comment' extobj.DataType = NumericNodeId(21, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The comment to add to the condition.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3875, 0) node.BrowseName = QualifiedName('ConditionRefresh', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("ConditionRefresh") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3876, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(3875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2787, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(3875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2788, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(3875, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(3876, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(3875, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(288, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the suscription to refresh.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(3876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(3876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(3876, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(3875, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12912, 0) node.BrowseName = QualifiedName('ConditionRefresh2', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("ConditionRefresh2") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12912, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12913, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(12912, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2787, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(12912, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2788, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(12912, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(12913, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(12912, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SubscriptionId' extobj.DataType = NumericNodeId(288, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the suscription to refresh.' value.append(extobj) extobj = ua.Argument() extobj.Name = 'MonitoredItemId' extobj.DataType = NumericNodeId(288, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the monitored item to refresh.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(12913, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(12913, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(12913, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(12912, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2830, 0) node.BrowseName = QualifiedName('DialogConditionType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("DialogConditionType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9035, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9055, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2831, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9064, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9065, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9066, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9067, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9068, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9069, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2830, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9035, 0) node.BrowseName = QualifiedName('EnabledState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnabledState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9036, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9055, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9035, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9036, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9035, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9035, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9055, 0) node.BrowseName = QualifiedName('DialogState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DialogState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9056, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9060, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9062, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9063, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9035, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9056, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9055, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9056, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9055, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9060, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9055, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9055, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9062, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9055, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Active"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9062, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9055, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9063, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9055, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Inactive"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9063, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9055, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2831, 0) node.BrowseName = QualifiedName('Prompt', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Prompt") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2831, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9064, 0) node.BrowseName = QualifiedName('ResponseOptionSet', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ResponseOptionSet") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9064, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9064, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9064, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9065, 0) node.BrowseName = QualifiedName('DefaultResponse', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("DefaultResponse") attrs.DataType = ua.NodeId(ua.ObjectIds.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9065, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9066, 0) node.BrowseName = QualifiedName('OkResponse', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OkResponse") attrs.DataType = ua.NodeId(ua.ObjectIds.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9066, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9067, 0) node.BrowseName = QualifiedName('CancelResponse', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CancelResponse") attrs.DataType = ua.NodeId(ua.ObjectIds.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9067, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9068, 0) node.BrowseName = QualifiedName('LastResponse', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastResponse") attrs.DataType = ua.NodeId(ua.ObjectIds.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9068, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9069, 0) node.BrowseName = QualifiedName('Respond', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2830, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Respond") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9069, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9070, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9069, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8927, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9069, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9069, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2830, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9070, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9069, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'SelectedResponse' extobj.DataType = NumericNodeId(6, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The response to the dialog condition.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9070, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9070, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9070, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9069, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2881, 0) node.BrowseName = QualifiedName('AcknowledgeableConditionType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2782, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AcknowledgeableConditionType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9073, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9111, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9113, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2881, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2782, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9073, 0) node.BrowseName = QualifiedName('EnabledState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2881, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnabledState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9074, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9102, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9073, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2881, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9074, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9073, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9074, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9073, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9093, 0) node.BrowseName = QualifiedName('AckedState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2881, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AckedState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9094, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9098, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9100, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9073, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2881, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9094, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9093, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9094, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9093, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9098, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9093, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9093, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9100, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9093, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Acknowledged"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9093, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9101, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9093, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Unacknowledged"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9093, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9102, 0) node.BrowseName = QualifiedName('ConfirmedState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2881, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConfirmedState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9103, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9107, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9109, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9110, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9073, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9102, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2881, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9103, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9102, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9103, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9102, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9107, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9102, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9107, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9102, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9109, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9102, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Confirmed"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9109, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9109, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9109, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9102, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9110, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9102, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Unconfirmed"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9110, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9102, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9111, 0) node.BrowseName = QualifiedName('Acknowledge', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2881, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Acknowledge") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9112, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8944, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9111, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2881, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9112, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9111, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'EventId' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the event to comment.' value.append(extobj) extobj = ua.Argument() extobj.Name = 'Comment' extobj.DataType = NumericNodeId(21, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The comment to add to the condition.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9112, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9111, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9113, 0) node.BrowseName = QualifiedName('Confirm', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2881, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Confirm") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9114, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8961, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9113, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2881, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9114, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9113, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'EventId' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the event to comment.' value.append(extobj) extobj = ua.Argument() extobj.Name = 'Comment' extobj.DataType = NumericNodeId(21, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The comment to add to the condition.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9114, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9113, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2915, 0) node.BrowseName = QualifiedName('AlarmConditionType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2881, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AlarmConditionType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9118, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11120, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9169, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16371, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9215, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9216, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16389, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16390, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16380, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16395, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16396, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16397, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16398, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18190, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(16361, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16399, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16400, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16401, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16402, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16403, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17868, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17869, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17870, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18199, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2915, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2881, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9118, 0) node.BrowseName = QualifiedName('EnabledState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnabledState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9119, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9169, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9118, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9119, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9118, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9119, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9118, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9160, 0) node.BrowseName = QualifiedName('ActiveState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActiveState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9161, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9164, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9165, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9166, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9167, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9168, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9118, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9160, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9161, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9160, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9161, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9164, 0) node.BrowseName = QualifiedName('EffectiveDisplayName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9160, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EffectiveDisplayName") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9165, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9160, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9166, 0) node.BrowseName = QualifiedName('EffectiveTransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9160, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EffectiveTransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9167, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9160, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Active"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9167, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9168, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9160, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Inactive"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9168, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9160, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11120, 0) node.BrowseName = QualifiedName('InputNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11120, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9169, 0) node.BrowseName = QualifiedName('SuppressedState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SuppressedState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9170, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9174, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9176, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9177, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9118, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9169, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9170, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9169, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9170, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9169, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9174, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9169, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9174, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9169, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9176, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9169, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Suppressed"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9176, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9169, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9177, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9169, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Unsuppressed"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9177, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9169, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16371, 0) node.BrowseName = QualifiedName('OutOfServiceState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OutOfServiceState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16372, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16376, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16378, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16379, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16371, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16372, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16371, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16372, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16371, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16376, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16371, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16376, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16371, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16378, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16371, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Out of Service"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16378, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16371, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16379, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16371, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("In Service"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16379, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16371, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9178, 0) node.BrowseName = QualifiedName('ShelvingState', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2929, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("ShelvingState") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9179, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9184, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9189, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9213, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9211, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9212, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9118, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9178, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9179, 0) node.BrowseName = QualifiedName('CurrentState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9178, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2760, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9180, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2760, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9179, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9180, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9179, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9180, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9179, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9184, 0) node.BrowseName = QualifiedName('LastTransition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9178, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2767, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransition") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9185, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9188, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2767, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9184, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9185, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9184, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9185, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9184, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9188, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9184, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9188, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9184, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9189, 0) node.BrowseName = QualifiedName('UnshelveTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9178, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnshelveTime") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9189, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9213, 0) node.BrowseName = QualifiedName('TimedShelve', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(9178, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("TimedShelve") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9214, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9213, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9214, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9213, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ShelvingTime' extobj.DataType = NumericNodeId(290, 0) extobj.ValueRank = -1 extobj.Description.Text = 'If not 0, this parameter specifies a fixed time for which the Alarm is to be shelved.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9213, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9211, 0) node.BrowseName = QualifiedName('Unshelve', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(9178, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Unshelve") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9211, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9211, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9211, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9212, 0) node.BrowseName = QualifiedName('OneShotShelve', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(9178, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("OneShotShelve") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(9212, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9212, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9212, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9178, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9215, 0) node.BrowseName = QualifiedName('SuppressedOrShelved', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SuppressedOrShelved") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9216, 0) node.BrowseName = QualifiedName('MaxTimeShelved', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaxTimeShelved") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16389, 0) node.BrowseName = QualifiedName('AudibleEnabled', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AudibleEnabled") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16389, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16390, 0) node.BrowseName = QualifiedName('AudibleSound', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(17986, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AudibleSound") attrs.DataType = NumericNodeId(16307, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17986, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16390, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16380, 0) node.BrowseName = QualifiedName('SilenceState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SilenceState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16381, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16385, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16387, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16388, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16380, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16381, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16381, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16385, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16385, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16387, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Silenced"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16387, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16388, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16380, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Not Silenced"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16388, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16380, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16395, 0) node.BrowseName = QualifiedName('OnDelay', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OnDelay") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16395, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16396, 0) node.BrowseName = QualifiedName('OffDelay', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("OffDelay") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16396, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16397, 0) node.BrowseName = QualifiedName('FirstInGroupFlag', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FirstInGroupFlag") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16397, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16398, 0) node.BrowseName = QualifiedName('FirstInGroup', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(16405, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("FirstInGroup") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16405, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18190, 0) node.BrowseName = QualifiedName('LatchedState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LatchedState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18191, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18195, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18197, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18198, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(18190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18190, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18191, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(18190, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(18191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18191, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18190, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18195, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(18190, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(18195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18195, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18190, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18197, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(18190, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Latched"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(18197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18197, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18190, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18198, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(18190, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Unlatched"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(18198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(18198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(18198, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18190, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16399, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(16361, 0) node.TypeDefinition = NumericNodeId(16405, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16405, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(16361, 0) ref.SourceNodeId = NumericNodeId(16399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16400, 0) node.BrowseName = QualifiedName('ReAlarmTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReAlarmTime") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16400, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16401, 0) node.BrowseName = QualifiedName('ReAlarmRepeatCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ReAlarmRepeatCount") attrs.DataType = ua.NodeId(ua.ObjectIds.Int16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16401, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16402, 0) node.BrowseName = QualifiedName('Silence', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Silence") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(16402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17242, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16402, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16403, 0) node.BrowseName = QualifiedName('Suppress', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Suppress") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(16403, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17225, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16403, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16403, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17868, 0) node.BrowseName = QualifiedName('Unsuppress', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Unsuppress") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(17868, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17225, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17868, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17868, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17869, 0) node.BrowseName = QualifiedName('RemoveFromService', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("RemoveFromService") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(17869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17259, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17869, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17870, 0) node.BrowseName = QualifiedName('PlaceInService', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("PlaceInService") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(17870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17259, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17870, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18199, 0) node.BrowseName = QualifiedName('Reset', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Reset") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(18199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17259, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(18199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18199, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16405, 0) node.BrowseName = QualifiedName('AlarmGroupType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(61, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AlarmGroupType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(16362, 0) ref.SourceNodeId = NumericNodeId(16405, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(16405, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(61, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16406, 0) node.BrowseName = QualifiedName('', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(16405, 0) node.ReferenceTypeId = NumericNodeId(16362, 0) node.TypeDefinition = NumericNodeId(2915, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16407, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16408, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16409, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16410, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16411, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16412, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16413, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16414, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16415, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16416, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16417, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16420, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16421, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16422, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16423, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16432, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16434, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16436, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16438, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16439, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16440, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16441, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16443, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16461, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16465, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16474, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16519, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11508, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(16362, 0) ref.SourceNodeId = NumericNodeId(16406, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16405, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16407, 0) node.BrowseName = QualifiedName('EventId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A globally unique identifier for the event.") attrs.DisplayName = LocalizedText("EventId") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16407, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16408, 0) node.BrowseName = QualifiedName('EventType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The identifier for the event type.") attrs.DisplayName = LocalizedText("EventType") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16408, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16409, 0) node.BrowseName = QualifiedName('SourceNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("The source of the event.") attrs.DisplayName = LocalizedText("SourceNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16409, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16409, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16409, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16410, 0) node.BrowseName = QualifiedName('SourceName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A description of the source of the event.") attrs.DisplayName = LocalizedText("SourceName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16410, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16411, 0) node.BrowseName = QualifiedName('Time', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("When the event occurred.") attrs.DisplayName = LocalizedText("Time") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16411, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16412, 0) node.BrowseName = QualifiedName('ReceiveTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("When the server received the event from the underlying system.") attrs.DisplayName = LocalizedText("ReceiveTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16412, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16413, 0) node.BrowseName = QualifiedName('LocalTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Information about the local time where the event originated.") attrs.DisplayName = LocalizedText("LocalTime") attrs.DataType = NumericNodeId(8912, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16413, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16414, 0) node.BrowseName = QualifiedName('Message', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("A localized description of the event.") attrs.DisplayName = LocalizedText("Message") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16414, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16415, 0) node.BrowseName = QualifiedName('Severity', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.Description = LocalizedText("Indicates how urgent an event is.") attrs.DisplayName = LocalizedText("Severity") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16415, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16416, 0) node.BrowseName = QualifiedName('ConditionClassId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionClassId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16416, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16417, 0) node.BrowseName = QualifiedName('ConditionClassName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionClassName") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16417, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16420, 0) node.BrowseName = QualifiedName('ConditionName', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionName") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16420, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16421, 0) node.BrowseName = QualifiedName('BranchId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BranchId") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16421, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16421, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16421, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16422, 0) node.BrowseName = QualifiedName('Retain', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Retain") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16422, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16423, 0) node.BrowseName = QualifiedName('EnabledState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EnabledState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16424, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16423, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16424, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16423, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16424, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16423, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16432, 0) node.BrowseName = QualifiedName('Quality', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(9002, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Quality") attrs.DataType = ua.NodeId(ua.ObjectIds.StatusCode) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16432, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16433, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16432, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9002, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16432, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16432, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16433, 0) node.BrowseName = QualifiedName('SourceTimestamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16432, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SourceTimestamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16433, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16433, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16433, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16432, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16434, 0) node.BrowseName = QualifiedName('LastSeverity', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(9002, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastSeverity") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16434, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16435, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16434, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9002, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16434, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16434, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16435, 0) node.BrowseName = QualifiedName('SourceTimestamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16434, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SourceTimestamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16435, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16435, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16435, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16434, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16436, 0) node.BrowseName = QualifiedName('Comment', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(9002, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Comment") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16436, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16437, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16436, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9002, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16436, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16436, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16437, 0) node.BrowseName = QualifiedName('SourceTimestamp', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16436, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SourceTimestamp") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16437, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16437, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16437, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16436, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16438, 0) node.BrowseName = QualifiedName('ClientUserId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ClientUserId") attrs.DataType = ua.NodeId(ua.ObjectIds.String) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16438, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16438, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16438, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16439, 0) node.BrowseName = QualifiedName('Disable', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Disable") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(16439, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2803, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16439, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16439, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16440, 0) node.BrowseName = QualifiedName('Enable', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Enable") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(16440, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2803, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16440, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16440, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16441, 0) node.BrowseName = QualifiedName('AddComment', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("AddComment") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16441, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16442, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(16441, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2829, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16441, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16441, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16442, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16441, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'EventId' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the event to comment.' value.append(extobj) extobj = ua.Argument() extobj.Name = 'Comment' extobj.DataType = NumericNodeId(21, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The comment to add to the condition.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16442, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16442, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16442, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16441, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16443, 0) node.BrowseName = QualifiedName('AckedState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AckedState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16443, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16444, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16443, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16443, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16443, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16444, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16443, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16444, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16444, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16444, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16443, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16461, 0) node.BrowseName = QualifiedName('Acknowledge', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Acknowledge") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16462, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(16461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8944, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16462, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16461, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'EventId' extobj.DataType = NumericNodeId(15, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The identifier for the event to comment.' value.append(extobj) extobj = ua.Argument() extobj.Name = 'Comment' extobj.DataType = NumericNodeId(21, 0) extobj.ValueRank = -1 extobj.Description.Text = 'The comment to add to the condition.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16462, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16462, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16462, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16461, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16465, 0) node.BrowseName = QualifiedName('ActiveState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActiveState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16465, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16466, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16465, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16465, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(16465, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16466, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16465, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16466, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16466, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16466, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16465, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16474, 0) node.BrowseName = QualifiedName('InputNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16474, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16474, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16474, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16519, 0) node.BrowseName = QualifiedName('SuppressedOrShelved', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(16406, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SuppressedOrShelved") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16519, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16519, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16519, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16406, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2929, 0) node.BrowseName = QualifiedName('ShelvedStateMachineType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ShelvedStateMachineType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9115, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2930, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2932, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2933, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2935, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2936, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2940, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2942, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2945, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2949, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2947, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2948, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2929, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9115, 0) node.BrowseName = QualifiedName('UnshelveTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("UnshelveTime") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9115, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2930, 0) node.BrowseName = QualifiedName('Unshelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Unshelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2930, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(6098, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2930, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2935, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2930, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2936, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2930, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2940, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2930, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2930, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2930, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(6098, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2930, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(6098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(6098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(6098, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2930, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2932, 0) node.BrowseName = QualifiedName('TimedShelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Timed Shelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(6100, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2935, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2940, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2942, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2945, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2932, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(6100, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2932, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(6100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(6100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(6100, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2932, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2933, 0) node.BrowseName = QualifiedName('OneShotShelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("One Shot Shelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2933, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(6101, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2933, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2936, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2933, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2942, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2933, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2933, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2945, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2933, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2933, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(6101, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2933, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(6101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(6101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(6101, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2933, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2935, 0) node.BrowseName = QualifiedName('UnshelvedToTimedShelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("UnshelvedToTimedShelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11322, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2930, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2932, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2949, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2935, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11322, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2935, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11322, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11322, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11322, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2935, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2936, 0) node.BrowseName = QualifiedName('UnshelvedToOneShotShelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("UnshelvedToOneShotShelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2936, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11323, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2936, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2930, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2936, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2933, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2936, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2936, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2948, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2936, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2936, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11323, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2936, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11323, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2936, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2940, 0) node.BrowseName = QualifiedName('TimedShelvedToUnshelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("TimedShelvedToUnshelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11324, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2932, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2930, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2947, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2940, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11324, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2940, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11324, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2940, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2942, 0) node.BrowseName = QualifiedName('TimedShelvedToOneShotShelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("TimedShelvedToOneShotShelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2942, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11325, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2942, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2932, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2942, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2933, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2942, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2942, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2948, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2942, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2942, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11325, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2942, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2942, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2943, 0) node.BrowseName = QualifiedName('OneShotShelvedToUnshelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("OneShotShelvedToUnshelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11326, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2933, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2930, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2947, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2943, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11326, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2943, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2943, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2945, 0) node.BrowseName = QualifiedName('OneShotShelvedToTimedShelved', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("OneShotShelvedToTimedShelved") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11327, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(2945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2933, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(2945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2932, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(54, 0) ref.SourceNodeId = NumericNodeId(2945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2949, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2945, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11327, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2945, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2945, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2949, 0) node.BrowseName = QualifiedName('TimedShelve', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("TimedShelve") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2991, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2935, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2945, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(2949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2949, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2991, 0) node.BrowseName = QualifiedName('InputArguments', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2949, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("InputArguments") attrs.DataType = NumericNodeId(296, 0) value = [] extobj = ua.Argument() extobj.Name = 'ShelvingTime' extobj.DataType = NumericNodeId(290, 0) extobj.ValueRank = -1 extobj.Description.Text = 'If not 0, this parameter specifies a fixed time for which the Alarm is to be shelved.' value.append(extobj) attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject) attrs.ValueRank = 1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(2991, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2991, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2991, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2949, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2947, 0) node.BrowseName = QualifiedName('Unshelve', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Unshelve") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2947, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2940, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2947, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2943, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(2947, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2947, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2947, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2948, 0) node.BrowseName = QualifiedName('OneShotShelve', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(2929, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("OneShotShelve") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2936, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(53, 0) ref.SourceNodeId = NumericNodeId(2948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2942, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(3065, 0) ref.SourceNodeId = NumericNodeId(2948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11093, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(2948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(2948, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2929, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2955, 0) node.BrowseName = QualifiedName('LimitAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("LimitAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11124, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11125, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11126, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11127, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16572, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16573, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16574, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16575, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2955, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11124, 0) node.BrowseName = QualifiedName('HighHighLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HighHighLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11124, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11125, 0) node.BrowseName = QualifiedName('HighLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HighLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11125, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11126, 0) node.BrowseName = QualifiedName('LowLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LowLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11126, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11127, 0) node.BrowseName = QualifiedName('LowLowLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LowLowLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11127, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16572, 0) node.BrowseName = QualifiedName('BaseHighHighLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BaseHighHighLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16572, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16572, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16572, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16573, 0) node.BrowseName = QualifiedName('BaseHighLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BaseHighLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16573, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16574, 0) node.BrowseName = QualifiedName('BaseLowLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BaseLowLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16574, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16574, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16574, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16575, 0) node.BrowseName = QualifiedName('BaseLowLowLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BaseLowLowLimit") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16575, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9318, 0) node.BrowseName = QualifiedName('ExclusiveLimitStateMachineType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2771, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ExclusiveLimitStateMachineType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9329, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9331, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9333, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9335, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9337, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9338, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9339, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9340, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9318, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2771, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9329, 0) node.BrowseName = QualifiedName('HighHigh', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("HighHigh") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9329, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9330, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9329, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9339, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9329, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9340, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9329, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9329, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9330, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9329, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9330, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9329, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9331, 0) node.BrowseName = QualifiedName('High', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("High") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9332, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9339, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9340, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9331, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9332, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9331, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9332, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9331, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9333, 0) node.BrowseName = QualifiedName('Low', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("Low") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9334, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9337, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9338, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9333, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9334, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9333, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9334, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9334, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9334, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9333, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9335, 0) node.BrowseName = QualifiedName('LowLow', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2307, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("LowLow") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9336, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9337, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9338, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2307, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9335, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9336, 0) node.BrowseName = QualifiedName('StateNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9335, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StateNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9336, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9336, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9336, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9335, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9337, 0) node.BrowseName = QualifiedName('LowLowToLow', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("LowLowToLow") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11340, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9335, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9333, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9337, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11340, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9337, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9337, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9338, 0) node.BrowseName = QualifiedName('LowToLowLow', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("LowToLowLow") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11341, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9333, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9335, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9338, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11341, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9338, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9338, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9339, 0) node.BrowseName = QualifiedName('HighHighToHigh', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("HighHighToHigh") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11342, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9329, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9331, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9339, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11342, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9339, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11342, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11342, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11342, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9339, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9340, 0) node.BrowseName = QualifiedName('HighToHighHigh', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9318, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2310, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("HighToHighHigh") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11343, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(51, 0) ref.SourceNodeId = NumericNodeId(9340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9331, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(52, 0) ref.SourceNodeId = NumericNodeId(9340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9329, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2310, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9340, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11343, 0) node.BrowseName = QualifiedName('TransitionNumber', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9340, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionNumber") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11343, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11343, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11343, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9340, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9341, 0) node.BrowseName = QualifiedName('ExclusiveLimitAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ExclusiveLimitAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9398, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9455, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9341, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9398, 0) node.BrowseName = QualifiedName('ActiveState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9341, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActiveState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9399, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9455, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9398, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9341, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9399, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9398, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9399, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9398, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9455, 0) node.BrowseName = QualifiedName('LimitState', 0) node.NodeClass = NodeClass.Object node.ParentNodeId = NumericNodeId(9341, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(9318, 0) attrs = ua.ObjectAttributes() attrs.DisplayName = LocalizedText("LimitState") attrs.EventNotifier = 0 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9455, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9456, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9455, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9461, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9455, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9398, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9455, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9318, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9455, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9455, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9341, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9456, 0) node.BrowseName = QualifiedName('CurrentState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9455, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2760, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9456, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9457, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9456, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2760, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9456, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9456, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9455, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9457, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9456, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9457, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9457, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9457, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9456, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9461, 0) node.BrowseName = QualifiedName('LastTransition', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9455, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(2767, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LastTransition") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9462, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9465, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2767, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9461, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9455, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9462, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9461, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9462, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9462, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9462, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9461, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9465, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9461, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9465, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9465, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9465, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9461, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9906, 0) node.BrowseName = QualifiedName('NonExclusiveLimitAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2955, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("NonExclusiveLimitAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9906, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9963, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9906, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10020, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9906, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10029, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9906, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10038, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9906, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10047, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9906, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2955, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9963, 0) node.BrowseName = QualifiedName('ActiveState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ActiveState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9964, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10020, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10029, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10038, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10047, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(9963, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9964, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9963, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9964, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9964, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9964, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9963, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10020, 0) node.BrowseName = QualifiedName('HighHighState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HighHighState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10021, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10025, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10027, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10028, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9963, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(10020, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10021, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10020, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10021, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10025, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10020, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10025, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10027, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10020, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("HighHigh active"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10027, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10028, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10020, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("HighHigh inactive"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10028, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10020, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10029, 0) node.BrowseName = QualifiedName('HighState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("HighState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10030, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10034, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10036, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10037, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9963, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(10029, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10030, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10029, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10030, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10034, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10029, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10034, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10036, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10029, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("High active"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10036, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10037, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10029, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("High inactive"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10037, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10029, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10038, 0) node.BrowseName = QualifiedName('LowState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LowState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10039, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10043, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10045, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10046, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9963, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(10038, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10039, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10038, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10039, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10039, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10039, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10038, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10043, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10038, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10043, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10038, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10045, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10038, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Low active"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10045, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10045, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10045, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10038, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10046, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10038, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("Low inactive"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10046, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10038, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10047, 0) node.BrowseName = QualifiedName('LowLowState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(8995, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("LowLowState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10048, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10052, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10054, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10055, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(9004, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9963, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8995, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(10047, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10048, 0) node.BrowseName = QualifiedName('Id', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10047, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Id") attrs.DataType = ua.NodeId(ua.ObjectIds.Boolean) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10048, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10048, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10048, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10047, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10052, 0) node.BrowseName = QualifiedName('TransitionTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10047, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TransitionTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10052, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10047, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10054, 0) node.BrowseName = QualifiedName('TrueState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10047, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TrueState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("LowLow active"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10054, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10047, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10055, 0) node.BrowseName = QualifiedName('FalseState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10047, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("FalseState") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.Value = ua.Variant(LocalizedText("LowLow inactive"), ua.VariantType.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10055, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10047, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10060, 0) node.BrowseName = QualifiedName('NonExclusiveLevelAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("NonExclusiveLevelAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(10060, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9482, 0) node.BrowseName = QualifiedName('ExclusiveLevelAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(9341, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ExclusiveLevelAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9482, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9341, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10368, 0) node.BrowseName = QualifiedName('NonExclusiveDeviationAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("NonExclusiveDeviationAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10522, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16776, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(10368, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10522, 0) node.BrowseName = QualifiedName('SetpointNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10368, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetpointNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(10522, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(10522, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10522, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10368, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16776, 0) node.BrowseName = QualifiedName('BaseSetpointNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10368, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BaseSetpointNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16776, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16776, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16776, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10368, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10214, 0) node.BrowseName = QualifiedName('NonExclusiveRateOfChangeAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(9906, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("NonExclusiveRateOfChangeAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16858, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(10214, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9906, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16858, 0) node.BrowseName = QualifiedName('EngineeringUnits', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10214, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EngineeringUnits") attrs.DataType = NumericNodeId(887, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16858, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10214, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9764, 0) node.BrowseName = QualifiedName('ExclusiveDeviationAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(9341, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ExclusiveDeviationAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9764, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9905, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9764, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16817, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9764, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9341, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9905, 0) node.BrowseName = QualifiedName('SetpointNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9764, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SetpointNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(9905, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(9905, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9905, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9764, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16817, 0) node.BrowseName = QualifiedName('BaseSetpointNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9764, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("BaseSetpointNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16817, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9764, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9623, 0) node.BrowseName = QualifiedName('ExclusiveRateOfChangeAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(9341, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ExclusiveRateOfChangeAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(9623, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(16899, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9623, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9341, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(16899, 0) node.BrowseName = QualifiedName('EngineeringUnits', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(9623, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("EngineeringUnits") attrs.DataType = NumericNodeId(887, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(16899, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(16899, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(16899, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(9623, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10523, 0) node.BrowseName = QualifiedName('DiscreteAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("DiscreteAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(10523, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10637, 0) node.BrowseName = QualifiedName('OffNormalAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(10523, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("OffNormalAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(10637, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11158, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(10637, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10523, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11158, 0) node.BrowseName = QualifiedName('NormalState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(10637, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("NormalState") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11158, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11158, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11158, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10637, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11753, 0) node.BrowseName = QualifiedName('SystemOffNormalAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(10637, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("SystemOffNormalAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11753, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10637, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(10751, 0) node.BrowseName = QualifiedName('TripAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(10637, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("TripAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(10751, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10637, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18347, 0) node.BrowseName = QualifiedName('InstrumentDiagnosticAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(10637, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("InstrumentDiagnosticAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(18347, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10637, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18496, 0) node.BrowseName = QualifiedName('SystemDiagnosticAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(10637, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("SystemDiagnosticAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(18496, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(10637, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13225, 0) node.BrowseName = QualifiedName('CertificateExpirationAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11753, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("CertificateExpirationAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13325, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(14900, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13326, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13327, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(13225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11753, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13325, 0) node.BrowseName = QualifiedName('ExpirationDate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13225, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ExpirationDate") attrs.DataType = ua.NodeId(ua.ObjectIds.DateTime) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13325, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13225, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(14900, 0) node.BrowseName = QualifiedName('ExpirationLimit', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13225, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ExpirationLimit") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(14900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(14900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(14900, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13225, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13326, 0) node.BrowseName = QualifiedName('CertificateType', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13225, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CertificateType") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13326, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13225, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(13327, 0) node.BrowseName = QualifiedName('Certificate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(13225, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Certificate") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(13327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(13327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(13327, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(13225, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17080, 0) node.BrowseName = QualifiedName('DiscrepancyAlarmType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2915, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("DiscrepancyAlarmType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17215, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17216, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17217, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17080, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2915, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17215, 0) node.BrowseName = QualifiedName('TargetValueNode', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17080, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("TargetValueNode") attrs.DataType = ua.NodeId(ua.ObjectIds.NodeId) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17215, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17216, 0) node.BrowseName = QualifiedName('ExpectedTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17080, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ExpectedTime") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17216, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17217, 0) node.BrowseName = QualifiedName('Tolerance', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17080, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Tolerance") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(80, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17217, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17080, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11163, 0) node.BrowseName = QualifiedName('BaseConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("BaseConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11163, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11164, 0) node.BrowseName = QualifiedName('ProcessConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("ProcessConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11164, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11165, 0) node.BrowseName = QualifiedName('MaintenanceConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("MaintenanceConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11165, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11166, 0) node.BrowseName = QualifiedName('SystemConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("SystemConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11166, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17218, 0) node.BrowseName = QualifiedName('SafetyConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("SafetyConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17218, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17219, 0) node.BrowseName = QualifiedName('HighlyManagedAlarmConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("HighlyManagedAlarmConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17219, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17220, 0) node.BrowseName = QualifiedName('TrainingConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("TrainingConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17220, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18665, 0) node.BrowseName = QualifiedName('StatisticalConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("StatisticalConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(18665, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17221, 0) node.BrowseName = QualifiedName('TestingConditionClassType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(11163, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("TestingConditionClassType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17221, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11163, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2790, 0) node.BrowseName = QualifiedName('AuditConditionEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2127, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2790, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2127, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2803, 0) node.BrowseName = QualifiedName('AuditConditionEnableEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionEnableEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2803, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2829, 0) node.BrowseName = QualifiedName('AuditConditionCommentEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionCommentEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17222, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(2829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11851, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2829, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17222, 0) node.BrowseName = QualifiedName('ConditionEventId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2829, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionEventId") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17222, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2829, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11851, 0) node.BrowseName = QualifiedName('Comment', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(2829, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Comment") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11851, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2829, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8927, 0) node.BrowseName = QualifiedName('AuditConditionRespondEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionRespondEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8927, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11852, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(8927, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11852, 0) node.BrowseName = QualifiedName('SelectedResponse', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8927, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("SelectedResponse") attrs.DataType = ua.NodeId(ua.ObjectIds.Int32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11852, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8927, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8944, 0) node.BrowseName = QualifiedName('AuditConditionAcknowledgeEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionAcknowledgeEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8944, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17223, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8944, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11853, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(8944, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17223, 0) node.BrowseName = QualifiedName('ConditionEventId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8944, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionEventId") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17223, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8944, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11853, 0) node.BrowseName = QualifiedName('Comment', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8944, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Comment") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11853, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11853, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11853, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8944, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(8961, 0) node.BrowseName = QualifiedName('AuditConditionConfirmEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionConfirmEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8961, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17224, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(8961, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11854, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(8961, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17224, 0) node.BrowseName = QualifiedName('ConditionEventId', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8961, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ConditionEventId") attrs.DataType = ua.NodeId(ua.ObjectIds.ByteString) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17224, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8961, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11854, 0) node.BrowseName = QualifiedName('Comment', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(8961, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Comment") attrs.DataType = ua.NodeId(ua.ObjectIds.LocalizedText) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11854, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(8961, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11093, 0) node.BrowseName = QualifiedName('AuditConditionShelvingEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionShelvingEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11855, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(11093, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(11855, 0) node.BrowseName = QualifiedName('ShelvingTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(11093, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("ShelvingTime") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(11855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(11855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(11855, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(11093, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17225, 0) node.BrowseName = QualifiedName('AuditConditionSuppressEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionSuppressEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17225, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17242, 0) node.BrowseName = QualifiedName('AuditConditionSilenceEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionSilenceEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17242, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(15013, 0) node.BrowseName = QualifiedName('AuditConditionResetEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionResetEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(15013, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17259, 0) node.BrowseName = QualifiedName('AuditConditionOutOfServiceEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2790, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AuditConditionOutOfServiceEventType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17259, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2790, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2787, 0) node.BrowseName = QualifiedName('RefreshStartEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2130, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("RefreshStartEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2787, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2130, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2788, 0) node.BrowseName = QualifiedName('RefreshEndEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2130, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("RefreshEndEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2788, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2130, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(2789, 0) node.BrowseName = QualifiedName('RefreshRequiredEventType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(2130, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("RefreshRequiredEventType") attrs.IsAbstract = True node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(2789, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(2130, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(9006, 0) node.BrowseName = QualifiedName('HasCondition', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(32, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasCondition") attrs.InverseName = LocalizedText("IsConditionOf") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(9006, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(32, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17276, 0) node.BrowseName = QualifiedName('HasEffectDisable', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(54, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasEffectDisable") attrs.InverseName = LocalizedText("MayBeDisabledBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17276, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(54, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17983, 0) node.BrowseName = QualifiedName('HasEffectEnable', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(54, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasEffectEnable") attrs.InverseName = LocalizedText("MayBeEnabledBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17983, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(54, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17984, 0) node.BrowseName = QualifiedName('HasEffectSuppressed', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(54, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasEffectSuppressed") attrs.InverseName = LocalizedText("MayBeSuppressedBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17984, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(54, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17985, 0) node.BrowseName = QualifiedName('HasEffectUnsuppressed', 0) node.NodeClass = NodeClass.ReferenceType node.ParentNodeId = NumericNodeId(54, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ReferenceTypeAttributes() attrs.DisplayName = LocalizedText("HasEffectUnsuppressed") attrs.InverseName = LocalizedText("MayBeUnsuppressedBy") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17985, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(54, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17279, 0) node.BrowseName = QualifiedName('AlarmMetricsType', 0) node.NodeClass = NodeClass.ObjectType node.ParentNodeId = NumericNodeId(58, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.ObjectTypeAttributes() attrs.DisplayName = LocalizedText("AlarmMetricsType") attrs.IsAbstract = False node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17280, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17991, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17281, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17282, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17284, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17286, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17283, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17288, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(18666, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17279, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(58, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17280, 0) node.BrowseName = QualifiedName('AlarmCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AlarmCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17280, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17280, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17280, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17991, 0) node.BrowseName = QualifiedName('StartTime', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("StartTime") attrs.DataType = NumericNodeId(294, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17991, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17991, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17991, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17281, 0) node.BrowseName = QualifiedName('MaximumActiveState', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaximumActiveState") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17281, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17281, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17281, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17282, 0) node.BrowseName = QualifiedName('MaximumUnAck', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaximumUnAck") attrs.DataType = NumericNodeId(290, 0) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17282, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17282, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17282, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17284, 0) node.BrowseName = QualifiedName('CurrentAlarmRate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(17277, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("CurrentAlarmRate") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17284, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17285, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17284, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17277, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17284, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17284, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17285, 0) node.BrowseName = QualifiedName('Rate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17284, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Rate") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17285, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17284, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17286, 0) node.BrowseName = QualifiedName('MaximumAlarmRate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(17277, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaximumAlarmRate") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17286, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17287, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17286, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17277, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17286, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17286, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17287, 0) node.BrowseName = QualifiedName('Rate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17286, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Rate") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17287, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17287, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17287, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17286, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17283, 0) node.BrowseName = QualifiedName('MaximumReAlarmCount', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("MaximumReAlarmCount") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt32) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17283, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17283, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17283, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17288, 0) node.BrowseName = QualifiedName('AverageAlarmRate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(47, 0) node.TypeDefinition = NumericNodeId(17277, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("AverageAlarmRate") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17289, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17277, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(17288, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17289, 0) node.BrowseName = QualifiedName('Rate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17288, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Rate") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17289, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17289, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17289, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17288, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(18666, 0) node.BrowseName = QualifiedName('Reset', 0) node.NodeClass = NodeClass.Method node.ParentNodeId = NumericNodeId(17279, 0) node.ReferenceTypeId = NumericNodeId(47, 0) attrs = ua.MethodAttributes() attrs.DisplayName = LocalizedText("Reset") node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(18666, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(47, 0) ref.SourceNodeId = NumericNodeId(18666, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17279, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17277, 0) node.BrowseName = QualifiedName('AlarmRateVariableType', 0) node.NodeClass = NodeClass.VariableType node.ParentNodeId = NumericNodeId(63, 0) node.ReferenceTypeId = NumericNodeId(45, 0) attrs = ua.VariableTypeAttributes() attrs.DisplayName = LocalizedText("AlarmRateVariableType") attrs.DisplayName = LocalizedText("AlarmRateVariableType") attrs.DataType = ua.NodeId(ua.ObjectIds.Double) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17277, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17278, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(45, 0) ref.SourceNodeId = NumericNodeId(17277, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(63, 0) refs.append(ref) server.add_references(refs) node = ua.AddNodesItem() node.RequestedNewNodeId = NumericNodeId(17278, 0) node.BrowseName = QualifiedName('Rate', 0) node.NodeClass = NodeClass.Variable node.ParentNodeId = NumericNodeId(17277, 0) node.ReferenceTypeId = NumericNodeId(46, 0) node.TypeDefinition = NumericNodeId(68, 0) attrs = ua.VariableAttributes() attrs.DisplayName = LocalizedText("Rate") attrs.DataType = ua.NodeId(ua.ObjectIds.UInt16) attrs.ValueRank = -1 node.NodeAttributes = attrs server.add_nodes([node]) refs = [] ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(40, 0) ref.SourceNodeId = NumericNodeId(17278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(68, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = True ref.ReferenceTypeId = NumericNodeId(37, 0) ref.SourceNodeId = NumericNodeId(17278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(78, 0) refs.append(ref) ref = ua.AddReferencesItem() ref.IsForward = False ref.ReferenceTypeId = NumericNodeId(46, 0) ref.SourceNodeId = NumericNodeId(17278, 0) ref.TargetNodeClass = NodeClass.DataType ref.TargetNodeId = NumericNodeId(17277, 0) refs.append(ref) server.add_references(refs) python-opcua-0.98.9/opcua/server/subscription_service.py000066400000000000000000000115331357637245100235220ustar00rootroot00000000000000""" server side implementation of subscription service """ from threading import RLock import logging from opcua import ua from opcua.common import utils from opcua.server.internal_subscription import InternalSubscription class SubscriptionService(object): def __init__(self, aspace): self.logger = logging.getLogger(__name__) self.loop = None self.aspace = aspace self.subscriptions = {} self._sub_id_counter = 77 self._lock = RLock() def set_loop(self, loop): self.loop = loop def create_subscription(self, params, callback): self.logger.info("create subscription with callback: %s", callback) result = ua.CreateSubscriptionResult() result.RevisedPublishingInterval = params.RequestedPublishingInterval result.RevisedLifetimeCount = params.RequestedLifetimeCount result.RevisedMaxKeepAliveCount = params.RequestedMaxKeepAliveCount with self._lock: self._sub_id_counter += 1 result.SubscriptionId = self._sub_id_counter sub = InternalSubscription(self, result, self.aspace, callback) sub.start() self.subscriptions[result.SubscriptionId] = sub return result def modify_subscription(self, params, callback): # Requested params are ignored, result = params set during create_subscription. self.logger.info("modify subscription with callback: %s", callback) result = ua.ModifySubscriptionResult() try: with self._lock: sub = self.subscriptions[params.SubscriptionId] result.RevisedPublishingInterval = sub.data.RevisedPublishingInterval result.RevisedLifetimeCount = sub.data.RevisedLifetimeCount result.RevisedMaxKeepAliveCount = sub.data.RevisedMaxKeepAliveCount return result except KeyError: raise utils.ServiceError(ua.StatusCodes.BadSubscriptionIdInvalid) def delete_subscriptions(self, ids): self.logger.info("delete subscriptions: %s", ids) res = [] for i in ids: with self._lock: if i not in self.subscriptions: res.append(ua.StatusCode(ua.StatusCodes.BadSubscriptionIdInvalid)) else: sub = self.subscriptions.pop(i) sub.stop() res.append(ua.StatusCode()) return res def publish(self, acks): self.logger.info("publish request with acks %s", acks) with self._lock: for subid, sub in self.subscriptions.items(): sub.publish([ack.SequenceNumber for ack in acks if ack.SubscriptionId == subid]) def create_monitored_items(self, params): self.logger.info("create monitored items") with self._lock: if params.SubscriptionId not in self.subscriptions: res = [] for _ in params.ItemsToCreate: response = ua.MonitoredItemCreateResult() response.StatusCode = ua.StatusCode(ua.StatusCodes.BadSubscriptionIdInvalid) res.append(response) return res return self.subscriptions[params.SubscriptionId].monitored_item_srv.create_monitored_items(params) def modify_monitored_items(self, params): self.logger.info("modify monitored items") with self._lock: if params.SubscriptionId not in self.subscriptions: res = [] for _ in params.ItemsToModify: result = ua.MonitoredItemModifyResult() result.StatusCode = ua.StatusCode(ua.StatusCodes.BadSubscriptionIdInvalid) res.append(result) return res return self.subscriptions[params.SubscriptionId].monitored_item_srv.modify_monitored_items(params) def delete_monitored_items(self, params): self.logger.info("delete monitored items") with self._lock: if params.SubscriptionId not in self.subscriptions: res = [] for _ in params.MonitoredItemIds: res.append(ua.StatusCode(ua.StatusCodes.BadSubscriptionIdInvalid)) return res return self.subscriptions[params.SubscriptionId].monitored_item_srv.delete_monitored_items( params.MonitoredItemIds) def republish(self, params): with self._lock: if params.SubscriptionId not in self.subscriptions: # TODO: what should I do? return ua.NotificationMessage() return self.subscriptions[params.SubscriptionId].republish(params.RetransmitSequenceNumber) def trigger_event(self, event): with self._lock: for sub in self.subscriptions.values(): sub.monitored_item_srv.trigger_event(event) python-opcua-0.98.9/opcua/server/uaprocessor.py000066400000000000000000000553421357637245100216310ustar00rootroot00000000000000 import logging from threading import RLock, Lock import time from opcua import ua from opcua.ua.ua_binary import nodeid_from_binary, struct_from_binary from opcua.ua.ua_binary import struct_to_binary, uatcp_to_binary from opcua.common import utils from opcua.common.connection import SecureConnection class PublishRequestData(object): def __init__(self): self.requesthdr = None self.seqhdr = None self.timestamp = time.time() class UaProcessor(object): def __init__(self, internal_server, socket): self.logger = logging.getLogger(__name__) self.iserver = internal_server self.name = socket.get_extra_info('peername') self.sockname = socket.get_extra_info('sockname') self.session = None self.socket = socket self._socketlock = Lock() self._datalock = RLock() self._publishdata_queue = [] self._publish_result_queue = [] # used when we need to wait for PublishRequest self._connection = SecureConnection(ua.SecurityPolicy()) @property def local_discovery_service(self): return self.iserver.local_discovery_service def set_policies(self, policies): self._connection.set_policy_factories(policies) def send_response(self, requesthandle, seqhdr, response, msgtype=ua.MessageType.SecureMessage): with self._socketlock: response.ResponseHeader.RequestHandle = requesthandle data = self._connection.message_to_binary( struct_to_binary(response), message_type=msgtype, request_id=seqhdr.RequestId) self.socket.write(data) def open_secure_channel(self, algohdr, seqhdr, body): request = struct_from_binary(ua.OpenSecureChannelRequest, body) self._connection.select_policy( algohdr.SecurityPolicyURI, algohdr.SenderCertificate, request.Parameters.SecurityMode) channel = self._connection.open(request.Parameters, self.iserver) # send response response = ua.OpenSecureChannelResponse() response.Parameters = channel self.send_response(request.RequestHeader.RequestHandle, seqhdr, response, ua.MessageType.SecureOpen) def forward_publish_response(self, result): self.logger.info("forward publish response %s", result) with self._datalock: while True: if len(self._publishdata_queue) == 0: self._publish_result_queue.append(result) self.logger.info("Server wants to send publish answer but no publish request is available," "enqueing notification, length of result queue is %s", len(self._publish_result_queue)) return requestdata = self._publishdata_queue.pop(0) if requestdata.requesthdr.TimeoutHint == 0 or requestdata.requesthdr.TimeoutHint != 0 and time.time() - requestdata.timestamp < requestdata.requesthdr.TimeoutHint / 1000: break response = ua.PublishResponse() response.Parameters = result self.send_response(requestdata.requesthdr.RequestHandle, requestdata.seqhdr, response) def process(self, header, body): msg = self._connection.receive_from_header_and_body(header, body) if isinstance(msg, ua.Message): if header.MessageType == ua.MessageType.SecureOpen: self.open_secure_channel(msg.SecurityHeader(), msg.SequenceHeader(), msg.body()) elif header.MessageType == ua.MessageType.SecureClose: self._connection.close() return False elif header.MessageType == ua.MessageType.SecureMessage: return self.process_message(msg.SequenceHeader(), msg.body()) elif isinstance(msg, ua.Hello): ack = ua.Acknowledge() ack.ReceiveBufferSize = msg.ReceiveBufferSize ack.SendBufferSize = msg.SendBufferSize data = uatcp_to_binary(ua.MessageType.Acknowledge, ack) self.socket.write(data) elif isinstance(msg, ua.ErrorMessage): self.logger.warning("Received an error message type") elif msg is None: pass # msg is a ChunkType.Intermediate of an ua.MessageType.SecureMessage else: self.logger.warning("Unsupported message type: %s", header.MessageType) raise utils.ServiceError(ua.StatusCodes.BadTcpMessageTypeInvalid) return True def process_message(self, seqhdr, body): typeid = nodeid_from_binary(body) requesthdr = struct_from_binary(ua.RequestHeader, body) try: return self._process_message(typeid, requesthdr, seqhdr, body) except utils.ServiceError as e: status = ua.StatusCode(e.code) response = ua.ServiceFault() response.ResponseHeader.ServiceResult = status self.logger.info("sending service fault response: %s (%s)", status.doc, status.name) self.send_response(requesthdr.RequestHandle, seqhdr, response) return True def _process_message(self, typeid, requesthdr, seqhdr, body): if typeid == ua.NodeId(ua.ObjectIds.CreateSessionRequest_Encoding_DefaultBinary): self.logger.info("Create session request") params = struct_from_binary(ua.CreateSessionParameters, body) # create the session on server self.session = self.iserver.create_session(self.name, external=True) # get a session creation result to send back sessiondata = self.session.create_session(params, sockname=self.sockname) response = ua.CreateSessionResponse() response.Parameters = sessiondata response.Parameters.ServerCertificate = self._connection.security_policy.client_certificate if self._connection.security_policy.server_certificate is None: data = params.ClientNonce else: data = self._connection.security_policy.server_certificate + params.ClientNonce response.Parameters.ServerSignature.Signature = \ self._connection.security_policy.asymmetric_cryptography.signature(data) response.Parameters.ServerSignature.Algorithm = self._connection.security_policy.AsymmetricSignatureURI self.logger.info("sending create session response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.CloseSessionRequest_Encoding_DefaultBinary): self.logger.info("Close session request") if self.session: deletesubs = ua.ua_binary.Primitives.Boolean.unpack(body) self.session.close_session(deletesubs) else: self.logger.info("Request to close non-existing session") response = ua.CloseSessionResponse() self.logger.info("sending close session response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.ActivateSessionRequest_Encoding_DefaultBinary): self.logger.info("Activate session request") params = struct_from_binary(ua.ActivateSessionParameters, body) if not self.session: self.logger.info("request to activate non-existing session") raise utils.ServiceError(ua.StatusCodes.BadSessionIdInvalid) if self._connection.security_policy.client_certificate is None: data = self.session.nonce else: data = self._connection.security_policy.client_certificate + self.session.nonce self._connection.security_policy.asymmetric_cryptography.verify(data, params.ClientSignature.Signature) result = self.session.activate_session(params) response = ua.ActivateSessionResponse() response.Parameters = result self.logger.info("sending read response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.ReadRequest_Encoding_DefaultBinary): self.logger.info("Read request") params = struct_from_binary(ua.ReadParameters, body) results = self.session.read(params) response = ua.ReadResponse() response.Results = results self.logger.info("sending read response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.WriteRequest_Encoding_DefaultBinary): self.logger.info("Write request") params = struct_from_binary(ua.WriteParameters, body) results = self.session.write(params) response = ua.WriteResponse() response.Results = results self.logger.info("sending write response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.BrowseRequest_Encoding_DefaultBinary): self.logger.info("Browse request") params = struct_from_binary(ua.BrowseParameters, body) results = self.session.browse(params) response = ua.BrowseResponse() response.Results = results self.logger.info("sending browse response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.GetEndpointsRequest_Encoding_DefaultBinary): self.logger.info("get endpoints request") params = struct_from_binary(ua.GetEndpointsParameters, body) endpoints = self.iserver.get_endpoints(params, sockname=self.sockname) response = ua.GetEndpointsResponse() response.Endpoints = endpoints self.logger.info("sending get endpoints response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.FindServersRequest_Encoding_DefaultBinary): self.logger.info("find servers request") params = struct_from_binary(ua.FindServersParameters, body) servers = self.local_discovery_service.find_servers(params) response = ua.FindServersResponse() response.Servers = servers self.logger.info("sending find servers response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.RegisterServerRequest_Encoding_DefaultBinary): self.logger.info("register server request") serv = struct_from_binary(ua.RegisteredServer, body) self.local_discovery_service.register_server(serv) response = ua.RegisterServerResponse() self.logger.info("sending register server response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.RegisterServer2Request_Encoding_DefaultBinary): self.logger.info("register server 2 request") params = struct_from_binary(ua.RegisterServer2Parameters, body) results = self.local_discovery_service.register_server2(params) response = ua.RegisterServer2Response() response.ConfigurationResults = results self.logger.info("sending register server 2 response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.TranslateBrowsePathsToNodeIdsRequest_Encoding_DefaultBinary): self.logger.info("translate browsepaths to nodeids request") params = struct_from_binary(ua.TranslateBrowsePathsToNodeIdsParameters, body) paths = self.session.translate_browsepaths_to_nodeids(params.BrowsePaths) response = ua.TranslateBrowsePathsToNodeIdsResponse() response.Results = paths self.logger.info("sending translate browsepaths to nodeids response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.AddNodesRequest_Encoding_DefaultBinary): self.logger.info("add nodes request") params = struct_from_binary(ua.AddNodesParameters, body) results = self.session.add_nodes(params.NodesToAdd) response = ua.AddNodesResponse() response.Results = results self.logger.info("sending add node response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.DeleteNodesRequest_Encoding_DefaultBinary): self.logger.info("delete nodes request") params = struct_from_binary(ua.DeleteNodesParameters, body) results = self.session.delete_nodes(params) response = ua.DeleteNodesResponse() response.Results = results self.logger.info("sending delete node response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.AddReferencesRequest_Encoding_DefaultBinary): self.logger.info("add references request") params = struct_from_binary(ua.AddReferencesParameters, body) results = self.session.add_references(params.ReferencesToAdd) response = ua.AddReferencesResponse() response.Results = results self.logger.info("sending add references response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.DeleteReferencesRequest_Encoding_DefaultBinary): self.logger.info("delete references request") params = struct_from_binary(ua.DeleteReferencesParameters, body) results = self.session.delete_references(params.ReferencesToDelete) response = ua.DeleteReferencesResponse() response.Parameters.Results = results self.logger.info("sending delete references response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.CreateSubscriptionRequest_Encoding_DefaultBinary): self.logger.info("create subscription request") params = struct_from_binary(ua.CreateSubscriptionParameters, body) result = self.session.create_subscription(params, self.forward_publish_response) response = ua.CreateSubscriptionResponse() response.Parameters = result self.logger.info("sending create subscription response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.ModifySubscriptionRequest_Encoding_DefaultBinary): self.logger.info("modify subscription request") params = struct_from_binary(ua.ModifySubscriptionParameters, body) result = self.session.modify_subscription(params, self.forward_publish_response) response = ua.ModifySubscriptionResponse() response.Parameters = result self.logger.info("sending modify subscription response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.DeleteSubscriptionsRequest_Encoding_DefaultBinary): self.logger.info("delete subscriptions request") params = struct_from_binary(ua.DeleteSubscriptionsParameters, body) results = self.session.delete_subscriptions(params.SubscriptionIds) response = ua.DeleteSubscriptionsResponse() response.Results = results self.logger.info("sending delte subscription response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.CreateMonitoredItemsRequest_Encoding_DefaultBinary): self.logger.info("create monitored items request") params = struct_from_binary(ua.CreateMonitoredItemsParameters, body) results = self.session.create_monitored_items(params) response = ua.CreateMonitoredItemsResponse() response.Results = results self.logger.info("sending create monitored items response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.ModifyMonitoredItemsRequest_Encoding_DefaultBinary): self.logger.info("modify monitored items request") params = struct_from_binary(ua.ModifyMonitoredItemsParameters, body) results = self.session.modify_monitored_items(params) response = ua.ModifyMonitoredItemsResponse() response.Results = results self.logger.info("sending modify monitored items response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.DeleteMonitoredItemsRequest_Encoding_DefaultBinary): self.logger.info("delete monitored items request") params = struct_from_binary(ua.DeleteMonitoredItemsParameters, body) results = self.session.delete_monitored_items(params) response = ua.DeleteMonitoredItemsResponse() response.Results = results self.logger.info("sending delete monitored items response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.HistoryReadRequest_Encoding_DefaultBinary): self.logger.info("history read request") params = struct_from_binary(ua.HistoryReadParameters, body) results = self.session.history_read(params) response = ua.HistoryReadResponse() response.Results = results self.logger.info("sending history read response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.RegisterNodesRequest_Encoding_DefaultBinary): self.logger.info("register nodes request") params = struct_from_binary(ua.RegisterNodesParameters, body) self.logger.info("Node registration not implemented") response = ua.RegisterNodesResponse() response.Parameters.RegisteredNodeIds = params.NodesToRegister self.logger.info("sending register nodes response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.UnregisterNodesRequest_Encoding_DefaultBinary): self.logger.info("unregister nodes request") params = struct_from_binary(ua.UnregisterNodesParameters, body) response = ua.UnregisterNodesResponse() self.logger.info("sending unregister nodes response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.PublishRequest_Encoding_DefaultBinary): self.logger.info("publish request") if not self.session: return False params = struct_from_binary(ua.PublishParameters, body) data = PublishRequestData() data.requesthdr = requesthdr data.seqhdr = seqhdr with self._datalock: self._publishdata_queue.append(data) # will be used to send publish answers from server if self._publish_result_queue: result = self._publish_result_queue.pop(0) self.forward_publish_response(result) self.session.publish(params.SubscriptionAcknowledgements) self.logger.info("publish forward to server") elif typeid == ua.NodeId(ua.ObjectIds.RepublishRequest_Encoding_DefaultBinary): self.logger.info("re-publish request") params = struct_from_binary(ua.RepublishParameters, body) msg = self.session.republish(params) response = ua.RepublishResponse() response.NotificationMessage = msg self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.CloseSecureChannelRequest_Encoding_DefaultBinary): self.logger.info("close secure channel request") self._connection.close() response = ua.CloseSecureChannelResponse() self.send_response(requesthdr.RequestHandle, seqhdr, response) return False elif typeid == ua.NodeId(ua.ObjectIds.CallRequest_Encoding_DefaultBinary): self.logger.info("call request") params = struct_from_binary(ua.CallParameters, body) results = self.session.call(params.MethodsToCall) response = ua.CallResponse() response.Results = results self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.SetMonitoringModeRequest_Encoding_DefaultBinary): self.logger.info("set monitoring mode request") params = struct_from_binary(ua.SetMonitoringModeParameters, body) # FIXME: Implement SetMonitoringMode # Send dummy results to keep clients happy response = ua.SetMonitoringModeResponse() results = ua.SetMonitoringModeResult() ids = params.MonitoredItemIds statuses = [ua.StatusCode(ua.StatusCodes.Good) for node_id in ids] results.Results = statuses response.Parameters = results self.logger.info("sending set monitoring mode response") self.send_response(requesthdr.RequestHandle, seqhdr, response) elif typeid == ua.NodeId(ua.ObjectIds.SetPublishingModeRequest_Encoding_DefaultBinary): self.logger.info("set publishing mode request") params = struct_from_binary(ua.SetPublishingModeParameters, body) # FIXME: Implement SetPublishingMode # Send dummy results to keep clients happy response = ua.SetPublishingModeResponse() results = ua.SetPublishingModeResult() ids = params.SubscriptionIds statuses = [ua.StatusCode(ua.StatusCodes.Good) for node_id in ids] results.Results = statuses response.Parameters = results self.logger.info("sending set publishing mode response") self.send_response(requesthdr.RequestHandle, seqhdr, response) else: self.logger.warning("Unknown message received %s", typeid) raise utils.ServiceError(ua.StatusCodes.BadServiceUnsupported) return True def close(self): """ to be called when client has disconnected to ensure we really close everything we should """ self.logger.info("Cleanup client connection: %s", self.name) if self.session: self.session.close_session(True) python-opcua-0.98.9/opcua/server/user_manager.py000066400000000000000000000054431357637245100217310ustar00rootroot00000000000000 import logging from enum import Enum from struct import unpack_from use_crypto = True try: from opcua.crypto import uacrypto except ImportError: logging.getLogger(__name__).warning("cryptography is not installed, use of crypto disabled") use_crypto = False class UserManager(object): class User(Enum): """ Define some default users. """ Admin = 0 Anonymous = 1 User = 3 def __init__(self, parent): self.logger = logging.getLogger(__name__) assert(hasattr(parent, 'private_key')) self._parent = parent self.user_manager = self.default_user_manager self.allow_remote_admin = True @property def private_key(self): return self._parent.private_key def default_user_manager(self, isession, userName, password): """ Default user_manager, does nothing much but check for admin """ if self.allow_remote_admin and userName in ("admin", "Admin"): isession.user = UserManager.User.Admin return True def set_user_manager(self, user_manager): """ set up a function which that will check for authorize users. Input function takes username and password as paramters and returns True of user is allowed access, False otherwise. """ self.user_manager = user_manager def check_user_token(self, isession, token): """ unpack the username and password for the benefit of the user defined user manager """ userName = token.UserName passwd = token.Password # decrypt password is we can if str(token.EncryptionAlgorithm) != "None": if use_crypto == False: return False; try: if token.EncryptionAlgorithm == "http://www.w3.org/2001/04/xmlenc#rsa-1_5": raw_pw = uacrypto.decrypt_rsa15(self.private_key, passwd) elif token.EncryptionAlgorithm == "http://www.w3.org/2001/04/xmlenc#rsa-oaep": raw_pw = uacrypto.decrypt_rsa_oaep(self.private_key, passwd) else: self.logger.warning("Unknown password encoding '{0}'".format(token.EncryptionAlgorithm)) return False length = unpack_from(' 2: unicode = str logger = logging.getLogger('__name__') def test_bit(data, offset): mask = 1 << offset return data & mask def set_bit(data, offset): mask = 1 << offset return data | mask def unset_bit(data, offset): mask = 1 << offset return data & ~mask class _DateTime(object): @staticmethod def pack(dt): epch = ua.datetime_to_win_epoch(dt) return Primitives.Int64.pack(epch) @staticmethod def unpack(data): epch = Primitives.Int64.unpack(data) return ua.win_epoch_to_datetime(epch) class _Bytes(object): @staticmethod def pack(data): if data is None: return Primitives.Int32.pack(-1) length = len(data) return Primitives.Int32.pack(length) + data @staticmethod def unpack(data): length = Primitives.Int32.unpack(data) if length == -1: return None return data.read(length) class _String(object): @staticmethod def pack(string): if string is not None: if sys.version_info.major > 2: string = string.encode('utf-8') else: # we do not want this test to happen with python3 if isinstance(string, unicode): string = string.encode('utf-8') return _Bytes.pack(string) @staticmethod def unpack(data): b = _Bytes.unpack(data) if sys.version_info.major < 3: # return unicode(b) #might be correct for python2 but would complicate tests for python3 return b else: if b is None: return b return b.decode("utf-8") class _Null(object): @staticmethod def pack(data): return b"" @staticmethod def unpack(data): return None class _Guid(object): @staticmethod def pack(guid): # convert python UUID 6 field format to OPC UA 4 field format f1 = Primitives.UInt32.pack(guid.time_low) f2 = Primitives.UInt16.pack(guid.time_mid) f3 = Primitives.UInt16.pack(guid.time_hi_version) f4a = Primitives.Byte.pack(guid.clock_seq_hi_variant) f4b = Primitives.Byte.pack(guid.clock_seq_low) f4c = struct.pack('>Q', guid.node)[2:8] # no primitive .pack available for 6 byte int f4 = f4a + f4b + f4c # concat byte fields b = f1 + f2 + f3 + f4 return b @staticmethod def unpack(data): # convert OPC UA 4 field format to python UUID bytes f1 = struct.pack('>I', Primitives.UInt32.unpack(data)) f2 = struct.pack('>H', Primitives.UInt16.unpack(data)) f3 = struct.pack('>H', Primitives.UInt16.unpack(data)) f4 = data.read(8) # concat byte fields b = f1 + f2 + f3 + f4 return uuid.UUID(bytes=b) class _Primitive1(object): def __init__(self, fmt): self._fmt = fmt st = struct.Struct(fmt.format(1)) self.size = st.size self.format = st.format def pack(self, data): return struct.pack(self.format, data) def unpack(self, data): return struct.unpack(self.format, data.read(self.size))[0] def pack_array(self, data): if data is None: return Primitives.Int32.pack(-1) sizedata = Primitives.Int32.pack(len(data)) return sizedata + struct.pack(self._fmt.format(len(data)), *data) def unpack_array(self, data, length): if length == -1: return None if length == 0: return () return struct.unpack(self._fmt.format(length), data.read(self.size * length)) class Primitives1(object): SByte = _Primitive1("<{:d}b") Int16 = _Primitive1("<{:d}h") Int32 = _Primitive1("<{:d}i") Int64 = _Primitive1("<{:d}q") Byte = _Primitive1("<{:d}B") Char = Byte UInt16 = _Primitive1("<{:d}H") UInt32 = _Primitive1("<{:d}I") UInt64 = _Primitive1("<{:d}Q") Boolean = _Primitive1("<{:d}?") Double = _Primitive1("<{:d}d") Float = _Primitive1("<{:d}f") class Primitives(Primitives1): Null = _Null() String = _String() Bytes = _Bytes() ByteString = _Bytes() CharArray = _String() DateTime = _DateTime() Guid = _Guid() def pack_uatype(vtype, value): if hasattr(Primitives, vtype.name): return getattr(Primitives, vtype.name).pack(value) elif vtype.value > 25: return Primitives.Bytes.pack(value) elif vtype == ua.VariantType.ExtensionObject: return extensionobject_to_binary(value) elif vtype in (ua.VariantType.NodeId, ua.VariantType.ExpandedNodeId): return nodeid_to_binary(value) elif vtype == ua.VariantType.Variant: return variant_to_binary(value) else: return struct_to_binary(value) def unpack_uatype(vtype, data): if hasattr(Primitives, vtype.name): st = getattr(Primitives, vtype.name) return st.unpack(data) elif vtype.value > 25: return Primitives.Bytes.unpack(data) elif vtype == ua.VariantType.ExtensionObject: return extensionobject_from_binary(data) elif vtype in (ua.VariantType.NodeId, ua.VariantType.ExpandedNodeId): return nodeid_from_binary(data) elif vtype == ua.VariantType.Variant: return variant_from_binary(data) else: if hasattr(ua, vtype.name): klass = getattr(ua, vtype.name) return struct_from_binary(klass, data) else: raise UaError("Cannot unpack unknown variant type {0!s}".format(vtype)) def pack_uatype_array(vtype, array): if hasattr(Primitives1, vtype.name): dataType = getattr(Primitives1, vtype.name) return dataType.pack_array(array) if array is None: return b'\xff\xff\xff\xff' length = len(array) b = [pack_uatype(vtype, val) for val in array] b.insert(0, Primitives.Int32.pack(length)) return b"".join(b) def unpack_uatype_array(vtype, data): length = Primitives.Int32.unpack(data) if length == -1: return None elif hasattr(Primitives1, vtype.name): dataType = getattr(Primitives1, vtype.name) # Remark: works without tuple conversion to list. return list(dataType.unpack_array(data, length)) else: # Revert to slow serial unpacking. return [unpack_uatype(vtype, data) for _ in range(length)] def struct_to_binary(obj): packet = [] has_switch = hasattr(obj, "ua_switches") if has_switch: for name, switch in obj.ua_switches.items(): member = getattr(obj, name) container_name, idx = switch if member is not None: container_val = getattr(obj, container_name) container_val = container_val | 1 << idx setattr(obj, container_name, container_val) for name, uatype in obj.ua_types: val = getattr(obj, name) if uatype.startswith("ListOf"): packet.append(list_to_binary(uatype[6:], val)) else: if has_switch and val is None and name in obj.ua_switches: pass else: packet.append(to_binary(uatype, val)) return b''.join(packet) def to_binary(uatype, val): """ Pack a python object to binary given a string defining its type """ if uatype.startswith("ListOf"): #if isinstance(val, (list, tuple)): return list_to_binary(uatype[6:], val) elif isinstance(uatype, (str, unicode)) and hasattr(ua.VariantType, uatype): vtype = getattr(ua.VariantType, uatype) return pack_uatype(vtype, val) elif isinstance(uatype, (str, unicode)) and hasattr(Primitives, uatype): return getattr(Primitives, uatype).pack(val) elif isinstance(val, (IntEnum, Enum)): return Primitives.UInt32.pack(val.value) elif isinstance(val, ua.NodeId): return nodeid_to_binary(val) elif isinstance(val, ua.Variant): return variant_to_binary(val) elif hasattr(val, "ua_types"): return struct_to_binary(val) else: raise UaError("No known way to pack {} of type {} to ua binary".format(val, uatype)) def list_to_binary(uatype, val): if val is None: return Primitives.Int32.pack(-1) if hasattr(Primitives1, uatype): dataType = getattr(Primitives1, uatype) return dataType.pack_array(val) datasize = Primitives.Int32.pack(len(val)) pack = [to_binary(uatype, el) for el in val] pack.insert(0, datasize) return b''.join(pack) def nodeid_to_binary(nodeid): data = None if nodeid.NodeIdType == ua.NodeIdType.TwoByte: return struct.pack(" len(flat): flat.append([]) if not subdims or subdims == [0]: return flat return [_reshape(flat[i:i + subsize], subdims) for i in range(0, len(flat), subsize)] def extensionobject_from_binary(data): """ Convert binary-coded ExtensionObject to a Python object. Returns an object, or None if TypeId is zero """ typeid = nodeid_from_binary(data) Encoding = ord(data.read(1)) body = None if Encoding & (1 << 0): length = Primitives.Int32.unpack(data) if length < 1: body = Buffer(b"") else: body = data.copy(length) data.skip(length) if typeid.Identifier == 0: return None elif typeid in ua.extension_object_classes: klass = ua.extension_object_classes[typeid] if body is None: raise UaError("parsing ExtensionObject {0} without data".format(klass.__name__)) return from_binary(klass, body) else: e = ua.ExtensionObject() e.TypeId = typeid e.Encoding = Encoding if body is not None: e.Body = body.read(len(body)) return e def extensionobject_to_binary(obj): """ Convert Python object to binary-coded ExtensionObject. If obj is None, convert to empty ExtensionObject (TypeId=0, no Body). Returns a binary string """ if isinstance(obj, ua.ExtensionObject): return struct_to_binary(obj) if obj is None: TypeId = ua.NodeId() Encoding = 0 Body = None else: TypeId = ua.extension_object_ids[obj.__class__.__name__] Encoding = 0x01 Body = struct_to_binary(obj) packet = [] packet.append(nodeid_to_binary(TypeId)) packet.append(Primitives.Byte.pack(Encoding)) if Body: packet.append(Primitives.Bytes.pack(Body)) return b''.join(packet) def from_binary(uatype, data): """ unpack data given an uatype as a string or a python class having a ua_types memeber """ if isinstance(uatype, (str, unicode)) and uatype.startswith("ListOf"): utype = uatype[6:] if hasattr(ua.VariantType, utype): vtype = getattr(ua.VariantType, utype) return unpack_uatype_array(vtype, data) size = Primitives.Int32.unpack(data) return [from_binary(utype, data) for _ in range(size)] elif isinstance(uatype, (str, unicode)) and hasattr(ua.VariantType, uatype): vtype = getattr(ua.VariantType, uatype) return unpack_uatype(vtype, data) elif isinstance(uatype, (str, unicode)) and hasattr(Primitives, uatype): return getattr(Primitives, uatype).unpack(data) else: return struct_from_binary(uatype, data) def struct_from_binary(objtype, data): """ unpack an ua struct. Arguments are an objtype as Python class or string """ if isinstance(objtype, (unicode, str)): objtype = getattr(ua, objtype) if issubclass(objtype, Enum): return objtype(Primitives.UInt32.unpack(data)) obj = objtype() for name, uatype in obj.ua_types: # if our member has a swtich and it is not set we skip it if hasattr(obj, "ua_switches") and name in obj.ua_switches: container_name, idx = obj.ua_switches[name] val = getattr(obj, container_name) if not test_bit(val, idx): continue val = from_binary(uatype, data) setattr(obj, name, val) return obj def header_to_binary(hdr): b = [] b.append(struct.pack("<3ss", hdr.MessageType, hdr.ChunkType)) size = hdr.body_size + 8 if hdr.MessageType in (ua.MessageType.SecureOpen, ua.MessageType.SecureClose, ua.MessageType.SecureMessage): size += 4 b.append(Primitives.UInt32.pack(size)) if hdr.MessageType in (ua.MessageType.SecureOpen, ua.MessageType.SecureClose, ua.MessageType.SecureMessage): b.append(Primitives.UInt32.pack(hdr.ChannelId)) return b"".join(b) def header_from_binary(data): hdr = ua.Header() hdr.MessageType, hdr.ChunkType, hdr.packet_size = struct.unpack("<3scI", data.read(8)) hdr.body_size = hdr.packet_size - 8 if hdr.MessageType in (ua.MessageType.SecureOpen, ua.MessageType.SecureClose, ua.MessageType.SecureMessage): hdr.body_size -= 4 hdr.ChannelId = Primitives.UInt32.unpack(data) return hdr def uatcp_to_binary(message_type, message): """ Convert OPC UA TCP message (see OPC UA specs Part 6, 7.1) to binary. The only supported types are Hello, Acknowledge and ErrorMessage """ header = ua.Header(message_type, ua.ChunkType.Single) binmsg = struct_to_binary(message) header.body_size = len(binmsg) return header_to_binary(header) + binmsg python-opcua-0.98.9/opcua/ua/uaerrors/000077500000000000000000000000001357637245100176425ustar00rootroot00000000000000python-opcua-0.98.9/opcua/ua/uaerrors/__init__.py000066400000000000000000000000521357637245100217500ustar00rootroot00000000000000from ._base import * from ._auto import * python-opcua-0.98.9/opcua/ua/uaerrors/_auto.py000066400000000000000000000334351357637245100213330ustar00rootroot00000000000000#AUTOGENERATED!!! from opcua.ua.uaerrors import UaStatusCodeError class Bad(UaStatusCodeError): code = 0x80000000 class BadUnexpectedError(UaStatusCodeError): code = 0x80010000 class BadInternalError(UaStatusCodeError): code = 0x80020000 class BadOutOfMemory(UaStatusCodeError): code = 0x80030000 class BadResourceUnavailable(UaStatusCodeError): code = 0x80040000 class BadCommunicationError(UaStatusCodeError): code = 0x80050000 class BadEncodingError(UaStatusCodeError): code = 0x80060000 class BadDecodingError(UaStatusCodeError): code = 0x80070000 class BadEncodingLimitsExceeded(UaStatusCodeError): code = 0x80080000 class BadRequestTooLarge(UaStatusCodeError): code = 0x80B80000 class BadResponseTooLarge(UaStatusCodeError): code = 0x80B90000 class BadUnknownResponse(UaStatusCodeError): code = 0x80090000 class BadTimeout(UaStatusCodeError): code = 0x800A0000 class BadServiceUnsupported(UaStatusCodeError): code = 0x800B0000 class BadShutdown(UaStatusCodeError): code = 0x800C0000 class BadServerNotConnected(UaStatusCodeError): code = 0x800D0000 class BadServerHalted(UaStatusCodeError): code = 0x800E0000 class BadNothingToDo(UaStatusCodeError): code = 0x800F0000 class BadTooManyOperations(UaStatusCodeError): code = 0x80100000 class BadTooManyMonitoredItems(UaStatusCodeError): code = 0x80DB0000 class BadDataTypeIdUnknown(UaStatusCodeError): code = 0x80110000 class BadCertificateInvalid(UaStatusCodeError): code = 0x80120000 class BadSecurityChecksFailed(UaStatusCodeError): code = 0x80130000 class BadCertificateTimeInvalid(UaStatusCodeError): code = 0x80140000 class BadCertificateIssuerTimeInvalid(UaStatusCodeError): code = 0x80150000 class BadCertificateHostNameInvalid(UaStatusCodeError): code = 0x80160000 class BadCertificateUriInvalid(UaStatusCodeError): code = 0x80170000 class BadCertificateUseNotAllowed(UaStatusCodeError): code = 0x80180000 class BadCertificateIssuerUseNotAllowed(UaStatusCodeError): code = 0x80190000 class BadCertificateUntrusted(UaStatusCodeError): code = 0x801A0000 class BadCertificateRevocationUnknown(UaStatusCodeError): code = 0x801B0000 class BadCertificateIssuerRevocationUnknown(UaStatusCodeError): code = 0x801C0000 class BadCertificateRevoked(UaStatusCodeError): code = 0x801D0000 class BadCertificateIssuerRevoked(UaStatusCodeError): code = 0x801E0000 class BadCertificateChainIncomplete(UaStatusCodeError): code = 0x810D0000 class BadUserAccessDenied(UaStatusCodeError): code = 0x801F0000 class BadIdentityTokenInvalid(UaStatusCodeError): code = 0x80200000 class BadIdentityTokenRejected(UaStatusCodeError): code = 0x80210000 class BadSecureChannelIdInvalid(UaStatusCodeError): code = 0x80220000 class BadInvalidTimestamp(UaStatusCodeError): code = 0x80230000 class BadNonceInvalid(UaStatusCodeError): code = 0x80240000 class BadSessionIdInvalid(UaStatusCodeError): code = 0x80250000 class BadSessionClosed(UaStatusCodeError): code = 0x80260000 class BadSessionNotActivated(UaStatusCodeError): code = 0x80270000 class BadSubscriptionIdInvalid(UaStatusCodeError): code = 0x80280000 class BadRequestHeaderInvalid(UaStatusCodeError): code = 0x802A0000 class BadTimestampsToReturnInvalid(UaStatusCodeError): code = 0x802B0000 class BadRequestCancelledByClient(UaStatusCodeError): code = 0x802C0000 class BadTooManyArguments(UaStatusCodeError): code = 0x80E50000 class BadNoCommunication(UaStatusCodeError): code = 0x80310000 class BadWaitingForInitialData(UaStatusCodeError): code = 0x80320000 class BadNodeIdInvalid(UaStatusCodeError): code = 0x80330000 class BadNodeIdUnknown(UaStatusCodeError): code = 0x80340000 class BadAttributeIdInvalid(UaStatusCodeError): code = 0x80350000 class BadIndexRangeInvalid(UaStatusCodeError): code = 0x80360000 class BadIndexRangeNoData(UaStatusCodeError): code = 0x80370000 class BadDataEncodingInvalid(UaStatusCodeError): code = 0x80380000 class BadDataEncodingUnsupported(UaStatusCodeError): code = 0x80390000 class BadNotReadable(UaStatusCodeError): code = 0x803A0000 class BadNotWritable(UaStatusCodeError): code = 0x803B0000 class BadOutOfRange(UaStatusCodeError): code = 0x803C0000 class BadNotSupported(UaStatusCodeError): code = 0x803D0000 class BadNotFound(UaStatusCodeError): code = 0x803E0000 class BadObjectDeleted(UaStatusCodeError): code = 0x803F0000 class BadNotImplemented(UaStatusCodeError): code = 0x80400000 class BadMonitoringModeInvalid(UaStatusCodeError): code = 0x80410000 class BadMonitoredItemIdInvalid(UaStatusCodeError): code = 0x80420000 class BadMonitoredItemFilterInvalid(UaStatusCodeError): code = 0x80430000 class BadMonitoredItemFilterUnsupported(UaStatusCodeError): code = 0x80440000 class BadFilterNotAllowed(UaStatusCodeError): code = 0x80450000 class BadStructureMissing(UaStatusCodeError): code = 0x80460000 class BadEventFilterInvalid(UaStatusCodeError): code = 0x80470000 class BadContentFilterInvalid(UaStatusCodeError): code = 0x80480000 class BadFilterOperatorInvalid(UaStatusCodeError): code = 0x80C10000 class BadFilterOperatorUnsupported(UaStatusCodeError): code = 0x80C20000 class BadFilterOperandCountMismatch(UaStatusCodeError): code = 0x80C30000 class BadFilterOperandInvalid(UaStatusCodeError): code = 0x80490000 class BadFilterElementInvalid(UaStatusCodeError): code = 0x80C40000 class BadFilterLiteralInvalid(UaStatusCodeError): code = 0x80C50000 class BadContinuationPointInvalid(UaStatusCodeError): code = 0x804A0000 class BadNoContinuationPoints(UaStatusCodeError): code = 0x804B0000 class BadReferenceTypeIdInvalid(UaStatusCodeError): code = 0x804C0000 class BadBrowseDirectionInvalid(UaStatusCodeError): code = 0x804D0000 class BadNodeNotInView(UaStatusCodeError): code = 0x804E0000 class BadServerUriInvalid(UaStatusCodeError): code = 0x804F0000 class BadServerNameMissing(UaStatusCodeError): code = 0x80500000 class BadDiscoveryUrlMissing(UaStatusCodeError): code = 0x80510000 class BadSempahoreFileMissing(UaStatusCodeError): code = 0x80520000 class BadRequestTypeInvalid(UaStatusCodeError): code = 0x80530000 class BadSecurityModeRejected(UaStatusCodeError): code = 0x80540000 class BadSecurityPolicyRejected(UaStatusCodeError): code = 0x80550000 class BadTooManySessions(UaStatusCodeError): code = 0x80560000 class BadUserSignatureInvalid(UaStatusCodeError): code = 0x80570000 class BadApplicationSignatureInvalid(UaStatusCodeError): code = 0x80580000 class BadNoValidCertificates(UaStatusCodeError): code = 0x80590000 class BadIdentityChangeNotSupported(UaStatusCodeError): code = 0x80C60000 class BadRequestCancelledByRequest(UaStatusCodeError): code = 0x805A0000 class BadParentNodeIdInvalid(UaStatusCodeError): code = 0x805B0000 class BadReferenceNotAllowed(UaStatusCodeError): code = 0x805C0000 class BadNodeIdRejected(UaStatusCodeError): code = 0x805D0000 class BadNodeIdExists(UaStatusCodeError): code = 0x805E0000 class BadNodeClassInvalid(UaStatusCodeError): code = 0x805F0000 class BadBrowseNameInvalid(UaStatusCodeError): code = 0x80600000 class BadBrowseNameDuplicated(UaStatusCodeError): code = 0x80610000 class BadNodeAttributesInvalid(UaStatusCodeError): code = 0x80620000 class BadTypeDefinitionInvalid(UaStatusCodeError): code = 0x80630000 class BadSourceNodeIdInvalid(UaStatusCodeError): code = 0x80640000 class BadTargetNodeIdInvalid(UaStatusCodeError): code = 0x80650000 class BadDuplicateReferenceNotAllowed(UaStatusCodeError): code = 0x80660000 class BadInvalidSelfReference(UaStatusCodeError): code = 0x80670000 class BadReferenceLocalOnly(UaStatusCodeError): code = 0x80680000 class BadNoDeleteRights(UaStatusCodeError): code = 0x80690000 class BadServerIndexInvalid(UaStatusCodeError): code = 0x806A0000 class BadViewIdUnknown(UaStatusCodeError): code = 0x806B0000 class BadViewTimestampInvalid(UaStatusCodeError): code = 0x80C90000 class BadViewParameterMismatch(UaStatusCodeError): code = 0x80CA0000 class BadViewVersionInvalid(UaStatusCodeError): code = 0x80CB0000 class BadNotTypeDefinition(UaStatusCodeError): code = 0x80C80000 class BadTooManyMatches(UaStatusCodeError): code = 0x806D0000 class BadQueryTooComplex(UaStatusCodeError): code = 0x806E0000 class BadNoMatch(UaStatusCodeError): code = 0x806F0000 class BadMaxAgeInvalid(UaStatusCodeError): code = 0x80700000 class BadSecurityModeInsufficient(UaStatusCodeError): code = 0x80E60000 class BadHistoryOperationInvalid(UaStatusCodeError): code = 0x80710000 class BadHistoryOperationUnsupported(UaStatusCodeError): code = 0x80720000 class BadInvalidTimestampArgument(UaStatusCodeError): code = 0x80BD0000 class BadWriteNotSupported(UaStatusCodeError): code = 0x80730000 class BadTypeMismatch(UaStatusCodeError): code = 0x80740000 class BadMethodInvalid(UaStatusCodeError): code = 0x80750000 class BadArgumentsMissing(UaStatusCodeError): code = 0x80760000 class BadTooManySubscriptions(UaStatusCodeError): code = 0x80770000 class BadTooManyPublishRequests(UaStatusCodeError): code = 0x80780000 class BadNoSubscription(UaStatusCodeError): code = 0x80790000 class BadSequenceNumberUnknown(UaStatusCodeError): code = 0x807A0000 class BadMessageNotAvailable(UaStatusCodeError): code = 0x807B0000 class BadInsufficientClientProfile(UaStatusCodeError): code = 0x807C0000 class BadStateNotActive(UaStatusCodeError): code = 0x80BF0000 class BadTcpServerTooBusy(UaStatusCodeError): code = 0x807D0000 class BadTcpMessageTypeInvalid(UaStatusCodeError): code = 0x807E0000 class BadTcpSecureChannelUnknown(UaStatusCodeError): code = 0x807F0000 class BadTcpMessageTooLarge(UaStatusCodeError): code = 0x80800000 class BadTcpNotEnoughResources(UaStatusCodeError): code = 0x80810000 class BadTcpInternalError(UaStatusCodeError): code = 0x80820000 class BadTcpEndpointUrlInvalid(UaStatusCodeError): code = 0x80830000 class BadRequestInterrupted(UaStatusCodeError): code = 0x80840000 class BadRequestTimeout(UaStatusCodeError): code = 0x80850000 class BadSecureChannelClosed(UaStatusCodeError): code = 0x80860000 class BadSecureChannelTokenUnknown(UaStatusCodeError): code = 0x80870000 class BadSequenceNumberInvalid(UaStatusCodeError): code = 0x80880000 class BadProtocolVersionUnsupported(UaStatusCodeError): code = 0x80BE0000 class BadConfigurationError(UaStatusCodeError): code = 0x80890000 class BadNotConnected(UaStatusCodeError): code = 0x808A0000 class BadDeviceFailure(UaStatusCodeError): code = 0x808B0000 class BadSensorFailure(UaStatusCodeError): code = 0x808C0000 class BadOutOfService(UaStatusCodeError): code = 0x808D0000 class BadDeadbandFilterInvalid(UaStatusCodeError): code = 0x808E0000 class BadRefreshInProgress(UaStatusCodeError): code = 0x80970000 class BadConditionAlreadyDisabled(UaStatusCodeError): code = 0x80980000 class BadConditionAlreadyEnabled(UaStatusCodeError): code = 0x80CC0000 class BadConditionDisabled(UaStatusCodeError): code = 0x80990000 class BadEventIdUnknown(UaStatusCodeError): code = 0x809A0000 class BadEventNotAcknowledgeable(UaStatusCodeError): code = 0x80BB0000 class BadDialogNotActive(UaStatusCodeError): code = 0x80CD0000 class BadDialogResponseInvalid(UaStatusCodeError): code = 0x80CE0000 class BadConditionBranchAlreadyAcked(UaStatusCodeError): code = 0x80CF0000 class BadConditionBranchAlreadyConfirmed(UaStatusCodeError): code = 0x80D00000 class BadConditionAlreadyShelved(UaStatusCodeError): code = 0x80D10000 class BadConditionNotShelved(UaStatusCodeError): code = 0x80D20000 class BadShelvingTimeOutOfRange(UaStatusCodeError): code = 0x80D30000 class BadNoData(UaStatusCodeError): code = 0x809B0000 class BadBoundNotFound(UaStatusCodeError): code = 0x80D70000 class BadBoundNotSupported(UaStatusCodeError): code = 0x80D80000 class BadDataLost(UaStatusCodeError): code = 0x809D0000 class BadDataUnavailable(UaStatusCodeError): code = 0x809E0000 class BadEntryExists(UaStatusCodeError): code = 0x809F0000 class BadNoEntryExists(UaStatusCodeError): code = 0x80A00000 class BadTimestampNotSupported(UaStatusCodeError): code = 0x80A10000 class BadAggregateListMismatch(UaStatusCodeError): code = 0x80D40000 class BadAggregateNotSupported(UaStatusCodeError): code = 0x80D50000 class BadAggregateInvalidInputs(UaStatusCodeError): code = 0x80D60000 class BadAggregateConfigurationRejected(UaStatusCodeError): code = 0x80DA0000 class BadRequestNotAllowed(UaStatusCodeError): code = 0x80E40000 class BadDominantValueChanged(UaStatusCodeError): code = 0x80E10000 class BadDependentValueChanged(UaStatusCodeError): code = 0x80E30000 class BadInvalidArgument(UaStatusCodeError): code = 0x80AB0000 class BadConnectionRejected(UaStatusCodeError): code = 0x80AC0000 class BadDisconnect(UaStatusCodeError): code = 0x80AD0000 class BadConnectionClosed(UaStatusCodeError): code = 0x80AE0000 class BadInvalidState(UaStatusCodeError): code = 0x80AF0000 class BadEndOfStream(UaStatusCodeError): code = 0x80B00000 class BadNoDataAvailable(UaStatusCodeError): code = 0x80B10000 class BadWaitingForResponse(UaStatusCodeError): code = 0x80B20000 class BadOperationAbandoned(UaStatusCodeError): code = 0x80B30000 class BadExpectedStreamToBlock(UaStatusCodeError): code = 0x80B40000 class BadWouldBlock(UaStatusCodeError): code = 0x80B50000 class BadSyntaxError(UaStatusCodeError): code = 0x80B60000 class BadMaxConnectionsReached(UaStatusCodeError): code = 0x80B70000 python-opcua-0.98.9/opcua/ua/uaerrors/_base.py000066400000000000000000000046111357637245100212670ustar00rootroot00000000000000""" Define exceptions to be raised at various places in the stack """ from opcua.compat import with_metaclass class _AutoRegister(type): def __new__(mcs, name, bases, dict): SubClass = type.__new__(mcs, name, bases, dict) # register subclass in bases for base in bases: try: subclasses = base._subclasses code = dict['code'] except (AttributeError, KeyError): pass else: subclasses[code] = SubClass return SubClass class UaError(RuntimeError): pass class UaStatusCodeError(with_metaclass(_AutoRegister, UaError)): """ This exception is raised when a bad status code is encountered. It exposes the status code number in the `code' property, so the user can distinguish between the different status codes and maybe handle some of them. The list of status error codes can be found in opcua.ua.status_codes. """ """ Dict containing all subclasses keyed to their status code. """ _subclasses = {} def __new__(cls, *args): """ Creates a new UaStatusCodeError but returns a more specific subclass if possible, e.g. UaStatusCodeError(0x80010000) => BadUnexpectedError() """ # switch class to a more appropriate subclass if len(args) >= 1: code = args[0] try: cls = cls._subclasses[code] except (KeyError, AttributeError): pass else: args = args[1:] return UaError.__new__(cls, *args) def __init__(self, code=None): """ :param code: The code of the exception. Only needed when not instanciating a concrete subclass such as BadInternalError. """ if code is None: if type(self) is UaStatusCodeError: raise TypeError("UaStatusCodeError(code) cannot be instantiated without a status code.") UaError.__init__(self, code) def __str__(self): # import here to avoid circular import problems import opcua.ua.status_codes as status_codes return "{1}({0})".format(*status_codes.get_name_and_doc(self.code)) @property def code(self): """ The code of the status error. """ return self.args[0] class UaStringParsingError(UaError): pass python-opcua-0.98.9/opcua/ua/uaprotocol_auto.py000066400000000000000000014202251357637245100215770ustar00rootroot00000000000000''' Autogenerate code from xml spec ''' from datetime import datetime from enum import IntEnum from opcua.ua.uatypes import * from opcua.ua.object_ids import ObjectIds class NamingRuleType(IntEnum): ''' :ivar Mandatory: :vartype Mandatory: 1 :ivar Optional: :vartype Optional: 2 :ivar Constraint: :vartype Constraint: 3 ''' Mandatory = 1 Optional = 2 Constraint = 3 class OpenFileMode(IntEnum): ''' :ivar Read: :vartype Read: 1 :ivar Write: :vartype Write: 2 :ivar EraseExisting: :vartype EraseExisting: 4 :ivar Append: :vartype Append: 8 ''' Read = 1 Write = 2 EraseExisting = 4 Append = 8 class IdentityCriteriaType(IntEnum): ''' :ivar UserName: :vartype UserName: 1 :ivar Thumbprint: :vartype Thumbprint: 2 :ivar Role: :vartype Role: 3 :ivar GroupId: :vartype GroupId: 4 :ivar Anonymous: :vartype Anonymous: 5 :ivar AuthenticatedUser: :vartype AuthenticatedUser: 6 ''' UserName = 1 Thumbprint = 2 Role = 3 GroupId = 4 Anonymous = 5 AuthenticatedUser = 6 class TrustListMasks(IntEnum): ''' :ivar None_: :vartype None_: 0 :ivar TrustedCertificates: :vartype TrustedCertificates: 1 :ivar TrustedCrls: :vartype TrustedCrls: 2 :ivar IssuerCertificates: :vartype IssuerCertificates: 4 :ivar IssuerCrls: :vartype IssuerCrls: 8 :ivar All: :vartype All: 15 ''' None_ = 0 TrustedCertificates = 1 TrustedCrls = 2 IssuerCertificates = 4 IssuerCrls = 8 All = 15 class PubSubState(IntEnum): ''' :ivar Disabled: :vartype Disabled: 0 :ivar Paused: :vartype Paused: 1 :ivar Operational: :vartype Operational: 2 :ivar Error: :vartype Error: 3 ''' Disabled = 0 Paused = 1 Operational = 2 Error = 3 class DataSetFieldFlags(IntEnum): ''' :ivar PromotedField: :vartype PromotedField: 1 ''' PromotedField = 1 class DataSetFieldContentMask(IntEnum): ''' :ivar StatusCode: :vartype StatusCode: 1 :ivar SourceTimestamp: :vartype SourceTimestamp: 2 :ivar ServerTimestamp: :vartype ServerTimestamp: 4 :ivar SourcePicoSeconds: :vartype SourcePicoSeconds: 8 :ivar ServerPicoSeconds: :vartype ServerPicoSeconds: 16 :ivar RawDataEncoding: :vartype RawDataEncoding: 32 ''' StatusCode = 1 SourceTimestamp = 2 ServerTimestamp = 4 SourcePicoSeconds = 8 ServerPicoSeconds = 16 RawDataEncoding = 32 class OverrideValueHandling(IntEnum): ''' :ivar Disabled: :vartype Disabled: 0 :ivar LastUseableValue: :vartype LastUseableValue: 1 :ivar OverrideValue: :vartype OverrideValue: 2 ''' Disabled = 0 LastUseableValue = 1 OverrideValue = 2 class DataSetOrderingType(IntEnum): ''' :ivar Undefined: :vartype Undefined: 0 :ivar AscendingWriterId: :vartype AscendingWriterId: 1 :ivar AscendingWriterIdSingle: :vartype AscendingWriterIdSingle: 2 ''' Undefined = 0 AscendingWriterId = 1 AscendingWriterIdSingle = 2 class UadpNetworkMessageContentMask(IntEnum): ''' :ivar PublisherId: :vartype PublisherId: 1 :ivar GroupHeader: :vartype GroupHeader: 2 :ivar WriterGroupId: :vartype WriterGroupId: 4 :ivar GroupVersion: :vartype GroupVersion: 8 :ivar NetworkMessageNumber: :vartype NetworkMessageNumber: 16 :ivar SequenceNumber: :vartype SequenceNumber: 32 :ivar PayloadHeader: :vartype PayloadHeader: 64 :ivar Timestamp: :vartype Timestamp: 128 :ivar Picoseconds: :vartype Picoseconds: 256 :ivar DataSetClassId: :vartype DataSetClassId: 512 :ivar PromotedFields: :vartype PromotedFields: 1024 ''' PublisherId = 1 GroupHeader = 2 WriterGroupId = 4 GroupVersion = 8 NetworkMessageNumber = 16 SequenceNumber = 32 PayloadHeader = 64 Timestamp = 128 Picoseconds = 256 DataSetClassId = 512 PromotedFields = 1024 class UadpDataSetMessageContentMask(IntEnum): ''' :ivar Timestamp: :vartype Timestamp: 1 :ivar PicoSeconds: :vartype PicoSeconds: 2 :ivar Status: :vartype Status: 4 :ivar MajorVersion: :vartype MajorVersion: 8 :ivar MinorVersion: :vartype MinorVersion: 16 :ivar SequenceNumber: :vartype SequenceNumber: 32 ''' Timestamp = 1 PicoSeconds = 2 Status = 4 MajorVersion = 8 MinorVersion = 16 SequenceNumber = 32 class JsonNetworkMessageContentMask(IntEnum): ''' :ivar NetworkMessageHeader: :vartype NetworkMessageHeader: 1 :ivar DataSetMessageHeader: :vartype DataSetMessageHeader: 2 :ivar SingleDataSetMessage: :vartype SingleDataSetMessage: 4 :ivar PublisherId: :vartype PublisherId: 8 :ivar DataSetClassId: :vartype DataSetClassId: 16 :ivar ReplyTo: :vartype ReplyTo: 32 ''' NetworkMessageHeader = 1 DataSetMessageHeader = 2 SingleDataSetMessage = 4 PublisherId = 8 DataSetClassId = 16 ReplyTo = 32 class JsonDataSetMessageContentMask(IntEnum): ''' :ivar DataSetWriterId: :vartype DataSetWriterId: 1 :ivar MetaDataVersion: :vartype MetaDataVersion: 2 :ivar SequenceNumber: :vartype SequenceNumber: 4 :ivar Timestamp: :vartype Timestamp: 8 :ivar Status: :vartype Status: 16 ''' DataSetWriterId = 1 MetaDataVersion = 2 SequenceNumber = 4 Timestamp = 8 Status = 16 class BrokerTransportQualityOfService(IntEnum): ''' :ivar NotSpecified: :vartype NotSpecified: 0 :ivar BestEffort: :vartype BestEffort: 1 :ivar AtLeastOnce: :vartype AtLeastOnce: 2 :ivar AtMostOnce: :vartype AtMostOnce: 3 :ivar ExactlyOnce: :vartype ExactlyOnce: 4 ''' NotSpecified = 0 BestEffort = 1 AtLeastOnce = 2 AtMostOnce = 3 ExactlyOnce = 4 class DiagnosticsLevel(IntEnum): ''' :ivar Basic: :vartype Basic: 0 :ivar Advanced: :vartype Advanced: 1 :ivar Info: :vartype Info: 2 :ivar Log: :vartype Log: 3 :ivar Debug: :vartype Debug: 4 ''' Basic = 0 Advanced = 1 Info = 2 Log = 3 Debug = 4 class PubSubDiagnosticsCounterClassification(IntEnum): ''' :ivar Information: :vartype Information: 0 :ivar Error: :vartype Error: 1 ''' Information = 0 Error = 1 class IdType(IntEnum): ''' The type of identifier used in a node id. :ivar Numeric: :vartype Numeric: 0 :ivar String: :vartype String: 1 :ivar Guid: :vartype Guid: 2 :ivar Opaque: :vartype Opaque: 3 ''' Numeric = 0 String = 1 Guid = 2 Opaque = 3 class NodeClass(IntEnum): ''' A mask specifying the class of the node. :ivar Unspecified: :vartype Unspecified: 0 :ivar Object: :vartype Object: 1 :ivar Variable: :vartype Variable: 2 :ivar Method: :vartype Method: 4 :ivar ObjectType: :vartype ObjectType: 8 :ivar VariableType: :vartype VariableType: 16 :ivar ReferenceType: :vartype ReferenceType: 32 :ivar DataType: :vartype DataType: 64 :ivar View: :vartype View: 128 ''' Unspecified = 0 Object = 1 Variable = 2 Method = 4 ObjectType = 8 VariableType = 16 ReferenceType = 32 DataType = 64 View = 128 class AccessLevelType(IntEnum): ''' :ivar None_: :vartype None_: 0 :ivar CurrentRead: :vartype CurrentRead: 1 :ivar CurrentWrite: :vartype CurrentWrite: 2 :ivar HistoryRead: :vartype HistoryRead: 4 :ivar HistoryWrite: :vartype HistoryWrite: 16 :ivar StatusWrite: :vartype StatusWrite: 32 :ivar TimestampWrite: :vartype TimestampWrite: 64 ''' None_ = 0 CurrentRead = 1 CurrentWrite = 2 HistoryRead = 4 HistoryWrite = 16 StatusWrite = 32 TimestampWrite = 64 class AccessLevelExType(IntEnum): ''' :ivar None_: :vartype None_: 0 :ivar CurrentRead: :vartype CurrentRead: 1 :ivar CurrentWrite: :vartype CurrentWrite: 2 :ivar HistoryRead: :vartype HistoryRead: 4 :ivar HistoryWrite: :vartype HistoryWrite: 16 :ivar StatusWrite: :vartype StatusWrite: 32 :ivar TimestampWrite: :vartype TimestampWrite: 64 :ivar NonatomicRead: :vartype NonatomicRead: 65536 :ivar NonatomicWrite: :vartype NonatomicWrite: 131072 :ivar WriteFullArrayOnly: :vartype WriteFullArrayOnly: 262144 ''' None_ = 0 CurrentRead = 1 CurrentWrite = 2 HistoryRead = 4 HistoryWrite = 16 StatusWrite = 32 TimestampWrite = 64 NonatomicRead = 65536 NonatomicWrite = 131072 WriteFullArrayOnly = 262144 class EventNotifierType(IntEnum): ''' :ivar None_: :vartype None_: 0 :ivar SubscribeToEvents: :vartype SubscribeToEvents: 1 :ivar HistoryRead: :vartype HistoryRead: 4 :ivar HistoryWrite: :vartype HistoryWrite: 8 ''' None_ = 0 SubscribeToEvents = 1 HistoryRead = 4 HistoryWrite = 8 class StructureType(IntEnum): ''' :ivar Structure: :vartype Structure: 0 :ivar StructureWithOptionalFields: :vartype StructureWithOptionalFields: 1 :ivar Union: :vartype Union: 2 ''' Structure = 0 StructureWithOptionalFields = 1 Union = 2 class ApplicationType(IntEnum): ''' The types of applications. :ivar Server: :vartype Server: 0 :ivar Client: :vartype Client: 1 :ivar ClientAndServer: :vartype ClientAndServer: 2 :ivar DiscoveryServer: :vartype DiscoveryServer: 3 ''' Server = 0 Client = 1 ClientAndServer = 2 DiscoveryServer = 3 class MessageSecurityMode(IntEnum): ''' The type of security to use on a message. :ivar Invalid: :vartype Invalid: 0 :ivar None_: :vartype None_: 1 :ivar Sign: :vartype Sign: 2 :ivar SignAndEncrypt: :vartype SignAndEncrypt: 3 ''' Invalid = 0 None_ = 1 Sign = 2 SignAndEncrypt = 3 class UserTokenType(IntEnum): ''' The possible user token types. :ivar Anonymous: :vartype Anonymous: 0 :ivar UserName: :vartype UserName: 1 :ivar Certificate: :vartype Certificate: 2 :ivar IssuedToken: :vartype IssuedToken: 3 ''' Anonymous = 0 UserName = 1 Certificate = 2 IssuedToken = 3 class SecurityTokenRequestType(IntEnum): ''' Indicates whether a token if being created or renewed. :ivar Issue: :vartype Issue: 0 :ivar Renew: :vartype Renew: 1 ''' Issue = 0 Renew = 1 class NodeAttributesMask(IntEnum): ''' The bits used to specify default attributes for a new node. :ivar None_: :vartype None_: 0 :ivar AccessLevel: :vartype AccessLevel: 1 :ivar ArrayDimensions: :vartype ArrayDimensions: 2 :ivar BrowseName: :vartype BrowseName: 4 :ivar ContainsNoLoops: :vartype ContainsNoLoops: 8 :ivar DataType: :vartype DataType: 16 :ivar Description: :vartype Description: 32 :ivar DisplayName: :vartype DisplayName: 64 :ivar EventNotifier: :vartype EventNotifier: 128 :ivar Executable: :vartype Executable: 256 :ivar Historizing: :vartype Historizing: 512 :ivar InverseName: :vartype InverseName: 1024 :ivar IsAbstract: :vartype IsAbstract: 2048 :ivar MinimumSamplingInterval: :vartype MinimumSamplingInterval: 4096 :ivar NodeClass: :vartype NodeClass: 8192 :ivar NodeId: :vartype NodeId: 16384 :ivar Symmetric: :vartype Symmetric: 32768 :ivar UserAccessLevel: :vartype UserAccessLevel: 65536 :ivar UserExecutable: :vartype UserExecutable: 131072 :ivar UserWriteMask: :vartype UserWriteMask: 262144 :ivar ValueRank: :vartype ValueRank: 524288 :ivar WriteMask: :vartype WriteMask: 1048576 :ivar Value: :vartype Value: 2097152 :ivar DataTypeDefinition: :vartype DataTypeDefinition: 4194304 :ivar RolePermissions: :vartype RolePermissions: 8388608 :ivar AccessRestrictions: :vartype AccessRestrictions: 16777216 :ivar All: :vartype All: 33554431 :ivar BaseNode: :vartype BaseNode: 26501220 :ivar Object: :vartype Object: 26501348 :ivar ObjectType: :vartype ObjectType: 26503268 :ivar Variable: :vartype Variable: 26571383 :ivar VariableType: :vartype VariableType: 28600438 :ivar Method: :vartype Method: 26632548 :ivar ReferenceType: :vartype ReferenceType: 26537060 :ivar View: :vartype View: 26501356 ''' None_ = 0 AccessLevel = 1 ArrayDimensions = 2 BrowseName = 4 ContainsNoLoops = 8 DataType = 16 Description = 32 DisplayName = 64 EventNotifier = 128 Executable = 256 Historizing = 512 InverseName = 1024 IsAbstract = 2048 MinimumSamplingInterval = 4096 NodeClass = 8192 NodeId = 16384 Symmetric = 32768 UserAccessLevel = 65536 UserExecutable = 131072 UserWriteMask = 262144 ValueRank = 524288 WriteMask = 1048576 Value = 2097152 DataTypeDefinition = 4194304 RolePermissions = 8388608 AccessRestrictions = 16777216 All = 33554431 BaseNode = 26501220 Object = 26501348 ObjectType = 26503268 Variable = 26571383 VariableType = 28600438 Method = 26632548 ReferenceType = 26537060 View = 26501356 class AttributeWriteMask(IntEnum): ''' Define bits used to indicate which attributes are writable. :ivar None_: :vartype None_: 0 :ivar AccessLevel: :vartype AccessLevel: 1 :ivar ArrayDimensions: :vartype ArrayDimensions: 2 :ivar BrowseName: :vartype BrowseName: 4 :ivar ContainsNoLoops: :vartype ContainsNoLoops: 8 :ivar DataType: :vartype DataType: 16 :ivar Description: :vartype Description: 32 :ivar DisplayName: :vartype DisplayName: 64 :ivar EventNotifier: :vartype EventNotifier: 128 :ivar Executable: :vartype Executable: 256 :ivar Historizing: :vartype Historizing: 512 :ivar InverseName: :vartype InverseName: 1024 :ivar IsAbstract: :vartype IsAbstract: 2048 :ivar MinimumSamplingInterval: :vartype MinimumSamplingInterval: 4096 :ivar NodeClass: :vartype NodeClass: 8192 :ivar NodeId: :vartype NodeId: 16384 :ivar Symmetric: :vartype Symmetric: 32768 :ivar UserAccessLevel: :vartype UserAccessLevel: 65536 :ivar UserExecutable: :vartype UserExecutable: 131072 :ivar UserWriteMask: :vartype UserWriteMask: 262144 :ivar ValueRank: :vartype ValueRank: 524288 :ivar WriteMask: :vartype WriteMask: 1048576 :ivar ValueForVariableType: :vartype ValueForVariableType: 2097152 :ivar DataTypeDefinition: :vartype DataTypeDefinition: 4194304 :ivar RolePermissions: :vartype RolePermissions: 8388608 :ivar AccessRestrictions: :vartype AccessRestrictions: 16777216 :ivar AccessLevelEx: :vartype AccessLevelEx: 33554432 ''' None_ = 0 AccessLevel = 1 ArrayDimensions = 2 BrowseName = 4 ContainsNoLoops = 8 DataType = 16 Description = 32 DisplayName = 64 EventNotifier = 128 Executable = 256 Historizing = 512 InverseName = 1024 IsAbstract = 2048 MinimumSamplingInterval = 4096 NodeClass = 8192 NodeId = 16384 Symmetric = 32768 UserAccessLevel = 65536 UserExecutable = 131072 UserWriteMask = 262144 ValueRank = 524288 WriteMask = 1048576 ValueForVariableType = 2097152 DataTypeDefinition = 4194304 RolePermissions = 8388608 AccessRestrictions = 16777216 AccessLevelEx = 33554432 class BrowseDirection(IntEnum): ''' The directions of the references to return. :ivar Forward: :vartype Forward: 0 :ivar Inverse: :vartype Inverse: 1 :ivar Both: :vartype Both: 2 :ivar Invalid: :vartype Invalid: 3 ''' Forward = 0 Inverse = 1 Both = 2 Invalid = 3 class BrowseResultMask(IntEnum): ''' A bit mask which specifies what should be returned in a browse response. :ivar None_: :vartype None_: 0 :ivar ReferenceTypeId: :vartype ReferenceTypeId: 1 :ivar IsForward: :vartype IsForward: 2 :ivar NodeClass: :vartype NodeClass: 4 :ivar BrowseName: :vartype BrowseName: 8 :ivar DisplayName: :vartype DisplayName: 16 :ivar TypeDefinition: :vartype TypeDefinition: 32 :ivar All: :vartype All: 63 :ivar ReferenceTypeInfo: :vartype ReferenceTypeInfo: 3 :ivar TargetInfo: :vartype TargetInfo: 60 ''' None_ = 0 ReferenceTypeId = 1 IsForward = 2 NodeClass = 4 BrowseName = 8 DisplayName = 16 TypeDefinition = 32 All = 63 ReferenceTypeInfo = 3 TargetInfo = 60 class FilterOperator(IntEnum): ''' :ivar Equals: :vartype Equals: 0 :ivar IsNull: :vartype IsNull: 1 :ivar GreaterThan: :vartype GreaterThan: 2 :ivar LessThan: :vartype LessThan: 3 :ivar GreaterThanOrEqual: :vartype GreaterThanOrEqual: 4 :ivar LessThanOrEqual: :vartype LessThanOrEqual: 5 :ivar Like: :vartype Like: 6 :ivar Not: :vartype Not: 7 :ivar Between: :vartype Between: 8 :ivar InList: :vartype InList: 9 :ivar And: :vartype And: 10 :ivar Or: :vartype Or: 11 :ivar Cast: :vartype Cast: 12 :ivar InView: :vartype InView: 13 :ivar OfType: :vartype OfType: 14 :ivar RelatedTo: :vartype RelatedTo: 15 :ivar BitwiseAnd: :vartype BitwiseAnd: 16 :ivar BitwiseOr: :vartype BitwiseOr: 17 ''' Equals = 0 IsNull = 1 GreaterThan = 2 LessThan = 3 GreaterThanOrEqual = 4 LessThanOrEqual = 5 Like = 6 Not = 7 Between = 8 InList = 9 And = 10 Or = 11 Cast = 12 InView = 13 OfType = 14 RelatedTo = 15 BitwiseAnd = 16 BitwiseOr = 17 class TimestampsToReturn(IntEnum): ''' :ivar Source: :vartype Source: 0 :ivar Server: :vartype Server: 1 :ivar Both: :vartype Both: 2 :ivar Neither: :vartype Neither: 3 :ivar Invalid: :vartype Invalid: 4 ''' Source = 0 Server = 1 Both = 2 Neither = 3 Invalid = 4 class HistoryUpdateType(IntEnum): ''' :ivar Insert: :vartype Insert: 1 :ivar Replace: :vartype Replace: 2 :ivar Update: :vartype Update: 3 :ivar Delete: :vartype Delete: 4 ''' Insert = 1 Replace = 2 Update = 3 Delete = 4 class PerformUpdateType(IntEnum): ''' :ivar Insert: :vartype Insert: 1 :ivar Replace: :vartype Replace: 2 :ivar Update: :vartype Update: 3 :ivar Remove: :vartype Remove: 4 ''' Insert = 1 Replace = 2 Update = 3 Remove = 4 class MonitoringMode(IntEnum): ''' :ivar Disabled: :vartype Disabled: 0 :ivar Sampling: :vartype Sampling: 1 :ivar Reporting: :vartype Reporting: 2 ''' Disabled = 0 Sampling = 1 Reporting = 2 class DataChangeTrigger(IntEnum): ''' :ivar Status: :vartype Status: 0 :ivar StatusValue: :vartype StatusValue: 1 :ivar StatusValueTimestamp: :vartype StatusValueTimestamp: 2 ''' Status = 0 StatusValue = 1 StatusValueTimestamp = 2 class DeadbandType(IntEnum): ''' :ivar None_: :vartype None_: 0 :ivar Absolute: :vartype Absolute: 1 :ivar Percent: :vartype Percent: 2 ''' None_ = 0 Absolute = 1 Percent = 2 class RedundancySupport(IntEnum): ''' :ivar None_: :vartype None_: 0 :ivar Cold: :vartype Cold: 1 :ivar Warm: :vartype Warm: 2 :ivar Hot: :vartype Hot: 3 :ivar Transparent: :vartype Transparent: 4 :ivar HotAndMirrored: :vartype HotAndMirrored: 5 ''' None_ = 0 Cold = 1 Warm = 2 Hot = 3 Transparent = 4 HotAndMirrored = 5 class ServerState(IntEnum): ''' :ivar Running: :vartype Running: 0 :ivar Failed: :vartype Failed: 1 :ivar NoConfiguration: :vartype NoConfiguration: 2 :ivar Suspended: :vartype Suspended: 3 :ivar Shutdown: :vartype Shutdown: 4 :ivar Test: :vartype Test: 5 :ivar CommunicationFault: :vartype CommunicationFault: 6 :ivar Unknown: :vartype Unknown: 7 ''' Running = 0 Failed = 1 NoConfiguration = 2 Suspended = 3 Shutdown = 4 Test = 5 CommunicationFault = 6 Unknown = 7 class ModelChangeStructureVerbMask(IntEnum): ''' :ivar NodeAdded: :vartype NodeAdded: 1 :ivar NodeDeleted: :vartype NodeDeleted: 2 :ivar ReferenceAdded: :vartype ReferenceAdded: 4 :ivar ReferenceDeleted: :vartype ReferenceDeleted: 8 :ivar DataTypeChanged: :vartype DataTypeChanged: 16 ''' NodeAdded = 1 NodeDeleted = 2 ReferenceAdded = 4 ReferenceDeleted = 8 DataTypeChanged = 16 class AxisScaleEnumeration(IntEnum): ''' :ivar Linear: :vartype Linear: 0 :ivar Log: :vartype Log: 1 :ivar Ln: :vartype Ln: 2 ''' Linear = 0 Log = 1 Ln = 2 class ExceptionDeviationFormat(IntEnum): ''' :ivar AbsoluteValue: :vartype AbsoluteValue: 0 :ivar PercentOfValue: :vartype PercentOfValue: 1 :ivar PercentOfRange: :vartype PercentOfRange: 2 :ivar PercentOfEURange: :vartype PercentOfEURange: 3 :ivar Unknown: :vartype Unknown: 4 ''' AbsoluteValue = 0 PercentOfValue = 1 PercentOfRange = 2 PercentOfEURange = 3 Unknown = 4 class DataTypeDefinition(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'DataTypeDefinition(' + + ')' __repr__ = __str__ class DiagnosticInfo(FrozenClass): ''' A recursive structure containing diagnostic information associated with a status code. :ivar Encoding: :vartype Encoding: Byte :ivar SymbolicId: :vartype SymbolicId: Int32 :ivar NamespaceURI: :vartype NamespaceURI: Int32 :ivar Locale: :vartype Locale: Int32 :ivar LocalizedText: :vartype LocalizedText: Int32 :ivar AdditionalInfo: :vartype AdditionalInfo: String :ivar InnerStatusCode: :vartype InnerStatusCode: StatusCode :ivar InnerDiagnosticInfo: :vartype InnerDiagnosticInfo: DiagnosticInfo ''' ua_switches = { 'SymbolicId': ('Encoding', 0), 'NamespaceURI': ('Encoding', 1), 'Locale': ('Encoding', 2), 'LocalizedText': ('Encoding', 3), 'AdditionalInfo': ('Encoding', 4), 'InnerStatusCode': ('Encoding', 5), 'InnerDiagnosticInfo': ('Encoding', 6), } ua_types = [ ('Encoding', 'Byte'), ('SymbolicId', 'Int32'), ('NamespaceURI', 'Int32'), ('Locale', 'Int32'), ('LocalizedText', 'Int32'), ('AdditionalInfo', 'String'), ('InnerStatusCode', 'StatusCode'), ('InnerDiagnosticInfo', 'DiagnosticInfo'), ] def __init__(self): self.Encoding = 0 self.SymbolicId = None self.NamespaceURI = None self.Locale = None self.LocalizedText = None self.AdditionalInfo = None self.InnerStatusCode = None self.InnerDiagnosticInfo = None self._freeze = True def __str__(self): return 'DiagnosticInfo(' + 'Encoding:' + str(self.Encoding) + ', ' + \ 'SymbolicId:' + str(self.SymbolicId) + ', ' + \ 'NamespaceURI:' + str(self.NamespaceURI) + ', ' + \ 'Locale:' + str(self.Locale) + ', ' + \ 'LocalizedText:' + str(self.LocalizedText) + ', ' + \ 'AdditionalInfo:' + str(self.AdditionalInfo) + ', ' + \ 'InnerStatusCode:' + str(self.InnerStatusCode) + ', ' + \ 'InnerDiagnosticInfo:' + str(self.InnerDiagnosticInfo) + ')' __repr__ = __str__ class KeyValuePair(FrozenClass): ''' :ivar Key: :vartype Key: QualifiedName :ivar Value: :vartype Value: Variant ''' ua_types = [ ('Key', 'QualifiedName'), ('Value', 'Variant'), ] def __init__(self): self.Key = QualifiedName() self.Value = Variant() self._freeze = True def __str__(self): return 'KeyValuePair(' + 'Key:' + str(self.Key) + ', ' + \ 'Value:' + str(self.Value) + ')' __repr__ = __str__ class EndpointType(FrozenClass): ''' :ivar EndpointUrl: :vartype EndpointUrl: String :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar SecurityPolicyUri: :vartype SecurityPolicyUri: String :ivar TransportProfileUri: :vartype TransportProfileUri: String ''' ua_types = [ ('EndpointUrl', 'String'), ('SecurityMode', 'MessageSecurityMode'), ('SecurityPolicyUri', 'String'), ('TransportProfileUri', 'String'), ] def __init__(self): self.EndpointUrl = None self.SecurityMode = MessageSecurityMode(0) self.SecurityPolicyUri = None self.TransportProfileUri = None self._freeze = True def __str__(self): return 'EndpointType(' + 'EndpointUrl:' + str(self.EndpointUrl) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'SecurityPolicyUri:' + str(self.SecurityPolicyUri) + ', ' + \ 'TransportProfileUri:' + str(self.TransportProfileUri) + ')' __repr__ = __str__ class IdentityMappingRuleType(FrozenClass): ''' :ivar CriteriaType: :vartype CriteriaType: IdentityCriteriaType :ivar Criteria: :vartype Criteria: String ''' ua_types = [ ('CriteriaType', 'IdentityCriteriaType'), ('Criteria', 'String'), ] def __init__(self): self.CriteriaType = IdentityCriteriaType(0) self.Criteria = None self._freeze = True def __str__(self): return 'IdentityMappingRuleType(' + 'CriteriaType:' + str(self.CriteriaType) + ', ' + \ 'Criteria:' + str(self.Criteria) + ')' __repr__ = __str__ class TrustListDataType(FrozenClass): ''' :ivar SpecifiedLists: :vartype SpecifiedLists: UInt32 :ivar TrustedCertificates: :vartype TrustedCertificates: ByteString :ivar TrustedCrls: :vartype TrustedCrls: ByteString :ivar IssuerCertificates: :vartype IssuerCertificates: ByteString :ivar IssuerCrls: :vartype IssuerCrls: ByteString ''' ua_types = [ ('SpecifiedLists', 'UInt32'), ('TrustedCertificates', 'ListOfByteString'), ('TrustedCrls', 'ListOfByteString'), ('IssuerCertificates', 'ListOfByteString'), ('IssuerCrls', 'ListOfByteString'), ] def __init__(self): self.SpecifiedLists = 0 self.TrustedCertificates = [] self.TrustedCrls = [] self.IssuerCertificates = [] self.IssuerCrls = [] self._freeze = True def __str__(self): return 'TrustListDataType(' + 'SpecifiedLists:' + str(self.SpecifiedLists) + ', ' + \ 'TrustedCertificates:' + str(self.TrustedCertificates) + ', ' + \ 'TrustedCrls:' + str(self.TrustedCrls) + ', ' + \ 'IssuerCertificates:' + str(self.IssuerCertificates) + ', ' + \ 'IssuerCrls:' + str(self.IssuerCrls) + ')' __repr__ = __str__ class DecimalDataType(FrozenClass): ''' :ivar Scale: :vartype Scale: Int16 :ivar Value: :vartype Value: ByteString ''' ua_types = [ ('Scale', 'Int16'), ('Value', 'ByteString'), ] def __init__(self): self.Scale = 0 self.Value = None self._freeze = True def __str__(self): return 'DecimalDataType(' + 'Scale:' + str(self.Scale) + ', ' + \ 'Value:' + str(self.Value) + ')' __repr__ = __str__ class DataTypeSchemaHeader(FrozenClass): ''' :ivar Namespaces: :vartype Namespaces: String :ivar StructureDataTypes: :vartype StructureDataTypes: StructureDescription :ivar EnumDataTypes: :vartype EnumDataTypes: EnumDescription :ivar SimpleDataTypes: :vartype SimpleDataTypes: SimpleTypeDescription ''' ua_types = [ ('Namespaces', 'ListOfString'), ('StructureDataTypes', 'ListOfStructureDescription'), ('EnumDataTypes', 'ListOfEnumDescription'), ('SimpleDataTypes', 'ListOfSimpleTypeDescription'), ] def __init__(self): self.Namespaces = [] self.StructureDataTypes = [] self.EnumDataTypes = [] self.SimpleDataTypes = [] self._freeze = True def __str__(self): return 'DataTypeSchemaHeader(' + 'Namespaces:' + str(self.Namespaces) + ', ' + \ 'StructureDataTypes:' + str(self.StructureDataTypes) + ', ' + \ 'EnumDataTypes:' + str(self.EnumDataTypes) + ', ' + \ 'SimpleDataTypes:' + str(self.SimpleDataTypes) + ')' __repr__ = __str__ class DataTypeDescription(FrozenClass): ''' :ivar DataTypeId: :vartype DataTypeId: NodeId :ivar Name: :vartype Name: QualifiedName ''' ua_types = [ ('DataTypeId', 'NodeId'), ('Name', 'QualifiedName'), ] def __init__(self): self.DataTypeId = NodeId() self.Name = QualifiedName() self._freeze = True def __str__(self): return 'DataTypeDescription(' + 'DataTypeId:' + str(self.DataTypeId) + ', ' + \ 'Name:' + str(self.Name) + ')' __repr__ = __str__ class StructureDescription(FrozenClass): ''' :ivar DataTypeId: :vartype DataTypeId: NodeId :ivar Name: :vartype Name: QualifiedName :ivar StructureDefinition: :vartype StructureDefinition: StructureDefinition ''' ua_types = [ ('DataTypeId', 'NodeId'), ('Name', 'QualifiedName'), ('StructureDefinition', 'StructureDefinition'), ] def __init__(self): self.DataTypeId = NodeId() self.Name = QualifiedName() self.StructureDefinition = StructureDefinition() self._freeze = True def __str__(self): return 'StructureDescription(' + 'DataTypeId:' + str(self.DataTypeId) + ', ' + \ 'Name:' + str(self.Name) + ', ' + \ 'StructureDefinition:' + str(self.StructureDefinition) + ')' __repr__ = __str__ class EnumDescription(FrozenClass): ''' :ivar DataTypeId: :vartype DataTypeId: NodeId :ivar Name: :vartype Name: QualifiedName :ivar EnumDefinition: :vartype EnumDefinition: EnumDefinition :ivar BuiltInType: :vartype BuiltInType: Byte ''' ua_types = [ ('DataTypeId', 'NodeId'), ('Name', 'QualifiedName'), ('EnumDefinition', 'EnumDefinition'), ('BuiltInType', 'Byte'), ] def __init__(self): self.DataTypeId = NodeId() self.Name = QualifiedName() self.EnumDefinition = EnumDefinition() self.BuiltInType = 0 self._freeze = True def __str__(self): return 'EnumDescription(' + 'DataTypeId:' + str(self.DataTypeId) + ', ' + \ 'Name:' + str(self.Name) + ', ' + \ 'EnumDefinition:' + str(self.EnumDefinition) + ', ' + \ 'BuiltInType:' + str(self.BuiltInType) + ')' __repr__ = __str__ class SimpleTypeDescription(FrozenClass): ''' :ivar DataTypeId: :vartype DataTypeId: NodeId :ivar Name: :vartype Name: QualifiedName :ivar BaseDataType: :vartype BaseDataType: NodeId :ivar BuiltInType: :vartype BuiltInType: Byte ''' ua_types = [ ('DataTypeId', 'NodeId'), ('Name', 'QualifiedName'), ('BaseDataType', 'NodeId'), ('BuiltInType', 'Byte'), ] def __init__(self): self.DataTypeId = NodeId() self.Name = QualifiedName() self.BaseDataType = NodeId() self.BuiltInType = 0 self._freeze = True def __str__(self): return 'SimpleTypeDescription(' + 'DataTypeId:' + str(self.DataTypeId) + ', ' + \ 'Name:' + str(self.Name) + ', ' + \ 'BaseDataType:' + str(self.BaseDataType) + ', ' + \ 'BuiltInType:' + str(self.BuiltInType) + ')' __repr__ = __str__ class UABinaryFileDataType(FrozenClass): ''' :ivar Namespaces: :vartype Namespaces: String :ivar StructureDataTypes: :vartype StructureDataTypes: StructureDescription :ivar EnumDataTypes: :vartype EnumDataTypes: EnumDescription :ivar SimpleDataTypes: :vartype SimpleDataTypes: SimpleTypeDescription :ivar SchemaLocation: :vartype SchemaLocation: String :ivar FileHeader: :vartype FileHeader: KeyValuePair :ivar Body: :vartype Body: Variant ''' ua_types = [ ('Namespaces', 'ListOfString'), ('StructureDataTypes', 'ListOfStructureDescription'), ('EnumDataTypes', 'ListOfEnumDescription'), ('SimpleDataTypes', 'ListOfSimpleTypeDescription'), ('SchemaLocation', 'String'), ('FileHeader', 'ListOfKeyValuePair'), ('Body', 'Variant'), ] def __init__(self): self.Namespaces = [] self.StructureDataTypes = [] self.EnumDataTypes = [] self.SimpleDataTypes = [] self.SchemaLocation = None self.FileHeader = [] self.Body = Variant() self._freeze = True def __str__(self): return 'UABinaryFileDataType(' + 'Namespaces:' + str(self.Namespaces) + ', ' + \ 'StructureDataTypes:' + str(self.StructureDataTypes) + ', ' + \ 'EnumDataTypes:' + str(self.EnumDataTypes) + ', ' + \ 'SimpleDataTypes:' + str(self.SimpleDataTypes) + ', ' + \ 'SchemaLocation:' + str(self.SchemaLocation) + ', ' + \ 'FileHeader:' + str(self.FileHeader) + ', ' + \ 'Body:' + str(self.Body) + ')' __repr__ = __str__ class DataSetMetaDataType(FrozenClass): ''' :ivar Namespaces: :vartype Namespaces: String :ivar StructureDataTypes: :vartype StructureDataTypes: StructureDescription :ivar EnumDataTypes: :vartype EnumDataTypes: EnumDescription :ivar SimpleDataTypes: :vartype SimpleDataTypes: SimpleTypeDescription :ivar Name: :vartype Name: String :ivar Description: :vartype Description: LocalizedText :ivar Fields: :vartype Fields: FieldMetaData :ivar DataSetClassId: :vartype DataSetClassId: Guid :ivar ConfigurationVersion: :vartype ConfigurationVersion: ConfigurationVersionDataType ''' ua_types = [ ('Namespaces', 'ListOfString'), ('StructureDataTypes', 'ListOfStructureDescription'), ('EnumDataTypes', 'ListOfEnumDescription'), ('SimpleDataTypes', 'ListOfSimpleTypeDescription'), ('Name', 'String'), ('Description', 'LocalizedText'), ('Fields', 'ListOfFieldMetaData'), ('DataSetClassId', 'Guid'), ('ConfigurationVersion', 'ConfigurationVersionDataType'), ] def __init__(self): self.Namespaces = [] self.StructureDataTypes = [] self.EnumDataTypes = [] self.SimpleDataTypes = [] self.Name = None self.Description = LocalizedText() self.Fields = [] self.DataSetClassId = Guid() self.ConfigurationVersion = ConfigurationVersionDataType() self._freeze = True def __str__(self): return 'DataSetMetaDataType(' + 'Namespaces:' + str(self.Namespaces) + ', ' + \ 'StructureDataTypes:' + str(self.StructureDataTypes) + ', ' + \ 'EnumDataTypes:' + str(self.EnumDataTypes) + ', ' + \ 'SimpleDataTypes:' + str(self.SimpleDataTypes) + ', ' + \ 'Name:' + str(self.Name) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'Fields:' + str(self.Fields) + ', ' + \ 'DataSetClassId:' + str(self.DataSetClassId) + ', ' + \ 'ConfigurationVersion:' + str(self.ConfigurationVersion) + ')' __repr__ = __str__ class FieldMetaData(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Description: :vartype Description: LocalizedText :ivar FieldFlags: :vartype FieldFlags: DataSetFieldFlags :ivar BuiltInType: :vartype BuiltInType: Byte :ivar DataType: :vartype DataType: NodeId :ivar ValueRank: :vartype ValueRank: Int32 :ivar ArrayDimensions: :vartype ArrayDimensions: UInt32 :ivar MaxStringLength: :vartype MaxStringLength: UInt32 :ivar DataSetFieldId: :vartype DataSetFieldId: Guid :ivar Properties: :vartype Properties: KeyValuePair ''' ua_types = [ ('Name', 'String'), ('Description', 'LocalizedText'), ('FieldFlags', 'DataSetFieldFlags'), ('BuiltInType', 'Byte'), ('DataType', 'NodeId'), ('ValueRank', 'Int32'), ('ArrayDimensions', 'ListOfUInt32'), ('MaxStringLength', 'UInt32'), ('DataSetFieldId', 'Guid'), ('Properties', 'ListOfKeyValuePair'), ] def __init__(self): self.Name = None self.Description = LocalizedText() self.FieldFlags = DataSetFieldFlags(0) self.BuiltInType = 0 self.DataType = NodeId() self.ValueRank = 0 self.ArrayDimensions = [] self.MaxStringLength = 0 self.DataSetFieldId = Guid() self.Properties = [] self._freeze = True def __str__(self): return 'FieldMetaData(' + 'Name:' + str(self.Name) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'FieldFlags:' + str(self.FieldFlags) + ', ' + \ 'BuiltInType:' + str(self.BuiltInType) + ', ' + \ 'DataType:' + str(self.DataType) + ', ' + \ 'ValueRank:' + str(self.ValueRank) + ', ' + \ 'ArrayDimensions:' + str(self.ArrayDimensions) + ', ' + \ 'MaxStringLength:' + str(self.MaxStringLength) + ', ' + \ 'DataSetFieldId:' + str(self.DataSetFieldId) + ', ' + \ 'Properties:' + str(self.Properties) + ')' __repr__ = __str__ class ConfigurationVersionDataType(FrozenClass): ''' :ivar MajorVersion: :vartype MajorVersion: UInt32 :ivar MinorVersion: :vartype MinorVersion: UInt32 ''' ua_types = [ ('MajorVersion', 'UInt32'), ('MinorVersion', 'UInt32'), ] def __init__(self): self.MajorVersion = 0 self.MinorVersion = 0 self._freeze = True def __str__(self): return 'ConfigurationVersionDataType(' + 'MajorVersion:' + str(self.MajorVersion) + ', ' + \ 'MinorVersion:' + str(self.MinorVersion) + ')' __repr__ = __str__ class PublishedDataSetDataType(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar DataSetFolder: :vartype DataSetFolder: String :ivar DataSetMetaData: :vartype DataSetMetaData: DataSetMetaDataType :ivar ExtensionFields: :vartype ExtensionFields: KeyValuePair :ivar DataSetSource: :vartype DataSetSource: ExtensionObject ''' ua_types = [ ('Name', 'String'), ('DataSetFolder', 'ListOfString'), ('DataSetMetaData', 'DataSetMetaDataType'), ('ExtensionFields', 'ListOfKeyValuePair'), ('DataSetSource', 'ExtensionObject'), ] def __init__(self): self.Name = None self.DataSetFolder = [] self.DataSetMetaData = DataSetMetaDataType() self.ExtensionFields = [] self.DataSetSource = ExtensionObject() self._freeze = True def __str__(self): return 'PublishedDataSetDataType(' + 'Name:' + str(self.Name) + ', ' + \ 'DataSetFolder:' + str(self.DataSetFolder) + ', ' + \ 'DataSetMetaData:' + str(self.DataSetMetaData) + ', ' + \ 'ExtensionFields:' + str(self.ExtensionFields) + ', ' + \ 'DataSetSource:' + str(self.DataSetSource) + ')' __repr__ = __str__ class PublishedDataSetSourceDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'PublishedDataSetSourceDataType(' + + ')' __repr__ = __str__ class PublishedVariableDataType(FrozenClass): ''' :ivar PublishedVariable: :vartype PublishedVariable: NodeId :ivar AttributeId: :vartype AttributeId: UInt32 :ivar SamplingIntervalHint: :vartype SamplingIntervalHint: Double :ivar DeadbandType: :vartype DeadbandType: UInt32 :ivar DeadbandValue: :vartype DeadbandValue: Double :ivar IndexRange: :vartype IndexRange: String :ivar SubstituteValue: :vartype SubstituteValue: Variant :ivar MetaDataProperties: :vartype MetaDataProperties: QualifiedName ''' ua_types = [ ('PublishedVariable', 'NodeId'), ('AttributeId', 'UInt32'), ('SamplingIntervalHint', 'Double'), ('DeadbandType', 'UInt32'), ('DeadbandValue', 'Double'), ('IndexRange', 'String'), ('SubstituteValue', 'Variant'), ('MetaDataProperties', 'ListOfQualifiedName'), ] def __init__(self): self.PublishedVariable = NodeId() self.AttributeId = 0 self.SamplingIntervalHint = 0 self.DeadbandType = 0 self.DeadbandValue = 0 self.IndexRange = None self.SubstituteValue = Variant() self.MetaDataProperties = [] self._freeze = True def __str__(self): return 'PublishedVariableDataType(' + 'PublishedVariable:' + str(self.PublishedVariable) + ', ' + \ 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'SamplingIntervalHint:' + str(self.SamplingIntervalHint) + ', ' + \ 'DeadbandType:' + str(self.DeadbandType) + ', ' + \ 'DeadbandValue:' + str(self.DeadbandValue) + ', ' + \ 'IndexRange:' + str(self.IndexRange) + ', ' + \ 'SubstituteValue:' + str(self.SubstituteValue) + ', ' + \ 'MetaDataProperties:' + str(self.MetaDataProperties) + ')' __repr__ = __str__ class PublishedDataItemsDataType(FrozenClass): ''' :ivar PublishedData: :vartype PublishedData: PublishedVariableDataType ''' ua_types = [ ('PublishedData', 'ListOfPublishedVariableDataType'), ] def __init__(self): self.PublishedData = [] self._freeze = True def __str__(self): return 'PublishedDataItemsDataType(' + 'PublishedData:' + str(self.PublishedData) + ')' __repr__ = __str__ class PublishedEventsDataType(FrozenClass): ''' :ivar EventNotifier: :vartype EventNotifier: NodeId :ivar SelectedFields: :vartype SelectedFields: SimpleAttributeOperand :ivar Filter: :vartype Filter: ContentFilter ''' ua_types = [ ('EventNotifier', 'NodeId'), ('SelectedFields', 'ListOfSimpleAttributeOperand'), ('Filter', 'ContentFilter'), ] def __init__(self): self.EventNotifier = NodeId() self.SelectedFields = [] self.Filter = ContentFilter() self._freeze = True def __str__(self): return 'PublishedEventsDataType(' + 'EventNotifier:' + str(self.EventNotifier) + ', ' + \ 'SelectedFields:' + str(self.SelectedFields) + ', ' + \ 'Filter:' + str(self.Filter) + ')' __repr__ = __str__ class DataSetWriterDataType(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Enabled: :vartype Enabled: Boolean :ivar DataSetWriterId: :vartype DataSetWriterId: UInt16 :ivar DataSetFieldContentMask: :vartype DataSetFieldContentMask: DataSetFieldContentMask :ivar KeyFrameCount: :vartype KeyFrameCount: UInt32 :ivar DataSetName: :vartype DataSetName: String :ivar DataSetWriterProperties: :vartype DataSetWriterProperties: KeyValuePair :ivar TransportSettings: :vartype TransportSettings: ExtensionObject :ivar MessageSettings: :vartype MessageSettings: ExtensionObject ''' ua_types = [ ('Name', 'String'), ('Enabled', 'Boolean'), ('DataSetWriterId', 'UInt16'), ('DataSetFieldContentMask', 'DataSetFieldContentMask'), ('KeyFrameCount', 'UInt32'), ('DataSetName', 'String'), ('DataSetWriterProperties', 'ListOfKeyValuePair'), ('TransportSettings', 'ExtensionObject'), ('MessageSettings', 'ExtensionObject'), ] def __init__(self): self.Name = None self.Enabled = True self.DataSetWriterId = 0 self.DataSetFieldContentMask = DataSetFieldContentMask(0) self.KeyFrameCount = 0 self.DataSetName = None self.DataSetWriterProperties = [] self.TransportSettings = ExtensionObject() self.MessageSettings = ExtensionObject() self._freeze = True def __str__(self): return 'DataSetWriterDataType(' + 'Name:' + str(self.Name) + ', ' + \ 'Enabled:' + str(self.Enabled) + ', ' + \ 'DataSetWriterId:' + str(self.DataSetWriterId) + ', ' + \ 'DataSetFieldContentMask:' + str(self.DataSetFieldContentMask) + ', ' + \ 'KeyFrameCount:' + str(self.KeyFrameCount) + ', ' + \ 'DataSetName:' + str(self.DataSetName) + ', ' + \ 'DataSetWriterProperties:' + str(self.DataSetWriterProperties) + ', ' + \ 'TransportSettings:' + str(self.TransportSettings) + ', ' + \ 'MessageSettings:' + str(self.MessageSettings) + ')' __repr__ = __str__ class DataSetWriterTransportDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'DataSetWriterTransportDataType(' + + ')' __repr__ = __str__ class DataSetWriterMessageDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'DataSetWriterMessageDataType(' + + ')' __repr__ = __str__ class PubSubGroupDataType(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Enabled: :vartype Enabled: Boolean :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar SecurityGroupId: :vartype SecurityGroupId: String :ivar SecurityKeyServices: :vartype SecurityKeyServices: EndpointDescription :ivar MaxNetworkMessageSize: :vartype MaxNetworkMessageSize: UInt32 :ivar GroupProperties: :vartype GroupProperties: KeyValuePair ''' ua_types = [ ('Name', 'String'), ('Enabled', 'Boolean'), ('SecurityMode', 'MessageSecurityMode'), ('SecurityGroupId', 'String'), ('SecurityKeyServices', 'ListOfEndpointDescription'), ('MaxNetworkMessageSize', 'UInt32'), ('GroupProperties', 'ListOfKeyValuePair'), ] def __init__(self): self.Name = None self.Enabled = True self.SecurityMode = MessageSecurityMode(0) self.SecurityGroupId = None self.SecurityKeyServices = [] self.MaxNetworkMessageSize = 0 self.GroupProperties = [] self._freeze = True def __str__(self): return 'PubSubGroupDataType(' + 'Name:' + str(self.Name) + ', ' + \ 'Enabled:' + str(self.Enabled) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'SecurityGroupId:' + str(self.SecurityGroupId) + ', ' + \ 'SecurityKeyServices:' + str(self.SecurityKeyServices) + ', ' + \ 'MaxNetworkMessageSize:' + str(self.MaxNetworkMessageSize) + ', ' + \ 'GroupProperties:' + str(self.GroupProperties) + ')' __repr__ = __str__ class WriterGroupDataType(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Enabled: :vartype Enabled: Boolean :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar SecurityGroupId: :vartype SecurityGroupId: String :ivar SecurityKeyServices: :vartype SecurityKeyServices: EndpointDescription :ivar MaxNetworkMessageSize: :vartype MaxNetworkMessageSize: UInt32 :ivar GroupProperties: :vartype GroupProperties: KeyValuePair :ivar WriterGroupId: :vartype WriterGroupId: UInt16 :ivar PublishingInterval: :vartype PublishingInterval: Double :ivar KeepAliveTime: :vartype KeepAliveTime: Double :ivar Priority: :vartype Priority: Byte :ivar LocaleIds: :vartype LocaleIds: String :ivar TransportSettings: :vartype TransportSettings: ExtensionObject :ivar MessageSettings: :vartype MessageSettings: ExtensionObject :ivar DataSetWriters: :vartype DataSetWriters: DataSetWriterDataType ''' ua_types = [ ('Name', 'String'), ('Enabled', 'Boolean'), ('SecurityMode', 'MessageSecurityMode'), ('SecurityGroupId', 'String'), ('SecurityKeyServices', 'ListOfEndpointDescription'), ('MaxNetworkMessageSize', 'UInt32'), ('GroupProperties', 'ListOfKeyValuePair'), ('WriterGroupId', 'UInt16'), ('PublishingInterval', 'Double'), ('KeepAliveTime', 'Double'), ('Priority', 'Byte'), ('LocaleIds', 'ListOfString'), ('TransportSettings', 'ExtensionObject'), ('MessageSettings', 'ExtensionObject'), ('DataSetWriters', 'ListOfDataSetWriterDataType'), ] def __init__(self): self.Name = None self.Enabled = True self.SecurityMode = MessageSecurityMode(0) self.SecurityGroupId = None self.SecurityKeyServices = [] self.MaxNetworkMessageSize = 0 self.GroupProperties = [] self.WriterGroupId = 0 self.PublishingInterval = 0 self.KeepAliveTime = 0 self.Priority = 0 self.LocaleIds = [] self.TransportSettings = ExtensionObject() self.MessageSettings = ExtensionObject() self.DataSetWriters = [] self._freeze = True def __str__(self): return 'WriterGroupDataType(' + 'Name:' + str(self.Name) + ', ' + \ 'Enabled:' + str(self.Enabled) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'SecurityGroupId:' + str(self.SecurityGroupId) + ', ' + \ 'SecurityKeyServices:' + str(self.SecurityKeyServices) + ', ' + \ 'MaxNetworkMessageSize:' + str(self.MaxNetworkMessageSize) + ', ' + \ 'GroupProperties:' + str(self.GroupProperties) + ', ' + \ 'WriterGroupId:' + str(self.WriterGroupId) + ', ' + \ 'PublishingInterval:' + str(self.PublishingInterval) + ', ' + \ 'KeepAliveTime:' + str(self.KeepAliveTime) + ', ' + \ 'Priority:' + str(self.Priority) + ', ' + \ 'LocaleIds:' + str(self.LocaleIds) + ', ' + \ 'TransportSettings:' + str(self.TransportSettings) + ', ' + \ 'MessageSettings:' + str(self.MessageSettings) + ', ' + \ 'DataSetWriters:' + str(self.DataSetWriters) + ')' __repr__ = __str__ class WriterGroupTransportDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'WriterGroupTransportDataType(' + + ')' __repr__ = __str__ class WriterGroupMessageDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'WriterGroupMessageDataType(' + + ')' __repr__ = __str__ class PubSubConnectionDataType(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Enabled: :vartype Enabled: Boolean :ivar PublisherId: :vartype PublisherId: Variant :ivar TransportProfileUri: :vartype TransportProfileUri: String :ivar Address: :vartype Address: ExtensionObject :ivar ConnectionProperties: :vartype ConnectionProperties: KeyValuePair :ivar TransportSettings: :vartype TransportSettings: ExtensionObject :ivar WriterGroups: :vartype WriterGroups: WriterGroupDataType :ivar ReaderGroups: :vartype ReaderGroups: ReaderGroupDataType ''' ua_types = [ ('Name', 'String'), ('Enabled', 'Boolean'), ('PublisherId', 'Variant'), ('TransportProfileUri', 'String'), ('Address', 'ExtensionObject'), ('ConnectionProperties', 'ListOfKeyValuePair'), ('TransportSettings', 'ExtensionObject'), ('WriterGroups', 'ListOfWriterGroupDataType'), ('ReaderGroups', 'ListOfReaderGroupDataType'), ] def __init__(self): self.Name = None self.Enabled = True self.PublisherId = Variant() self.TransportProfileUri = None self.Address = ExtensionObject() self.ConnectionProperties = [] self.TransportSettings = ExtensionObject() self.WriterGroups = [] self.ReaderGroups = [] self._freeze = True def __str__(self): return 'PubSubConnectionDataType(' + 'Name:' + str(self.Name) + ', ' + \ 'Enabled:' + str(self.Enabled) + ', ' + \ 'PublisherId:' + str(self.PublisherId) + ', ' + \ 'TransportProfileUri:' + str(self.TransportProfileUri) + ', ' + \ 'Address:' + str(self.Address) + ', ' + \ 'ConnectionProperties:' + str(self.ConnectionProperties) + ', ' + \ 'TransportSettings:' + str(self.TransportSettings) + ', ' + \ 'WriterGroups:' + str(self.WriterGroups) + ', ' + \ 'ReaderGroups:' + str(self.ReaderGroups) + ')' __repr__ = __str__ class ConnectionTransportDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'ConnectionTransportDataType(' + + ')' __repr__ = __str__ class NetworkAddressDataType(FrozenClass): ''' :ivar NetworkInterface: :vartype NetworkInterface: String ''' ua_types = [ ('NetworkInterface', 'String'), ] def __init__(self): self.NetworkInterface = None self._freeze = True def __str__(self): return 'NetworkAddressDataType(' + 'NetworkInterface:' + str(self.NetworkInterface) + ')' __repr__ = __str__ class NetworkAddressUrlDataType(FrozenClass): ''' :ivar NetworkInterface: :vartype NetworkInterface: String :ivar Url: :vartype Url: String ''' ua_types = [ ('NetworkInterface', 'String'), ('Url', 'String'), ] def __init__(self): self.NetworkInterface = None self.Url = None self._freeze = True def __str__(self): return 'NetworkAddressUrlDataType(' + 'NetworkInterface:' + str(self.NetworkInterface) + ', ' + \ 'Url:' + str(self.Url) + ')' __repr__ = __str__ class ReaderGroupDataType(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Enabled: :vartype Enabled: Boolean :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar SecurityGroupId: :vartype SecurityGroupId: String :ivar SecurityKeyServices: :vartype SecurityKeyServices: EndpointDescription :ivar MaxNetworkMessageSize: :vartype MaxNetworkMessageSize: UInt32 :ivar GroupProperties: :vartype GroupProperties: KeyValuePair :ivar TransportSettings: :vartype TransportSettings: ExtensionObject :ivar MessageSettings: :vartype MessageSettings: ExtensionObject :ivar DataSetReaders: :vartype DataSetReaders: DataSetReaderDataType ''' ua_types = [ ('Name', 'String'), ('Enabled', 'Boolean'), ('SecurityMode', 'MessageSecurityMode'), ('SecurityGroupId', 'String'), ('SecurityKeyServices', 'ListOfEndpointDescription'), ('MaxNetworkMessageSize', 'UInt32'), ('GroupProperties', 'ListOfKeyValuePair'), ('TransportSettings', 'ExtensionObject'), ('MessageSettings', 'ExtensionObject'), ('DataSetReaders', 'ListOfDataSetReaderDataType'), ] def __init__(self): self.Name = None self.Enabled = True self.SecurityMode = MessageSecurityMode(0) self.SecurityGroupId = None self.SecurityKeyServices = [] self.MaxNetworkMessageSize = 0 self.GroupProperties = [] self.TransportSettings = ExtensionObject() self.MessageSettings = ExtensionObject() self.DataSetReaders = [] self._freeze = True def __str__(self): return 'ReaderGroupDataType(' + 'Name:' + str(self.Name) + ', ' + \ 'Enabled:' + str(self.Enabled) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'SecurityGroupId:' + str(self.SecurityGroupId) + ', ' + \ 'SecurityKeyServices:' + str(self.SecurityKeyServices) + ', ' + \ 'MaxNetworkMessageSize:' + str(self.MaxNetworkMessageSize) + ', ' + \ 'GroupProperties:' + str(self.GroupProperties) + ', ' + \ 'TransportSettings:' + str(self.TransportSettings) + ', ' + \ 'MessageSettings:' + str(self.MessageSettings) + ', ' + \ 'DataSetReaders:' + str(self.DataSetReaders) + ')' __repr__ = __str__ class ReaderGroupTransportDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'ReaderGroupTransportDataType(' + + ')' __repr__ = __str__ class ReaderGroupMessageDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'ReaderGroupMessageDataType(' + + ')' __repr__ = __str__ class DataSetReaderDataType(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Enabled: :vartype Enabled: Boolean :ivar PublisherId: :vartype PublisherId: Variant :ivar WriterGroupId: :vartype WriterGroupId: UInt16 :ivar DataSetWriterId: :vartype DataSetWriterId: UInt16 :ivar DataSetMetaData: :vartype DataSetMetaData: DataSetMetaDataType :ivar DataSetFieldContentMask: :vartype DataSetFieldContentMask: DataSetFieldContentMask :ivar MessageReceiveTimeout: :vartype MessageReceiveTimeout: Double :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar SecurityGroupId: :vartype SecurityGroupId: String :ivar SecurityKeyServices: :vartype SecurityKeyServices: EndpointDescription :ivar DataSetReaderProperties: :vartype DataSetReaderProperties: KeyValuePair :ivar TransportSettings: :vartype TransportSettings: ExtensionObject :ivar MessageSettings: :vartype MessageSettings: ExtensionObject :ivar SubscribedDataSet: :vartype SubscribedDataSet: ExtensionObject ''' ua_types = [ ('Name', 'String'), ('Enabled', 'Boolean'), ('PublisherId', 'Variant'), ('WriterGroupId', 'UInt16'), ('DataSetWriterId', 'UInt16'), ('DataSetMetaData', 'DataSetMetaDataType'), ('DataSetFieldContentMask', 'DataSetFieldContentMask'), ('MessageReceiveTimeout', 'Double'), ('SecurityMode', 'MessageSecurityMode'), ('SecurityGroupId', 'String'), ('SecurityKeyServices', 'ListOfEndpointDescription'), ('DataSetReaderProperties', 'ListOfKeyValuePair'), ('TransportSettings', 'ExtensionObject'), ('MessageSettings', 'ExtensionObject'), ('SubscribedDataSet', 'ExtensionObject'), ] def __init__(self): self.Name = None self.Enabled = True self.PublisherId = Variant() self.WriterGroupId = 0 self.DataSetWriterId = 0 self.DataSetMetaData = DataSetMetaDataType() self.DataSetFieldContentMask = DataSetFieldContentMask(0) self.MessageReceiveTimeout = 0 self.SecurityMode = MessageSecurityMode(0) self.SecurityGroupId = None self.SecurityKeyServices = [] self.DataSetReaderProperties = [] self.TransportSettings = ExtensionObject() self.MessageSettings = ExtensionObject() self.SubscribedDataSet = ExtensionObject() self._freeze = True def __str__(self): return 'DataSetReaderDataType(' + 'Name:' + str(self.Name) + ', ' + \ 'Enabled:' + str(self.Enabled) + ', ' + \ 'PublisherId:' + str(self.PublisherId) + ', ' + \ 'WriterGroupId:' + str(self.WriterGroupId) + ', ' + \ 'DataSetWriterId:' + str(self.DataSetWriterId) + ', ' + \ 'DataSetMetaData:' + str(self.DataSetMetaData) + ', ' + \ 'DataSetFieldContentMask:' + str(self.DataSetFieldContentMask) + ', ' + \ 'MessageReceiveTimeout:' + str(self.MessageReceiveTimeout) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'SecurityGroupId:' + str(self.SecurityGroupId) + ', ' + \ 'SecurityKeyServices:' + str(self.SecurityKeyServices) + ', ' + \ 'DataSetReaderProperties:' + str(self.DataSetReaderProperties) + ', ' + \ 'TransportSettings:' + str(self.TransportSettings) + ', ' + \ 'MessageSettings:' + str(self.MessageSettings) + ', ' + \ 'SubscribedDataSet:' + str(self.SubscribedDataSet) + ')' __repr__ = __str__ class DataSetReaderTransportDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'DataSetReaderTransportDataType(' + + ')' __repr__ = __str__ class DataSetReaderMessageDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'DataSetReaderMessageDataType(' + + ')' __repr__ = __str__ class SubscribedDataSetDataType(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'SubscribedDataSetDataType(' + + ')' __repr__ = __str__ class TargetVariablesDataType(FrozenClass): ''' :ivar TargetVariables: :vartype TargetVariables: FieldTargetDataType ''' ua_types = [ ('TargetVariables', 'ListOfFieldTargetDataType'), ] def __init__(self): self.TargetVariables = [] self._freeze = True def __str__(self): return 'TargetVariablesDataType(' + 'TargetVariables:' + str(self.TargetVariables) + ')' __repr__ = __str__ class FieldTargetDataType(FrozenClass): ''' :ivar DataSetFieldId: :vartype DataSetFieldId: Guid :ivar ReceiverIndexRange: :vartype ReceiverIndexRange: String :ivar TargetNodeId: :vartype TargetNodeId: NodeId :ivar AttributeId: :vartype AttributeId: UInt32 :ivar WriteIndexRange: :vartype WriteIndexRange: String :ivar OverrideValueHandling: :vartype OverrideValueHandling: OverrideValueHandling :ivar OverrideValue: :vartype OverrideValue: Variant ''' ua_types = [ ('DataSetFieldId', 'Guid'), ('ReceiverIndexRange', 'String'), ('TargetNodeId', 'NodeId'), ('AttributeId', 'UInt32'), ('WriteIndexRange', 'String'), ('OverrideValueHandling', 'OverrideValueHandling'), ('OverrideValue', 'Variant'), ] def __init__(self): self.DataSetFieldId = Guid() self.ReceiverIndexRange = None self.TargetNodeId = NodeId() self.AttributeId = 0 self.WriteIndexRange = None self.OverrideValueHandling = OverrideValueHandling(0) self.OverrideValue = Variant() self._freeze = True def __str__(self): return 'FieldTargetDataType(' + 'DataSetFieldId:' + str(self.DataSetFieldId) + ', ' + \ 'ReceiverIndexRange:' + str(self.ReceiverIndexRange) + ', ' + \ 'TargetNodeId:' + str(self.TargetNodeId) + ', ' + \ 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'WriteIndexRange:' + str(self.WriteIndexRange) + ', ' + \ 'OverrideValueHandling:' + str(self.OverrideValueHandling) + ', ' + \ 'OverrideValue:' + str(self.OverrideValue) + ')' __repr__ = __str__ class SubscribedDataSetMirrorDataType(FrozenClass): ''' :ivar ParentNodeName: :vartype ParentNodeName: String :ivar RolePermissions: :vartype RolePermissions: RolePermissionType ''' ua_types = [ ('ParentNodeName', 'String'), ('RolePermissions', 'ListOfRolePermissionType'), ] def __init__(self): self.ParentNodeName = None self.RolePermissions = [] self._freeze = True def __str__(self): return 'SubscribedDataSetMirrorDataType(' + 'ParentNodeName:' + str(self.ParentNodeName) + ', ' + \ 'RolePermissions:' + str(self.RolePermissions) + ')' __repr__ = __str__ class PubSubConfigurationDataType(FrozenClass): ''' :ivar PublishedDataSets: :vartype PublishedDataSets: PublishedDataSetDataType :ivar Connections: :vartype Connections: PubSubConnectionDataType :ivar Enabled: :vartype Enabled: Boolean ''' ua_types = [ ('PublishedDataSets', 'ListOfPublishedDataSetDataType'), ('Connections', 'ListOfPubSubConnectionDataType'), ('Enabled', 'Boolean'), ] def __init__(self): self.PublishedDataSets = [] self.Connections = [] self.Enabled = True self._freeze = True def __str__(self): return 'PubSubConfigurationDataType(' + 'PublishedDataSets:' + str(self.PublishedDataSets) + ', ' + \ 'Connections:' + str(self.Connections) + ', ' + \ 'Enabled:' + str(self.Enabled) + ')' __repr__ = __str__ class UadpWriterGroupMessageDataType(FrozenClass): ''' :ivar GroupVersion: :vartype GroupVersion: UInt32 :ivar DataSetOrdering: :vartype DataSetOrdering: DataSetOrderingType :ivar NetworkMessageContentMask: :vartype NetworkMessageContentMask: UadpNetworkMessageContentMask :ivar SamplingOffset: :vartype SamplingOffset: Double :ivar PublishingOffset: :vartype PublishingOffset: Double ''' ua_types = [ ('GroupVersion', 'UInt32'), ('DataSetOrdering', 'DataSetOrderingType'), ('NetworkMessageContentMask', 'UadpNetworkMessageContentMask'), ('SamplingOffset', 'Double'), ('PublishingOffset', 'ListOfDouble'), ] def __init__(self): self.GroupVersion = 0 self.DataSetOrdering = DataSetOrderingType(0) self.NetworkMessageContentMask = UadpNetworkMessageContentMask(0) self.SamplingOffset = 0 self.PublishingOffset = [] self._freeze = True def __str__(self): return 'UadpWriterGroupMessageDataType(' + 'GroupVersion:' + str(self.GroupVersion) + ', ' + \ 'DataSetOrdering:' + str(self.DataSetOrdering) + ', ' + \ 'NetworkMessageContentMask:' + str(self.NetworkMessageContentMask) + ', ' + \ 'SamplingOffset:' + str(self.SamplingOffset) + ', ' + \ 'PublishingOffset:' + str(self.PublishingOffset) + ')' __repr__ = __str__ class UadpDataSetWriterMessageDataType(FrozenClass): ''' :ivar DataSetMessageContentMask: :vartype DataSetMessageContentMask: UadpDataSetMessageContentMask :ivar ConfiguredSize: :vartype ConfiguredSize: UInt16 :ivar NetworkMessageNumber: :vartype NetworkMessageNumber: UInt16 :ivar DataSetOffset: :vartype DataSetOffset: UInt16 ''' ua_types = [ ('DataSetMessageContentMask', 'UadpDataSetMessageContentMask'), ('ConfiguredSize', 'UInt16'), ('NetworkMessageNumber', 'UInt16'), ('DataSetOffset', 'UInt16'), ] def __init__(self): self.DataSetMessageContentMask = UadpDataSetMessageContentMask(0) self.ConfiguredSize = 0 self.NetworkMessageNumber = 0 self.DataSetOffset = 0 self._freeze = True def __str__(self): return 'UadpDataSetWriterMessageDataType(' + 'DataSetMessageContentMask:' + str(self.DataSetMessageContentMask) + ', ' + \ 'ConfiguredSize:' + str(self.ConfiguredSize) + ', ' + \ 'NetworkMessageNumber:' + str(self.NetworkMessageNumber) + ', ' + \ 'DataSetOffset:' + str(self.DataSetOffset) + ')' __repr__ = __str__ class UadpDataSetReaderMessageDataType(FrozenClass): ''' :ivar GroupVersion: :vartype GroupVersion: UInt32 :ivar NetworkMessageNumber: :vartype NetworkMessageNumber: UInt16 :ivar DataSetOffset: :vartype DataSetOffset: UInt16 :ivar DataSetClassId: :vartype DataSetClassId: Guid :ivar NetworkMessageContentMask: :vartype NetworkMessageContentMask: UadpNetworkMessageContentMask :ivar DataSetMessageContentMask: :vartype DataSetMessageContentMask: UadpDataSetMessageContentMask :ivar PublishingInterval: :vartype PublishingInterval: Double :ivar ReceiveOffset: :vartype ReceiveOffset: Double :ivar ProcessingOffset: :vartype ProcessingOffset: Double ''' ua_types = [ ('GroupVersion', 'UInt32'), ('NetworkMessageNumber', 'UInt16'), ('DataSetOffset', 'UInt16'), ('DataSetClassId', 'Guid'), ('NetworkMessageContentMask', 'UadpNetworkMessageContentMask'), ('DataSetMessageContentMask', 'UadpDataSetMessageContentMask'), ('PublishingInterval', 'Double'), ('ReceiveOffset', 'Double'), ('ProcessingOffset', 'Double'), ] def __init__(self): self.GroupVersion = 0 self.NetworkMessageNumber = 0 self.DataSetOffset = 0 self.DataSetClassId = Guid() self.NetworkMessageContentMask = UadpNetworkMessageContentMask(0) self.DataSetMessageContentMask = UadpDataSetMessageContentMask(0) self.PublishingInterval = 0 self.ReceiveOffset = 0 self.ProcessingOffset = 0 self._freeze = True def __str__(self): return 'UadpDataSetReaderMessageDataType(' + 'GroupVersion:' + str(self.GroupVersion) + ', ' + \ 'NetworkMessageNumber:' + str(self.NetworkMessageNumber) + ', ' + \ 'DataSetOffset:' + str(self.DataSetOffset) + ', ' + \ 'DataSetClassId:' + str(self.DataSetClassId) + ', ' + \ 'NetworkMessageContentMask:' + str(self.NetworkMessageContentMask) + ', ' + \ 'DataSetMessageContentMask:' + str(self.DataSetMessageContentMask) + ', ' + \ 'PublishingInterval:' + str(self.PublishingInterval) + ', ' + \ 'ReceiveOffset:' + str(self.ReceiveOffset) + ', ' + \ 'ProcessingOffset:' + str(self.ProcessingOffset) + ')' __repr__ = __str__ class JsonWriterGroupMessageDataType(FrozenClass): ''' :ivar NetworkMessageContentMask: :vartype NetworkMessageContentMask: JsonNetworkMessageContentMask ''' ua_types = [ ('NetworkMessageContentMask', 'JsonNetworkMessageContentMask'), ] def __init__(self): self.NetworkMessageContentMask = JsonNetworkMessageContentMask(0) self._freeze = True def __str__(self): return 'JsonWriterGroupMessageDataType(' + 'NetworkMessageContentMask:' + str(self.NetworkMessageContentMask) + ')' __repr__ = __str__ class JsonDataSetWriterMessageDataType(FrozenClass): ''' :ivar DataSetMessageContentMask: :vartype DataSetMessageContentMask: JsonDataSetMessageContentMask ''' ua_types = [ ('DataSetMessageContentMask', 'JsonDataSetMessageContentMask'), ] def __init__(self): self.DataSetMessageContentMask = JsonDataSetMessageContentMask(0) self._freeze = True def __str__(self): return 'JsonDataSetWriterMessageDataType(' + 'DataSetMessageContentMask:' + str(self.DataSetMessageContentMask) + ')' __repr__ = __str__ class JsonDataSetReaderMessageDataType(FrozenClass): ''' :ivar NetworkMessageContentMask: :vartype NetworkMessageContentMask: JsonNetworkMessageContentMask :ivar DataSetMessageContentMask: :vartype DataSetMessageContentMask: JsonDataSetMessageContentMask ''' ua_types = [ ('NetworkMessageContentMask', 'JsonNetworkMessageContentMask'), ('DataSetMessageContentMask', 'JsonDataSetMessageContentMask'), ] def __init__(self): self.NetworkMessageContentMask = JsonNetworkMessageContentMask(0) self.DataSetMessageContentMask = JsonDataSetMessageContentMask(0) self._freeze = True def __str__(self): return 'JsonDataSetReaderMessageDataType(' + 'NetworkMessageContentMask:' + str(self.NetworkMessageContentMask) + ', ' + \ 'DataSetMessageContentMask:' + str(self.DataSetMessageContentMask) + ')' __repr__ = __str__ class DatagramConnectionTransportDataType(FrozenClass): ''' :ivar DiscoveryAddress: :vartype DiscoveryAddress: ExtensionObject ''' ua_types = [ ('DiscoveryAddress', 'ExtensionObject'), ] def __init__(self): self.DiscoveryAddress = ExtensionObject() self._freeze = True def __str__(self): return 'DatagramConnectionTransportDataType(' + 'DiscoveryAddress:' + str(self.DiscoveryAddress) + ')' __repr__ = __str__ class DatagramWriterGroupTransportDataType(FrozenClass): ''' :ivar MessageRepeatCount: :vartype MessageRepeatCount: Byte :ivar MessageRepeatDelay: :vartype MessageRepeatDelay: Double ''' ua_types = [ ('MessageRepeatCount', 'Byte'), ('MessageRepeatDelay', 'Double'), ] def __init__(self): self.MessageRepeatCount = 0 self.MessageRepeatDelay = 0 self._freeze = True def __str__(self): return 'DatagramWriterGroupTransportDataType(' + 'MessageRepeatCount:' + str(self.MessageRepeatCount) + ', ' + \ 'MessageRepeatDelay:' + str(self.MessageRepeatDelay) + ')' __repr__ = __str__ class BrokerConnectionTransportDataType(FrozenClass): ''' :ivar ResourceUri: :vartype ResourceUri: String :ivar AuthenticationProfileUri: :vartype AuthenticationProfileUri: String ''' ua_types = [ ('ResourceUri', 'String'), ('AuthenticationProfileUri', 'String'), ] def __init__(self): self.ResourceUri = None self.AuthenticationProfileUri = None self._freeze = True def __str__(self): return 'BrokerConnectionTransportDataType(' + 'ResourceUri:' + str(self.ResourceUri) + ', ' + \ 'AuthenticationProfileUri:' + str(self.AuthenticationProfileUri) + ')' __repr__ = __str__ class BrokerWriterGroupTransportDataType(FrozenClass): ''' :ivar QueueName: :vartype QueueName: String :ivar ResourceUri: :vartype ResourceUri: String :ivar AuthenticationProfileUri: :vartype AuthenticationProfileUri: String :ivar RequestedDeliveryGuarantee: :vartype RequestedDeliveryGuarantee: BrokerTransportQualityOfService ''' ua_types = [ ('QueueName', 'String'), ('ResourceUri', 'String'), ('AuthenticationProfileUri', 'String'), ('RequestedDeliveryGuarantee', 'BrokerTransportQualityOfService'), ] def __init__(self): self.QueueName = None self.ResourceUri = None self.AuthenticationProfileUri = None self.RequestedDeliveryGuarantee = BrokerTransportQualityOfService(0) self._freeze = True def __str__(self): return 'BrokerWriterGroupTransportDataType(' + 'QueueName:' + str(self.QueueName) + ', ' + \ 'ResourceUri:' + str(self.ResourceUri) + ', ' + \ 'AuthenticationProfileUri:' + str(self.AuthenticationProfileUri) + ', ' + \ 'RequestedDeliveryGuarantee:' + str(self.RequestedDeliveryGuarantee) + ')' __repr__ = __str__ class BrokerDataSetWriterTransportDataType(FrozenClass): ''' :ivar QueueName: :vartype QueueName: String :ivar ResourceUri: :vartype ResourceUri: String :ivar AuthenticationProfileUri: :vartype AuthenticationProfileUri: String :ivar MetaDataQueueName: :vartype MetaDataQueueName: String :ivar MetaDataUpdateTime: :vartype MetaDataUpdateTime: Double ''' ua_types = [ ('QueueName', 'String'), ('ResourceUri', 'String'), ('AuthenticationProfileUri', 'String'), ('MetaDataQueueName', 'String'), ('MetaDataUpdateTime', 'Double'), ] def __init__(self): self.QueueName = None self.ResourceUri = None self.AuthenticationProfileUri = None self.MetaDataQueueName = None self.MetaDataUpdateTime = 0 self._freeze = True def __str__(self): return 'BrokerDataSetWriterTransportDataType(' + 'QueueName:' + str(self.QueueName) + ', ' + \ 'ResourceUri:' + str(self.ResourceUri) + ', ' + \ 'AuthenticationProfileUri:' + str(self.AuthenticationProfileUri) + ', ' + \ 'MetaDataQueueName:' + str(self.MetaDataQueueName) + ', ' + \ 'MetaDataUpdateTime:' + str(self.MetaDataUpdateTime) + ')' __repr__ = __str__ class BrokerDataSetReaderTransportDataType(FrozenClass): ''' :ivar QueueName: :vartype QueueName: String :ivar ResourceUri: :vartype ResourceUri: String :ivar AuthenticationProfileUri: :vartype AuthenticationProfileUri: String :ivar RequestedDeliveryGuarantee: :vartype RequestedDeliveryGuarantee: BrokerTransportQualityOfService :ivar MetaDataQueueName: :vartype MetaDataQueueName: String ''' ua_types = [ ('QueueName', 'String'), ('ResourceUri', 'String'), ('AuthenticationProfileUri', 'String'), ('RequestedDeliveryGuarantee', 'BrokerTransportQualityOfService'), ('MetaDataQueueName', 'String'), ] def __init__(self): self.QueueName = None self.ResourceUri = None self.AuthenticationProfileUri = None self.RequestedDeliveryGuarantee = BrokerTransportQualityOfService(0) self.MetaDataQueueName = None self._freeze = True def __str__(self): return 'BrokerDataSetReaderTransportDataType(' + 'QueueName:' + str(self.QueueName) + ', ' + \ 'ResourceUri:' + str(self.ResourceUri) + ', ' + \ 'AuthenticationProfileUri:' + str(self.AuthenticationProfileUri) + ', ' + \ 'RequestedDeliveryGuarantee:' + str(self.RequestedDeliveryGuarantee) + ', ' + \ 'MetaDataQueueName:' + str(self.MetaDataQueueName) + ')' __repr__ = __str__ class RolePermissionType(FrozenClass): ''' :ivar RoleId: :vartype RoleId: NodeId :ivar Permissions: :vartype Permissions: UInt32 ''' ua_types = [ ('RoleId', 'NodeId'), ('Permissions', 'UInt32'), ] def __init__(self): self.RoleId = NodeId() self.Permissions = 0 self._freeze = True def __str__(self): return 'RolePermissionType(' + 'RoleId:' + str(self.RoleId) + ', ' + \ 'Permissions:' + str(self.Permissions) + ')' __repr__ = __str__ class StructureField(FrozenClass): ''' :ivar Name: :vartype Name: String :ivar Description: :vartype Description: LocalizedText :ivar DataType: :vartype DataType: NodeId :ivar ValueRank: :vartype ValueRank: Int32 :ivar ArrayDimensions: :vartype ArrayDimensions: UInt32 :ivar MaxStringLength: :vartype MaxStringLength: UInt32 :ivar IsOptional: :vartype IsOptional: Boolean ''' ua_types = [ ('Name', 'String'), ('Description', 'LocalizedText'), ('DataType', 'NodeId'), ('ValueRank', 'Int32'), ('ArrayDimensions', 'ListOfUInt32'), ('MaxStringLength', 'UInt32'), ('IsOptional', 'Boolean'), ] def __init__(self): self.Name = None self.Description = LocalizedText() self.DataType = NodeId() self.ValueRank = 0 self.ArrayDimensions = [] self.MaxStringLength = 0 self.IsOptional = True self._freeze = True def __str__(self): return 'StructureField(' + 'Name:' + str(self.Name) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'DataType:' + str(self.DataType) + ', ' + \ 'ValueRank:' + str(self.ValueRank) + ', ' + \ 'ArrayDimensions:' + str(self.ArrayDimensions) + ', ' + \ 'MaxStringLength:' + str(self.MaxStringLength) + ', ' + \ 'IsOptional:' + str(self.IsOptional) + ')' __repr__ = __str__ class StructureDefinition(FrozenClass): ''' :ivar DefaultEncodingId: :vartype DefaultEncodingId: NodeId :ivar BaseDataType: :vartype BaseDataType: NodeId :ivar StructureType: :vartype StructureType: StructureType :ivar Fields: :vartype Fields: StructureField ''' ua_types = [ ('DefaultEncodingId', 'NodeId'), ('BaseDataType', 'NodeId'), ('StructureType', 'StructureType'), ('Fields', 'ListOfStructureField'), ] def __init__(self): self.DefaultEncodingId = NodeId() self.BaseDataType = NodeId() self.StructureType = StructureType(0) self.Fields = [] self._freeze = True def __str__(self): return 'StructureDefinition(' + 'DefaultEncodingId:' + str(self.DefaultEncodingId) + ', ' + \ 'BaseDataType:' + str(self.BaseDataType) + ', ' + \ 'StructureType:' + str(self.StructureType) + ', ' + \ 'Fields:' + str(self.Fields) + ')' __repr__ = __str__ class EnumDefinition(FrozenClass): ''' :ivar Fields: :vartype Fields: EnumField ''' ua_types = [ ('Fields', 'ListOfEnumField'), ] def __init__(self): self.Fields = [] self._freeze = True def __str__(self): return 'EnumDefinition(' + 'Fields:' + str(self.Fields) + ')' __repr__ = __str__ class Argument(FrozenClass): ''' An argument for a method. :ivar Name: :vartype Name: String :ivar DataType: :vartype DataType: NodeId :ivar ValueRank: :vartype ValueRank: Int32 :ivar ArrayDimensions: :vartype ArrayDimensions: UInt32 :ivar Description: :vartype Description: LocalizedText ''' ua_types = [ ('Name', 'String'), ('DataType', 'NodeId'), ('ValueRank', 'Int32'), ('ArrayDimensions', 'ListOfUInt32'), ('Description', 'LocalizedText'), ] def __init__(self): self.Name = None self.DataType = NodeId() self.ValueRank = 0 self.ArrayDimensions = [] self.Description = LocalizedText() self._freeze = True def __str__(self): return 'Argument(' + 'Name:' + str(self.Name) + ', ' + \ 'DataType:' + str(self.DataType) + ', ' + \ 'ValueRank:' + str(self.ValueRank) + ', ' + \ 'ArrayDimensions:' + str(self.ArrayDimensions) + ', ' + \ 'Description:' + str(self.Description) + ')' __repr__ = __str__ class EnumValueType(FrozenClass): ''' A mapping between a value of an enumerated type and a name and description. :ivar Value: :vartype Value: Int64 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText ''' ua_types = [ ('Value', 'Int64'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ] def __init__(self): self.Value = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self._freeze = True def __str__(self): return 'EnumValueType(' + 'Value:' + str(self.Value) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ')' __repr__ = __str__ class EnumField(FrozenClass): ''' :ivar Value: :vartype Value: Int64 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar Name: :vartype Name: String ''' ua_types = [ ('Value', 'Int64'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('Name', 'String'), ] def __init__(self): self.Value = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.Name = None self._freeze = True def __str__(self): return 'EnumField(' + 'Value:' + str(self.Value) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'Name:' + str(self.Name) + ')' __repr__ = __str__ class OptionSet(FrozenClass): ''' This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask. :ivar Value: :vartype Value: ByteString :ivar ValidBits: :vartype ValidBits: ByteString ''' ua_types = [ ('Value', 'ByteString'), ('ValidBits', 'ByteString'), ] def __init__(self): self.Value = None self.ValidBits = None self._freeze = True def __str__(self): return 'OptionSet(' + 'Value:' + str(self.Value) + ', ' + \ 'ValidBits:' + str(self.ValidBits) + ')' __repr__ = __str__ class Union(FrozenClass): ''' This abstract DataType is the base DataType for all union DataTypes. ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'Union(' + + ')' __repr__ = __str__ class TimeZoneDataType(FrozenClass): ''' :ivar Offset: :vartype Offset: Int16 :ivar DaylightSavingInOffset: :vartype DaylightSavingInOffset: Boolean ''' ua_types = [ ('Offset', 'Int16'), ('DaylightSavingInOffset', 'Boolean'), ] def __init__(self): self.Offset = 0 self.DaylightSavingInOffset = True self._freeze = True def __str__(self): return 'TimeZoneDataType(' + 'Offset:' + str(self.Offset) + ', ' + \ 'DaylightSavingInOffset:' + str(self.DaylightSavingInOffset) + ')' __repr__ = __str__ class ApplicationDescription(FrozenClass): ''' Describes an application and how to find it. :ivar ApplicationUri: :vartype ApplicationUri: String :ivar ProductUri: :vartype ProductUri: String :ivar ApplicationName: :vartype ApplicationName: LocalizedText :ivar ApplicationType: :vartype ApplicationType: ApplicationType :ivar GatewayServerUri: :vartype GatewayServerUri: String :ivar DiscoveryProfileUri: :vartype DiscoveryProfileUri: String :ivar DiscoveryUrls: :vartype DiscoveryUrls: String ''' ua_types = [ ('ApplicationUri', 'String'), ('ProductUri', 'String'), ('ApplicationName', 'LocalizedText'), ('ApplicationType', 'ApplicationType'), ('GatewayServerUri', 'String'), ('DiscoveryProfileUri', 'String'), ('DiscoveryUrls', 'ListOfString'), ] def __init__(self): self.ApplicationUri = None self.ProductUri = None self.ApplicationName = LocalizedText() self.ApplicationType = ApplicationType(0) self.GatewayServerUri = None self.DiscoveryProfileUri = None self.DiscoveryUrls = [] self._freeze = True def __str__(self): return 'ApplicationDescription(' + 'ApplicationUri:' + str(self.ApplicationUri) + ', ' + \ 'ProductUri:' + str(self.ProductUri) + ', ' + \ 'ApplicationName:' + str(self.ApplicationName) + ', ' + \ 'ApplicationType:' + str(self.ApplicationType) + ', ' + \ 'GatewayServerUri:' + str(self.GatewayServerUri) + ', ' + \ 'DiscoveryProfileUri:' + str(self.DiscoveryProfileUri) + ', ' + \ 'DiscoveryUrls:' + str(self.DiscoveryUrls) + ')' __repr__ = __str__ class RequestHeader(FrozenClass): ''' The header passed with every server request. :ivar AuthenticationToken: :vartype AuthenticationToken: NodeId :ivar Timestamp: :vartype Timestamp: DateTime :ivar RequestHandle: :vartype RequestHandle: UInt32 :ivar ReturnDiagnostics: :vartype ReturnDiagnostics: UInt32 :ivar AuditEntryId: :vartype AuditEntryId: String :ivar TimeoutHint: :vartype TimeoutHint: UInt32 :ivar AdditionalHeader: :vartype AdditionalHeader: ExtensionObject ''' ua_types = [ ('AuthenticationToken', 'NodeId'), ('Timestamp', 'DateTime'), ('RequestHandle', 'UInt32'), ('ReturnDiagnostics', 'UInt32'), ('AuditEntryId', 'String'), ('TimeoutHint', 'UInt32'), ('AdditionalHeader', 'ExtensionObject'), ] def __init__(self): self.AuthenticationToken = NodeId() self.Timestamp = datetime.utcnow() self.RequestHandle = 0 self.ReturnDiagnostics = 0 self.AuditEntryId = None self.TimeoutHint = 0 self.AdditionalHeader = ExtensionObject() self._freeze = True def __str__(self): return 'RequestHeader(' + 'AuthenticationToken:' + str(self.AuthenticationToken) + ', ' + \ 'Timestamp:' + str(self.Timestamp) + ', ' + \ 'RequestHandle:' + str(self.RequestHandle) + ', ' + \ 'ReturnDiagnostics:' + str(self.ReturnDiagnostics) + ', ' + \ 'AuditEntryId:' + str(self.AuditEntryId) + ', ' + \ 'TimeoutHint:' + str(self.TimeoutHint) + ', ' + \ 'AdditionalHeader:' + str(self.AdditionalHeader) + ')' __repr__ = __str__ class ResponseHeader(FrozenClass): ''' The header passed with every server response. :ivar Timestamp: :vartype Timestamp: DateTime :ivar RequestHandle: :vartype RequestHandle: UInt32 :ivar ServiceResult: :vartype ServiceResult: StatusCode :ivar ServiceDiagnostics: :vartype ServiceDiagnostics: DiagnosticInfo :ivar StringTable: :vartype StringTable: String :ivar AdditionalHeader: :vartype AdditionalHeader: ExtensionObject ''' ua_types = [ ('Timestamp', 'DateTime'), ('RequestHandle', 'UInt32'), ('ServiceResult', 'StatusCode'), ('ServiceDiagnostics', 'DiagnosticInfo'), ('StringTable', 'ListOfString'), ('AdditionalHeader', 'ExtensionObject'), ] def __init__(self): self.Timestamp = datetime.utcnow() self.RequestHandle = 0 self.ServiceResult = StatusCode() self.ServiceDiagnostics = DiagnosticInfo() self.StringTable = [] self.AdditionalHeader = ExtensionObject() self._freeze = True def __str__(self): return 'ResponseHeader(' + 'Timestamp:' + str(self.Timestamp) + ', ' + \ 'RequestHandle:' + str(self.RequestHandle) + ', ' + \ 'ServiceResult:' + str(self.ServiceResult) + ', ' + \ 'ServiceDiagnostics:' + str(self.ServiceDiagnostics) + ', ' + \ 'StringTable:' + str(self.StringTable) + ', ' + \ 'AdditionalHeader:' + str(self.AdditionalHeader) + ')' __repr__ = __str__ class ServiceFault(FrozenClass): ''' The response returned by all services when there is a service level error. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ServiceFault_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self._freeze = True def __str__(self): return 'ServiceFault(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ')' __repr__ = __str__ class SessionlessInvokeRequestType(FrozenClass): ''' :ivar UrisVersion: :vartype UrisVersion: UInt32 :ivar NamespaceUris: :vartype NamespaceUris: String :ivar ServerUris: :vartype ServerUris: String :ivar LocaleIds: :vartype LocaleIds: String :ivar ServiceId: :vartype ServiceId: UInt32 ''' ua_types = [ ('UrisVersion', 'ListOfUInt32'), ('NamespaceUris', 'ListOfString'), ('ServerUris', 'ListOfString'), ('LocaleIds', 'ListOfString'), ('ServiceId', 'UInt32'), ] def __init__(self): self.UrisVersion = [] self.NamespaceUris = [] self.ServerUris = [] self.LocaleIds = [] self.ServiceId = 0 self._freeze = True def __str__(self): return 'SessionlessInvokeRequestType(' + 'UrisVersion:' + str(self.UrisVersion) + ', ' + \ 'NamespaceUris:' + str(self.NamespaceUris) + ', ' + \ 'ServerUris:' + str(self.ServerUris) + ', ' + \ 'LocaleIds:' + str(self.LocaleIds) + ', ' + \ 'ServiceId:' + str(self.ServiceId) + ')' __repr__ = __str__ class SessionlessInvokeResponseType(FrozenClass): ''' :ivar NamespaceUris: :vartype NamespaceUris: String :ivar ServerUris: :vartype ServerUris: String :ivar ServiceId: :vartype ServiceId: UInt32 ''' ua_types = [ ('NamespaceUris', 'ListOfString'), ('ServerUris', 'ListOfString'), ('ServiceId', 'UInt32'), ] def __init__(self): self.NamespaceUris = [] self.ServerUris = [] self.ServiceId = 0 self._freeze = True def __str__(self): return 'SessionlessInvokeResponseType(' + 'NamespaceUris:' + str(self.NamespaceUris) + ', ' + \ 'ServerUris:' + str(self.ServerUris) + ', ' + \ 'ServiceId:' + str(self.ServiceId) + ')' __repr__ = __str__ class FindServersParameters(FrozenClass): ''' :ivar EndpointUrl: :vartype EndpointUrl: String :ivar LocaleIds: :vartype LocaleIds: String :ivar ServerUris: :vartype ServerUris: String ''' ua_types = [ ('EndpointUrl', 'String'), ('LocaleIds', 'ListOfString'), ('ServerUris', 'ListOfString'), ] def __init__(self): self.EndpointUrl = None self.LocaleIds = [] self.ServerUris = [] self._freeze = True def __str__(self): return 'FindServersParameters(' + 'EndpointUrl:' + str(self.EndpointUrl) + ', ' + \ 'LocaleIds:' + str(self.LocaleIds) + ', ' + \ 'ServerUris:' + str(self.ServerUris) + ')' __repr__ = __str__ class FindServersRequest(FrozenClass): ''' Finds the servers known to the discovery server. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: FindServersParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'FindServersParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.FindServersRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = FindServersParameters() self._freeze = True def __str__(self): return 'FindServersRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class FindServersResponse(FrozenClass): ''' Finds the servers known to the discovery server. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Servers: :vartype Servers: ApplicationDescription ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Servers', 'ListOfApplicationDescription'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.FindServersResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Servers = [] self._freeze = True def __str__(self): return 'FindServersResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Servers:' + str(self.Servers) + ')' __repr__ = __str__ class ServerOnNetwork(FrozenClass): ''' :ivar RecordId: :vartype RecordId: UInt32 :ivar ServerName: :vartype ServerName: String :ivar DiscoveryUrl: :vartype DiscoveryUrl: String :ivar ServerCapabilities: :vartype ServerCapabilities: String ''' ua_types = [ ('RecordId', 'UInt32'), ('ServerName', 'String'), ('DiscoveryUrl', 'String'), ('ServerCapabilities', 'ListOfString'), ] def __init__(self): self.RecordId = 0 self.ServerName = None self.DiscoveryUrl = None self.ServerCapabilities = [] self._freeze = True def __str__(self): return 'ServerOnNetwork(' + 'RecordId:' + str(self.RecordId) + ', ' + \ 'ServerName:' + str(self.ServerName) + ', ' + \ 'DiscoveryUrl:' + str(self.DiscoveryUrl) + ', ' + \ 'ServerCapabilities:' + str(self.ServerCapabilities) + ')' __repr__ = __str__ class FindServersOnNetworkParameters(FrozenClass): ''' :ivar StartingRecordId: :vartype StartingRecordId: UInt32 :ivar MaxRecordsToReturn: :vartype MaxRecordsToReturn: UInt32 :ivar ServerCapabilityFilter: :vartype ServerCapabilityFilter: String ''' ua_types = [ ('StartingRecordId', 'UInt32'), ('MaxRecordsToReturn', 'UInt32'), ('ServerCapabilityFilter', 'ListOfString'), ] def __init__(self): self.StartingRecordId = 0 self.MaxRecordsToReturn = 0 self.ServerCapabilityFilter = [] self._freeze = True def __str__(self): return 'FindServersOnNetworkParameters(' + 'StartingRecordId:' + str(self.StartingRecordId) + ', ' + \ 'MaxRecordsToReturn:' + str(self.MaxRecordsToReturn) + ', ' + \ 'ServerCapabilityFilter:' + str(self.ServerCapabilityFilter) + ')' __repr__ = __str__ class FindServersOnNetworkRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: FindServersOnNetworkParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'FindServersOnNetworkParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.FindServersOnNetworkRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = FindServersOnNetworkParameters() self._freeze = True def __str__(self): return 'FindServersOnNetworkRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class FindServersOnNetworkResult(FrozenClass): ''' :ivar LastCounterResetTime: :vartype LastCounterResetTime: DateTime :ivar Servers: :vartype Servers: ServerOnNetwork ''' ua_types = [ ('LastCounterResetTime', 'DateTime'), ('Servers', 'ListOfServerOnNetwork'), ] def __init__(self): self.LastCounterResetTime = datetime.utcnow() self.Servers = [] self._freeze = True def __str__(self): return 'FindServersOnNetworkResult(' + 'LastCounterResetTime:' + str(self.LastCounterResetTime) + ', ' + \ 'Servers:' + str(self.Servers) + ')' __repr__ = __str__ class FindServersOnNetworkResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: FindServersOnNetworkResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'FindServersOnNetworkResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.FindServersOnNetworkResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = FindServersOnNetworkResult() self._freeze = True def __str__(self): return 'FindServersOnNetworkResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class UserTokenPolicy(FrozenClass): ''' Describes a user token that can be used with a server. :ivar PolicyId: :vartype PolicyId: String :ivar TokenType: :vartype TokenType: UserTokenType :ivar IssuedTokenType: :vartype IssuedTokenType: String :ivar IssuerEndpointUrl: :vartype IssuerEndpointUrl: String :ivar SecurityPolicyUri: :vartype SecurityPolicyUri: String ''' ua_types = [ ('PolicyId', 'String'), ('TokenType', 'UserTokenType'), ('IssuedTokenType', 'String'), ('IssuerEndpointUrl', 'String'), ('SecurityPolicyUri', 'String'), ] def __init__(self): self.PolicyId = None self.TokenType = UserTokenType(0) self.IssuedTokenType = None self.IssuerEndpointUrl = None self.SecurityPolicyUri = None self._freeze = True def __str__(self): return 'UserTokenPolicy(' + 'PolicyId:' + str(self.PolicyId) + ', ' + \ 'TokenType:' + str(self.TokenType) + ', ' + \ 'IssuedTokenType:' + str(self.IssuedTokenType) + ', ' + \ 'IssuerEndpointUrl:' + str(self.IssuerEndpointUrl) + ', ' + \ 'SecurityPolicyUri:' + str(self.SecurityPolicyUri) + ')' __repr__ = __str__ class EndpointDescription(FrozenClass): ''' The description of a endpoint that can be used to access a server. :ivar EndpointUrl: :vartype EndpointUrl: String :ivar Server: :vartype Server: ApplicationDescription :ivar ServerCertificate: :vartype ServerCertificate: ByteString :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar SecurityPolicyUri: :vartype SecurityPolicyUri: String :ivar UserIdentityTokens: :vartype UserIdentityTokens: UserTokenPolicy :ivar TransportProfileUri: :vartype TransportProfileUri: String :ivar SecurityLevel: :vartype SecurityLevel: Byte ''' ua_types = [ ('EndpointUrl', 'String'), ('Server', 'ApplicationDescription'), ('ServerCertificate', 'ByteString'), ('SecurityMode', 'MessageSecurityMode'), ('SecurityPolicyUri', 'String'), ('UserIdentityTokens', 'ListOfUserTokenPolicy'), ('TransportProfileUri', 'String'), ('SecurityLevel', 'Byte'), ] def __init__(self): self.EndpointUrl = None self.Server = ApplicationDescription() self.ServerCertificate = None self.SecurityMode = MessageSecurityMode(0) self.SecurityPolicyUri = None self.UserIdentityTokens = [] self.TransportProfileUri = None self.SecurityLevel = 0 self._freeze = True def __str__(self): return 'EndpointDescription(' + 'EndpointUrl:' + str(self.EndpointUrl) + ', ' + \ 'Server:' + str(self.Server) + ', ' + \ 'ServerCertificate:' + str(self.ServerCertificate) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'SecurityPolicyUri:' + str(self.SecurityPolicyUri) + ', ' + \ 'UserIdentityTokens:' + str(self.UserIdentityTokens) + ', ' + \ 'TransportProfileUri:' + str(self.TransportProfileUri) + ', ' + \ 'SecurityLevel:' + str(self.SecurityLevel) + ')' __repr__ = __str__ class GetEndpointsParameters(FrozenClass): ''' :ivar EndpointUrl: :vartype EndpointUrl: String :ivar LocaleIds: :vartype LocaleIds: String :ivar ProfileUris: :vartype ProfileUris: String ''' ua_types = [ ('EndpointUrl', 'String'), ('LocaleIds', 'ListOfString'), ('ProfileUris', 'ListOfString'), ] def __init__(self): self.EndpointUrl = None self.LocaleIds = [] self.ProfileUris = [] self._freeze = True def __str__(self): return 'GetEndpointsParameters(' + 'EndpointUrl:' + str(self.EndpointUrl) + ', ' + \ 'LocaleIds:' + str(self.LocaleIds) + ', ' + \ 'ProfileUris:' + str(self.ProfileUris) + ')' __repr__ = __str__ class GetEndpointsRequest(FrozenClass): ''' Gets the endpoints used by the server. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: GetEndpointsParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'GetEndpointsParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.GetEndpointsRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = GetEndpointsParameters() self._freeze = True def __str__(self): return 'GetEndpointsRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class GetEndpointsResponse(FrozenClass): ''' Gets the endpoints used by the server. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Endpoints: :vartype Endpoints: EndpointDescription ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Endpoints', 'ListOfEndpointDescription'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.GetEndpointsResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Endpoints = [] self._freeze = True def __str__(self): return 'GetEndpointsResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Endpoints:' + str(self.Endpoints) + ')' __repr__ = __str__ class RegisteredServer(FrozenClass): ''' The information required to register a server with a discovery server. :ivar ServerUri: :vartype ServerUri: String :ivar ProductUri: :vartype ProductUri: String :ivar ServerNames: :vartype ServerNames: LocalizedText :ivar ServerType: :vartype ServerType: ApplicationType :ivar GatewayServerUri: :vartype GatewayServerUri: String :ivar DiscoveryUrls: :vartype DiscoveryUrls: String :ivar SemaphoreFilePath: :vartype SemaphoreFilePath: String :ivar IsOnline: :vartype IsOnline: Boolean ''' ua_types = [ ('ServerUri', 'String'), ('ProductUri', 'String'), ('ServerNames', 'ListOfLocalizedText'), ('ServerType', 'ApplicationType'), ('GatewayServerUri', 'String'), ('DiscoveryUrls', 'ListOfString'), ('SemaphoreFilePath', 'String'), ('IsOnline', 'Boolean'), ] def __init__(self): self.ServerUri = None self.ProductUri = None self.ServerNames = [] self.ServerType = ApplicationType(0) self.GatewayServerUri = None self.DiscoveryUrls = [] self.SemaphoreFilePath = None self.IsOnline = True self._freeze = True def __str__(self): return 'RegisteredServer(' + 'ServerUri:' + str(self.ServerUri) + ', ' + \ 'ProductUri:' + str(self.ProductUri) + ', ' + \ 'ServerNames:' + str(self.ServerNames) + ', ' + \ 'ServerType:' + str(self.ServerType) + ', ' + \ 'GatewayServerUri:' + str(self.GatewayServerUri) + ', ' + \ 'DiscoveryUrls:' + str(self.DiscoveryUrls) + ', ' + \ 'SemaphoreFilePath:' + str(self.SemaphoreFilePath) + ', ' + \ 'IsOnline:' + str(self.IsOnline) + ')' __repr__ = __str__ class RegisterServerRequest(FrozenClass): ''' Registers a server with the discovery server. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Server: :vartype Server: RegisteredServer ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Server', 'RegisteredServer'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RegisterServerRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Server = RegisteredServer() self._freeze = True def __str__(self): return 'RegisterServerRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Server:' + str(self.Server) + ')' __repr__ = __str__ class RegisterServerResponse(FrozenClass): ''' Registers a server with the discovery server. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RegisterServerResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self._freeze = True def __str__(self): return 'RegisterServerResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ')' __repr__ = __str__ class DiscoveryConfiguration(FrozenClass): ''' A base type for discovery configuration information. ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'DiscoveryConfiguration(' + + ')' __repr__ = __str__ class MdnsDiscoveryConfiguration(FrozenClass): ''' The discovery information needed for mDNS registration. :ivar MdnsServerName: :vartype MdnsServerName: String :ivar ServerCapabilities: :vartype ServerCapabilities: String ''' ua_types = [ ('MdnsServerName', 'String'), ('ServerCapabilities', 'ListOfString'), ] def __init__(self): self.MdnsServerName = None self.ServerCapabilities = [] self._freeze = True def __str__(self): return 'MdnsDiscoveryConfiguration(' + 'MdnsServerName:' + str(self.MdnsServerName) + ', ' + \ 'ServerCapabilities:' + str(self.ServerCapabilities) + ')' __repr__ = __str__ class RegisterServer2Parameters(FrozenClass): ''' :ivar Server: :vartype Server: RegisteredServer :ivar DiscoveryConfiguration: :vartype DiscoveryConfiguration: ExtensionObject ''' ua_types = [ ('Server', 'RegisteredServer'), ('DiscoveryConfiguration', 'ListOfExtensionObject'), ] def __init__(self): self.Server = RegisteredServer() self.DiscoveryConfiguration = [] self._freeze = True def __str__(self): return 'RegisterServer2Parameters(' + 'Server:' + str(self.Server) + ', ' + \ 'DiscoveryConfiguration:' + str(self.DiscoveryConfiguration) + ')' __repr__ = __str__ class RegisterServer2Request(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: RegisterServer2Parameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'RegisterServer2Parameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RegisterServer2Request_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = RegisterServer2Parameters() self._freeze = True def __str__(self): return 'RegisterServer2Request(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class RegisterServer2Response(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar ConfigurationResults: :vartype ConfigurationResults: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('ConfigurationResults', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RegisterServer2Response_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.ConfigurationResults = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'RegisterServer2Response(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'ConfigurationResults:' + str(self.ConfigurationResults) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class ChannelSecurityToken(FrozenClass): ''' The token that identifies a set of keys for an active secure channel. :ivar ChannelId: :vartype ChannelId: UInt32 :ivar TokenId: :vartype TokenId: UInt32 :ivar CreatedAt: :vartype CreatedAt: DateTime :ivar RevisedLifetime: :vartype RevisedLifetime: UInt32 ''' ua_types = [ ('ChannelId', 'UInt32'), ('TokenId', 'UInt32'), ('CreatedAt', 'DateTime'), ('RevisedLifetime', 'UInt32'), ] def __init__(self): self.ChannelId = 0 self.TokenId = 0 self.CreatedAt = datetime.utcnow() self.RevisedLifetime = 0 self._freeze = True def __str__(self): return 'ChannelSecurityToken(' + 'ChannelId:' + str(self.ChannelId) + ', ' + \ 'TokenId:' + str(self.TokenId) + ', ' + \ 'CreatedAt:' + str(self.CreatedAt) + ', ' + \ 'RevisedLifetime:' + str(self.RevisedLifetime) + ')' __repr__ = __str__ class OpenSecureChannelParameters(FrozenClass): ''' :ivar ClientProtocolVersion: :vartype ClientProtocolVersion: UInt32 :ivar RequestType: :vartype RequestType: SecurityTokenRequestType :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar ClientNonce: :vartype ClientNonce: ByteString :ivar RequestedLifetime: :vartype RequestedLifetime: UInt32 ''' ua_types = [ ('ClientProtocolVersion', 'UInt32'), ('RequestType', 'SecurityTokenRequestType'), ('SecurityMode', 'MessageSecurityMode'), ('ClientNonce', 'ByteString'), ('RequestedLifetime', 'UInt32'), ] def __init__(self): self.ClientProtocolVersion = 0 self.RequestType = SecurityTokenRequestType(0) self.SecurityMode = MessageSecurityMode(0) self.ClientNonce = None self.RequestedLifetime = 0 self._freeze = True def __str__(self): return 'OpenSecureChannelParameters(' + 'ClientProtocolVersion:' + str(self.ClientProtocolVersion) + ', ' + \ 'RequestType:' + str(self.RequestType) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'ClientNonce:' + str(self.ClientNonce) + ', ' + \ 'RequestedLifetime:' + str(self.RequestedLifetime) + ')' __repr__ = __str__ class OpenSecureChannelRequest(FrozenClass): ''' Creates a secure channel with a server. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: OpenSecureChannelParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'OpenSecureChannelParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.OpenSecureChannelRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = OpenSecureChannelParameters() self._freeze = True def __str__(self): return 'OpenSecureChannelRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class OpenSecureChannelResult(FrozenClass): ''' :ivar ServerProtocolVersion: :vartype ServerProtocolVersion: UInt32 :ivar SecurityToken: :vartype SecurityToken: ChannelSecurityToken :ivar ServerNonce: :vartype ServerNonce: ByteString ''' ua_types = [ ('ServerProtocolVersion', 'UInt32'), ('SecurityToken', 'ChannelSecurityToken'), ('ServerNonce', 'ByteString'), ] def __init__(self): self.ServerProtocolVersion = 0 self.SecurityToken = ChannelSecurityToken() self.ServerNonce = None self._freeze = True def __str__(self): return 'OpenSecureChannelResult(' + 'ServerProtocolVersion:' + str(self.ServerProtocolVersion) + ', ' + \ 'SecurityToken:' + str(self.SecurityToken) + ', ' + \ 'ServerNonce:' + str(self.ServerNonce) + ')' __repr__ = __str__ class OpenSecureChannelResponse(FrozenClass): ''' Creates a secure channel with a server. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: OpenSecureChannelResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'OpenSecureChannelResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.OpenSecureChannelResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = OpenSecureChannelResult() self._freeze = True def __str__(self): return 'OpenSecureChannelResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class CloseSecureChannelRequest(FrozenClass): ''' Closes a secure channel. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CloseSecureChannelRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self._freeze = True def __str__(self): return 'CloseSecureChannelRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ')' __repr__ = __str__ class CloseSecureChannelResponse(FrozenClass): ''' Closes a secure channel. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CloseSecureChannelResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self._freeze = True def __str__(self): return 'CloseSecureChannelResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ')' __repr__ = __str__ class SignedSoftwareCertificate(FrozenClass): ''' A software certificate with a digital signature. :ivar CertificateData: :vartype CertificateData: ByteString :ivar Signature: :vartype Signature: ByteString ''' ua_types = [ ('CertificateData', 'ByteString'), ('Signature', 'ByteString'), ] def __init__(self): self.CertificateData = None self.Signature = None self._freeze = True def __str__(self): return 'SignedSoftwareCertificate(' + 'CertificateData:' + str(self.CertificateData) + ', ' + \ 'Signature:' + str(self.Signature) + ')' __repr__ = __str__ class SignatureData(FrozenClass): ''' A digital signature. :ivar Algorithm: :vartype Algorithm: String :ivar Signature: :vartype Signature: ByteString ''' ua_types = [ ('Algorithm', 'String'), ('Signature', 'ByteString'), ] def __init__(self): self.Algorithm = None self.Signature = None self._freeze = True def __str__(self): return 'SignatureData(' + 'Algorithm:' + str(self.Algorithm) + ', ' + \ 'Signature:' + str(self.Signature) + ')' __repr__ = __str__ class CreateSessionParameters(FrozenClass): ''' :ivar ClientDescription: :vartype ClientDescription: ApplicationDescription :ivar ServerUri: :vartype ServerUri: String :ivar EndpointUrl: :vartype EndpointUrl: String :ivar SessionName: :vartype SessionName: String :ivar ClientNonce: :vartype ClientNonce: ByteString :ivar ClientCertificate: :vartype ClientCertificate: ByteString :ivar RequestedSessionTimeout: :vartype RequestedSessionTimeout: Double :ivar MaxResponseMessageSize: :vartype MaxResponseMessageSize: UInt32 ''' ua_types = [ ('ClientDescription', 'ApplicationDescription'), ('ServerUri', 'String'), ('EndpointUrl', 'String'), ('SessionName', 'String'), ('ClientNonce', 'ByteString'), ('ClientCertificate', 'ByteString'), ('RequestedSessionTimeout', 'Double'), ('MaxResponseMessageSize', 'UInt32'), ] def __init__(self): self.ClientDescription = ApplicationDescription() self.ServerUri = None self.EndpointUrl = None self.SessionName = None self.ClientNonce = None self.ClientCertificate = None self.RequestedSessionTimeout = 0 self.MaxResponseMessageSize = 0 self._freeze = True def __str__(self): return 'CreateSessionParameters(' + 'ClientDescription:' + str(self.ClientDescription) + ', ' + \ 'ServerUri:' + str(self.ServerUri) + ', ' + \ 'EndpointUrl:' + str(self.EndpointUrl) + ', ' + \ 'SessionName:' + str(self.SessionName) + ', ' + \ 'ClientNonce:' + str(self.ClientNonce) + ', ' + \ 'ClientCertificate:' + str(self.ClientCertificate) + ', ' + \ 'RequestedSessionTimeout:' + str(self.RequestedSessionTimeout) + ', ' + \ 'MaxResponseMessageSize:' + str(self.MaxResponseMessageSize) + ')' __repr__ = __str__ class CreateSessionRequest(FrozenClass): ''' Creates a new session with the server. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: CreateSessionParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'CreateSessionParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CreateSessionRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = CreateSessionParameters() self._freeze = True def __str__(self): return 'CreateSessionRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class CreateSessionResult(FrozenClass): ''' :ivar SessionId: :vartype SessionId: NodeId :ivar AuthenticationToken: :vartype AuthenticationToken: NodeId :ivar RevisedSessionTimeout: :vartype RevisedSessionTimeout: Double :ivar ServerNonce: :vartype ServerNonce: ByteString :ivar ServerCertificate: :vartype ServerCertificate: ByteString :ivar ServerEndpoints: :vartype ServerEndpoints: EndpointDescription :ivar ServerSoftwareCertificates: :vartype ServerSoftwareCertificates: SignedSoftwareCertificate :ivar ServerSignature: :vartype ServerSignature: SignatureData :ivar MaxRequestMessageSize: :vartype MaxRequestMessageSize: UInt32 ''' ua_types = [ ('SessionId', 'NodeId'), ('AuthenticationToken', 'NodeId'), ('RevisedSessionTimeout', 'Double'), ('ServerNonce', 'ByteString'), ('ServerCertificate', 'ByteString'), ('ServerEndpoints', 'ListOfEndpointDescription'), ('ServerSoftwareCertificates', 'ListOfSignedSoftwareCertificate'), ('ServerSignature', 'SignatureData'), ('MaxRequestMessageSize', 'UInt32'), ] def __init__(self): self.SessionId = NodeId() self.AuthenticationToken = NodeId() self.RevisedSessionTimeout = 0 self.ServerNonce = None self.ServerCertificate = None self.ServerEndpoints = [] self.ServerSoftwareCertificates = [] self.ServerSignature = SignatureData() self.MaxRequestMessageSize = 0 self._freeze = True def __str__(self): return 'CreateSessionResult(' + 'SessionId:' + str(self.SessionId) + ', ' + \ 'AuthenticationToken:' + str(self.AuthenticationToken) + ', ' + \ 'RevisedSessionTimeout:' + str(self.RevisedSessionTimeout) + ', ' + \ 'ServerNonce:' + str(self.ServerNonce) + ', ' + \ 'ServerCertificate:' + str(self.ServerCertificate) + ', ' + \ 'ServerEndpoints:' + str(self.ServerEndpoints) + ', ' + \ 'ServerSoftwareCertificates:' + str(self.ServerSoftwareCertificates) + ', ' + \ 'ServerSignature:' + str(self.ServerSignature) + ', ' + \ 'MaxRequestMessageSize:' + str(self.MaxRequestMessageSize) + ')' __repr__ = __str__ class CreateSessionResponse(FrozenClass): ''' Creates a new session with the server. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: CreateSessionResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'CreateSessionResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CreateSessionResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = CreateSessionResult() self._freeze = True def __str__(self): return 'CreateSessionResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class UserIdentityToken(FrozenClass): ''' A base type for a user identity token. :ivar PolicyId: :vartype PolicyId: String ''' ua_types = [ ('PolicyId', 'String'), ] def __init__(self): self.PolicyId = None self._freeze = True def __str__(self): return 'UserIdentityToken(' + 'PolicyId:' + str(self.PolicyId) + ')' __repr__ = __str__ class AnonymousIdentityToken(FrozenClass): ''' A token representing an anonymous user. :ivar PolicyId: :vartype PolicyId: String ''' ua_types = [ ('PolicyId', 'String'), ] def __init__(self): self.PolicyId = None self._freeze = True def __str__(self): return 'AnonymousIdentityToken(' + 'PolicyId:' + str(self.PolicyId) + ')' __repr__ = __str__ class UserNameIdentityToken(FrozenClass): ''' A token representing a user identified by a user name and password. :ivar PolicyId: :vartype PolicyId: String :ivar UserName: :vartype UserName: String :ivar Password: :vartype Password: ByteString :ivar EncryptionAlgorithm: :vartype EncryptionAlgorithm: String ''' ua_types = [ ('PolicyId', 'String'), ('UserName', 'String'), ('Password', 'ByteString'), ('EncryptionAlgorithm', 'String'), ] def __init__(self): self.PolicyId = None self.UserName = None self.Password = None self.EncryptionAlgorithm = None self._freeze = True def __str__(self): return 'UserNameIdentityToken(' + 'PolicyId:' + str(self.PolicyId) + ', ' + \ 'UserName:' + str(self.UserName) + ', ' + \ 'Password:' + str(self.Password) + ', ' + \ 'EncryptionAlgorithm:' + str(self.EncryptionAlgorithm) + ')' __repr__ = __str__ class X509IdentityToken(FrozenClass): ''' A token representing a user identified by an X509 certificate. :ivar PolicyId: :vartype PolicyId: String :ivar CertificateData: :vartype CertificateData: ByteString ''' ua_types = [ ('PolicyId', 'String'), ('CertificateData', 'ByteString'), ] def __init__(self): self.PolicyId = None self.CertificateData = None self._freeze = True def __str__(self): return 'X509IdentityToken(' + 'PolicyId:' + str(self.PolicyId) + ', ' + \ 'CertificateData:' + str(self.CertificateData) + ')' __repr__ = __str__ class IssuedIdentityToken(FrozenClass): ''' A token representing a user identified by a WS-Security XML token. :ivar PolicyId: :vartype PolicyId: String :ivar TokenData: :vartype TokenData: ByteString :ivar EncryptionAlgorithm: :vartype EncryptionAlgorithm: String ''' ua_types = [ ('PolicyId', 'String'), ('TokenData', 'ByteString'), ('EncryptionAlgorithm', 'String'), ] def __init__(self): self.PolicyId = None self.TokenData = None self.EncryptionAlgorithm = None self._freeze = True def __str__(self): return 'IssuedIdentityToken(' + 'PolicyId:' + str(self.PolicyId) + ', ' + \ 'TokenData:' + str(self.TokenData) + ', ' + \ 'EncryptionAlgorithm:' + str(self.EncryptionAlgorithm) + ')' __repr__ = __str__ class ActivateSessionParameters(FrozenClass): ''' :ivar ClientSignature: :vartype ClientSignature: SignatureData :ivar ClientSoftwareCertificates: :vartype ClientSoftwareCertificates: SignedSoftwareCertificate :ivar LocaleIds: :vartype LocaleIds: String :ivar UserIdentityToken: :vartype UserIdentityToken: ExtensionObject :ivar UserTokenSignature: :vartype UserTokenSignature: SignatureData ''' ua_types = [ ('ClientSignature', 'SignatureData'), ('ClientSoftwareCertificates', 'ListOfSignedSoftwareCertificate'), ('LocaleIds', 'ListOfString'), ('UserIdentityToken', 'ExtensionObject'), ('UserTokenSignature', 'SignatureData'), ] def __init__(self): self.ClientSignature = SignatureData() self.ClientSoftwareCertificates = [] self.LocaleIds = [] self.UserIdentityToken = ExtensionObject() self.UserTokenSignature = SignatureData() self._freeze = True def __str__(self): return 'ActivateSessionParameters(' + 'ClientSignature:' + str(self.ClientSignature) + ', ' + \ 'ClientSoftwareCertificates:' + str(self.ClientSoftwareCertificates) + ', ' + \ 'LocaleIds:' + str(self.LocaleIds) + ', ' + \ 'UserIdentityToken:' + str(self.UserIdentityToken) + ', ' + \ 'UserTokenSignature:' + str(self.UserTokenSignature) + ')' __repr__ = __str__ class ActivateSessionRequest(FrozenClass): ''' Activates a session with the server. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: ActivateSessionParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'ActivateSessionParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ActivateSessionRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = ActivateSessionParameters() self._freeze = True def __str__(self): return 'ActivateSessionRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class ActivateSessionResult(FrozenClass): ''' :ivar ServerNonce: :vartype ServerNonce: ByteString :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('ServerNonce', 'ByteString'), ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.ServerNonce = None self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'ActivateSessionResult(' + 'ServerNonce:' + str(self.ServerNonce) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class ActivateSessionResponse(FrozenClass): ''' Activates a session with the server. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: ActivateSessionResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'ActivateSessionResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ActivateSessionResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = ActivateSessionResult() self._freeze = True def __str__(self): return 'ActivateSessionResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class CloseSessionRequest(FrozenClass): ''' Closes a session with the server. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar DeleteSubscriptions: :vartype DeleteSubscriptions: Boolean ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('DeleteSubscriptions', 'Boolean'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CloseSessionRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.DeleteSubscriptions = True self._freeze = True def __str__(self): return 'CloseSessionRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'DeleteSubscriptions:' + str(self.DeleteSubscriptions) + ')' __repr__ = __str__ class CloseSessionResponse(FrozenClass): ''' Closes a session with the server. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CloseSessionResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self._freeze = True def __str__(self): return 'CloseSessionResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ')' __repr__ = __str__ class CancelParameters(FrozenClass): ''' :ivar RequestHandle: :vartype RequestHandle: UInt32 ''' ua_types = [ ('RequestHandle', 'UInt32'), ] def __init__(self): self.RequestHandle = 0 self._freeze = True def __str__(self): return 'CancelParameters(' + 'RequestHandle:' + str(self.RequestHandle) + ')' __repr__ = __str__ class CancelRequest(FrozenClass): ''' Cancels an outstanding request. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: CancelParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'CancelParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CancelRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = CancelParameters() self._freeze = True def __str__(self): return 'CancelRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class CancelResult(FrozenClass): ''' :ivar CancelCount: :vartype CancelCount: UInt32 ''' ua_types = [ ('CancelCount', 'UInt32'), ] def __init__(self): self.CancelCount = 0 self._freeze = True def __str__(self): return 'CancelResult(' + 'CancelCount:' + str(self.CancelCount) + ')' __repr__ = __str__ class CancelResponse(FrozenClass): ''' Cancels an outstanding request. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: CancelResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'CancelResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CancelResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = CancelResult() self._freeze = True def __str__(self): return 'CancelResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class NodeAttributes(FrozenClass): ''' The base attributes for all nodes. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self._freeze = True def __str__(self): return 'NodeAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ')' __repr__ = __str__ class ObjectAttributes(FrozenClass): ''' The attributes for an object node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar EventNotifier: :vartype EventNotifier: Byte ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('EventNotifier', 'Byte'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.EventNotifier = 0 self._freeze = True def __str__(self): return 'ObjectAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'EventNotifier:' + str(self.EventNotifier) + ')' __repr__ = __str__ class VariableAttributes(FrozenClass): ''' The attributes for a variable node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar Value: :vartype Value: Variant :ivar DataType: :vartype DataType: NodeId :ivar ValueRank: :vartype ValueRank: Int32 :ivar ArrayDimensions: :vartype ArrayDimensions: UInt32 :ivar AccessLevel: :vartype AccessLevel: Byte :ivar UserAccessLevel: :vartype UserAccessLevel: Byte :ivar MinimumSamplingInterval: :vartype MinimumSamplingInterval: Double :ivar Historizing: :vartype Historizing: Boolean ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('Value', 'Variant'), ('DataType', 'NodeId'), ('ValueRank', 'Int32'), ('ArrayDimensions', 'ListOfUInt32'), ('AccessLevel', 'Byte'), ('UserAccessLevel', 'Byte'), ('MinimumSamplingInterval', 'Double'), ('Historizing', 'Boolean'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.Value = Variant() self.DataType = NodeId() self.ValueRank = 0 self.ArrayDimensions = [] self.AccessLevel = 0 self.UserAccessLevel = 0 self.MinimumSamplingInterval = 0 self.Historizing = True self._freeze = True def __str__(self): return 'VariableAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'Value:' + str(self.Value) + ', ' + \ 'DataType:' + str(self.DataType) + ', ' + \ 'ValueRank:' + str(self.ValueRank) + ', ' + \ 'ArrayDimensions:' + str(self.ArrayDimensions) + ', ' + \ 'AccessLevel:' + str(self.AccessLevel) + ', ' + \ 'UserAccessLevel:' + str(self.UserAccessLevel) + ', ' + \ 'MinimumSamplingInterval:' + str(self.MinimumSamplingInterval) + ', ' + \ 'Historizing:' + str(self.Historizing) + ')' __repr__ = __str__ class MethodAttributes(FrozenClass): ''' The attributes for a method node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar Executable: :vartype Executable: Boolean :ivar UserExecutable: :vartype UserExecutable: Boolean ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('Executable', 'Boolean'), ('UserExecutable', 'Boolean'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.Executable = True self.UserExecutable = True self._freeze = True def __str__(self): return 'MethodAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'Executable:' + str(self.Executable) + ', ' + \ 'UserExecutable:' + str(self.UserExecutable) + ')' __repr__ = __str__ class ObjectTypeAttributes(FrozenClass): ''' The attributes for an object type node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar IsAbstract: :vartype IsAbstract: Boolean ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('IsAbstract', 'Boolean'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.IsAbstract = True self._freeze = True def __str__(self): return 'ObjectTypeAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'IsAbstract:' + str(self.IsAbstract) + ')' __repr__ = __str__ class VariableTypeAttributes(FrozenClass): ''' The attributes for a variable type node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar Value: :vartype Value: Variant :ivar DataType: :vartype DataType: NodeId :ivar ValueRank: :vartype ValueRank: Int32 :ivar ArrayDimensions: :vartype ArrayDimensions: UInt32 :ivar IsAbstract: :vartype IsAbstract: Boolean ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('Value', 'Variant'), ('DataType', 'NodeId'), ('ValueRank', 'Int32'), ('ArrayDimensions', 'ListOfUInt32'), ('IsAbstract', 'Boolean'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.Value = Variant() self.DataType = NodeId() self.ValueRank = 0 self.ArrayDimensions = [] self.IsAbstract = True self._freeze = True def __str__(self): return 'VariableTypeAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'Value:' + str(self.Value) + ', ' + \ 'DataType:' + str(self.DataType) + ', ' + \ 'ValueRank:' + str(self.ValueRank) + ', ' + \ 'ArrayDimensions:' + str(self.ArrayDimensions) + ', ' + \ 'IsAbstract:' + str(self.IsAbstract) + ')' __repr__ = __str__ class ReferenceTypeAttributes(FrozenClass): ''' The attributes for a reference type node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar IsAbstract: :vartype IsAbstract: Boolean :ivar Symmetric: :vartype Symmetric: Boolean :ivar InverseName: :vartype InverseName: LocalizedText ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('IsAbstract', 'Boolean'), ('Symmetric', 'Boolean'), ('InverseName', 'LocalizedText'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.IsAbstract = True self.Symmetric = True self.InverseName = LocalizedText() self._freeze = True def __str__(self): return 'ReferenceTypeAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'IsAbstract:' + str(self.IsAbstract) + ', ' + \ 'Symmetric:' + str(self.Symmetric) + ', ' + \ 'InverseName:' + str(self.InverseName) + ')' __repr__ = __str__ class DataTypeAttributes(FrozenClass): ''' The attributes for a data type node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar IsAbstract: :vartype IsAbstract: Boolean ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('IsAbstract', 'Boolean'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.IsAbstract = True self._freeze = True def __str__(self): return 'DataTypeAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'IsAbstract:' + str(self.IsAbstract) + ')' __repr__ = __str__ class ViewAttributes(FrozenClass): ''' The attributes for a view node. :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar ContainsNoLoops: :vartype ContainsNoLoops: Boolean :ivar EventNotifier: :vartype EventNotifier: Byte ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('ContainsNoLoops', 'Boolean'), ('EventNotifier', 'Byte'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.ContainsNoLoops = True self.EventNotifier = 0 self._freeze = True def __str__(self): return 'ViewAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'ContainsNoLoops:' + str(self.ContainsNoLoops) + ', ' + \ 'EventNotifier:' + str(self.EventNotifier) + ')' __repr__ = __str__ class GenericAttributeValue(FrozenClass): ''' :ivar AttributeId: :vartype AttributeId: UInt32 :ivar Value: :vartype Value: Variant ''' ua_types = [ ('AttributeId', 'UInt32'), ('Value', 'Variant'), ] def __init__(self): self.AttributeId = 0 self.Value = Variant() self._freeze = True def __str__(self): return 'GenericAttributeValue(' + 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'Value:' + str(self.Value) + ')' __repr__ = __str__ class GenericAttributes(FrozenClass): ''' :ivar SpecifiedAttributes: :vartype SpecifiedAttributes: UInt32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText :ivar WriteMask: :vartype WriteMask: UInt32 :ivar UserWriteMask: :vartype UserWriteMask: UInt32 :ivar AttributeValues: :vartype AttributeValues: GenericAttributeValue ''' ua_types = [ ('SpecifiedAttributes', 'UInt32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ('WriteMask', 'UInt32'), ('UserWriteMask', 'UInt32'), ('AttributeValues', 'ListOfGenericAttributeValue'), ] def __init__(self): self.SpecifiedAttributes = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self.WriteMask = 0 self.UserWriteMask = 0 self.AttributeValues = [] self._freeze = True def __str__(self): return 'GenericAttributes(' + 'SpecifiedAttributes:' + str(self.SpecifiedAttributes) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ', ' + \ 'WriteMask:' + str(self.WriteMask) + ', ' + \ 'UserWriteMask:' + str(self.UserWriteMask) + ', ' + \ 'AttributeValues:' + str(self.AttributeValues) + ')' __repr__ = __str__ class AddNodesItem(FrozenClass): ''' A request to add a node to the server address space. :ivar ParentNodeId: :vartype ParentNodeId: ExpandedNodeId :ivar ReferenceTypeId: :vartype ReferenceTypeId: NodeId :ivar RequestedNewNodeId: :vartype RequestedNewNodeId: ExpandedNodeId :ivar BrowseName: :vartype BrowseName: QualifiedName :ivar NodeClass: :vartype NodeClass: NodeClass :ivar NodeAttributes: :vartype NodeAttributes: ExtensionObject :ivar TypeDefinition: :vartype TypeDefinition: ExpandedNodeId ''' ua_types = [ ('ParentNodeId', 'ExpandedNodeId'), ('ReferenceTypeId', 'NodeId'), ('RequestedNewNodeId', 'ExpandedNodeId'), ('BrowseName', 'QualifiedName'), ('NodeClass', 'NodeClass'), ('NodeAttributes', 'ExtensionObject'), ('TypeDefinition', 'ExpandedNodeId'), ] def __init__(self): self.ParentNodeId = ExpandedNodeId() self.ReferenceTypeId = NodeId() self.RequestedNewNodeId = ExpandedNodeId() self.BrowseName = QualifiedName() self.NodeClass = NodeClass(0) self.NodeAttributes = ExtensionObject() self.TypeDefinition = ExpandedNodeId() self._freeze = True def __str__(self): return 'AddNodesItem(' + 'ParentNodeId:' + str(self.ParentNodeId) + ', ' + \ 'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \ 'RequestedNewNodeId:' + str(self.RequestedNewNodeId) + ', ' + \ 'BrowseName:' + str(self.BrowseName) + ', ' + \ 'NodeClass:' + str(self.NodeClass) + ', ' + \ 'NodeAttributes:' + str(self.NodeAttributes) + ', ' + \ 'TypeDefinition:' + str(self.TypeDefinition) + ')' __repr__ = __str__ class AddNodesResult(FrozenClass): ''' A result of an add node operation. :ivar StatusCode: :vartype StatusCode: StatusCode :ivar AddedNodeId: :vartype AddedNodeId: NodeId ''' ua_types = [ ('StatusCode', 'StatusCode'), ('AddedNodeId', 'NodeId'), ] def __init__(self): self.StatusCode = StatusCode() self.AddedNodeId = NodeId() self._freeze = True def __str__(self): return 'AddNodesResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'AddedNodeId:' + str(self.AddedNodeId) + ')' __repr__ = __str__ class AddNodesParameters(FrozenClass): ''' :ivar NodesToAdd: :vartype NodesToAdd: AddNodesItem ''' ua_types = [ ('NodesToAdd', 'ListOfAddNodesItem'), ] def __init__(self): self.NodesToAdd = [] self._freeze = True def __str__(self): return 'AddNodesParameters(' + 'NodesToAdd:' + str(self.NodesToAdd) + ')' __repr__ = __str__ class AddNodesRequest(FrozenClass): ''' Adds one or more nodes to the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: AddNodesParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'AddNodesParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.AddNodesRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = AddNodesParameters() self._freeze = True def __str__(self): return 'AddNodesRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class AddNodesResponse(FrozenClass): ''' Adds one or more nodes to the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: AddNodesResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfAddNodesResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.AddNodesResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'AddNodesResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class AddReferencesItem(FrozenClass): ''' A request to add a reference to the server address space. :ivar SourceNodeId: :vartype SourceNodeId: NodeId :ivar ReferenceTypeId: :vartype ReferenceTypeId: NodeId :ivar IsForward: :vartype IsForward: Boolean :ivar TargetServerUri: :vartype TargetServerUri: String :ivar TargetNodeId: :vartype TargetNodeId: ExpandedNodeId :ivar TargetNodeClass: :vartype TargetNodeClass: NodeClass ''' ua_types = [ ('SourceNodeId', 'NodeId'), ('ReferenceTypeId', 'NodeId'), ('IsForward', 'Boolean'), ('TargetServerUri', 'String'), ('TargetNodeId', 'ExpandedNodeId'), ('TargetNodeClass', 'NodeClass'), ] def __init__(self): self.SourceNodeId = NodeId() self.ReferenceTypeId = NodeId() self.IsForward = True self.TargetServerUri = None self.TargetNodeId = ExpandedNodeId() self.TargetNodeClass = NodeClass(0) self._freeze = True def __str__(self): return 'AddReferencesItem(' + 'SourceNodeId:' + str(self.SourceNodeId) + ', ' + \ 'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \ 'IsForward:' + str(self.IsForward) + ', ' + \ 'TargetServerUri:' + str(self.TargetServerUri) + ', ' + \ 'TargetNodeId:' + str(self.TargetNodeId) + ', ' + \ 'TargetNodeClass:' + str(self.TargetNodeClass) + ')' __repr__ = __str__ class AddReferencesParameters(FrozenClass): ''' :ivar ReferencesToAdd: :vartype ReferencesToAdd: AddReferencesItem ''' ua_types = [ ('ReferencesToAdd', 'ListOfAddReferencesItem'), ] def __init__(self): self.ReferencesToAdd = [] self._freeze = True def __str__(self): return 'AddReferencesParameters(' + 'ReferencesToAdd:' + str(self.ReferencesToAdd) + ')' __repr__ = __str__ class AddReferencesRequest(FrozenClass): ''' Adds one or more references to the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: AddReferencesParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'AddReferencesParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.AddReferencesRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = AddReferencesParameters() self._freeze = True def __str__(self): return 'AddReferencesRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class AddReferencesResponse(FrozenClass): ''' Adds one or more references to the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.AddReferencesResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'AddReferencesResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class DeleteNodesItem(FrozenClass): ''' A request to delete a node to the server address space. :ivar NodeId: :vartype NodeId: NodeId :ivar DeleteTargetReferences: :vartype DeleteTargetReferences: Boolean ''' ua_types = [ ('NodeId', 'NodeId'), ('DeleteTargetReferences', 'Boolean'), ] def __init__(self): self.NodeId = NodeId() self.DeleteTargetReferences = True self._freeze = True def __str__(self): return 'DeleteNodesItem(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'DeleteTargetReferences:' + str(self.DeleteTargetReferences) + ')' __repr__ = __str__ class DeleteNodesParameters(FrozenClass): ''' :ivar NodesToDelete: :vartype NodesToDelete: DeleteNodesItem ''' ua_types = [ ('NodesToDelete', 'ListOfDeleteNodesItem'), ] def __init__(self): self.NodesToDelete = [] self._freeze = True def __str__(self): return 'DeleteNodesParameters(' + 'NodesToDelete:' + str(self.NodesToDelete) + ')' __repr__ = __str__ class DeleteNodesRequest(FrozenClass): ''' Delete one or more nodes from the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: DeleteNodesParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'DeleteNodesParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteNodesRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = DeleteNodesParameters() self._freeze = True def __str__(self): return 'DeleteNodesRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class DeleteNodesResponse(FrozenClass): ''' Delete one or more nodes from the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteNodesResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'DeleteNodesResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class DeleteReferencesItem(FrozenClass): ''' A request to delete a node from the server address space. :ivar SourceNodeId: :vartype SourceNodeId: NodeId :ivar ReferenceTypeId: :vartype ReferenceTypeId: NodeId :ivar IsForward: :vartype IsForward: Boolean :ivar TargetNodeId: :vartype TargetNodeId: ExpandedNodeId :ivar DeleteBidirectional: :vartype DeleteBidirectional: Boolean ''' ua_types = [ ('SourceNodeId', 'NodeId'), ('ReferenceTypeId', 'NodeId'), ('IsForward', 'Boolean'), ('TargetNodeId', 'ExpandedNodeId'), ('DeleteBidirectional', 'Boolean'), ] def __init__(self): self.SourceNodeId = NodeId() self.ReferenceTypeId = NodeId() self.IsForward = True self.TargetNodeId = ExpandedNodeId() self.DeleteBidirectional = True self._freeze = True def __str__(self): return 'DeleteReferencesItem(' + 'SourceNodeId:' + str(self.SourceNodeId) + ', ' + \ 'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \ 'IsForward:' + str(self.IsForward) + ', ' + \ 'TargetNodeId:' + str(self.TargetNodeId) + ', ' + \ 'DeleteBidirectional:' + str(self.DeleteBidirectional) + ')' __repr__ = __str__ class DeleteReferencesParameters(FrozenClass): ''' :ivar ReferencesToDelete: :vartype ReferencesToDelete: DeleteReferencesItem ''' ua_types = [ ('ReferencesToDelete', 'ListOfDeleteReferencesItem'), ] def __init__(self): self.ReferencesToDelete = [] self._freeze = True def __str__(self): return 'DeleteReferencesParameters(' + 'ReferencesToDelete:' + str(self.ReferencesToDelete) + ')' __repr__ = __str__ class DeleteReferencesRequest(FrozenClass): ''' Delete one or more references from the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: DeleteReferencesParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'DeleteReferencesParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteReferencesRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = DeleteReferencesParameters() self._freeze = True def __str__(self): return 'DeleteReferencesRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class DeleteReferencesResult(FrozenClass): ''' :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'DeleteReferencesResult(' + 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class DeleteReferencesResponse(FrozenClass): ''' Delete one or more references from the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: DeleteReferencesResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'DeleteReferencesResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteReferencesResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = DeleteReferencesResult() self._freeze = True def __str__(self): return 'DeleteReferencesResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class ViewDescription(FrozenClass): ''' The view to browse. :ivar ViewId: :vartype ViewId: NodeId :ivar Timestamp: :vartype Timestamp: DateTime :ivar ViewVersion: :vartype ViewVersion: UInt32 ''' ua_types = [ ('ViewId', 'NodeId'), ('Timestamp', 'DateTime'), ('ViewVersion', 'UInt32'), ] def __init__(self): self.ViewId = NodeId() self.Timestamp = datetime.utcnow() self.ViewVersion = 0 self._freeze = True def __str__(self): return 'ViewDescription(' + 'ViewId:' + str(self.ViewId) + ', ' + \ 'Timestamp:' + str(self.Timestamp) + ', ' + \ 'ViewVersion:' + str(self.ViewVersion) + ')' __repr__ = __str__ class BrowseDescription(FrozenClass): ''' A request to browse the the references from a node. :ivar NodeId: :vartype NodeId: NodeId :ivar BrowseDirection: :vartype BrowseDirection: BrowseDirection :ivar ReferenceTypeId: :vartype ReferenceTypeId: NodeId :ivar IncludeSubtypes: :vartype IncludeSubtypes: Boolean :ivar NodeClassMask: :vartype NodeClassMask: UInt32 :ivar ResultMask: :vartype ResultMask: UInt32 ''' ua_types = [ ('NodeId', 'NodeId'), ('BrowseDirection', 'BrowseDirection'), ('ReferenceTypeId', 'NodeId'), ('IncludeSubtypes', 'Boolean'), ('NodeClassMask', 'UInt32'), ('ResultMask', 'UInt32'), ] def __init__(self): self.NodeId = NodeId() self.BrowseDirection = BrowseDirection(0) self.ReferenceTypeId = NodeId() self.IncludeSubtypes = True self.NodeClassMask = 0 self.ResultMask = 0 self._freeze = True def __str__(self): return 'BrowseDescription(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'BrowseDirection:' + str(self.BrowseDirection) + ', ' + \ 'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \ 'IncludeSubtypes:' + str(self.IncludeSubtypes) + ', ' + \ 'NodeClassMask:' + str(self.NodeClassMask) + ', ' + \ 'ResultMask:' + str(self.ResultMask) + ')' __repr__ = __str__ class ReferenceDescription(FrozenClass): ''' The description of a reference. :ivar ReferenceTypeId: :vartype ReferenceTypeId: NodeId :ivar IsForward: :vartype IsForward: Boolean :ivar NodeId: :vartype NodeId: ExpandedNodeId :ivar BrowseName: :vartype BrowseName: QualifiedName :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar NodeClass: :vartype NodeClass: NodeClass :ivar TypeDefinition: :vartype TypeDefinition: ExpandedNodeId ''' ua_types = [ ('ReferenceTypeId', 'NodeId'), ('IsForward', 'Boolean'), ('NodeId', 'ExpandedNodeId'), ('BrowseName', 'QualifiedName'), ('DisplayName', 'LocalizedText'), ('NodeClass', 'NodeClass'), ('TypeDefinition', 'ExpandedNodeId'), ] def __init__(self): self.ReferenceTypeId = NodeId() self.IsForward = True self.NodeId = ExpandedNodeId() self.BrowseName = QualifiedName() self.DisplayName = LocalizedText() self.NodeClass = NodeClass(0) self.TypeDefinition = ExpandedNodeId() self._freeze = True def __str__(self): return 'ReferenceDescription(' + 'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \ 'IsForward:' + str(self.IsForward) + ', ' + \ 'NodeId:' + str(self.NodeId) + ', ' + \ 'BrowseName:' + str(self.BrowseName) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'NodeClass:' + str(self.NodeClass) + ', ' + \ 'TypeDefinition:' + str(self.TypeDefinition) + ')' __repr__ = __str__ class BrowseResult(FrozenClass): ''' The result of a browse operation. :ivar StatusCode: :vartype StatusCode: StatusCode :ivar ContinuationPoint: :vartype ContinuationPoint: ByteString :ivar References: :vartype References: ReferenceDescription ''' ua_types = [ ('StatusCode', 'StatusCode'), ('ContinuationPoint', 'ByteString'), ('References', 'ListOfReferenceDescription'), ] def __init__(self): self.StatusCode = StatusCode() self.ContinuationPoint = None self.References = [] self._freeze = True def __str__(self): return 'BrowseResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'ContinuationPoint:' + str(self.ContinuationPoint) + ', ' + \ 'References:' + str(self.References) + ')' __repr__ = __str__ class BrowseParameters(FrozenClass): ''' :ivar View: :vartype View: ViewDescription :ivar RequestedMaxReferencesPerNode: :vartype RequestedMaxReferencesPerNode: UInt32 :ivar NodesToBrowse: :vartype NodesToBrowse: BrowseDescription ''' ua_types = [ ('View', 'ViewDescription'), ('RequestedMaxReferencesPerNode', 'UInt32'), ('NodesToBrowse', 'ListOfBrowseDescription'), ] def __init__(self): self.View = ViewDescription() self.RequestedMaxReferencesPerNode = 0 self.NodesToBrowse = [] self._freeze = True def __str__(self): return 'BrowseParameters(' + 'View:' + str(self.View) + ', ' + \ 'RequestedMaxReferencesPerNode:' + str(self.RequestedMaxReferencesPerNode) + ', ' + \ 'NodesToBrowse:' + str(self.NodesToBrowse) + ')' __repr__ = __str__ class BrowseRequest(FrozenClass): ''' Browse the references for one or more nodes from the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: BrowseParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'BrowseParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.BrowseRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = BrowseParameters() self._freeze = True def __str__(self): return 'BrowseRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class BrowseResponse(FrozenClass): ''' Browse the references for one or more nodes from the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: BrowseResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfBrowseResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.BrowseResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'BrowseResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class BrowseNextParameters(FrozenClass): ''' :ivar ReleaseContinuationPoints: :vartype ReleaseContinuationPoints: Boolean :ivar ContinuationPoints: :vartype ContinuationPoints: ByteString ''' ua_types = [ ('ReleaseContinuationPoints', 'Boolean'), ('ContinuationPoints', 'ListOfByteString'), ] def __init__(self): self.ReleaseContinuationPoints = True self.ContinuationPoints = [] self._freeze = True def __str__(self): return 'BrowseNextParameters(' + 'ReleaseContinuationPoints:' + str(self.ReleaseContinuationPoints) + ', ' + \ 'ContinuationPoints:' + str(self.ContinuationPoints) + ')' __repr__ = __str__ class BrowseNextRequest(FrozenClass): ''' Continues one or more browse operations. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: BrowseNextParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'BrowseNextParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.BrowseNextRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = BrowseNextParameters() self._freeze = True def __str__(self): return 'BrowseNextRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class BrowseNextResult(FrozenClass): ''' :ivar Results: :vartype Results: BrowseResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('Results', 'ListOfBrowseResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'BrowseNextResult(' + 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class BrowseNextResponse(FrozenClass): ''' Continues one or more browse operations. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: BrowseNextResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'BrowseNextResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.BrowseNextResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = BrowseNextResult() self._freeze = True def __str__(self): return 'BrowseNextResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class RelativePathElement(FrozenClass): ''' An element in a relative path. :ivar ReferenceTypeId: :vartype ReferenceTypeId: NodeId :ivar IsInverse: :vartype IsInverse: Boolean :ivar IncludeSubtypes: :vartype IncludeSubtypes: Boolean :ivar TargetName: :vartype TargetName: QualifiedName ''' ua_types = [ ('ReferenceTypeId', 'NodeId'), ('IsInverse', 'Boolean'), ('IncludeSubtypes', 'Boolean'), ('TargetName', 'QualifiedName'), ] def __init__(self): self.ReferenceTypeId = NodeId() self.IsInverse = True self.IncludeSubtypes = True self.TargetName = QualifiedName() self._freeze = True def __str__(self): return 'RelativePathElement(' + 'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \ 'IsInverse:' + str(self.IsInverse) + ', ' + \ 'IncludeSubtypes:' + str(self.IncludeSubtypes) + ', ' + \ 'TargetName:' + str(self.TargetName) + ')' __repr__ = __str__ class RelativePath(FrozenClass): ''' A relative path constructed from reference types and browse names. :ivar Elements: :vartype Elements: RelativePathElement ''' ua_types = [ ('Elements', 'ListOfRelativePathElement'), ] def __init__(self): self.Elements = [] self._freeze = True def __str__(self): return 'RelativePath(' + 'Elements:' + str(self.Elements) + ')' __repr__ = __str__ class BrowsePath(FrozenClass): ''' A request to translate a path into a node id. :ivar StartingNode: :vartype StartingNode: NodeId :ivar RelativePath: :vartype RelativePath: RelativePath ''' ua_types = [ ('StartingNode', 'NodeId'), ('RelativePath', 'RelativePath'), ] def __init__(self): self.StartingNode = NodeId() self.RelativePath = RelativePath() self._freeze = True def __str__(self): return 'BrowsePath(' + 'StartingNode:' + str(self.StartingNode) + ', ' + \ 'RelativePath:' + str(self.RelativePath) + ')' __repr__ = __str__ class BrowsePathTarget(FrozenClass): ''' The target of the translated path. :ivar TargetId: :vartype TargetId: ExpandedNodeId :ivar RemainingPathIndex: :vartype RemainingPathIndex: UInt32 ''' ua_types = [ ('TargetId', 'ExpandedNodeId'), ('RemainingPathIndex', 'UInt32'), ] def __init__(self): self.TargetId = ExpandedNodeId() self.RemainingPathIndex = 0 self._freeze = True def __str__(self): return 'BrowsePathTarget(' + 'TargetId:' + str(self.TargetId) + ', ' + \ 'RemainingPathIndex:' + str(self.RemainingPathIndex) + ')' __repr__ = __str__ class BrowsePathResult(FrozenClass): ''' The result of a translate opearation. :ivar StatusCode: :vartype StatusCode: StatusCode :ivar Targets: :vartype Targets: BrowsePathTarget ''' ua_types = [ ('StatusCode', 'StatusCode'), ('Targets', 'ListOfBrowsePathTarget'), ] def __init__(self): self.StatusCode = StatusCode() self.Targets = [] self._freeze = True def __str__(self): return 'BrowsePathResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'Targets:' + str(self.Targets) + ')' __repr__ = __str__ class TranslateBrowsePathsToNodeIdsParameters(FrozenClass): ''' :ivar BrowsePaths: :vartype BrowsePaths: BrowsePath ''' ua_types = [ ('BrowsePaths', 'ListOfBrowsePath'), ] def __init__(self): self.BrowsePaths = [] self._freeze = True def __str__(self): return 'TranslateBrowsePathsToNodeIdsParameters(' + 'BrowsePaths:' + str(self.BrowsePaths) + ')' __repr__ = __str__ class TranslateBrowsePathsToNodeIdsRequest(FrozenClass): ''' Translates one or more paths in the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: TranslateBrowsePathsToNodeIdsParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'TranslateBrowsePathsToNodeIdsParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.TranslateBrowsePathsToNodeIdsRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = TranslateBrowsePathsToNodeIdsParameters() self._freeze = True def __str__(self): return 'TranslateBrowsePathsToNodeIdsRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class TranslateBrowsePathsToNodeIdsResponse(FrozenClass): ''' Translates one or more paths in the server address space. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: BrowsePathResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfBrowsePathResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.TranslateBrowsePathsToNodeIdsResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'TranslateBrowsePathsToNodeIdsResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class RegisterNodesParameters(FrozenClass): ''' :ivar NodesToRegister: :vartype NodesToRegister: NodeId ''' ua_types = [ ('NodesToRegister', 'ListOfNodeId'), ] def __init__(self): self.NodesToRegister = [] self._freeze = True def __str__(self): return 'RegisterNodesParameters(' + 'NodesToRegister:' + str(self.NodesToRegister) + ')' __repr__ = __str__ class RegisterNodesRequest(FrozenClass): ''' Registers one or more nodes for repeated use within a session. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: RegisterNodesParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'RegisterNodesParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RegisterNodesRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = RegisterNodesParameters() self._freeze = True def __str__(self): return 'RegisterNodesRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class RegisterNodesResult(FrozenClass): ''' :ivar RegisteredNodeIds: :vartype RegisteredNodeIds: NodeId ''' ua_types = [ ('RegisteredNodeIds', 'ListOfNodeId'), ] def __init__(self): self.RegisteredNodeIds = [] self._freeze = True def __str__(self): return 'RegisterNodesResult(' + 'RegisteredNodeIds:' + str(self.RegisteredNodeIds) + ')' __repr__ = __str__ class RegisterNodesResponse(FrozenClass): ''' Registers one or more nodes for repeated use within a session. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: RegisterNodesResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'RegisterNodesResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RegisterNodesResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = RegisterNodesResult() self._freeze = True def __str__(self): return 'RegisterNodesResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class UnregisterNodesParameters(FrozenClass): ''' :ivar NodesToUnregister: :vartype NodesToUnregister: NodeId ''' ua_types = [ ('NodesToUnregister', 'ListOfNodeId'), ] def __init__(self): self.NodesToUnregister = [] self._freeze = True def __str__(self): return 'UnregisterNodesParameters(' + 'NodesToUnregister:' + str(self.NodesToUnregister) + ')' __repr__ = __str__ class UnregisterNodesRequest(FrozenClass): ''' Unregisters one or more previously registered nodes. :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: UnregisterNodesParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'UnregisterNodesParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.UnregisterNodesRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = UnregisterNodesParameters() self._freeze = True def __str__(self): return 'UnregisterNodesRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class UnregisterNodesResponse(FrozenClass): ''' Unregisters one or more previously registered nodes. :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.UnregisterNodesResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self._freeze = True def __str__(self): return 'UnregisterNodesResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ')' __repr__ = __str__ class EndpointConfiguration(FrozenClass): ''' :ivar OperationTimeout: :vartype OperationTimeout: Int32 :ivar UseBinaryEncoding: :vartype UseBinaryEncoding: Boolean :ivar MaxStringLength: :vartype MaxStringLength: Int32 :ivar MaxByteStringLength: :vartype MaxByteStringLength: Int32 :ivar MaxArrayLength: :vartype MaxArrayLength: Int32 :ivar MaxMessageSize: :vartype MaxMessageSize: Int32 :ivar MaxBufferSize: :vartype MaxBufferSize: Int32 :ivar ChannelLifetime: :vartype ChannelLifetime: Int32 :ivar SecurityTokenLifetime: :vartype SecurityTokenLifetime: Int32 ''' ua_types = [ ('OperationTimeout', 'Int32'), ('UseBinaryEncoding', 'Boolean'), ('MaxStringLength', 'Int32'), ('MaxByteStringLength', 'Int32'), ('MaxArrayLength', 'Int32'), ('MaxMessageSize', 'Int32'), ('MaxBufferSize', 'Int32'), ('ChannelLifetime', 'Int32'), ('SecurityTokenLifetime', 'Int32'), ] def __init__(self): self.OperationTimeout = 0 self.UseBinaryEncoding = True self.MaxStringLength = 0 self.MaxByteStringLength = 0 self.MaxArrayLength = 0 self.MaxMessageSize = 0 self.MaxBufferSize = 0 self.ChannelLifetime = 0 self.SecurityTokenLifetime = 0 self._freeze = True def __str__(self): return 'EndpointConfiguration(' + 'OperationTimeout:' + str(self.OperationTimeout) + ', ' + \ 'UseBinaryEncoding:' + str(self.UseBinaryEncoding) + ', ' + \ 'MaxStringLength:' + str(self.MaxStringLength) + ', ' + \ 'MaxByteStringLength:' + str(self.MaxByteStringLength) + ', ' + \ 'MaxArrayLength:' + str(self.MaxArrayLength) + ', ' + \ 'MaxMessageSize:' + str(self.MaxMessageSize) + ', ' + \ 'MaxBufferSize:' + str(self.MaxBufferSize) + ', ' + \ 'ChannelLifetime:' + str(self.ChannelLifetime) + ', ' + \ 'SecurityTokenLifetime:' + str(self.SecurityTokenLifetime) + ')' __repr__ = __str__ class QueryDataDescription(FrozenClass): ''' :ivar RelativePath: :vartype RelativePath: RelativePath :ivar AttributeId: :vartype AttributeId: UInt32 :ivar IndexRange: :vartype IndexRange: String ''' ua_types = [ ('RelativePath', 'RelativePath'), ('AttributeId', 'UInt32'), ('IndexRange', 'String'), ] def __init__(self): self.RelativePath = RelativePath() self.AttributeId = 0 self.IndexRange = None self._freeze = True def __str__(self): return 'QueryDataDescription(' + 'RelativePath:' + str(self.RelativePath) + ', ' + \ 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'IndexRange:' + str(self.IndexRange) + ')' __repr__ = __str__ class NodeTypeDescription(FrozenClass): ''' :ivar TypeDefinitionNode: :vartype TypeDefinitionNode: ExpandedNodeId :ivar IncludeSubTypes: :vartype IncludeSubTypes: Boolean :ivar DataToReturn: :vartype DataToReturn: QueryDataDescription ''' ua_types = [ ('TypeDefinitionNode', 'ExpandedNodeId'), ('IncludeSubTypes', 'Boolean'), ('DataToReturn', 'ListOfQueryDataDescription'), ] def __init__(self): self.TypeDefinitionNode = ExpandedNodeId() self.IncludeSubTypes = True self.DataToReturn = [] self._freeze = True def __str__(self): return 'NodeTypeDescription(' + 'TypeDefinitionNode:' + str(self.TypeDefinitionNode) + ', ' + \ 'IncludeSubTypes:' + str(self.IncludeSubTypes) + ', ' + \ 'DataToReturn:' + str(self.DataToReturn) + ')' __repr__ = __str__ class QueryDataSet(FrozenClass): ''' :ivar NodeId: :vartype NodeId: ExpandedNodeId :ivar TypeDefinitionNode: :vartype TypeDefinitionNode: ExpandedNodeId :ivar Values: :vartype Values: Variant ''' ua_types = [ ('NodeId', 'ExpandedNodeId'), ('TypeDefinitionNode', 'ExpandedNodeId'), ('Values', 'ListOfVariant'), ] def __init__(self): self.NodeId = ExpandedNodeId() self.TypeDefinitionNode = ExpandedNodeId() self.Values = [] self._freeze = True def __str__(self): return 'QueryDataSet(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'TypeDefinitionNode:' + str(self.TypeDefinitionNode) + ', ' + \ 'Values:' + str(self.Values) + ')' __repr__ = __str__ class NodeReference(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar ReferenceTypeId: :vartype ReferenceTypeId: NodeId :ivar IsForward: :vartype IsForward: Boolean :ivar ReferencedNodeIds: :vartype ReferencedNodeIds: NodeId ''' ua_types = [ ('NodeId', 'NodeId'), ('ReferenceTypeId', 'NodeId'), ('IsForward', 'Boolean'), ('ReferencedNodeIds', 'ListOfNodeId'), ] def __init__(self): self.NodeId = NodeId() self.ReferenceTypeId = NodeId() self.IsForward = True self.ReferencedNodeIds = [] self._freeze = True def __str__(self): return 'NodeReference(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'ReferenceTypeId:' + str(self.ReferenceTypeId) + ', ' + \ 'IsForward:' + str(self.IsForward) + ', ' + \ 'ReferencedNodeIds:' + str(self.ReferencedNodeIds) + ')' __repr__ = __str__ class ContentFilterElement(FrozenClass): ''' :ivar FilterOperator: :vartype FilterOperator: FilterOperator :ivar FilterOperands: :vartype FilterOperands: ExtensionObject ''' ua_types = [ ('FilterOperator', 'FilterOperator'), ('FilterOperands', 'ListOfExtensionObject'), ] def __init__(self): self.FilterOperator = FilterOperator(0) self.FilterOperands = [] self._freeze = True def __str__(self): return 'ContentFilterElement(' + 'FilterOperator:' + str(self.FilterOperator) + ', ' + \ 'FilterOperands:' + str(self.FilterOperands) + ')' __repr__ = __str__ class ContentFilter(FrozenClass): ''' :ivar Elements: :vartype Elements: ContentFilterElement ''' ua_types = [ ('Elements', 'ListOfContentFilterElement'), ] def __init__(self): self.Elements = [] self._freeze = True def __str__(self): return 'ContentFilter(' + 'Elements:' + str(self.Elements) + ')' __repr__ = __str__ class ElementOperand(FrozenClass): ''' :ivar Index: :vartype Index: UInt32 ''' ua_types = [ ('Index', 'UInt32'), ] def __init__(self): self.Index = 0 self._freeze = True def __str__(self): return 'ElementOperand(' + 'Index:' + str(self.Index) + ')' __repr__ = __str__ class LiteralOperand(FrozenClass): ''' :ivar Value: :vartype Value: Variant ''' ua_types = [ ('Value', 'Variant'), ] def __init__(self): self.Value = Variant() self._freeze = True def __str__(self): return 'LiteralOperand(' + 'Value:' + str(self.Value) + ')' __repr__ = __str__ class AttributeOperand(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar Alias: :vartype Alias: String :ivar BrowsePath: :vartype BrowsePath: RelativePath :ivar AttributeId: :vartype AttributeId: UInt32 :ivar IndexRange: :vartype IndexRange: String ''' ua_types = [ ('NodeId', 'NodeId'), ('Alias', 'String'), ('BrowsePath', 'RelativePath'), ('AttributeId', 'UInt32'), ('IndexRange', 'String'), ] def __init__(self): self.NodeId = NodeId() self.Alias = None self.BrowsePath = RelativePath() self.AttributeId = 0 self.IndexRange = None self._freeze = True def __str__(self): return 'AttributeOperand(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'Alias:' + str(self.Alias) + ', ' + \ 'BrowsePath:' + str(self.BrowsePath) + ', ' + \ 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'IndexRange:' + str(self.IndexRange) + ')' __repr__ = __str__ class SimpleAttributeOperand(FrozenClass): ''' :ivar TypeDefinitionId: :vartype TypeDefinitionId: NodeId :ivar BrowsePath: :vartype BrowsePath: QualifiedName :ivar AttributeId: :vartype AttributeId: UInt32 :ivar IndexRange: :vartype IndexRange: String ''' ua_types = [ ('TypeDefinitionId', 'NodeId'), ('BrowsePath', 'ListOfQualifiedName'), ('AttributeId', 'UInt32'), ('IndexRange', 'String'), ] def __init__(self): self.TypeDefinitionId = NodeId() self.BrowsePath = [] self.AttributeId = 0 self.IndexRange = None self._freeze = True def __str__(self): return 'SimpleAttributeOperand(' + 'TypeDefinitionId:' + str(self.TypeDefinitionId) + ', ' + \ 'BrowsePath:' + str(self.BrowsePath) + ', ' + \ 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'IndexRange:' + str(self.IndexRange) + ')' __repr__ = __str__ class ContentFilterElementResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar OperandStatusCodes: :vartype OperandStatusCodes: StatusCode :ivar OperandDiagnosticInfos: :vartype OperandDiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('StatusCode', 'StatusCode'), ('OperandStatusCodes', 'ListOfStatusCode'), ('OperandDiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.StatusCode = StatusCode() self.OperandStatusCodes = [] self.OperandDiagnosticInfos = [] self._freeze = True def __str__(self): return 'ContentFilterElementResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'OperandStatusCodes:' + str(self.OperandStatusCodes) + ', ' + \ 'OperandDiagnosticInfos:' + str(self.OperandDiagnosticInfos) + ')' __repr__ = __str__ class ContentFilterResult(FrozenClass): ''' :ivar ElementResults: :vartype ElementResults: ContentFilterElementResult :ivar ElementDiagnosticInfos: :vartype ElementDiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('ElementResults', 'ListOfContentFilterElementResult'), ('ElementDiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.ElementResults = [] self.ElementDiagnosticInfos = [] self._freeze = True def __str__(self): return 'ContentFilterResult(' + 'ElementResults:' + str(self.ElementResults) + ', ' + \ 'ElementDiagnosticInfos:' + str(self.ElementDiagnosticInfos) + ')' __repr__ = __str__ class ParsingResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar DataStatusCodes: :vartype DataStatusCodes: StatusCode :ivar DataDiagnosticInfos: :vartype DataDiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('StatusCode', 'StatusCode'), ('DataStatusCodes', 'ListOfStatusCode'), ('DataDiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.StatusCode = StatusCode() self.DataStatusCodes = [] self.DataDiagnosticInfos = [] self._freeze = True def __str__(self): return 'ParsingResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'DataStatusCodes:' + str(self.DataStatusCodes) + ', ' + \ 'DataDiagnosticInfos:' + str(self.DataDiagnosticInfos) + ')' __repr__ = __str__ class QueryFirstParameters(FrozenClass): ''' :ivar View: :vartype View: ViewDescription :ivar NodeTypes: :vartype NodeTypes: NodeTypeDescription :ivar Filter: :vartype Filter: ContentFilter :ivar MaxDataSetsToReturn: :vartype MaxDataSetsToReturn: UInt32 :ivar MaxReferencesToReturn: :vartype MaxReferencesToReturn: UInt32 ''' ua_types = [ ('View', 'ViewDescription'), ('NodeTypes', 'ListOfNodeTypeDescription'), ('Filter', 'ContentFilter'), ('MaxDataSetsToReturn', 'UInt32'), ('MaxReferencesToReturn', 'UInt32'), ] def __init__(self): self.View = ViewDescription() self.NodeTypes = [] self.Filter = ContentFilter() self.MaxDataSetsToReturn = 0 self.MaxReferencesToReturn = 0 self._freeze = True def __str__(self): return 'QueryFirstParameters(' + 'View:' + str(self.View) + ', ' + \ 'NodeTypes:' + str(self.NodeTypes) + ', ' + \ 'Filter:' + str(self.Filter) + ', ' + \ 'MaxDataSetsToReturn:' + str(self.MaxDataSetsToReturn) + ', ' + \ 'MaxReferencesToReturn:' + str(self.MaxReferencesToReturn) + ')' __repr__ = __str__ class QueryFirstRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: QueryFirstParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'QueryFirstParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.QueryFirstRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = QueryFirstParameters() self._freeze = True def __str__(self): return 'QueryFirstRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class QueryFirstResult(FrozenClass): ''' :ivar QueryDataSets: :vartype QueryDataSets: QueryDataSet :ivar ContinuationPoint: :vartype ContinuationPoint: ByteString :ivar ParsingResults: :vartype ParsingResults: ParsingResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo :ivar FilterResult: :vartype FilterResult: ContentFilterResult ''' ua_types = [ ('QueryDataSets', 'ListOfQueryDataSet'), ('ContinuationPoint', 'ByteString'), ('ParsingResults', 'ListOfParsingResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ('FilterResult', 'ContentFilterResult'), ] def __init__(self): self.QueryDataSets = [] self.ContinuationPoint = None self.ParsingResults = [] self.DiagnosticInfos = [] self.FilterResult = ContentFilterResult() self._freeze = True def __str__(self): return 'QueryFirstResult(' + 'QueryDataSets:' + str(self.QueryDataSets) + ', ' + \ 'ContinuationPoint:' + str(self.ContinuationPoint) + ', ' + \ 'ParsingResults:' + str(self.ParsingResults) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ', ' + \ 'FilterResult:' + str(self.FilterResult) + ')' __repr__ = __str__ class QueryFirstResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: QueryFirstResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'QueryFirstResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.QueryFirstResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = QueryFirstResult() self._freeze = True def __str__(self): return 'QueryFirstResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class QueryNextParameters(FrozenClass): ''' :ivar ReleaseContinuationPoint: :vartype ReleaseContinuationPoint: Boolean :ivar ContinuationPoint: :vartype ContinuationPoint: ByteString ''' ua_types = [ ('ReleaseContinuationPoint', 'Boolean'), ('ContinuationPoint', 'ByteString'), ] def __init__(self): self.ReleaseContinuationPoint = True self.ContinuationPoint = None self._freeze = True def __str__(self): return 'QueryNextParameters(' + 'ReleaseContinuationPoint:' + str(self.ReleaseContinuationPoint) + ', ' + \ 'ContinuationPoint:' + str(self.ContinuationPoint) + ')' __repr__ = __str__ class QueryNextRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: QueryNextParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'QueryNextParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.QueryNextRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = QueryNextParameters() self._freeze = True def __str__(self): return 'QueryNextRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class QueryNextResult(FrozenClass): ''' :ivar QueryDataSets: :vartype QueryDataSets: QueryDataSet :ivar RevisedContinuationPoint: :vartype RevisedContinuationPoint: ByteString ''' ua_types = [ ('QueryDataSets', 'ListOfQueryDataSet'), ('RevisedContinuationPoint', 'ByteString'), ] def __init__(self): self.QueryDataSets = [] self.RevisedContinuationPoint = None self._freeze = True def __str__(self): return 'QueryNextResult(' + 'QueryDataSets:' + str(self.QueryDataSets) + ', ' + \ 'RevisedContinuationPoint:' + str(self.RevisedContinuationPoint) + ')' __repr__ = __str__ class QueryNextResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: QueryNextResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'QueryNextResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.QueryNextResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = QueryNextResult() self._freeze = True def __str__(self): return 'QueryNextResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class ReadValueId(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar AttributeId: :vartype AttributeId: UInt32 :ivar IndexRange: :vartype IndexRange: String :ivar DataEncoding: :vartype DataEncoding: QualifiedName ''' ua_types = [ ('NodeId', 'NodeId'), ('AttributeId', 'UInt32'), ('IndexRange', 'String'), ('DataEncoding', 'QualifiedName'), ] def __init__(self): self.NodeId = NodeId() self.AttributeId = 0 self.IndexRange = None self.DataEncoding = QualifiedName() self._freeze = True def __str__(self): return 'ReadValueId(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'IndexRange:' + str(self.IndexRange) + ', ' + \ 'DataEncoding:' + str(self.DataEncoding) + ')' __repr__ = __str__ class ReadParameters(FrozenClass): ''' :ivar MaxAge: :vartype MaxAge: Double :ivar TimestampsToReturn: :vartype TimestampsToReturn: TimestampsToReturn :ivar NodesToRead: :vartype NodesToRead: ReadValueId ''' ua_types = [ ('MaxAge', 'Double'), ('TimestampsToReturn', 'TimestampsToReturn'), ('NodesToRead', 'ListOfReadValueId'), ] def __init__(self): self.MaxAge = 0 self.TimestampsToReturn = TimestampsToReturn(0) self.NodesToRead = [] self._freeze = True def __str__(self): return 'ReadParameters(' + 'MaxAge:' + str(self.MaxAge) + ', ' + \ 'TimestampsToReturn:' + str(self.TimestampsToReturn) + ', ' + \ 'NodesToRead:' + str(self.NodesToRead) + ')' __repr__ = __str__ class ReadRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: ReadParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'ReadParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ReadRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = ReadParameters() self._freeze = True def __str__(self): return 'ReadRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class ReadResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: DataValue :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfDataValue'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ReadResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'ReadResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class HistoryReadValueId(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar IndexRange: :vartype IndexRange: String :ivar DataEncoding: :vartype DataEncoding: QualifiedName :ivar ContinuationPoint: :vartype ContinuationPoint: ByteString ''' ua_types = [ ('NodeId', 'NodeId'), ('IndexRange', 'String'), ('DataEncoding', 'QualifiedName'), ('ContinuationPoint', 'ByteString'), ] def __init__(self): self.NodeId = NodeId() self.IndexRange = None self.DataEncoding = QualifiedName() self.ContinuationPoint = None self._freeze = True def __str__(self): return 'HistoryReadValueId(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'IndexRange:' + str(self.IndexRange) + ', ' + \ 'DataEncoding:' + str(self.DataEncoding) + ', ' + \ 'ContinuationPoint:' + str(self.ContinuationPoint) + ')' __repr__ = __str__ class HistoryReadResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar ContinuationPoint: :vartype ContinuationPoint: ByteString :ivar HistoryData: :vartype HistoryData: ExtensionObject ''' ua_types = [ ('StatusCode', 'StatusCode'), ('ContinuationPoint', 'ByteString'), ('HistoryData', 'ExtensionObject'), ] def __init__(self): self.StatusCode = StatusCode() self.ContinuationPoint = None self.HistoryData = ExtensionObject() self._freeze = True def __str__(self): return 'HistoryReadResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'ContinuationPoint:' + str(self.ContinuationPoint) + ', ' + \ 'HistoryData:' + str(self.HistoryData) + ')' __repr__ = __str__ class HistoryReadDetails(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'HistoryReadDetails(' + + ')' __repr__ = __str__ class ReadEventDetails(FrozenClass): ''' :ivar NumValuesPerNode: :vartype NumValuesPerNode: UInt32 :ivar StartTime: :vartype StartTime: DateTime :ivar EndTime: :vartype EndTime: DateTime :ivar Filter: :vartype Filter: EventFilter ''' ua_types = [ ('NumValuesPerNode', 'UInt32'), ('StartTime', 'DateTime'), ('EndTime', 'DateTime'), ('Filter', 'EventFilter'), ] def __init__(self): self.NumValuesPerNode = 0 self.StartTime = datetime.utcnow() self.EndTime = datetime.utcnow() self.Filter = EventFilter() self._freeze = True def __str__(self): return 'ReadEventDetails(' + 'NumValuesPerNode:' + str(self.NumValuesPerNode) + ', ' + \ 'StartTime:' + str(self.StartTime) + ', ' + \ 'EndTime:' + str(self.EndTime) + ', ' + \ 'Filter:' + str(self.Filter) + ')' __repr__ = __str__ class ReadRawModifiedDetails(FrozenClass): ''' :ivar IsReadModified: :vartype IsReadModified: Boolean :ivar StartTime: :vartype StartTime: DateTime :ivar EndTime: :vartype EndTime: DateTime :ivar NumValuesPerNode: :vartype NumValuesPerNode: UInt32 :ivar ReturnBounds: :vartype ReturnBounds: Boolean ''' ua_types = [ ('IsReadModified', 'Boolean'), ('StartTime', 'DateTime'), ('EndTime', 'DateTime'), ('NumValuesPerNode', 'UInt32'), ('ReturnBounds', 'Boolean'), ] def __init__(self): self.IsReadModified = True self.StartTime = datetime.utcnow() self.EndTime = datetime.utcnow() self.NumValuesPerNode = 0 self.ReturnBounds = True self._freeze = True def __str__(self): return 'ReadRawModifiedDetails(' + 'IsReadModified:' + str(self.IsReadModified) + ', ' + \ 'StartTime:' + str(self.StartTime) + ', ' + \ 'EndTime:' + str(self.EndTime) + ', ' + \ 'NumValuesPerNode:' + str(self.NumValuesPerNode) + ', ' + \ 'ReturnBounds:' + str(self.ReturnBounds) + ')' __repr__ = __str__ class ReadProcessedDetails(FrozenClass): ''' :ivar StartTime: :vartype StartTime: DateTime :ivar EndTime: :vartype EndTime: DateTime :ivar ProcessingInterval: :vartype ProcessingInterval: Double :ivar AggregateType: :vartype AggregateType: NodeId :ivar AggregateConfiguration: :vartype AggregateConfiguration: AggregateConfiguration ''' ua_types = [ ('StartTime', 'DateTime'), ('EndTime', 'DateTime'), ('ProcessingInterval', 'Double'), ('AggregateType', 'ListOfNodeId'), ('AggregateConfiguration', 'AggregateConfiguration'), ] def __init__(self): self.StartTime = datetime.utcnow() self.EndTime = datetime.utcnow() self.ProcessingInterval = 0 self.AggregateType = [] self.AggregateConfiguration = AggregateConfiguration() self._freeze = True def __str__(self): return 'ReadProcessedDetails(' + 'StartTime:' + str(self.StartTime) + ', ' + \ 'EndTime:' + str(self.EndTime) + ', ' + \ 'ProcessingInterval:' + str(self.ProcessingInterval) + ', ' + \ 'AggregateType:' + str(self.AggregateType) + ', ' + \ 'AggregateConfiguration:' + str(self.AggregateConfiguration) + ')' __repr__ = __str__ class ReadAtTimeDetails(FrozenClass): ''' :ivar ReqTimes: :vartype ReqTimes: DateTime :ivar UseSimpleBounds: :vartype UseSimpleBounds: Boolean ''' ua_types = [ ('ReqTimes', 'ListOfDateTime'), ('UseSimpleBounds', 'Boolean'), ] def __init__(self): self.ReqTimes = [] self.UseSimpleBounds = True self._freeze = True def __str__(self): return 'ReadAtTimeDetails(' + 'ReqTimes:' + str(self.ReqTimes) + ', ' + \ 'UseSimpleBounds:' + str(self.UseSimpleBounds) + ')' __repr__ = __str__ class HistoryData(FrozenClass): ''' :ivar DataValues: :vartype DataValues: DataValue ''' ua_types = [ ('DataValues', 'ListOfDataValue'), ] def __init__(self): self.DataValues = [] self._freeze = True def __str__(self): return 'HistoryData(' + 'DataValues:' + str(self.DataValues) + ')' __repr__ = __str__ class ModificationInfo(FrozenClass): ''' :ivar ModificationTime: :vartype ModificationTime: DateTime :ivar UpdateType: :vartype UpdateType: HistoryUpdateType :ivar UserName: :vartype UserName: String ''' ua_types = [ ('ModificationTime', 'DateTime'), ('UpdateType', 'HistoryUpdateType'), ('UserName', 'String'), ] def __init__(self): self.ModificationTime = datetime.utcnow() self.UpdateType = HistoryUpdateType(0) self.UserName = None self._freeze = True def __str__(self): return 'ModificationInfo(' + 'ModificationTime:' + str(self.ModificationTime) + ', ' + \ 'UpdateType:' + str(self.UpdateType) + ', ' + \ 'UserName:' + str(self.UserName) + ')' __repr__ = __str__ class HistoryModifiedData(FrozenClass): ''' :ivar DataValues: :vartype DataValues: DataValue :ivar ModificationInfos: :vartype ModificationInfos: ModificationInfo ''' ua_types = [ ('DataValues', 'ListOfDataValue'), ('ModificationInfos', 'ListOfModificationInfo'), ] def __init__(self): self.DataValues = [] self.ModificationInfos = [] self._freeze = True def __str__(self): return 'HistoryModifiedData(' + 'DataValues:' + str(self.DataValues) + ', ' + \ 'ModificationInfos:' + str(self.ModificationInfos) + ')' __repr__ = __str__ class HistoryEvent(FrozenClass): ''' :ivar Events: :vartype Events: HistoryEventFieldList ''' ua_types = [ ('Events', 'ListOfHistoryEventFieldList'), ] def __init__(self): self.Events = [] self._freeze = True def __str__(self): return 'HistoryEvent(' + 'Events:' + str(self.Events) + ')' __repr__ = __str__ class HistoryReadParameters(FrozenClass): ''' :ivar HistoryReadDetails: :vartype HistoryReadDetails: ExtensionObject :ivar TimestampsToReturn: :vartype TimestampsToReturn: TimestampsToReturn :ivar ReleaseContinuationPoints: :vartype ReleaseContinuationPoints: Boolean :ivar NodesToRead: :vartype NodesToRead: HistoryReadValueId ''' ua_types = [ ('HistoryReadDetails', 'ExtensionObject'), ('TimestampsToReturn', 'TimestampsToReturn'), ('ReleaseContinuationPoints', 'Boolean'), ('NodesToRead', 'ListOfHistoryReadValueId'), ] def __init__(self): self.HistoryReadDetails = ExtensionObject() self.TimestampsToReturn = TimestampsToReturn(0) self.ReleaseContinuationPoints = True self.NodesToRead = [] self._freeze = True def __str__(self): return 'HistoryReadParameters(' + 'HistoryReadDetails:' + str(self.HistoryReadDetails) + ', ' + \ 'TimestampsToReturn:' + str(self.TimestampsToReturn) + ', ' + \ 'ReleaseContinuationPoints:' + str(self.ReleaseContinuationPoints) + ', ' + \ 'NodesToRead:' + str(self.NodesToRead) + ')' __repr__ = __str__ class HistoryReadRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: HistoryReadParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'HistoryReadParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.HistoryReadRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = HistoryReadParameters() self._freeze = True def __str__(self): return 'HistoryReadRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class HistoryReadResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: HistoryReadResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfHistoryReadResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.HistoryReadResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'HistoryReadResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class WriteValue(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar AttributeId: :vartype AttributeId: UInt32 :ivar IndexRange: :vartype IndexRange: String :ivar Value: :vartype Value: DataValue ''' ua_types = [ ('NodeId', 'NodeId'), ('AttributeId', 'UInt32'), ('IndexRange', 'String'), ('Value', 'DataValue'), ] def __init__(self): self.NodeId = NodeId() self.AttributeId = 0 self.IndexRange = None self.Value = DataValue() self._freeze = True def __str__(self): return 'WriteValue(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'AttributeId:' + str(self.AttributeId) + ', ' + \ 'IndexRange:' + str(self.IndexRange) + ', ' + \ 'Value:' + str(self.Value) + ')' __repr__ = __str__ class WriteParameters(FrozenClass): ''' :ivar NodesToWrite: :vartype NodesToWrite: WriteValue ''' ua_types = [ ('NodesToWrite', 'ListOfWriteValue'), ] def __init__(self): self.NodesToWrite = [] self._freeze = True def __str__(self): return 'WriteParameters(' + 'NodesToWrite:' + str(self.NodesToWrite) + ')' __repr__ = __str__ class WriteRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: WriteParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'WriteParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.WriteRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = WriteParameters() self._freeze = True def __str__(self): return 'WriteRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class WriteResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.WriteResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'WriteResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class HistoryUpdateDetails(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId ''' ua_types = [ ('NodeId', 'NodeId'), ] def __init__(self): self.NodeId = NodeId() self._freeze = True def __str__(self): return 'HistoryUpdateDetails(' + 'NodeId:' + str(self.NodeId) + ')' __repr__ = __str__ class UpdateDataDetails(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar PerformInsertReplace: :vartype PerformInsertReplace: PerformUpdateType :ivar UpdateValues: :vartype UpdateValues: DataValue ''' ua_types = [ ('NodeId', 'NodeId'), ('PerformInsertReplace', 'PerformUpdateType'), ('UpdateValues', 'ListOfDataValue'), ] def __init__(self): self.NodeId = NodeId() self.PerformInsertReplace = PerformUpdateType(0) self.UpdateValues = [] self._freeze = True def __str__(self): return 'UpdateDataDetails(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'PerformInsertReplace:' + str(self.PerformInsertReplace) + ', ' + \ 'UpdateValues:' + str(self.UpdateValues) + ')' __repr__ = __str__ class UpdateStructureDataDetails(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar PerformInsertReplace: :vartype PerformInsertReplace: PerformUpdateType :ivar UpdateValues: :vartype UpdateValues: DataValue ''' ua_types = [ ('NodeId', 'NodeId'), ('PerformInsertReplace', 'PerformUpdateType'), ('UpdateValues', 'ListOfDataValue'), ] def __init__(self): self.NodeId = NodeId() self.PerformInsertReplace = PerformUpdateType(0) self.UpdateValues = [] self._freeze = True def __str__(self): return 'UpdateStructureDataDetails(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'PerformInsertReplace:' + str(self.PerformInsertReplace) + ', ' + \ 'UpdateValues:' + str(self.UpdateValues) + ')' __repr__ = __str__ class UpdateEventDetails(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar PerformInsertReplace: :vartype PerformInsertReplace: PerformUpdateType :ivar Filter: :vartype Filter: EventFilter :ivar EventData: :vartype EventData: HistoryEventFieldList ''' ua_types = [ ('NodeId', 'NodeId'), ('PerformInsertReplace', 'PerformUpdateType'), ('Filter', 'EventFilter'), ('EventData', 'ListOfHistoryEventFieldList'), ] def __init__(self): self.NodeId = NodeId() self.PerformInsertReplace = PerformUpdateType(0) self.Filter = EventFilter() self.EventData = [] self._freeze = True def __str__(self): return 'UpdateEventDetails(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'PerformInsertReplace:' + str(self.PerformInsertReplace) + ', ' + \ 'Filter:' + str(self.Filter) + ', ' + \ 'EventData:' + str(self.EventData) + ')' __repr__ = __str__ class DeleteRawModifiedDetails(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar IsDeleteModified: :vartype IsDeleteModified: Boolean :ivar StartTime: :vartype StartTime: DateTime :ivar EndTime: :vartype EndTime: DateTime ''' ua_types = [ ('NodeId', 'NodeId'), ('IsDeleteModified', 'Boolean'), ('StartTime', 'DateTime'), ('EndTime', 'DateTime'), ] def __init__(self): self.NodeId = NodeId() self.IsDeleteModified = True self.StartTime = datetime.utcnow() self.EndTime = datetime.utcnow() self._freeze = True def __str__(self): return 'DeleteRawModifiedDetails(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'IsDeleteModified:' + str(self.IsDeleteModified) + ', ' + \ 'StartTime:' + str(self.StartTime) + ', ' + \ 'EndTime:' + str(self.EndTime) + ')' __repr__ = __str__ class DeleteAtTimeDetails(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar ReqTimes: :vartype ReqTimes: DateTime ''' ua_types = [ ('NodeId', 'NodeId'), ('ReqTimes', 'ListOfDateTime'), ] def __init__(self): self.NodeId = NodeId() self.ReqTimes = [] self._freeze = True def __str__(self): return 'DeleteAtTimeDetails(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'ReqTimes:' + str(self.ReqTimes) + ')' __repr__ = __str__ class DeleteEventDetails(FrozenClass): ''' :ivar NodeId: :vartype NodeId: NodeId :ivar EventIds: :vartype EventIds: ByteString ''' ua_types = [ ('NodeId', 'NodeId'), ('EventIds', 'ListOfByteString'), ] def __init__(self): self.NodeId = NodeId() self.EventIds = [] self._freeze = True def __str__(self): return 'DeleteEventDetails(' + 'NodeId:' + str(self.NodeId) + ', ' + \ 'EventIds:' + str(self.EventIds) + ')' __repr__ = __str__ class HistoryUpdateResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar OperationResults: :vartype OperationResults: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('StatusCode', 'StatusCode'), ('OperationResults', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.StatusCode = StatusCode() self.OperationResults = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'HistoryUpdateResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'OperationResults:' + str(self.OperationResults) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class HistoryUpdateParameters(FrozenClass): ''' :ivar HistoryUpdateDetails: :vartype HistoryUpdateDetails: ExtensionObject ''' ua_types = [ ('HistoryUpdateDetails', 'ListOfExtensionObject'), ] def __init__(self): self.HistoryUpdateDetails = [] self._freeze = True def __str__(self): return 'HistoryUpdateParameters(' + 'HistoryUpdateDetails:' + str(self.HistoryUpdateDetails) + ')' __repr__ = __str__ class HistoryUpdateRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: HistoryUpdateParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'HistoryUpdateParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.HistoryUpdateRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = HistoryUpdateParameters() self._freeze = True def __str__(self): return 'HistoryUpdateRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class HistoryUpdateResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: HistoryUpdateResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfHistoryUpdateResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.HistoryUpdateResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'HistoryUpdateResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class CallMethodRequest(FrozenClass): ''' :ivar ObjectId: :vartype ObjectId: NodeId :ivar MethodId: :vartype MethodId: NodeId :ivar InputArguments: :vartype InputArguments: Variant ''' ua_types = [ ('ObjectId', 'NodeId'), ('MethodId', 'NodeId'), ('InputArguments', 'ListOfVariant'), ] def __init__(self): self.ObjectId = NodeId() self.MethodId = NodeId() self.InputArguments = [] self._freeze = True def __str__(self): return 'CallMethodRequest(' + 'ObjectId:' + str(self.ObjectId) + ', ' + \ 'MethodId:' + str(self.MethodId) + ', ' + \ 'InputArguments:' + str(self.InputArguments) + ')' __repr__ = __str__ class CallMethodResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar InputArgumentResults: :vartype InputArgumentResults: StatusCode :ivar InputArgumentDiagnosticInfos: :vartype InputArgumentDiagnosticInfos: DiagnosticInfo :ivar OutputArguments: :vartype OutputArguments: Variant ''' ua_types = [ ('StatusCode', 'StatusCode'), ('InputArgumentResults', 'ListOfStatusCode'), ('InputArgumentDiagnosticInfos', 'ListOfDiagnosticInfo'), ('OutputArguments', 'ListOfVariant'), ] def __init__(self): self.StatusCode = StatusCode() self.InputArgumentResults = [] self.InputArgumentDiagnosticInfos = [] self.OutputArguments = [] self._freeze = True def __str__(self): return 'CallMethodResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'InputArgumentResults:' + str(self.InputArgumentResults) + ', ' + \ 'InputArgumentDiagnosticInfos:' + str(self.InputArgumentDiagnosticInfos) + ', ' + \ 'OutputArguments:' + str(self.OutputArguments) + ')' __repr__ = __str__ class CallParameters(FrozenClass): ''' :ivar MethodsToCall: :vartype MethodsToCall: CallMethodRequest ''' ua_types = [ ('MethodsToCall', 'ListOfCallMethodRequest'), ] def __init__(self): self.MethodsToCall = [] self._freeze = True def __str__(self): return 'CallParameters(' + 'MethodsToCall:' + str(self.MethodsToCall) + ')' __repr__ = __str__ class CallRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: CallParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'CallParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CallRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = CallParameters() self._freeze = True def __str__(self): return 'CallRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class CallResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: CallMethodResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfCallMethodResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CallResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'CallResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class MonitoringFilter(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'MonitoringFilter(' + + ')' __repr__ = __str__ class DataChangeFilter(FrozenClass): ''' :ivar Trigger: :vartype Trigger: DataChangeTrigger :ivar DeadbandType: :vartype DeadbandType: UInt32 :ivar DeadbandValue: :vartype DeadbandValue: Double ''' ua_types = [ ('Trigger', 'DataChangeTrigger'), ('DeadbandType', 'UInt32'), ('DeadbandValue', 'Double'), ] def __init__(self): self.Trigger = DataChangeTrigger(0) self.DeadbandType = 0 self.DeadbandValue = 0 self._freeze = True def __str__(self): return 'DataChangeFilter(' + 'Trigger:' + str(self.Trigger) + ', ' + \ 'DeadbandType:' + str(self.DeadbandType) + ', ' + \ 'DeadbandValue:' + str(self.DeadbandValue) + ')' __repr__ = __str__ class EventFilter(FrozenClass): ''' :ivar SelectClauses: :vartype SelectClauses: SimpleAttributeOperand :ivar WhereClause: :vartype WhereClause: ContentFilter ''' ua_types = [ ('SelectClauses', 'ListOfSimpleAttributeOperand'), ('WhereClause', 'ContentFilter'), ] def __init__(self): self.SelectClauses = [] self.WhereClause = ContentFilter() self._freeze = True def __str__(self): return 'EventFilter(' + 'SelectClauses:' + str(self.SelectClauses) + ', ' + \ 'WhereClause:' + str(self.WhereClause) + ')' __repr__ = __str__ class AggregateConfiguration(FrozenClass): ''' :ivar UseServerCapabilitiesDefaults: :vartype UseServerCapabilitiesDefaults: Boolean :ivar TreatUncertainAsBad: :vartype TreatUncertainAsBad: Boolean :ivar PercentDataBad: :vartype PercentDataBad: Byte :ivar PercentDataGood: :vartype PercentDataGood: Byte :ivar UseSlopedExtrapolation: :vartype UseSlopedExtrapolation: Boolean ''' ua_types = [ ('UseServerCapabilitiesDefaults', 'Boolean'), ('TreatUncertainAsBad', 'Boolean'), ('PercentDataBad', 'Byte'), ('PercentDataGood', 'Byte'), ('UseSlopedExtrapolation', 'Boolean'), ] def __init__(self): self.UseServerCapabilitiesDefaults = True self.TreatUncertainAsBad = True self.PercentDataBad = 0 self.PercentDataGood = 0 self.UseSlopedExtrapolation = True self._freeze = True def __str__(self): return 'AggregateConfiguration(' + 'UseServerCapabilitiesDefaults:' + str(self.UseServerCapabilitiesDefaults) + ', ' + \ 'TreatUncertainAsBad:' + str(self.TreatUncertainAsBad) + ', ' + \ 'PercentDataBad:' + str(self.PercentDataBad) + ', ' + \ 'PercentDataGood:' + str(self.PercentDataGood) + ', ' + \ 'UseSlopedExtrapolation:' + str(self.UseSlopedExtrapolation) + ')' __repr__ = __str__ class AggregateFilter(FrozenClass): ''' :ivar StartTime: :vartype StartTime: DateTime :ivar AggregateType: :vartype AggregateType: NodeId :ivar ProcessingInterval: :vartype ProcessingInterval: Double :ivar AggregateConfiguration: :vartype AggregateConfiguration: AggregateConfiguration ''' ua_types = [ ('StartTime', 'DateTime'), ('AggregateType', 'NodeId'), ('ProcessingInterval', 'Double'), ('AggregateConfiguration', 'AggregateConfiguration'), ] def __init__(self): self.StartTime = datetime.utcnow() self.AggregateType = NodeId() self.ProcessingInterval = 0 self.AggregateConfiguration = AggregateConfiguration() self._freeze = True def __str__(self): return 'AggregateFilter(' + 'StartTime:' + str(self.StartTime) + ', ' + \ 'AggregateType:' + str(self.AggregateType) + ', ' + \ 'ProcessingInterval:' + str(self.ProcessingInterval) + ', ' + \ 'AggregateConfiguration:' + str(self.AggregateConfiguration) + ')' __repr__ = __str__ class MonitoringFilterResult(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'MonitoringFilterResult(' + + ')' __repr__ = __str__ class EventFilterResult(FrozenClass): ''' :ivar SelectClauseResults: :vartype SelectClauseResults: StatusCode :ivar SelectClauseDiagnosticInfos: :vartype SelectClauseDiagnosticInfos: DiagnosticInfo :ivar WhereClauseResult: :vartype WhereClauseResult: ContentFilterResult ''' ua_types = [ ('SelectClauseResults', 'ListOfStatusCode'), ('SelectClauseDiagnosticInfos', 'ListOfDiagnosticInfo'), ('WhereClauseResult', 'ContentFilterResult'), ] def __init__(self): self.SelectClauseResults = [] self.SelectClauseDiagnosticInfos = [] self.WhereClauseResult = ContentFilterResult() self._freeze = True def __str__(self): return 'EventFilterResult(' + 'SelectClauseResults:' + str(self.SelectClauseResults) + ', ' + \ 'SelectClauseDiagnosticInfos:' + str(self.SelectClauseDiagnosticInfos) + ', ' + \ 'WhereClauseResult:' + str(self.WhereClauseResult) + ')' __repr__ = __str__ class AggregateFilterResult(FrozenClass): ''' :ivar RevisedStartTime: :vartype RevisedStartTime: DateTime :ivar RevisedProcessingInterval: :vartype RevisedProcessingInterval: Double :ivar RevisedAggregateConfiguration: :vartype RevisedAggregateConfiguration: AggregateConfiguration ''' ua_types = [ ('RevisedStartTime', 'DateTime'), ('RevisedProcessingInterval', 'Double'), ('RevisedAggregateConfiguration', 'AggregateConfiguration'), ] def __init__(self): self.RevisedStartTime = datetime.utcnow() self.RevisedProcessingInterval = 0 self.RevisedAggregateConfiguration = AggregateConfiguration() self._freeze = True def __str__(self): return 'AggregateFilterResult(' + 'RevisedStartTime:' + str(self.RevisedStartTime) + ', ' + \ 'RevisedProcessingInterval:' + str(self.RevisedProcessingInterval) + ', ' + \ 'RevisedAggregateConfiguration:' + str(self.RevisedAggregateConfiguration) + ')' __repr__ = __str__ class MonitoringParameters(FrozenClass): ''' :ivar ClientHandle: :vartype ClientHandle: UInt32 :ivar SamplingInterval: :vartype SamplingInterval: Double :ivar Filter: :vartype Filter: ExtensionObject :ivar QueueSize: :vartype QueueSize: UInt32 :ivar DiscardOldest: :vartype DiscardOldest: Boolean ''' ua_types = [ ('ClientHandle', 'UInt32'), ('SamplingInterval', 'Double'), ('Filter', 'ExtensionObject'), ('QueueSize', 'UInt32'), ('DiscardOldest', 'Boolean'), ] def __init__(self): self.ClientHandle = 0 self.SamplingInterval = 0 self.Filter = ExtensionObject() self.QueueSize = 0 self.DiscardOldest = True self._freeze = True def __str__(self): return 'MonitoringParameters(' + 'ClientHandle:' + str(self.ClientHandle) + ', ' + \ 'SamplingInterval:' + str(self.SamplingInterval) + ', ' + \ 'Filter:' + str(self.Filter) + ', ' + \ 'QueueSize:' + str(self.QueueSize) + ', ' + \ 'DiscardOldest:' + str(self.DiscardOldest) + ')' __repr__ = __str__ class MonitoredItemCreateRequest(FrozenClass): ''' :ivar ItemToMonitor: :vartype ItemToMonitor: ReadValueId :ivar MonitoringMode: :vartype MonitoringMode: MonitoringMode :ivar RequestedParameters: :vartype RequestedParameters: MonitoringParameters ''' ua_types = [ ('ItemToMonitor', 'ReadValueId'), ('MonitoringMode', 'MonitoringMode'), ('RequestedParameters', 'MonitoringParameters'), ] def __init__(self): self.ItemToMonitor = ReadValueId() self.MonitoringMode = MonitoringMode(0) self.RequestedParameters = MonitoringParameters() self._freeze = True def __str__(self): return 'MonitoredItemCreateRequest(' + 'ItemToMonitor:' + str(self.ItemToMonitor) + ', ' + \ 'MonitoringMode:' + str(self.MonitoringMode) + ', ' + \ 'RequestedParameters:' + str(self.RequestedParameters) + ')' __repr__ = __str__ class MonitoredItemCreateResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar MonitoredItemId: :vartype MonitoredItemId: UInt32 :ivar RevisedSamplingInterval: :vartype RevisedSamplingInterval: Double :ivar RevisedQueueSize: :vartype RevisedQueueSize: UInt32 :ivar FilterResult: :vartype FilterResult: ExtensionObject ''' ua_types = [ ('StatusCode', 'StatusCode'), ('MonitoredItemId', 'UInt32'), ('RevisedSamplingInterval', 'Double'), ('RevisedQueueSize', 'UInt32'), ('FilterResult', 'ExtensionObject'), ] def __init__(self): self.StatusCode = StatusCode() self.MonitoredItemId = 0 self.RevisedSamplingInterval = 0 self.RevisedQueueSize = 0 self.FilterResult = ExtensionObject() self._freeze = True def __str__(self): return 'MonitoredItemCreateResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'MonitoredItemId:' + str(self.MonitoredItemId) + ', ' + \ 'RevisedSamplingInterval:' + str(self.RevisedSamplingInterval) + ', ' + \ 'RevisedQueueSize:' + str(self.RevisedQueueSize) + ', ' + \ 'FilterResult:' + str(self.FilterResult) + ')' __repr__ = __str__ class CreateMonitoredItemsParameters(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar TimestampsToReturn: :vartype TimestampsToReturn: TimestampsToReturn :ivar ItemsToCreate: :vartype ItemsToCreate: MonitoredItemCreateRequest ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('TimestampsToReturn', 'TimestampsToReturn'), ('ItemsToCreate', 'ListOfMonitoredItemCreateRequest'), ] def __init__(self): self.SubscriptionId = 0 self.TimestampsToReturn = TimestampsToReturn(0) self.ItemsToCreate = [] self._freeze = True def __str__(self): return 'CreateMonitoredItemsParameters(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'TimestampsToReturn:' + str(self.TimestampsToReturn) + ', ' + \ 'ItemsToCreate:' + str(self.ItemsToCreate) + ')' __repr__ = __str__ class CreateMonitoredItemsRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: CreateMonitoredItemsParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'CreateMonitoredItemsParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CreateMonitoredItemsRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = CreateMonitoredItemsParameters() self._freeze = True def __str__(self): return 'CreateMonitoredItemsRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class CreateMonitoredItemsResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: MonitoredItemCreateResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfMonitoredItemCreateResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CreateMonitoredItemsResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'CreateMonitoredItemsResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class MonitoredItemModifyRequest(FrozenClass): ''' :ivar MonitoredItemId: :vartype MonitoredItemId: UInt32 :ivar RequestedParameters: :vartype RequestedParameters: MonitoringParameters ''' ua_types = [ ('MonitoredItemId', 'UInt32'), ('RequestedParameters', 'MonitoringParameters'), ] def __init__(self): self.MonitoredItemId = 0 self.RequestedParameters = MonitoringParameters() self._freeze = True def __str__(self): return 'MonitoredItemModifyRequest(' + 'MonitoredItemId:' + str(self.MonitoredItemId) + ', ' + \ 'RequestedParameters:' + str(self.RequestedParameters) + ')' __repr__ = __str__ class MonitoredItemModifyResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar RevisedSamplingInterval: :vartype RevisedSamplingInterval: Double :ivar RevisedQueueSize: :vartype RevisedQueueSize: UInt32 :ivar FilterResult: :vartype FilterResult: ExtensionObject ''' ua_types = [ ('StatusCode', 'StatusCode'), ('RevisedSamplingInterval', 'Double'), ('RevisedQueueSize', 'UInt32'), ('FilterResult', 'ExtensionObject'), ] def __init__(self): self.StatusCode = StatusCode() self.RevisedSamplingInterval = 0 self.RevisedQueueSize = 0 self.FilterResult = ExtensionObject() self._freeze = True def __str__(self): return 'MonitoredItemModifyResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'RevisedSamplingInterval:' + str(self.RevisedSamplingInterval) + ', ' + \ 'RevisedQueueSize:' + str(self.RevisedQueueSize) + ', ' + \ 'FilterResult:' + str(self.FilterResult) + ')' __repr__ = __str__ class ModifyMonitoredItemsParameters(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar TimestampsToReturn: :vartype TimestampsToReturn: TimestampsToReturn :ivar ItemsToModify: :vartype ItemsToModify: MonitoredItemModifyRequest ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('TimestampsToReturn', 'TimestampsToReturn'), ('ItemsToModify', 'ListOfMonitoredItemModifyRequest'), ] def __init__(self): self.SubscriptionId = 0 self.TimestampsToReturn = TimestampsToReturn(0) self.ItemsToModify = [] self._freeze = True def __str__(self): return 'ModifyMonitoredItemsParameters(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'TimestampsToReturn:' + str(self.TimestampsToReturn) + ', ' + \ 'ItemsToModify:' + str(self.ItemsToModify) + ')' __repr__ = __str__ class ModifyMonitoredItemsRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: ModifyMonitoredItemsParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'ModifyMonitoredItemsParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ModifyMonitoredItemsRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = ModifyMonitoredItemsParameters() self._freeze = True def __str__(self): return 'ModifyMonitoredItemsRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class ModifyMonitoredItemsResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: MonitoredItemModifyResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfMonitoredItemModifyResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ModifyMonitoredItemsResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'ModifyMonitoredItemsResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class SetMonitoringModeParameters(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar MonitoringMode: :vartype MonitoringMode: MonitoringMode :ivar MonitoredItemIds: :vartype MonitoredItemIds: UInt32 ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('MonitoringMode', 'MonitoringMode'), ('MonitoredItemIds', 'ListOfUInt32'), ] def __init__(self): self.SubscriptionId = 0 self.MonitoringMode = MonitoringMode(0) self.MonitoredItemIds = [] self._freeze = True def __str__(self): return 'SetMonitoringModeParameters(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'MonitoringMode:' + str(self.MonitoringMode) + ', ' + \ 'MonitoredItemIds:' + str(self.MonitoredItemIds) + ')' __repr__ = __str__ class SetMonitoringModeRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: SetMonitoringModeParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'SetMonitoringModeParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.SetMonitoringModeRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = SetMonitoringModeParameters() self._freeze = True def __str__(self): return 'SetMonitoringModeRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class SetMonitoringModeResult(FrozenClass): ''' :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'SetMonitoringModeResult(' + 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class SetMonitoringModeResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: SetMonitoringModeResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'SetMonitoringModeResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.SetMonitoringModeResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = SetMonitoringModeResult() self._freeze = True def __str__(self): return 'SetMonitoringModeResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class SetTriggeringParameters(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar TriggeringItemId: :vartype TriggeringItemId: UInt32 :ivar LinksToAdd: :vartype LinksToAdd: UInt32 :ivar LinksToRemove: :vartype LinksToRemove: UInt32 ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('TriggeringItemId', 'UInt32'), ('LinksToAdd', 'ListOfUInt32'), ('LinksToRemove', 'ListOfUInt32'), ] def __init__(self): self.SubscriptionId = 0 self.TriggeringItemId = 0 self.LinksToAdd = [] self.LinksToRemove = [] self._freeze = True def __str__(self): return 'SetTriggeringParameters(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'TriggeringItemId:' + str(self.TriggeringItemId) + ', ' + \ 'LinksToAdd:' + str(self.LinksToAdd) + ', ' + \ 'LinksToRemove:' + str(self.LinksToRemove) + ')' __repr__ = __str__ class SetTriggeringRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: SetTriggeringParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'SetTriggeringParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.SetTriggeringRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = SetTriggeringParameters() self._freeze = True def __str__(self): return 'SetTriggeringRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class SetTriggeringResult(FrozenClass): ''' :ivar AddResults: :vartype AddResults: StatusCode :ivar AddDiagnosticInfos: :vartype AddDiagnosticInfos: DiagnosticInfo :ivar RemoveResults: :vartype RemoveResults: StatusCode :ivar RemoveDiagnosticInfos: :vartype RemoveDiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('AddResults', 'ListOfStatusCode'), ('AddDiagnosticInfos', 'ListOfDiagnosticInfo'), ('RemoveResults', 'ListOfStatusCode'), ('RemoveDiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.AddResults = [] self.AddDiagnosticInfos = [] self.RemoveResults = [] self.RemoveDiagnosticInfos = [] self._freeze = True def __str__(self): return 'SetTriggeringResult(' + 'AddResults:' + str(self.AddResults) + ', ' + \ 'AddDiagnosticInfos:' + str(self.AddDiagnosticInfos) + ', ' + \ 'RemoveResults:' + str(self.RemoveResults) + ', ' + \ 'RemoveDiagnosticInfos:' + str(self.RemoveDiagnosticInfos) + ')' __repr__ = __str__ class SetTriggeringResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: SetTriggeringResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'SetTriggeringResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.SetTriggeringResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = SetTriggeringResult() self._freeze = True def __str__(self): return 'SetTriggeringResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class DeleteMonitoredItemsParameters(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar MonitoredItemIds: :vartype MonitoredItemIds: UInt32 ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('MonitoredItemIds', 'ListOfUInt32'), ] def __init__(self): self.SubscriptionId = 0 self.MonitoredItemIds = [] self._freeze = True def __str__(self): return 'DeleteMonitoredItemsParameters(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'MonitoredItemIds:' + str(self.MonitoredItemIds) + ')' __repr__ = __str__ class DeleteMonitoredItemsRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: DeleteMonitoredItemsParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'DeleteMonitoredItemsParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteMonitoredItemsRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = DeleteMonitoredItemsParameters() self._freeze = True def __str__(self): return 'DeleteMonitoredItemsRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class DeleteMonitoredItemsResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteMonitoredItemsResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'DeleteMonitoredItemsResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class CreateSubscriptionParameters(FrozenClass): ''' :ivar RequestedPublishingInterval: :vartype RequestedPublishingInterval: Double :ivar RequestedLifetimeCount: :vartype RequestedLifetimeCount: UInt32 :ivar RequestedMaxKeepAliveCount: :vartype RequestedMaxKeepAliveCount: UInt32 :ivar MaxNotificationsPerPublish: :vartype MaxNotificationsPerPublish: UInt32 :ivar PublishingEnabled: :vartype PublishingEnabled: Boolean :ivar Priority: :vartype Priority: Byte ''' ua_types = [ ('RequestedPublishingInterval', 'Double'), ('RequestedLifetimeCount', 'UInt32'), ('RequestedMaxKeepAliveCount', 'UInt32'), ('MaxNotificationsPerPublish', 'UInt32'), ('PublishingEnabled', 'Boolean'), ('Priority', 'Byte'), ] def __init__(self): self.RequestedPublishingInterval = 0 self.RequestedLifetimeCount = 0 self.RequestedMaxKeepAliveCount = 0 self.MaxNotificationsPerPublish = 0 self.PublishingEnabled = True self.Priority = 0 self._freeze = True def __str__(self): return 'CreateSubscriptionParameters(' + 'RequestedPublishingInterval:' + str(self.RequestedPublishingInterval) + ', ' + \ 'RequestedLifetimeCount:' + str(self.RequestedLifetimeCount) + ', ' + \ 'RequestedMaxKeepAliveCount:' + str(self.RequestedMaxKeepAliveCount) + ', ' + \ 'MaxNotificationsPerPublish:' + str(self.MaxNotificationsPerPublish) + ', ' + \ 'PublishingEnabled:' + str(self.PublishingEnabled) + ', ' + \ 'Priority:' + str(self.Priority) + ')' __repr__ = __str__ class CreateSubscriptionRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: CreateSubscriptionParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'CreateSubscriptionParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CreateSubscriptionRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = CreateSubscriptionParameters() self._freeze = True def __str__(self): return 'CreateSubscriptionRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class CreateSubscriptionResult(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar RevisedPublishingInterval: :vartype RevisedPublishingInterval: Double :ivar RevisedLifetimeCount: :vartype RevisedLifetimeCount: UInt32 :ivar RevisedMaxKeepAliveCount: :vartype RevisedMaxKeepAliveCount: UInt32 ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('RevisedPublishingInterval', 'Double'), ('RevisedLifetimeCount', 'UInt32'), ('RevisedMaxKeepAliveCount', 'UInt32'), ] def __init__(self): self.SubscriptionId = 0 self.RevisedPublishingInterval = 0 self.RevisedLifetimeCount = 0 self.RevisedMaxKeepAliveCount = 0 self._freeze = True def __str__(self): return 'CreateSubscriptionResult(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'RevisedPublishingInterval:' + str(self.RevisedPublishingInterval) + ', ' + \ 'RevisedLifetimeCount:' + str(self.RevisedLifetimeCount) + ', ' + \ 'RevisedMaxKeepAliveCount:' + str(self.RevisedMaxKeepAliveCount) + ')' __repr__ = __str__ class CreateSubscriptionResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: CreateSubscriptionResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'CreateSubscriptionResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.CreateSubscriptionResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = CreateSubscriptionResult() self._freeze = True def __str__(self): return 'CreateSubscriptionResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class ModifySubscriptionParameters(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar RequestedPublishingInterval: :vartype RequestedPublishingInterval: Double :ivar RequestedLifetimeCount: :vartype RequestedLifetimeCount: UInt32 :ivar RequestedMaxKeepAliveCount: :vartype RequestedMaxKeepAliveCount: UInt32 :ivar MaxNotificationsPerPublish: :vartype MaxNotificationsPerPublish: UInt32 :ivar Priority: :vartype Priority: Byte ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('RequestedPublishingInterval', 'Double'), ('RequestedLifetimeCount', 'UInt32'), ('RequestedMaxKeepAliveCount', 'UInt32'), ('MaxNotificationsPerPublish', 'UInt32'), ('Priority', 'Byte'), ] def __init__(self): self.SubscriptionId = 0 self.RequestedPublishingInterval = 0 self.RequestedLifetimeCount = 0 self.RequestedMaxKeepAliveCount = 0 self.MaxNotificationsPerPublish = 0 self.Priority = 0 self._freeze = True def __str__(self): return 'ModifySubscriptionParameters(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'RequestedPublishingInterval:' + str(self.RequestedPublishingInterval) + ', ' + \ 'RequestedLifetimeCount:' + str(self.RequestedLifetimeCount) + ', ' + \ 'RequestedMaxKeepAliveCount:' + str(self.RequestedMaxKeepAliveCount) + ', ' + \ 'MaxNotificationsPerPublish:' + str(self.MaxNotificationsPerPublish) + ', ' + \ 'Priority:' + str(self.Priority) + ')' __repr__ = __str__ class ModifySubscriptionRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: ModifySubscriptionParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'ModifySubscriptionParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ModifySubscriptionRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = ModifySubscriptionParameters() self._freeze = True def __str__(self): return 'ModifySubscriptionRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class ModifySubscriptionResult(FrozenClass): ''' :ivar RevisedPublishingInterval: :vartype RevisedPublishingInterval: Double :ivar RevisedLifetimeCount: :vartype RevisedLifetimeCount: UInt32 :ivar RevisedMaxKeepAliveCount: :vartype RevisedMaxKeepAliveCount: UInt32 ''' ua_types = [ ('RevisedPublishingInterval', 'Double'), ('RevisedLifetimeCount', 'UInt32'), ('RevisedMaxKeepAliveCount', 'UInt32'), ] def __init__(self): self.RevisedPublishingInterval = 0 self.RevisedLifetimeCount = 0 self.RevisedMaxKeepAliveCount = 0 self._freeze = True def __str__(self): return 'ModifySubscriptionResult(' + 'RevisedPublishingInterval:' + str(self.RevisedPublishingInterval) + ', ' + \ 'RevisedLifetimeCount:' + str(self.RevisedLifetimeCount) + ', ' + \ 'RevisedMaxKeepAliveCount:' + str(self.RevisedMaxKeepAliveCount) + ')' __repr__ = __str__ class ModifySubscriptionResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: ModifySubscriptionResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'ModifySubscriptionResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.ModifySubscriptionResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = ModifySubscriptionResult() self._freeze = True def __str__(self): return 'ModifySubscriptionResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class SetPublishingModeParameters(FrozenClass): ''' :ivar PublishingEnabled: :vartype PublishingEnabled: Boolean :ivar SubscriptionIds: :vartype SubscriptionIds: UInt32 ''' ua_types = [ ('PublishingEnabled', 'Boolean'), ('SubscriptionIds', 'ListOfUInt32'), ] def __init__(self): self.PublishingEnabled = True self.SubscriptionIds = [] self._freeze = True def __str__(self): return 'SetPublishingModeParameters(' + 'PublishingEnabled:' + str(self.PublishingEnabled) + ', ' + \ 'SubscriptionIds:' + str(self.SubscriptionIds) + ')' __repr__ = __str__ class SetPublishingModeRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: SetPublishingModeParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'SetPublishingModeParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.SetPublishingModeRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = SetPublishingModeParameters() self._freeze = True def __str__(self): return 'SetPublishingModeRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class SetPublishingModeResult(FrozenClass): ''' :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'SetPublishingModeResult(' + 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class SetPublishingModeResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: SetPublishingModeResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'SetPublishingModeResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.SetPublishingModeResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = SetPublishingModeResult() self._freeze = True def __str__(self): return 'SetPublishingModeResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class NotificationMessage(FrozenClass): ''' :ivar SequenceNumber: :vartype SequenceNumber: UInt32 :ivar PublishTime: :vartype PublishTime: DateTime :ivar NotificationData: :vartype NotificationData: ExtensionObject ''' ua_types = [ ('SequenceNumber', 'UInt32'), ('PublishTime', 'DateTime'), ('NotificationData', 'ListOfExtensionObject'), ] def __init__(self): self.SequenceNumber = 0 self.PublishTime = datetime.utcnow() self.NotificationData = [] self._freeze = True def __str__(self): return 'NotificationMessage(' + 'SequenceNumber:' + str(self.SequenceNumber) + ', ' + \ 'PublishTime:' + str(self.PublishTime) + ', ' + \ 'NotificationData:' + str(self.NotificationData) + ')' __repr__ = __str__ class NotificationData(FrozenClass): ''' ''' ua_types = [ ] def __init__(self): self._freeze = True def __str__(self): return 'NotificationData(' + + ')' __repr__ = __str__ class DataChangeNotification(FrozenClass): ''' :ivar MonitoredItems: :vartype MonitoredItems: MonitoredItemNotification :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('MonitoredItems', 'ListOfMonitoredItemNotification'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.MonitoredItems = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'DataChangeNotification(' + 'MonitoredItems:' + str(self.MonitoredItems) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class MonitoredItemNotification(FrozenClass): ''' :ivar ClientHandle: :vartype ClientHandle: UInt32 :ivar Value: :vartype Value: DataValue ''' ua_types = [ ('ClientHandle', 'UInt32'), ('Value', 'DataValue'), ] def __init__(self): self.ClientHandle = 0 self.Value = DataValue() self._freeze = True def __str__(self): return 'MonitoredItemNotification(' + 'ClientHandle:' + str(self.ClientHandle) + ', ' + \ 'Value:' + str(self.Value) + ')' __repr__ = __str__ class EventNotificationList(FrozenClass): ''' :ivar Events: :vartype Events: EventFieldList ''' ua_types = [ ('Events', 'ListOfEventFieldList'), ] def __init__(self): self.Events = [] self._freeze = True def __str__(self): return 'EventNotificationList(' + 'Events:' + str(self.Events) + ')' __repr__ = __str__ class EventFieldList(FrozenClass): ''' :ivar ClientHandle: :vartype ClientHandle: UInt32 :ivar EventFields: :vartype EventFields: Variant ''' ua_types = [ ('ClientHandle', 'UInt32'), ('EventFields', 'ListOfVariant'), ] def __init__(self): self.ClientHandle = 0 self.EventFields = [] self._freeze = True def __str__(self): return 'EventFieldList(' + 'ClientHandle:' + str(self.ClientHandle) + ', ' + \ 'EventFields:' + str(self.EventFields) + ')' __repr__ = __str__ class HistoryEventFieldList(FrozenClass): ''' :ivar EventFields: :vartype EventFields: Variant ''' ua_types = [ ('EventFields', 'ListOfVariant'), ] def __init__(self): self.EventFields = [] self._freeze = True def __str__(self): return 'HistoryEventFieldList(' + 'EventFields:' + str(self.EventFields) + ')' __repr__ = __str__ class StatusChangeNotification(FrozenClass): ''' :ivar Status: :vartype Status: StatusCode :ivar DiagnosticInfo: :vartype DiagnosticInfo: DiagnosticInfo ''' ua_types = [ ('Status', 'StatusCode'), ('DiagnosticInfo', 'DiagnosticInfo'), ] def __init__(self): self.Status = StatusCode() self.DiagnosticInfo = DiagnosticInfo() self._freeze = True def __str__(self): return 'StatusChangeNotification(' + 'Status:' + str(self.Status) + ', ' + \ 'DiagnosticInfo:' + str(self.DiagnosticInfo) + ')' __repr__ = __str__ class SubscriptionAcknowledgement(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar SequenceNumber: :vartype SequenceNumber: UInt32 ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('SequenceNumber', 'UInt32'), ] def __init__(self): self.SubscriptionId = 0 self.SequenceNumber = 0 self._freeze = True def __str__(self): return 'SubscriptionAcknowledgement(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'SequenceNumber:' + str(self.SequenceNumber) + ')' __repr__ = __str__ class PublishParameters(FrozenClass): ''' :ivar SubscriptionAcknowledgements: :vartype SubscriptionAcknowledgements: SubscriptionAcknowledgement ''' ua_types = [ ('SubscriptionAcknowledgements', 'ListOfSubscriptionAcknowledgement'), ] def __init__(self): self.SubscriptionAcknowledgements = [] self._freeze = True def __str__(self): return 'PublishParameters(' + 'SubscriptionAcknowledgements:' + str(self.SubscriptionAcknowledgements) + ')' __repr__ = __str__ class PublishRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: PublishParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'PublishParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.PublishRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = PublishParameters() self._freeze = True def __str__(self): return 'PublishRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class PublishResult(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar AvailableSequenceNumbers: :vartype AvailableSequenceNumbers: UInt32 :ivar MoreNotifications: :vartype MoreNotifications: Boolean :ivar NotificationMessage: :vartype NotificationMessage: NotificationMessage :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('AvailableSequenceNumbers', 'ListOfUInt32'), ('MoreNotifications', 'Boolean'), ('NotificationMessage', 'NotificationMessage'), ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.SubscriptionId = 0 self.AvailableSequenceNumbers = [] self.MoreNotifications = True self.NotificationMessage = NotificationMessage() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'PublishResult(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'AvailableSequenceNumbers:' + str(self.AvailableSequenceNumbers) + ', ' + \ 'MoreNotifications:' + str(self.MoreNotifications) + ', ' + \ 'NotificationMessage:' + str(self.NotificationMessage) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class PublishResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: PublishResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'PublishResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.PublishResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = PublishResult() self._freeze = True def __str__(self): return 'PublishResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class RepublishParameters(FrozenClass): ''' :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar RetransmitSequenceNumber: :vartype RetransmitSequenceNumber: UInt32 ''' ua_types = [ ('SubscriptionId', 'UInt32'), ('RetransmitSequenceNumber', 'UInt32'), ] def __init__(self): self.SubscriptionId = 0 self.RetransmitSequenceNumber = 0 self._freeze = True def __str__(self): return 'RepublishParameters(' + 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'RetransmitSequenceNumber:' + str(self.RetransmitSequenceNumber) + ')' __repr__ = __str__ class RepublishRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: RepublishParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'RepublishParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RepublishRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = RepublishParameters() self._freeze = True def __str__(self): return 'RepublishRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class RepublishResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar NotificationMessage: :vartype NotificationMessage: NotificationMessage ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('NotificationMessage', 'NotificationMessage'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.RepublishResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.NotificationMessage = NotificationMessage() self._freeze = True def __str__(self): return 'RepublishResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'NotificationMessage:' + str(self.NotificationMessage) + ')' __repr__ = __str__ class TransferResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar AvailableSequenceNumbers: :vartype AvailableSequenceNumbers: UInt32 ''' ua_types = [ ('StatusCode', 'StatusCode'), ('AvailableSequenceNumbers', 'ListOfUInt32'), ] def __init__(self): self.StatusCode = StatusCode() self.AvailableSequenceNumbers = [] self._freeze = True def __str__(self): return 'TransferResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'AvailableSequenceNumbers:' + str(self.AvailableSequenceNumbers) + ')' __repr__ = __str__ class TransferSubscriptionsParameters(FrozenClass): ''' :ivar SubscriptionIds: :vartype SubscriptionIds: UInt32 :ivar SendInitialValues: :vartype SendInitialValues: Boolean ''' ua_types = [ ('SubscriptionIds', 'ListOfUInt32'), ('SendInitialValues', 'Boolean'), ] def __init__(self): self.SubscriptionIds = [] self.SendInitialValues = True self._freeze = True def __str__(self): return 'TransferSubscriptionsParameters(' + 'SubscriptionIds:' + str(self.SubscriptionIds) + ', ' + \ 'SendInitialValues:' + str(self.SendInitialValues) + ')' __repr__ = __str__ class TransferSubscriptionsRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: TransferSubscriptionsParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'TransferSubscriptionsParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.TransferSubscriptionsRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = TransferSubscriptionsParameters() self._freeze = True def __str__(self): return 'TransferSubscriptionsRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class TransferSubscriptionsResult(FrozenClass): ''' :ivar Results: :vartype Results: TransferResult :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('Results', 'ListOfTransferResult'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'TransferSubscriptionsResult(' + 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class TransferSubscriptionsResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Parameters: :vartype Parameters: TransferSubscriptionsResult ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Parameters', 'TransferSubscriptionsResult'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.TransferSubscriptionsResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Parameters = TransferSubscriptionsResult() self._freeze = True def __str__(self): return 'TransferSubscriptionsResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class DeleteSubscriptionsParameters(FrozenClass): ''' :ivar SubscriptionIds: :vartype SubscriptionIds: UInt32 ''' ua_types = [ ('SubscriptionIds', 'ListOfUInt32'), ] def __init__(self): self.SubscriptionIds = [] self._freeze = True def __str__(self): return 'DeleteSubscriptionsParameters(' + 'SubscriptionIds:' + str(self.SubscriptionIds) + ')' __repr__ = __str__ class DeleteSubscriptionsRequest(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar RequestHeader: :vartype RequestHeader: RequestHeader :ivar Parameters: :vartype Parameters: DeleteSubscriptionsParameters ''' ua_types = [ ('TypeId', 'NodeId'), ('RequestHeader', 'RequestHeader'), ('Parameters', 'DeleteSubscriptionsParameters'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteSubscriptionsRequest_Encoding_DefaultBinary) self.RequestHeader = RequestHeader() self.Parameters = DeleteSubscriptionsParameters() self._freeze = True def __str__(self): return 'DeleteSubscriptionsRequest(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'RequestHeader:' + str(self.RequestHeader) + ', ' + \ 'Parameters:' + str(self.Parameters) + ')' __repr__ = __str__ class DeleteSubscriptionsResponse(FrozenClass): ''' :ivar TypeId: :vartype TypeId: NodeId :ivar ResponseHeader: :vartype ResponseHeader: ResponseHeader :ivar Results: :vartype Results: StatusCode :ivar DiagnosticInfos: :vartype DiagnosticInfos: DiagnosticInfo ''' ua_types = [ ('TypeId', 'NodeId'), ('ResponseHeader', 'ResponseHeader'), ('Results', 'ListOfStatusCode'), ('DiagnosticInfos', 'ListOfDiagnosticInfo'), ] def __init__(self): self.TypeId = FourByteNodeId(ObjectIds.DeleteSubscriptionsResponse_Encoding_DefaultBinary) self.ResponseHeader = ResponseHeader() self.Results = [] self.DiagnosticInfos = [] self._freeze = True def __str__(self): return 'DeleteSubscriptionsResponse(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'ResponseHeader:' + str(self.ResponseHeader) + ', ' + \ 'Results:' + str(self.Results) + ', ' + \ 'DiagnosticInfos:' + str(self.DiagnosticInfos) + ')' __repr__ = __str__ class BuildInfo(FrozenClass): ''' :ivar ProductUri: :vartype ProductUri: String :ivar ManufacturerName: :vartype ManufacturerName: String :ivar ProductName: :vartype ProductName: String :ivar SoftwareVersion: :vartype SoftwareVersion: String :ivar BuildNumber: :vartype BuildNumber: String :ivar BuildDate: :vartype BuildDate: DateTime ''' ua_types = [ ('ProductUri', 'String'), ('ManufacturerName', 'String'), ('ProductName', 'String'), ('SoftwareVersion', 'String'), ('BuildNumber', 'String'), ('BuildDate', 'DateTime'), ] def __init__(self): self.ProductUri = None self.ManufacturerName = None self.ProductName = None self.SoftwareVersion = None self.BuildNumber = None self.BuildDate = datetime.utcnow() self._freeze = True def __str__(self): return 'BuildInfo(' + 'ProductUri:' + str(self.ProductUri) + ', ' + \ 'ManufacturerName:' + str(self.ManufacturerName) + ', ' + \ 'ProductName:' + str(self.ProductName) + ', ' + \ 'SoftwareVersion:' + str(self.SoftwareVersion) + ', ' + \ 'BuildNumber:' + str(self.BuildNumber) + ', ' + \ 'BuildDate:' + str(self.BuildDate) + ')' __repr__ = __str__ class RedundantServerDataType(FrozenClass): ''' :ivar ServerId: :vartype ServerId: String :ivar ServiceLevel: :vartype ServiceLevel: Byte :ivar ServerState: :vartype ServerState: ServerState ''' ua_types = [ ('ServerId', 'String'), ('ServiceLevel', 'Byte'), ('ServerState', 'ServerState'), ] def __init__(self): self.ServerId = None self.ServiceLevel = 0 self.ServerState = ServerState(0) self._freeze = True def __str__(self): return 'RedundantServerDataType(' + 'ServerId:' + str(self.ServerId) + ', ' + \ 'ServiceLevel:' + str(self.ServiceLevel) + ', ' + \ 'ServerState:' + str(self.ServerState) + ')' __repr__ = __str__ class EndpointUrlListDataType(FrozenClass): ''' :ivar EndpointUrlList: :vartype EndpointUrlList: String ''' ua_types = [ ('EndpointUrlList', 'ListOfString'), ] def __init__(self): self.EndpointUrlList = [] self._freeze = True def __str__(self): return 'EndpointUrlListDataType(' + 'EndpointUrlList:' + str(self.EndpointUrlList) + ')' __repr__ = __str__ class NetworkGroupDataType(FrozenClass): ''' :ivar ServerUri: :vartype ServerUri: String :ivar NetworkPaths: :vartype NetworkPaths: EndpointUrlListDataType ''' ua_types = [ ('ServerUri', 'String'), ('NetworkPaths', 'ListOfEndpointUrlListDataType'), ] def __init__(self): self.ServerUri = None self.NetworkPaths = [] self._freeze = True def __str__(self): return 'NetworkGroupDataType(' + 'ServerUri:' + str(self.ServerUri) + ', ' + \ 'NetworkPaths:' + str(self.NetworkPaths) + ')' __repr__ = __str__ class SamplingIntervalDiagnosticsDataType(FrozenClass): ''' :ivar SamplingInterval: :vartype SamplingInterval: Double :ivar MonitoredItemCount: :vartype MonitoredItemCount: UInt32 :ivar MaxMonitoredItemCount: :vartype MaxMonitoredItemCount: UInt32 :ivar DisabledMonitoredItemCount: :vartype DisabledMonitoredItemCount: UInt32 ''' ua_types = [ ('SamplingInterval', 'Double'), ('MonitoredItemCount', 'UInt32'), ('MaxMonitoredItemCount', 'UInt32'), ('DisabledMonitoredItemCount', 'UInt32'), ] def __init__(self): self.SamplingInterval = 0 self.MonitoredItemCount = 0 self.MaxMonitoredItemCount = 0 self.DisabledMonitoredItemCount = 0 self._freeze = True def __str__(self): return 'SamplingIntervalDiagnosticsDataType(' + 'SamplingInterval:' + str(self.SamplingInterval) + ', ' + \ 'MonitoredItemCount:' + str(self.MonitoredItemCount) + ', ' + \ 'MaxMonitoredItemCount:' + str(self.MaxMonitoredItemCount) + ', ' + \ 'DisabledMonitoredItemCount:' + str(self.DisabledMonitoredItemCount) + ')' __repr__ = __str__ class ServerDiagnosticsSummaryDataType(FrozenClass): ''' :ivar ServerViewCount: :vartype ServerViewCount: UInt32 :ivar CurrentSessionCount: :vartype CurrentSessionCount: UInt32 :ivar CumulatedSessionCount: :vartype CumulatedSessionCount: UInt32 :ivar SecurityRejectedSessionCount: :vartype SecurityRejectedSessionCount: UInt32 :ivar RejectedSessionCount: :vartype RejectedSessionCount: UInt32 :ivar SessionTimeoutCount: :vartype SessionTimeoutCount: UInt32 :ivar SessionAbortCount: :vartype SessionAbortCount: UInt32 :ivar CurrentSubscriptionCount: :vartype CurrentSubscriptionCount: UInt32 :ivar CumulatedSubscriptionCount: :vartype CumulatedSubscriptionCount: UInt32 :ivar PublishingIntervalCount: :vartype PublishingIntervalCount: UInt32 :ivar SecurityRejectedRequestsCount: :vartype SecurityRejectedRequestsCount: UInt32 :ivar RejectedRequestsCount: :vartype RejectedRequestsCount: UInt32 ''' ua_types = [ ('ServerViewCount', 'UInt32'), ('CurrentSessionCount', 'UInt32'), ('CumulatedSessionCount', 'UInt32'), ('SecurityRejectedSessionCount', 'UInt32'), ('RejectedSessionCount', 'UInt32'), ('SessionTimeoutCount', 'UInt32'), ('SessionAbortCount', 'UInt32'), ('CurrentSubscriptionCount', 'UInt32'), ('CumulatedSubscriptionCount', 'UInt32'), ('PublishingIntervalCount', 'UInt32'), ('SecurityRejectedRequestsCount', 'UInt32'), ('RejectedRequestsCount', 'UInt32'), ] def __init__(self): self.ServerViewCount = 0 self.CurrentSessionCount = 0 self.CumulatedSessionCount = 0 self.SecurityRejectedSessionCount = 0 self.RejectedSessionCount = 0 self.SessionTimeoutCount = 0 self.SessionAbortCount = 0 self.CurrentSubscriptionCount = 0 self.CumulatedSubscriptionCount = 0 self.PublishingIntervalCount = 0 self.SecurityRejectedRequestsCount = 0 self.RejectedRequestsCount = 0 self._freeze = True def __str__(self): return 'ServerDiagnosticsSummaryDataType(' + 'ServerViewCount:' + str(self.ServerViewCount) + ', ' + \ 'CurrentSessionCount:' + str(self.CurrentSessionCount) + ', ' + \ 'CumulatedSessionCount:' + str(self.CumulatedSessionCount) + ', ' + \ 'SecurityRejectedSessionCount:' + str(self.SecurityRejectedSessionCount) + ', ' + \ 'RejectedSessionCount:' + str(self.RejectedSessionCount) + ', ' + \ 'SessionTimeoutCount:' + str(self.SessionTimeoutCount) + ', ' + \ 'SessionAbortCount:' + str(self.SessionAbortCount) + ', ' + \ 'CurrentSubscriptionCount:' + str(self.CurrentSubscriptionCount) + ', ' + \ 'CumulatedSubscriptionCount:' + str(self.CumulatedSubscriptionCount) + ', ' + \ 'PublishingIntervalCount:' + str(self.PublishingIntervalCount) + ', ' + \ 'SecurityRejectedRequestsCount:' + str(self.SecurityRejectedRequestsCount) + ', ' + \ 'RejectedRequestsCount:' + str(self.RejectedRequestsCount) + ')' __repr__ = __str__ class ServerStatusDataType(FrozenClass): ''' :ivar StartTime: :vartype StartTime: DateTime :ivar CurrentTime: :vartype CurrentTime: DateTime :ivar State: :vartype State: ServerState :ivar BuildInfo: :vartype BuildInfo: BuildInfo :ivar SecondsTillShutdown: :vartype SecondsTillShutdown: UInt32 :ivar ShutdownReason: :vartype ShutdownReason: LocalizedText ''' ua_types = [ ('StartTime', 'DateTime'), ('CurrentTime', 'DateTime'), ('State', 'ServerState'), ('BuildInfo', 'BuildInfo'), ('SecondsTillShutdown', 'UInt32'), ('ShutdownReason', 'LocalizedText'), ] def __init__(self): self.StartTime = datetime.utcnow() self.CurrentTime = datetime.utcnow() self.State = ServerState(0) self.BuildInfo = BuildInfo() self.SecondsTillShutdown = 0 self.ShutdownReason = LocalizedText() self._freeze = True def __str__(self): return 'ServerStatusDataType(' + 'StartTime:' + str(self.StartTime) + ', ' + \ 'CurrentTime:' + str(self.CurrentTime) + ', ' + \ 'State:' + str(self.State) + ', ' + \ 'BuildInfo:' + str(self.BuildInfo) + ', ' + \ 'SecondsTillShutdown:' + str(self.SecondsTillShutdown) + ', ' + \ 'ShutdownReason:' + str(self.ShutdownReason) + ')' __repr__ = __str__ class SessionDiagnosticsDataType(FrozenClass): ''' :ivar SessionId: :vartype SessionId: NodeId :ivar SessionName: :vartype SessionName: String :ivar ClientDescription: :vartype ClientDescription: ApplicationDescription :ivar ServerUri: :vartype ServerUri: String :ivar EndpointUrl: :vartype EndpointUrl: String :ivar LocaleIds: :vartype LocaleIds: String :ivar ActualSessionTimeout: :vartype ActualSessionTimeout: Double :ivar MaxResponseMessageSize: :vartype MaxResponseMessageSize: UInt32 :ivar ClientConnectionTime: :vartype ClientConnectionTime: DateTime :ivar ClientLastContactTime: :vartype ClientLastContactTime: DateTime :ivar CurrentSubscriptionsCount: :vartype CurrentSubscriptionsCount: UInt32 :ivar CurrentMonitoredItemsCount: :vartype CurrentMonitoredItemsCount: UInt32 :ivar CurrentPublishRequestsInQueue: :vartype CurrentPublishRequestsInQueue: UInt32 :ivar TotalRequestCount: :vartype TotalRequestCount: ServiceCounterDataType :ivar UnauthorizedRequestCount: :vartype UnauthorizedRequestCount: UInt32 :ivar ReadCount: :vartype ReadCount: ServiceCounterDataType :ivar HistoryReadCount: :vartype HistoryReadCount: ServiceCounterDataType :ivar WriteCount: :vartype WriteCount: ServiceCounterDataType :ivar HistoryUpdateCount: :vartype HistoryUpdateCount: ServiceCounterDataType :ivar CallCount: :vartype CallCount: ServiceCounterDataType :ivar CreateMonitoredItemsCount: :vartype CreateMonitoredItemsCount: ServiceCounterDataType :ivar ModifyMonitoredItemsCount: :vartype ModifyMonitoredItemsCount: ServiceCounterDataType :ivar SetMonitoringModeCount: :vartype SetMonitoringModeCount: ServiceCounterDataType :ivar SetTriggeringCount: :vartype SetTriggeringCount: ServiceCounterDataType :ivar DeleteMonitoredItemsCount: :vartype DeleteMonitoredItemsCount: ServiceCounterDataType :ivar CreateSubscriptionCount: :vartype CreateSubscriptionCount: ServiceCounterDataType :ivar ModifySubscriptionCount: :vartype ModifySubscriptionCount: ServiceCounterDataType :ivar SetPublishingModeCount: :vartype SetPublishingModeCount: ServiceCounterDataType :ivar PublishCount: :vartype PublishCount: ServiceCounterDataType :ivar RepublishCount: :vartype RepublishCount: ServiceCounterDataType :ivar TransferSubscriptionsCount: :vartype TransferSubscriptionsCount: ServiceCounterDataType :ivar DeleteSubscriptionsCount: :vartype DeleteSubscriptionsCount: ServiceCounterDataType :ivar AddNodesCount: :vartype AddNodesCount: ServiceCounterDataType :ivar AddReferencesCount: :vartype AddReferencesCount: ServiceCounterDataType :ivar DeleteNodesCount: :vartype DeleteNodesCount: ServiceCounterDataType :ivar DeleteReferencesCount: :vartype DeleteReferencesCount: ServiceCounterDataType :ivar BrowseCount: :vartype BrowseCount: ServiceCounterDataType :ivar BrowseNextCount: :vartype BrowseNextCount: ServiceCounterDataType :ivar TranslateBrowsePathsToNodeIdsCount: :vartype TranslateBrowsePathsToNodeIdsCount: ServiceCounterDataType :ivar QueryFirstCount: :vartype QueryFirstCount: ServiceCounterDataType :ivar QueryNextCount: :vartype QueryNextCount: ServiceCounterDataType :ivar RegisterNodesCount: :vartype RegisterNodesCount: ServiceCounterDataType :ivar UnregisterNodesCount: :vartype UnregisterNodesCount: ServiceCounterDataType ''' ua_types = [ ('SessionId', 'NodeId'), ('SessionName', 'String'), ('ClientDescription', 'ApplicationDescription'), ('ServerUri', 'String'), ('EndpointUrl', 'String'), ('LocaleIds', 'ListOfString'), ('ActualSessionTimeout', 'Double'), ('MaxResponseMessageSize', 'UInt32'), ('ClientConnectionTime', 'DateTime'), ('ClientLastContactTime', 'DateTime'), ('CurrentSubscriptionsCount', 'UInt32'), ('CurrentMonitoredItemsCount', 'UInt32'), ('CurrentPublishRequestsInQueue', 'UInt32'), ('TotalRequestCount', 'ServiceCounterDataType'), ('UnauthorizedRequestCount', 'UInt32'), ('ReadCount', 'ServiceCounterDataType'), ('HistoryReadCount', 'ServiceCounterDataType'), ('WriteCount', 'ServiceCounterDataType'), ('HistoryUpdateCount', 'ServiceCounterDataType'), ('CallCount', 'ServiceCounterDataType'), ('CreateMonitoredItemsCount', 'ServiceCounterDataType'), ('ModifyMonitoredItemsCount', 'ServiceCounterDataType'), ('SetMonitoringModeCount', 'ServiceCounterDataType'), ('SetTriggeringCount', 'ServiceCounterDataType'), ('DeleteMonitoredItemsCount', 'ServiceCounterDataType'), ('CreateSubscriptionCount', 'ServiceCounterDataType'), ('ModifySubscriptionCount', 'ServiceCounterDataType'), ('SetPublishingModeCount', 'ServiceCounterDataType'), ('PublishCount', 'ServiceCounterDataType'), ('RepublishCount', 'ServiceCounterDataType'), ('TransferSubscriptionsCount', 'ServiceCounterDataType'), ('DeleteSubscriptionsCount', 'ServiceCounterDataType'), ('AddNodesCount', 'ServiceCounterDataType'), ('AddReferencesCount', 'ServiceCounterDataType'), ('DeleteNodesCount', 'ServiceCounterDataType'), ('DeleteReferencesCount', 'ServiceCounterDataType'), ('BrowseCount', 'ServiceCounterDataType'), ('BrowseNextCount', 'ServiceCounterDataType'), ('TranslateBrowsePathsToNodeIdsCount', 'ServiceCounterDataType'), ('QueryFirstCount', 'ServiceCounterDataType'), ('QueryNextCount', 'ServiceCounterDataType'), ('RegisterNodesCount', 'ServiceCounterDataType'), ('UnregisterNodesCount', 'ServiceCounterDataType'), ] def __init__(self): self.SessionId = NodeId() self.SessionName = None self.ClientDescription = ApplicationDescription() self.ServerUri = None self.EndpointUrl = None self.LocaleIds = [] self.ActualSessionTimeout = 0 self.MaxResponseMessageSize = 0 self.ClientConnectionTime = datetime.utcnow() self.ClientLastContactTime = datetime.utcnow() self.CurrentSubscriptionsCount = 0 self.CurrentMonitoredItemsCount = 0 self.CurrentPublishRequestsInQueue = 0 self.TotalRequestCount = ServiceCounterDataType() self.UnauthorizedRequestCount = 0 self.ReadCount = ServiceCounterDataType() self.HistoryReadCount = ServiceCounterDataType() self.WriteCount = ServiceCounterDataType() self.HistoryUpdateCount = ServiceCounterDataType() self.CallCount = ServiceCounterDataType() self.CreateMonitoredItemsCount = ServiceCounterDataType() self.ModifyMonitoredItemsCount = ServiceCounterDataType() self.SetMonitoringModeCount = ServiceCounterDataType() self.SetTriggeringCount = ServiceCounterDataType() self.DeleteMonitoredItemsCount = ServiceCounterDataType() self.CreateSubscriptionCount = ServiceCounterDataType() self.ModifySubscriptionCount = ServiceCounterDataType() self.SetPublishingModeCount = ServiceCounterDataType() self.PublishCount = ServiceCounterDataType() self.RepublishCount = ServiceCounterDataType() self.TransferSubscriptionsCount = ServiceCounterDataType() self.DeleteSubscriptionsCount = ServiceCounterDataType() self.AddNodesCount = ServiceCounterDataType() self.AddReferencesCount = ServiceCounterDataType() self.DeleteNodesCount = ServiceCounterDataType() self.DeleteReferencesCount = ServiceCounterDataType() self.BrowseCount = ServiceCounterDataType() self.BrowseNextCount = ServiceCounterDataType() self.TranslateBrowsePathsToNodeIdsCount = ServiceCounterDataType() self.QueryFirstCount = ServiceCounterDataType() self.QueryNextCount = ServiceCounterDataType() self.RegisterNodesCount = ServiceCounterDataType() self.UnregisterNodesCount = ServiceCounterDataType() self._freeze = True def __str__(self): return 'SessionDiagnosticsDataType(' + 'SessionId:' + str(self.SessionId) + ', ' + \ 'SessionName:' + str(self.SessionName) + ', ' + \ 'ClientDescription:' + str(self.ClientDescription) + ', ' + \ 'ServerUri:' + str(self.ServerUri) + ', ' + \ 'EndpointUrl:' + str(self.EndpointUrl) + ', ' + \ 'LocaleIds:' + str(self.LocaleIds) + ', ' + \ 'ActualSessionTimeout:' + str(self.ActualSessionTimeout) + ', ' + \ 'MaxResponseMessageSize:' + str(self.MaxResponseMessageSize) + ', ' + \ 'ClientConnectionTime:' + str(self.ClientConnectionTime) + ', ' + \ 'ClientLastContactTime:' + str(self.ClientLastContactTime) + ', ' + \ 'CurrentSubscriptionsCount:' + str(self.CurrentSubscriptionsCount) + ', ' + \ 'CurrentMonitoredItemsCount:' + str(self.CurrentMonitoredItemsCount) + ', ' + \ 'CurrentPublishRequestsInQueue:' + str(self.CurrentPublishRequestsInQueue) + ', ' + \ 'TotalRequestCount:' + str(self.TotalRequestCount) + ', ' + \ 'UnauthorizedRequestCount:' + str(self.UnauthorizedRequestCount) + ', ' + \ 'ReadCount:' + str(self.ReadCount) + ', ' + \ 'HistoryReadCount:' + str(self.HistoryReadCount) + ', ' + \ 'WriteCount:' + str(self.WriteCount) + ', ' + \ 'HistoryUpdateCount:' + str(self.HistoryUpdateCount) + ', ' + \ 'CallCount:' + str(self.CallCount) + ', ' + \ 'CreateMonitoredItemsCount:' + str(self.CreateMonitoredItemsCount) + ', ' + \ 'ModifyMonitoredItemsCount:' + str(self.ModifyMonitoredItemsCount) + ', ' + \ 'SetMonitoringModeCount:' + str(self.SetMonitoringModeCount) + ', ' + \ 'SetTriggeringCount:' + str(self.SetTriggeringCount) + ', ' + \ 'DeleteMonitoredItemsCount:' + str(self.DeleteMonitoredItemsCount) + ', ' + \ 'CreateSubscriptionCount:' + str(self.CreateSubscriptionCount) + ', ' + \ 'ModifySubscriptionCount:' + str(self.ModifySubscriptionCount) + ', ' + \ 'SetPublishingModeCount:' + str(self.SetPublishingModeCount) + ', ' + \ 'PublishCount:' + str(self.PublishCount) + ', ' + \ 'RepublishCount:' + str(self.RepublishCount) + ', ' + \ 'TransferSubscriptionsCount:' + str(self.TransferSubscriptionsCount) + ', ' + \ 'DeleteSubscriptionsCount:' + str(self.DeleteSubscriptionsCount) + ', ' + \ 'AddNodesCount:' + str(self.AddNodesCount) + ', ' + \ 'AddReferencesCount:' + str(self.AddReferencesCount) + ', ' + \ 'DeleteNodesCount:' + str(self.DeleteNodesCount) + ', ' + \ 'DeleteReferencesCount:' + str(self.DeleteReferencesCount) + ', ' + \ 'BrowseCount:' + str(self.BrowseCount) + ', ' + \ 'BrowseNextCount:' + str(self.BrowseNextCount) + ', ' + \ 'TranslateBrowsePathsToNodeIdsCount:' + str(self.TranslateBrowsePathsToNodeIdsCount) + ', ' + \ 'QueryFirstCount:' + str(self.QueryFirstCount) + ', ' + \ 'QueryNextCount:' + str(self.QueryNextCount) + ', ' + \ 'RegisterNodesCount:' + str(self.RegisterNodesCount) + ', ' + \ 'UnregisterNodesCount:' + str(self.UnregisterNodesCount) + ')' __repr__ = __str__ class SessionSecurityDiagnosticsDataType(FrozenClass): ''' :ivar SessionId: :vartype SessionId: NodeId :ivar ClientUserIdOfSession: :vartype ClientUserIdOfSession: String :ivar ClientUserIdHistory: :vartype ClientUserIdHistory: String :ivar AuthenticationMechanism: :vartype AuthenticationMechanism: String :ivar Encoding: :vartype Encoding: String :ivar TransportProtocol: :vartype TransportProtocol: String :ivar SecurityMode: :vartype SecurityMode: MessageSecurityMode :ivar SecurityPolicyUri: :vartype SecurityPolicyUri: String :ivar ClientCertificate: :vartype ClientCertificate: ByteString ''' ua_types = [ ('SessionId', 'NodeId'), ('ClientUserIdOfSession', 'String'), ('ClientUserIdHistory', 'ListOfString'), ('AuthenticationMechanism', 'String'), ('Encoding', 'String'), ('TransportProtocol', 'String'), ('SecurityMode', 'MessageSecurityMode'), ('SecurityPolicyUri', 'String'), ('ClientCertificate', 'ByteString'), ] def __init__(self): self.SessionId = NodeId() self.ClientUserIdOfSession = None self.ClientUserIdHistory = [] self.AuthenticationMechanism = None self.Encoding = None self.TransportProtocol = None self.SecurityMode = MessageSecurityMode(0) self.SecurityPolicyUri = None self.ClientCertificate = None self._freeze = True def __str__(self): return 'SessionSecurityDiagnosticsDataType(' + 'SessionId:' + str(self.SessionId) + ', ' + \ 'ClientUserIdOfSession:' + str(self.ClientUserIdOfSession) + ', ' + \ 'ClientUserIdHistory:' + str(self.ClientUserIdHistory) + ', ' + \ 'AuthenticationMechanism:' + str(self.AuthenticationMechanism) + ', ' + \ 'Encoding:' + str(self.Encoding) + ', ' + \ 'TransportProtocol:' + str(self.TransportProtocol) + ', ' + \ 'SecurityMode:' + str(self.SecurityMode) + ', ' + \ 'SecurityPolicyUri:' + str(self.SecurityPolicyUri) + ', ' + \ 'ClientCertificate:' + str(self.ClientCertificate) + ')' __repr__ = __str__ class ServiceCounterDataType(FrozenClass): ''' :ivar TotalCount: :vartype TotalCount: UInt32 :ivar ErrorCount: :vartype ErrorCount: UInt32 ''' ua_types = [ ('TotalCount', 'UInt32'), ('ErrorCount', 'UInt32'), ] def __init__(self): self.TotalCount = 0 self.ErrorCount = 0 self._freeze = True def __str__(self): return 'ServiceCounterDataType(' + 'TotalCount:' + str(self.TotalCount) + ', ' + \ 'ErrorCount:' + str(self.ErrorCount) + ')' __repr__ = __str__ class StatusResult(FrozenClass): ''' :ivar StatusCode: :vartype StatusCode: StatusCode :ivar DiagnosticInfo: :vartype DiagnosticInfo: DiagnosticInfo ''' ua_types = [ ('StatusCode', 'StatusCode'), ('DiagnosticInfo', 'DiagnosticInfo'), ] def __init__(self): self.StatusCode = StatusCode() self.DiagnosticInfo = DiagnosticInfo() self._freeze = True def __str__(self): return 'StatusResult(' + 'StatusCode:' + str(self.StatusCode) + ', ' + \ 'DiagnosticInfo:' + str(self.DiagnosticInfo) + ')' __repr__ = __str__ class SubscriptionDiagnosticsDataType(FrozenClass): ''' :ivar SessionId: :vartype SessionId: NodeId :ivar SubscriptionId: :vartype SubscriptionId: UInt32 :ivar Priority: :vartype Priority: Byte :ivar PublishingInterval: :vartype PublishingInterval: Double :ivar MaxKeepAliveCount: :vartype MaxKeepAliveCount: UInt32 :ivar MaxLifetimeCount: :vartype MaxLifetimeCount: UInt32 :ivar MaxNotificationsPerPublish: :vartype MaxNotificationsPerPublish: UInt32 :ivar PublishingEnabled: :vartype PublishingEnabled: Boolean :ivar ModifyCount: :vartype ModifyCount: UInt32 :ivar EnableCount: :vartype EnableCount: UInt32 :ivar DisableCount: :vartype DisableCount: UInt32 :ivar RepublishRequestCount: :vartype RepublishRequestCount: UInt32 :ivar RepublishMessageRequestCount: :vartype RepublishMessageRequestCount: UInt32 :ivar RepublishMessageCount: :vartype RepublishMessageCount: UInt32 :ivar TransferRequestCount: :vartype TransferRequestCount: UInt32 :ivar TransferredToAltClientCount: :vartype TransferredToAltClientCount: UInt32 :ivar TransferredToSameClientCount: :vartype TransferredToSameClientCount: UInt32 :ivar PublishRequestCount: :vartype PublishRequestCount: UInt32 :ivar DataChangeNotificationsCount: :vartype DataChangeNotificationsCount: UInt32 :ivar EventNotificationsCount: :vartype EventNotificationsCount: UInt32 :ivar NotificationsCount: :vartype NotificationsCount: UInt32 :ivar LatePublishRequestCount: :vartype LatePublishRequestCount: UInt32 :ivar CurrentKeepAliveCount: :vartype CurrentKeepAliveCount: UInt32 :ivar CurrentLifetimeCount: :vartype CurrentLifetimeCount: UInt32 :ivar UnacknowledgedMessageCount: :vartype UnacknowledgedMessageCount: UInt32 :ivar DiscardedMessageCount: :vartype DiscardedMessageCount: UInt32 :ivar MonitoredItemCount: :vartype MonitoredItemCount: UInt32 :ivar DisabledMonitoredItemCount: :vartype DisabledMonitoredItemCount: UInt32 :ivar MonitoringQueueOverflowCount: :vartype MonitoringQueueOverflowCount: UInt32 :ivar NextSequenceNumber: :vartype NextSequenceNumber: UInt32 :ivar EventQueueOverFlowCount: :vartype EventQueueOverFlowCount: UInt32 ''' ua_types = [ ('SessionId', 'NodeId'), ('SubscriptionId', 'UInt32'), ('Priority', 'Byte'), ('PublishingInterval', 'Double'), ('MaxKeepAliveCount', 'UInt32'), ('MaxLifetimeCount', 'UInt32'), ('MaxNotificationsPerPublish', 'UInt32'), ('PublishingEnabled', 'Boolean'), ('ModifyCount', 'UInt32'), ('EnableCount', 'UInt32'), ('DisableCount', 'UInt32'), ('RepublishRequestCount', 'UInt32'), ('RepublishMessageRequestCount', 'UInt32'), ('RepublishMessageCount', 'UInt32'), ('TransferRequestCount', 'UInt32'), ('TransferredToAltClientCount', 'UInt32'), ('TransferredToSameClientCount', 'UInt32'), ('PublishRequestCount', 'UInt32'), ('DataChangeNotificationsCount', 'UInt32'), ('EventNotificationsCount', 'UInt32'), ('NotificationsCount', 'UInt32'), ('LatePublishRequestCount', 'UInt32'), ('CurrentKeepAliveCount', 'UInt32'), ('CurrentLifetimeCount', 'UInt32'), ('UnacknowledgedMessageCount', 'UInt32'), ('DiscardedMessageCount', 'UInt32'), ('MonitoredItemCount', 'UInt32'), ('DisabledMonitoredItemCount', 'UInt32'), ('MonitoringQueueOverflowCount', 'UInt32'), ('NextSequenceNumber', 'UInt32'), ('EventQueueOverFlowCount', 'UInt32'), ] def __init__(self): self.SessionId = NodeId() self.SubscriptionId = 0 self.Priority = 0 self.PublishingInterval = 0 self.MaxKeepAliveCount = 0 self.MaxLifetimeCount = 0 self.MaxNotificationsPerPublish = 0 self.PublishingEnabled = True self.ModifyCount = 0 self.EnableCount = 0 self.DisableCount = 0 self.RepublishRequestCount = 0 self.RepublishMessageRequestCount = 0 self.RepublishMessageCount = 0 self.TransferRequestCount = 0 self.TransferredToAltClientCount = 0 self.TransferredToSameClientCount = 0 self.PublishRequestCount = 0 self.DataChangeNotificationsCount = 0 self.EventNotificationsCount = 0 self.NotificationsCount = 0 self.LatePublishRequestCount = 0 self.CurrentKeepAliveCount = 0 self.CurrentLifetimeCount = 0 self.UnacknowledgedMessageCount = 0 self.DiscardedMessageCount = 0 self.MonitoredItemCount = 0 self.DisabledMonitoredItemCount = 0 self.MonitoringQueueOverflowCount = 0 self.NextSequenceNumber = 0 self.EventQueueOverFlowCount = 0 self._freeze = True def __str__(self): return 'SubscriptionDiagnosticsDataType(' + 'SessionId:' + str(self.SessionId) + ', ' + \ 'SubscriptionId:' + str(self.SubscriptionId) + ', ' + \ 'Priority:' + str(self.Priority) + ', ' + \ 'PublishingInterval:' + str(self.PublishingInterval) + ', ' + \ 'MaxKeepAliveCount:' + str(self.MaxKeepAliveCount) + ', ' + \ 'MaxLifetimeCount:' + str(self.MaxLifetimeCount) + ', ' + \ 'MaxNotificationsPerPublish:' + str(self.MaxNotificationsPerPublish) + ', ' + \ 'PublishingEnabled:' + str(self.PublishingEnabled) + ', ' + \ 'ModifyCount:' + str(self.ModifyCount) + ', ' + \ 'EnableCount:' + str(self.EnableCount) + ', ' + \ 'DisableCount:' + str(self.DisableCount) + ', ' + \ 'RepublishRequestCount:' + str(self.RepublishRequestCount) + ', ' + \ 'RepublishMessageRequestCount:' + str(self.RepublishMessageRequestCount) + ', ' + \ 'RepublishMessageCount:' + str(self.RepublishMessageCount) + ', ' + \ 'TransferRequestCount:' + str(self.TransferRequestCount) + ', ' + \ 'TransferredToAltClientCount:' + str(self.TransferredToAltClientCount) + ', ' + \ 'TransferredToSameClientCount:' + str(self.TransferredToSameClientCount) + ', ' + \ 'PublishRequestCount:' + str(self.PublishRequestCount) + ', ' + \ 'DataChangeNotificationsCount:' + str(self.DataChangeNotificationsCount) + ', ' + \ 'EventNotificationsCount:' + str(self.EventNotificationsCount) + ', ' + \ 'NotificationsCount:' + str(self.NotificationsCount) + ', ' + \ 'LatePublishRequestCount:' + str(self.LatePublishRequestCount) + ', ' + \ 'CurrentKeepAliveCount:' + str(self.CurrentKeepAliveCount) + ', ' + \ 'CurrentLifetimeCount:' + str(self.CurrentLifetimeCount) + ', ' + \ 'UnacknowledgedMessageCount:' + str(self.UnacknowledgedMessageCount) + ', ' + \ 'DiscardedMessageCount:' + str(self.DiscardedMessageCount) + ', ' + \ 'MonitoredItemCount:' + str(self.MonitoredItemCount) + ', ' + \ 'DisabledMonitoredItemCount:' + str(self.DisabledMonitoredItemCount) + ', ' + \ 'MonitoringQueueOverflowCount:' + str(self.MonitoringQueueOverflowCount) + ', ' + \ 'NextSequenceNumber:' + str(self.NextSequenceNumber) + ', ' + \ 'EventQueueOverFlowCount:' + str(self.EventQueueOverFlowCount) + ')' __repr__ = __str__ class ModelChangeStructureDataType(FrozenClass): ''' :ivar Affected: :vartype Affected: NodeId :ivar AffectedType: :vartype AffectedType: NodeId :ivar Verb: :vartype Verb: Byte ''' ua_types = [ ('Affected', 'NodeId'), ('AffectedType', 'NodeId'), ('Verb', 'Byte'), ] def __init__(self): self.Affected = NodeId() self.AffectedType = NodeId() self.Verb = 0 self._freeze = True def __str__(self): return 'ModelChangeStructureDataType(' + 'Affected:' + str(self.Affected) + ', ' + \ 'AffectedType:' + str(self.AffectedType) + ', ' + \ 'Verb:' + str(self.Verb) + ')' __repr__ = __str__ class SemanticChangeStructureDataType(FrozenClass): ''' :ivar Affected: :vartype Affected: NodeId :ivar AffectedType: :vartype AffectedType: NodeId ''' ua_types = [ ('Affected', 'NodeId'), ('AffectedType', 'NodeId'), ] def __init__(self): self.Affected = NodeId() self.AffectedType = NodeId() self._freeze = True def __str__(self): return 'SemanticChangeStructureDataType(' + 'Affected:' + str(self.Affected) + ', ' + \ 'AffectedType:' + str(self.AffectedType) + ')' __repr__ = __str__ class Range(FrozenClass): ''' :ivar Low: :vartype Low: Double :ivar High: :vartype High: Double ''' ua_types = [ ('Low', 'Double'), ('High', 'Double'), ] def __init__(self): self.Low = 0 self.High = 0 self._freeze = True def __str__(self): return 'Range(' + 'Low:' + str(self.Low) + ', ' + \ 'High:' + str(self.High) + ')' __repr__ = __str__ class EUInformation(FrozenClass): ''' :ivar NamespaceUri: :vartype NamespaceUri: String :ivar UnitId: :vartype UnitId: Int32 :ivar DisplayName: :vartype DisplayName: LocalizedText :ivar Description: :vartype Description: LocalizedText ''' ua_types = [ ('NamespaceUri', 'String'), ('UnitId', 'Int32'), ('DisplayName', 'LocalizedText'), ('Description', 'LocalizedText'), ] def __init__(self): self.NamespaceUri = None self.UnitId = 0 self.DisplayName = LocalizedText() self.Description = LocalizedText() self._freeze = True def __str__(self): return 'EUInformation(' + 'NamespaceUri:' + str(self.NamespaceUri) + ', ' + \ 'UnitId:' + str(self.UnitId) + ', ' + \ 'DisplayName:' + str(self.DisplayName) + ', ' + \ 'Description:' + str(self.Description) + ')' __repr__ = __str__ class ComplexNumberType(FrozenClass): ''' :ivar Real: :vartype Real: Float :ivar Imaginary: :vartype Imaginary: Float ''' ua_types = [ ('Real', 'Float'), ('Imaginary', 'Float'), ] def __init__(self): self.Real = 0 self.Imaginary = 0 self._freeze = True def __str__(self): return 'ComplexNumberType(' + 'Real:' + str(self.Real) + ', ' + \ 'Imaginary:' + str(self.Imaginary) + ')' __repr__ = __str__ class DoubleComplexNumberType(FrozenClass): ''' :ivar Real: :vartype Real: Double :ivar Imaginary: :vartype Imaginary: Double ''' ua_types = [ ('Real', 'Double'), ('Imaginary', 'Double'), ] def __init__(self): self.Real = 0 self.Imaginary = 0 self._freeze = True def __str__(self): return 'DoubleComplexNumberType(' + 'Real:' + str(self.Real) + ', ' + \ 'Imaginary:' + str(self.Imaginary) + ')' __repr__ = __str__ class AxisInformation(FrozenClass): ''' :ivar EngineeringUnits: :vartype EngineeringUnits: EUInformation :ivar EURange: :vartype EURange: Range :ivar Title: :vartype Title: LocalizedText :ivar AxisScaleType: :vartype AxisScaleType: AxisScaleEnumeration :ivar AxisSteps: :vartype AxisSteps: Double ''' ua_types = [ ('EngineeringUnits', 'EUInformation'), ('EURange', 'Range'), ('Title', 'LocalizedText'), ('AxisScaleType', 'AxisScaleEnumeration'), ('AxisSteps', 'ListOfDouble'), ] def __init__(self): self.EngineeringUnits = EUInformation() self.EURange = Range() self.Title = LocalizedText() self.AxisScaleType = AxisScaleEnumeration(0) self.AxisSteps = [] self._freeze = True def __str__(self): return 'AxisInformation(' + 'EngineeringUnits:' + str(self.EngineeringUnits) + ', ' + \ 'EURange:' + str(self.EURange) + ', ' + \ 'Title:' + str(self.Title) + ', ' + \ 'AxisScaleType:' + str(self.AxisScaleType) + ', ' + \ 'AxisSteps:' + str(self.AxisSteps) + ')' __repr__ = __str__ class XVType(FrozenClass): ''' :ivar X: :vartype X: Double :ivar Value: :vartype Value: Float ''' ua_types = [ ('X', 'Double'), ('Value', 'Float'), ] def __init__(self): self.X = 0 self.Value = 0 self._freeze = True def __str__(self): return 'XVType(' + 'X:' + str(self.X) + ', ' + \ 'Value:' + str(self.Value) + ')' __repr__ = __str__ class ProgramDiagnosticDataType(FrozenClass): ''' :ivar CreateSessionId: :vartype CreateSessionId: NodeId :ivar CreateClientName: :vartype CreateClientName: String :ivar InvocationCreationTime: :vartype InvocationCreationTime: DateTime :ivar LastTransitionTime: :vartype LastTransitionTime: DateTime :ivar LastMethodCall: :vartype LastMethodCall: String :ivar LastMethodSessionId: :vartype LastMethodSessionId: NodeId :ivar LastMethodInputArguments: :vartype LastMethodInputArguments: Argument :ivar LastMethodOutputArguments: :vartype LastMethodOutputArguments: Argument :ivar LastMethodCallTime: :vartype LastMethodCallTime: DateTime :ivar LastMethodReturnStatus: :vartype LastMethodReturnStatus: StatusResult ''' ua_types = [ ('CreateSessionId', 'NodeId'), ('CreateClientName', 'String'), ('InvocationCreationTime', 'DateTime'), ('LastTransitionTime', 'DateTime'), ('LastMethodCall', 'String'), ('LastMethodSessionId', 'NodeId'), ('LastMethodInputArguments', 'ListOfArgument'), ('LastMethodOutputArguments', 'ListOfArgument'), ('LastMethodCallTime', 'DateTime'), ('LastMethodReturnStatus', 'StatusResult'), ] def __init__(self): self.CreateSessionId = NodeId() self.CreateClientName = None self.InvocationCreationTime = datetime.utcnow() self.LastTransitionTime = datetime.utcnow() self.LastMethodCall = None self.LastMethodSessionId = NodeId() self.LastMethodInputArguments = [] self.LastMethodOutputArguments = [] self.LastMethodCallTime = datetime.utcnow() self.LastMethodReturnStatus = StatusResult() self._freeze = True def __str__(self): return 'ProgramDiagnosticDataType(' + 'CreateSessionId:' + str(self.CreateSessionId) + ', ' + \ 'CreateClientName:' + str(self.CreateClientName) + ', ' + \ 'InvocationCreationTime:' + str(self.InvocationCreationTime) + ', ' + \ 'LastTransitionTime:' + str(self.LastTransitionTime) + ', ' + \ 'LastMethodCall:' + str(self.LastMethodCall) + ', ' + \ 'LastMethodSessionId:' + str(self.LastMethodSessionId) + ', ' + \ 'LastMethodInputArguments:' + str(self.LastMethodInputArguments) + ', ' + \ 'LastMethodOutputArguments:' + str(self.LastMethodOutputArguments) + ', ' + \ 'LastMethodCallTime:' + str(self.LastMethodCallTime) + ', ' + \ 'LastMethodReturnStatus:' + str(self.LastMethodReturnStatus) + ')' __repr__ = __str__ class ProgramDiagnostic2DataType(FrozenClass): ''' :ivar CreateSessionId: :vartype CreateSessionId: NodeId :ivar CreateClientName: :vartype CreateClientName: String :ivar InvocationCreationTime: :vartype InvocationCreationTime: DateTime :ivar LastTransitionTime: :vartype LastTransitionTime: DateTime :ivar LastMethodCall: :vartype LastMethodCall: String :ivar LastMethodSessionId: :vartype LastMethodSessionId: NodeId :ivar LastMethodInputArguments: :vartype LastMethodInputArguments: Argument :ivar LastMethodOutputArguments: :vartype LastMethodOutputArguments: Argument :ivar LastMethodInputValues: :vartype LastMethodInputValues: Variant :ivar LastMethodOutputValues: :vartype LastMethodOutputValues: Variant :ivar LastMethodCallTime: :vartype LastMethodCallTime: DateTime :ivar LastMethodReturnStatus: :vartype LastMethodReturnStatus: StatusResult ''' ua_types = [ ('CreateSessionId', 'NodeId'), ('CreateClientName', 'String'), ('InvocationCreationTime', 'DateTime'), ('LastTransitionTime', 'DateTime'), ('LastMethodCall', 'String'), ('LastMethodSessionId', 'NodeId'), ('LastMethodInputArguments', 'ListOfArgument'), ('LastMethodOutputArguments', 'ListOfArgument'), ('LastMethodInputValues', 'ListOfVariant'), ('LastMethodOutputValues', 'ListOfVariant'), ('LastMethodCallTime', 'DateTime'), ('LastMethodReturnStatus', 'StatusResult'), ] def __init__(self): self.CreateSessionId = NodeId() self.CreateClientName = None self.InvocationCreationTime = datetime.utcnow() self.LastTransitionTime = datetime.utcnow() self.LastMethodCall = None self.LastMethodSessionId = NodeId() self.LastMethodInputArguments = [] self.LastMethodOutputArguments = [] self.LastMethodInputValues = [] self.LastMethodOutputValues = [] self.LastMethodCallTime = datetime.utcnow() self.LastMethodReturnStatus = StatusResult() self._freeze = True def __str__(self): return 'ProgramDiagnostic2DataType(' + 'CreateSessionId:' + str(self.CreateSessionId) + ', ' + \ 'CreateClientName:' + str(self.CreateClientName) + ', ' + \ 'InvocationCreationTime:' + str(self.InvocationCreationTime) + ', ' + \ 'LastTransitionTime:' + str(self.LastTransitionTime) + ', ' + \ 'LastMethodCall:' + str(self.LastMethodCall) + ', ' + \ 'LastMethodSessionId:' + str(self.LastMethodSessionId) + ', ' + \ 'LastMethodInputArguments:' + str(self.LastMethodInputArguments) + ', ' + \ 'LastMethodOutputArguments:' + str(self.LastMethodOutputArguments) + ', ' + \ 'LastMethodInputValues:' + str(self.LastMethodInputValues) + ', ' + \ 'LastMethodOutputValues:' + str(self.LastMethodOutputValues) + ', ' + \ 'LastMethodCallTime:' + str(self.LastMethodCallTime) + ', ' + \ 'LastMethodReturnStatus:' + str(self.LastMethodReturnStatus) + ')' __repr__ = __str__ class Annotation(FrozenClass): ''' :ivar Message: :vartype Message: String :ivar UserName: :vartype UserName: String :ivar AnnotationTime: :vartype AnnotationTime: DateTime ''' ua_types = [ ('Message', 'String'), ('UserName', 'String'), ('AnnotationTime', 'DateTime'), ] def __init__(self): self.Message = None self.UserName = None self.AnnotationTime = datetime.utcnow() self._freeze = True def __str__(self): return 'Annotation(' + 'Message:' + str(self.Message) + ', ' + \ 'UserName:' + str(self.UserName) + ', ' + \ 'AnnotationTime:' + str(self.AnnotationTime) + ')' __repr__ = __str__ nid = FourByteNodeId(ObjectIds.KeyValuePair_Encoding_DefaultBinary) extension_object_classes[nid] = KeyValuePair extension_object_ids['KeyValuePair'] = nid nid = FourByteNodeId(ObjectIds.EndpointType_Encoding_DefaultBinary) extension_object_classes[nid] = EndpointType extension_object_ids['EndpointType'] = nid nid = FourByteNodeId(ObjectIds.IdentityMappingRuleType_Encoding_DefaultBinary) extension_object_classes[nid] = IdentityMappingRuleType extension_object_ids['IdentityMappingRuleType'] = nid nid = FourByteNodeId(ObjectIds.TrustListDataType_Encoding_DefaultBinary) extension_object_classes[nid] = TrustListDataType extension_object_ids['TrustListDataType'] = nid nid = FourByteNodeId(ObjectIds.DecimalDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DecimalDataType extension_object_ids['DecimalDataType'] = nid nid = FourByteNodeId(ObjectIds.DataTypeSchemaHeader_Encoding_DefaultBinary) extension_object_classes[nid] = DataTypeSchemaHeader extension_object_ids['DataTypeSchemaHeader'] = nid nid = FourByteNodeId(ObjectIds.DataTypeDescription_Encoding_DefaultBinary) extension_object_classes[nid] = DataTypeDescription extension_object_ids['DataTypeDescription'] = nid nid = FourByteNodeId(ObjectIds.StructureDescription_Encoding_DefaultBinary) extension_object_classes[nid] = StructureDescription extension_object_ids['StructureDescription'] = nid nid = FourByteNodeId(ObjectIds.EnumDescription_Encoding_DefaultBinary) extension_object_classes[nid] = EnumDescription extension_object_ids['EnumDescription'] = nid nid = FourByteNodeId(ObjectIds.SimpleTypeDescription_Encoding_DefaultBinary) extension_object_classes[nid] = SimpleTypeDescription extension_object_ids['SimpleTypeDescription'] = nid nid = FourByteNodeId(ObjectIds.UABinaryFileDataType_Encoding_DefaultBinary) extension_object_classes[nid] = UABinaryFileDataType extension_object_ids['UABinaryFileDataType'] = nid nid = FourByteNodeId(ObjectIds.DataSetMetaDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DataSetMetaDataType extension_object_ids['DataSetMetaDataType'] = nid nid = FourByteNodeId(ObjectIds.FieldMetaData_Encoding_DefaultBinary) extension_object_classes[nid] = FieldMetaData extension_object_ids['FieldMetaData'] = nid nid = FourByteNodeId(ObjectIds.ConfigurationVersionDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ConfigurationVersionDataType extension_object_ids['ConfigurationVersionDataType'] = nid nid = FourByteNodeId(ObjectIds.PublishedDataSetDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PublishedDataSetDataType extension_object_ids['PublishedDataSetDataType'] = nid nid = FourByteNodeId(ObjectIds.PublishedDataSetSourceDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PublishedDataSetSourceDataType extension_object_ids['PublishedDataSetSourceDataType'] = nid nid = FourByteNodeId(ObjectIds.PublishedVariableDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PublishedVariableDataType extension_object_ids['PublishedVariableDataType'] = nid nid = FourByteNodeId(ObjectIds.PublishedDataItemsDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PublishedDataItemsDataType extension_object_ids['PublishedDataItemsDataType'] = nid nid = FourByteNodeId(ObjectIds.PublishedEventsDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PublishedEventsDataType extension_object_ids['PublishedEventsDataType'] = nid nid = FourByteNodeId(ObjectIds.DataSetWriterDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DataSetWriterDataType extension_object_ids['DataSetWriterDataType'] = nid nid = FourByteNodeId(ObjectIds.DataSetWriterTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DataSetWriterTransportDataType extension_object_ids['DataSetWriterTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.DataSetWriterMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DataSetWriterMessageDataType extension_object_ids['DataSetWriterMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.PubSubGroupDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PubSubGroupDataType extension_object_ids['PubSubGroupDataType'] = nid nid = FourByteNodeId(ObjectIds.WriterGroupDataType_Encoding_DefaultBinary) extension_object_classes[nid] = WriterGroupDataType extension_object_ids['WriterGroupDataType'] = nid nid = FourByteNodeId(ObjectIds.WriterGroupTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = WriterGroupTransportDataType extension_object_ids['WriterGroupTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.WriterGroupMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = WriterGroupMessageDataType extension_object_ids['WriterGroupMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.PubSubConnectionDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PubSubConnectionDataType extension_object_ids['PubSubConnectionDataType'] = nid nid = FourByteNodeId(ObjectIds.ConnectionTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ConnectionTransportDataType extension_object_ids['ConnectionTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.NetworkAddressDataType_Encoding_DefaultBinary) extension_object_classes[nid] = NetworkAddressDataType extension_object_ids['NetworkAddressDataType'] = nid nid = FourByteNodeId(ObjectIds.NetworkAddressUrlDataType_Encoding_DefaultBinary) extension_object_classes[nid] = NetworkAddressUrlDataType extension_object_ids['NetworkAddressUrlDataType'] = nid nid = FourByteNodeId(ObjectIds.ReaderGroupDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ReaderGroupDataType extension_object_ids['ReaderGroupDataType'] = nid nid = FourByteNodeId(ObjectIds.ReaderGroupTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ReaderGroupTransportDataType extension_object_ids['ReaderGroupTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.ReaderGroupMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ReaderGroupMessageDataType extension_object_ids['ReaderGroupMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.DataSetReaderDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DataSetReaderDataType extension_object_ids['DataSetReaderDataType'] = nid nid = FourByteNodeId(ObjectIds.DataSetReaderTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DataSetReaderTransportDataType extension_object_ids['DataSetReaderTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.DataSetReaderMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DataSetReaderMessageDataType extension_object_ids['DataSetReaderMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.SubscribedDataSetDataType_Encoding_DefaultBinary) extension_object_classes[nid] = SubscribedDataSetDataType extension_object_ids['SubscribedDataSetDataType'] = nid nid = FourByteNodeId(ObjectIds.TargetVariablesDataType_Encoding_DefaultBinary) extension_object_classes[nid] = TargetVariablesDataType extension_object_ids['TargetVariablesDataType'] = nid nid = FourByteNodeId(ObjectIds.FieldTargetDataType_Encoding_DefaultBinary) extension_object_classes[nid] = FieldTargetDataType extension_object_ids['FieldTargetDataType'] = nid nid = FourByteNodeId(ObjectIds.SubscribedDataSetMirrorDataType_Encoding_DefaultBinary) extension_object_classes[nid] = SubscribedDataSetMirrorDataType extension_object_ids['SubscribedDataSetMirrorDataType'] = nid nid = FourByteNodeId(ObjectIds.PubSubConfigurationDataType_Encoding_DefaultBinary) extension_object_classes[nid] = PubSubConfigurationDataType extension_object_ids['PubSubConfigurationDataType'] = nid nid = FourByteNodeId(ObjectIds.UadpWriterGroupMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = UadpWriterGroupMessageDataType extension_object_ids['UadpWriterGroupMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.UadpDataSetWriterMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = UadpDataSetWriterMessageDataType extension_object_ids['UadpDataSetWriterMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.UadpDataSetReaderMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = UadpDataSetReaderMessageDataType extension_object_ids['UadpDataSetReaderMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.JsonWriterGroupMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = JsonWriterGroupMessageDataType extension_object_ids['JsonWriterGroupMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.JsonDataSetWriterMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = JsonDataSetWriterMessageDataType extension_object_ids['JsonDataSetWriterMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.JsonDataSetReaderMessageDataType_Encoding_DefaultBinary) extension_object_classes[nid] = JsonDataSetReaderMessageDataType extension_object_ids['JsonDataSetReaderMessageDataType'] = nid nid = FourByteNodeId(ObjectIds.DatagramConnectionTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DatagramConnectionTransportDataType extension_object_ids['DatagramConnectionTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.DatagramWriterGroupTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = DatagramWriterGroupTransportDataType extension_object_ids['DatagramWriterGroupTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.BrokerConnectionTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = BrokerConnectionTransportDataType extension_object_ids['BrokerConnectionTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.BrokerWriterGroupTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = BrokerWriterGroupTransportDataType extension_object_ids['BrokerWriterGroupTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.BrokerDataSetWriterTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = BrokerDataSetWriterTransportDataType extension_object_ids['BrokerDataSetWriterTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.BrokerDataSetReaderTransportDataType_Encoding_DefaultBinary) extension_object_classes[nid] = BrokerDataSetReaderTransportDataType extension_object_ids['BrokerDataSetReaderTransportDataType'] = nid nid = FourByteNodeId(ObjectIds.RolePermissionType_Encoding_DefaultBinary) extension_object_classes[nid] = RolePermissionType extension_object_ids['RolePermissionType'] = nid nid = FourByteNodeId(ObjectIds.StructureField_Encoding_DefaultBinary) extension_object_classes[nid] = StructureField extension_object_ids['StructureField'] = nid nid = FourByteNodeId(ObjectIds.Argument_Encoding_DefaultBinary) extension_object_classes[nid] = Argument extension_object_ids['Argument'] = nid nid = FourByteNodeId(ObjectIds.EnumValueType_Encoding_DefaultBinary) extension_object_classes[nid] = EnumValueType extension_object_ids['EnumValueType'] = nid nid = FourByteNodeId(ObjectIds.EnumField_Encoding_DefaultBinary) extension_object_classes[nid] = EnumField extension_object_ids['EnumField'] = nid nid = FourByteNodeId(ObjectIds.OptionSet_Encoding_DefaultBinary) extension_object_classes[nid] = OptionSet extension_object_ids['OptionSet'] = nid nid = FourByteNodeId(ObjectIds.Union_Encoding_DefaultBinary) extension_object_classes[nid] = Union extension_object_ids['Union'] = nid nid = FourByteNodeId(ObjectIds.TimeZoneDataType_Encoding_DefaultBinary) extension_object_classes[nid] = TimeZoneDataType extension_object_ids['TimeZoneDataType'] = nid nid = FourByteNodeId(ObjectIds.ApplicationDescription_Encoding_DefaultBinary) extension_object_classes[nid] = ApplicationDescription extension_object_ids['ApplicationDescription'] = nid nid = FourByteNodeId(ObjectIds.RequestHeader_Encoding_DefaultBinary) extension_object_classes[nid] = RequestHeader extension_object_ids['RequestHeader'] = nid nid = FourByteNodeId(ObjectIds.ResponseHeader_Encoding_DefaultBinary) extension_object_classes[nid] = ResponseHeader extension_object_ids['ResponseHeader'] = nid nid = FourByteNodeId(ObjectIds.ServiceFault_Encoding_DefaultBinary) extension_object_classes[nid] = ServiceFault extension_object_ids['ServiceFault'] = nid nid = FourByteNodeId(ObjectIds.SessionlessInvokeRequestType_Encoding_DefaultBinary) extension_object_classes[nid] = SessionlessInvokeRequestType extension_object_ids['SessionlessInvokeRequestType'] = nid nid = FourByteNodeId(ObjectIds.SessionlessInvokeResponseType_Encoding_DefaultBinary) extension_object_classes[nid] = SessionlessInvokeResponseType extension_object_ids['SessionlessInvokeResponseType'] = nid nid = FourByteNodeId(ObjectIds.FindServersRequest_Encoding_DefaultBinary) extension_object_classes[nid] = FindServersRequest extension_object_ids['FindServersRequest'] = nid nid = FourByteNodeId(ObjectIds.FindServersResponse_Encoding_DefaultBinary) extension_object_classes[nid] = FindServersResponse extension_object_ids['FindServersResponse'] = nid nid = FourByteNodeId(ObjectIds.ServerOnNetwork_Encoding_DefaultBinary) extension_object_classes[nid] = ServerOnNetwork extension_object_ids['ServerOnNetwork'] = nid nid = FourByteNodeId(ObjectIds.FindServersOnNetworkRequest_Encoding_DefaultBinary) extension_object_classes[nid] = FindServersOnNetworkRequest extension_object_ids['FindServersOnNetworkRequest'] = nid nid = FourByteNodeId(ObjectIds.FindServersOnNetworkResponse_Encoding_DefaultBinary) extension_object_classes[nid] = FindServersOnNetworkResponse extension_object_ids['FindServersOnNetworkResponse'] = nid nid = FourByteNodeId(ObjectIds.UserTokenPolicy_Encoding_DefaultBinary) extension_object_classes[nid] = UserTokenPolicy extension_object_ids['UserTokenPolicy'] = nid nid = FourByteNodeId(ObjectIds.EndpointDescription_Encoding_DefaultBinary) extension_object_classes[nid] = EndpointDescription extension_object_ids['EndpointDescription'] = nid nid = FourByteNodeId(ObjectIds.GetEndpointsRequest_Encoding_DefaultBinary) extension_object_classes[nid] = GetEndpointsRequest extension_object_ids['GetEndpointsRequest'] = nid nid = FourByteNodeId(ObjectIds.GetEndpointsResponse_Encoding_DefaultBinary) extension_object_classes[nid] = GetEndpointsResponse extension_object_ids['GetEndpointsResponse'] = nid nid = FourByteNodeId(ObjectIds.RegisteredServer_Encoding_DefaultBinary) extension_object_classes[nid] = RegisteredServer extension_object_ids['RegisteredServer'] = nid nid = FourByteNodeId(ObjectIds.RegisterServerRequest_Encoding_DefaultBinary) extension_object_classes[nid] = RegisterServerRequest extension_object_ids['RegisterServerRequest'] = nid nid = FourByteNodeId(ObjectIds.RegisterServerResponse_Encoding_DefaultBinary) extension_object_classes[nid] = RegisterServerResponse extension_object_ids['RegisterServerResponse'] = nid nid = FourByteNodeId(ObjectIds.DiscoveryConfiguration_Encoding_DefaultBinary) extension_object_classes[nid] = DiscoveryConfiguration extension_object_ids['DiscoveryConfiguration'] = nid nid = FourByteNodeId(ObjectIds.MdnsDiscoveryConfiguration_Encoding_DefaultBinary) extension_object_classes[nid] = MdnsDiscoveryConfiguration extension_object_ids['MdnsDiscoveryConfiguration'] = nid nid = FourByteNodeId(ObjectIds.RegisterServer2Request_Encoding_DefaultBinary) extension_object_classes[nid] = RegisterServer2Request extension_object_ids['RegisterServer2Request'] = nid nid = FourByteNodeId(ObjectIds.RegisterServer2Response_Encoding_DefaultBinary) extension_object_classes[nid] = RegisterServer2Response extension_object_ids['RegisterServer2Response'] = nid nid = FourByteNodeId(ObjectIds.ChannelSecurityToken_Encoding_DefaultBinary) extension_object_classes[nid] = ChannelSecurityToken extension_object_ids['ChannelSecurityToken'] = nid nid = FourByteNodeId(ObjectIds.OpenSecureChannelRequest_Encoding_DefaultBinary) extension_object_classes[nid] = OpenSecureChannelRequest extension_object_ids['OpenSecureChannelRequest'] = nid nid = FourByteNodeId(ObjectIds.OpenSecureChannelResponse_Encoding_DefaultBinary) extension_object_classes[nid] = OpenSecureChannelResponse extension_object_ids['OpenSecureChannelResponse'] = nid nid = FourByteNodeId(ObjectIds.CloseSecureChannelRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CloseSecureChannelRequest extension_object_ids['CloseSecureChannelRequest'] = nid nid = FourByteNodeId(ObjectIds.CloseSecureChannelResponse_Encoding_DefaultBinary) extension_object_classes[nid] = CloseSecureChannelResponse extension_object_ids['CloseSecureChannelResponse'] = nid nid = FourByteNodeId(ObjectIds.SignedSoftwareCertificate_Encoding_DefaultBinary) extension_object_classes[nid] = SignedSoftwareCertificate extension_object_ids['SignedSoftwareCertificate'] = nid nid = FourByteNodeId(ObjectIds.SignatureData_Encoding_DefaultBinary) extension_object_classes[nid] = SignatureData extension_object_ids['SignatureData'] = nid nid = FourByteNodeId(ObjectIds.CreateSessionRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CreateSessionRequest extension_object_ids['CreateSessionRequest'] = nid nid = FourByteNodeId(ObjectIds.CreateSessionResponse_Encoding_DefaultBinary) extension_object_classes[nid] = CreateSessionResponse extension_object_ids['CreateSessionResponse'] = nid nid = FourByteNodeId(ObjectIds.UserIdentityToken_Encoding_DefaultBinary) extension_object_classes[nid] = UserIdentityToken extension_object_ids['UserIdentityToken'] = nid nid = FourByteNodeId(ObjectIds.AnonymousIdentityToken_Encoding_DefaultBinary) extension_object_classes[nid] = AnonymousIdentityToken extension_object_ids['AnonymousIdentityToken'] = nid nid = FourByteNodeId(ObjectIds.UserNameIdentityToken_Encoding_DefaultBinary) extension_object_classes[nid] = UserNameIdentityToken extension_object_ids['UserNameIdentityToken'] = nid nid = FourByteNodeId(ObjectIds.X509IdentityToken_Encoding_DefaultBinary) extension_object_classes[nid] = X509IdentityToken extension_object_ids['X509IdentityToken'] = nid nid = FourByteNodeId(ObjectIds.IssuedIdentityToken_Encoding_DefaultBinary) extension_object_classes[nid] = IssuedIdentityToken extension_object_ids['IssuedIdentityToken'] = nid nid = FourByteNodeId(ObjectIds.ActivateSessionRequest_Encoding_DefaultBinary) extension_object_classes[nid] = ActivateSessionRequest extension_object_ids['ActivateSessionRequest'] = nid nid = FourByteNodeId(ObjectIds.ActivateSessionResponse_Encoding_DefaultBinary) extension_object_classes[nid] = ActivateSessionResponse extension_object_ids['ActivateSessionResponse'] = nid nid = FourByteNodeId(ObjectIds.CloseSessionRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CloseSessionRequest extension_object_ids['CloseSessionRequest'] = nid nid = FourByteNodeId(ObjectIds.CloseSessionResponse_Encoding_DefaultBinary) extension_object_classes[nid] = CloseSessionResponse extension_object_ids['CloseSessionResponse'] = nid nid = FourByteNodeId(ObjectIds.CancelRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CancelRequest extension_object_ids['CancelRequest'] = nid nid = FourByteNodeId(ObjectIds.CancelResponse_Encoding_DefaultBinary) extension_object_classes[nid] = CancelResponse extension_object_ids['CancelResponse'] = nid nid = FourByteNodeId(ObjectIds.NodeAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = NodeAttributes extension_object_ids['NodeAttributes'] = nid nid = FourByteNodeId(ObjectIds.ObjectAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = ObjectAttributes extension_object_ids['ObjectAttributes'] = nid nid = FourByteNodeId(ObjectIds.VariableAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = VariableAttributes extension_object_ids['VariableAttributes'] = nid nid = FourByteNodeId(ObjectIds.MethodAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = MethodAttributes extension_object_ids['MethodAttributes'] = nid nid = FourByteNodeId(ObjectIds.ObjectTypeAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = ObjectTypeAttributes extension_object_ids['ObjectTypeAttributes'] = nid nid = FourByteNodeId(ObjectIds.VariableTypeAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = VariableTypeAttributes extension_object_ids['VariableTypeAttributes'] = nid nid = FourByteNodeId(ObjectIds.ReferenceTypeAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = ReferenceTypeAttributes extension_object_ids['ReferenceTypeAttributes'] = nid nid = FourByteNodeId(ObjectIds.DataTypeAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = DataTypeAttributes extension_object_ids['DataTypeAttributes'] = nid nid = FourByteNodeId(ObjectIds.ViewAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = ViewAttributes extension_object_ids['ViewAttributes'] = nid nid = FourByteNodeId(ObjectIds.GenericAttributeValue_Encoding_DefaultBinary) extension_object_classes[nid] = GenericAttributeValue extension_object_ids['GenericAttributeValue'] = nid nid = FourByteNodeId(ObjectIds.GenericAttributes_Encoding_DefaultBinary) extension_object_classes[nid] = GenericAttributes extension_object_ids['GenericAttributes'] = nid nid = FourByteNodeId(ObjectIds.AddNodesItem_Encoding_DefaultBinary) extension_object_classes[nid] = AddNodesItem extension_object_ids['AddNodesItem'] = nid nid = FourByteNodeId(ObjectIds.AddNodesResult_Encoding_DefaultBinary) extension_object_classes[nid] = AddNodesResult extension_object_ids['AddNodesResult'] = nid nid = FourByteNodeId(ObjectIds.AddNodesRequest_Encoding_DefaultBinary) extension_object_classes[nid] = AddNodesRequest extension_object_ids['AddNodesRequest'] = nid nid = FourByteNodeId(ObjectIds.AddNodesResponse_Encoding_DefaultBinary) extension_object_classes[nid] = AddNodesResponse extension_object_ids['AddNodesResponse'] = nid nid = FourByteNodeId(ObjectIds.AddReferencesItem_Encoding_DefaultBinary) extension_object_classes[nid] = AddReferencesItem extension_object_ids['AddReferencesItem'] = nid nid = FourByteNodeId(ObjectIds.AddReferencesRequest_Encoding_DefaultBinary) extension_object_classes[nid] = AddReferencesRequest extension_object_ids['AddReferencesRequest'] = nid nid = FourByteNodeId(ObjectIds.AddReferencesResponse_Encoding_DefaultBinary) extension_object_classes[nid] = AddReferencesResponse extension_object_ids['AddReferencesResponse'] = nid nid = FourByteNodeId(ObjectIds.DeleteNodesItem_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteNodesItem extension_object_ids['DeleteNodesItem'] = nid nid = FourByteNodeId(ObjectIds.DeleteNodesRequest_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteNodesRequest extension_object_ids['DeleteNodesRequest'] = nid nid = FourByteNodeId(ObjectIds.DeleteNodesResponse_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteNodesResponse extension_object_ids['DeleteNodesResponse'] = nid nid = FourByteNodeId(ObjectIds.DeleteReferencesItem_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteReferencesItem extension_object_ids['DeleteReferencesItem'] = nid nid = FourByteNodeId(ObjectIds.DeleteReferencesRequest_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteReferencesRequest extension_object_ids['DeleteReferencesRequest'] = nid nid = FourByteNodeId(ObjectIds.DeleteReferencesResponse_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteReferencesResponse extension_object_ids['DeleteReferencesResponse'] = nid nid = FourByteNodeId(ObjectIds.ViewDescription_Encoding_DefaultBinary) extension_object_classes[nid] = ViewDescription extension_object_ids['ViewDescription'] = nid nid = FourByteNodeId(ObjectIds.BrowseDescription_Encoding_DefaultBinary) extension_object_classes[nid] = BrowseDescription extension_object_ids['BrowseDescription'] = nid nid = FourByteNodeId(ObjectIds.ReferenceDescription_Encoding_DefaultBinary) extension_object_classes[nid] = ReferenceDescription extension_object_ids['ReferenceDescription'] = nid nid = FourByteNodeId(ObjectIds.BrowseResult_Encoding_DefaultBinary) extension_object_classes[nid] = BrowseResult extension_object_ids['BrowseResult'] = nid nid = FourByteNodeId(ObjectIds.BrowseRequest_Encoding_DefaultBinary) extension_object_classes[nid] = BrowseRequest extension_object_ids['BrowseRequest'] = nid nid = FourByteNodeId(ObjectIds.BrowseResponse_Encoding_DefaultBinary) extension_object_classes[nid] = BrowseResponse extension_object_ids['BrowseResponse'] = nid nid = FourByteNodeId(ObjectIds.BrowseNextRequest_Encoding_DefaultBinary) extension_object_classes[nid] = BrowseNextRequest extension_object_ids['BrowseNextRequest'] = nid nid = FourByteNodeId(ObjectIds.BrowseNextResponse_Encoding_DefaultBinary) extension_object_classes[nid] = BrowseNextResponse extension_object_ids['BrowseNextResponse'] = nid nid = FourByteNodeId(ObjectIds.RelativePathElement_Encoding_DefaultBinary) extension_object_classes[nid] = RelativePathElement extension_object_ids['RelativePathElement'] = nid nid = FourByteNodeId(ObjectIds.RelativePath_Encoding_DefaultBinary) extension_object_classes[nid] = RelativePath extension_object_ids['RelativePath'] = nid nid = FourByteNodeId(ObjectIds.BrowsePath_Encoding_DefaultBinary) extension_object_classes[nid] = BrowsePath extension_object_ids['BrowsePath'] = nid nid = FourByteNodeId(ObjectIds.BrowsePathTarget_Encoding_DefaultBinary) extension_object_classes[nid] = BrowsePathTarget extension_object_ids['BrowsePathTarget'] = nid nid = FourByteNodeId(ObjectIds.BrowsePathResult_Encoding_DefaultBinary) extension_object_classes[nid] = BrowsePathResult extension_object_ids['BrowsePathResult'] = nid nid = FourByteNodeId(ObjectIds.TranslateBrowsePathsToNodeIdsRequest_Encoding_DefaultBinary) extension_object_classes[nid] = TranslateBrowsePathsToNodeIdsRequest extension_object_ids['TranslateBrowsePathsToNodeIdsRequest'] = nid nid = FourByteNodeId(ObjectIds.TranslateBrowsePathsToNodeIdsResponse_Encoding_DefaultBinary) extension_object_classes[nid] = TranslateBrowsePathsToNodeIdsResponse extension_object_ids['TranslateBrowsePathsToNodeIdsResponse'] = nid nid = FourByteNodeId(ObjectIds.RegisterNodesRequest_Encoding_DefaultBinary) extension_object_classes[nid] = RegisterNodesRequest extension_object_ids['RegisterNodesRequest'] = nid nid = FourByteNodeId(ObjectIds.RegisterNodesResponse_Encoding_DefaultBinary) extension_object_classes[nid] = RegisterNodesResponse extension_object_ids['RegisterNodesResponse'] = nid nid = FourByteNodeId(ObjectIds.UnregisterNodesRequest_Encoding_DefaultBinary) extension_object_classes[nid] = UnregisterNodesRequest extension_object_ids['UnregisterNodesRequest'] = nid nid = FourByteNodeId(ObjectIds.UnregisterNodesResponse_Encoding_DefaultBinary) extension_object_classes[nid] = UnregisterNodesResponse extension_object_ids['UnregisterNodesResponse'] = nid nid = FourByteNodeId(ObjectIds.EndpointConfiguration_Encoding_DefaultBinary) extension_object_classes[nid] = EndpointConfiguration extension_object_ids['EndpointConfiguration'] = nid nid = FourByteNodeId(ObjectIds.QueryDataDescription_Encoding_DefaultBinary) extension_object_classes[nid] = QueryDataDescription extension_object_ids['QueryDataDescription'] = nid nid = FourByteNodeId(ObjectIds.NodeTypeDescription_Encoding_DefaultBinary) extension_object_classes[nid] = NodeTypeDescription extension_object_ids['NodeTypeDescription'] = nid nid = FourByteNodeId(ObjectIds.QueryDataSet_Encoding_DefaultBinary) extension_object_classes[nid] = QueryDataSet extension_object_ids['QueryDataSet'] = nid nid = FourByteNodeId(ObjectIds.NodeReference_Encoding_DefaultBinary) extension_object_classes[nid] = NodeReference extension_object_ids['NodeReference'] = nid nid = FourByteNodeId(ObjectIds.ContentFilterElement_Encoding_DefaultBinary) extension_object_classes[nid] = ContentFilterElement extension_object_ids['ContentFilterElement'] = nid nid = FourByteNodeId(ObjectIds.ContentFilter_Encoding_DefaultBinary) extension_object_classes[nid] = ContentFilter extension_object_ids['ContentFilter'] = nid nid = FourByteNodeId(ObjectIds.ElementOperand_Encoding_DefaultBinary) extension_object_classes[nid] = ElementOperand extension_object_ids['ElementOperand'] = nid nid = FourByteNodeId(ObjectIds.LiteralOperand_Encoding_DefaultBinary) extension_object_classes[nid] = LiteralOperand extension_object_ids['LiteralOperand'] = nid nid = FourByteNodeId(ObjectIds.AttributeOperand_Encoding_DefaultBinary) extension_object_classes[nid] = AttributeOperand extension_object_ids['AttributeOperand'] = nid nid = FourByteNodeId(ObjectIds.SimpleAttributeOperand_Encoding_DefaultBinary) extension_object_classes[nid] = SimpleAttributeOperand extension_object_ids['SimpleAttributeOperand'] = nid nid = FourByteNodeId(ObjectIds.ContentFilterElementResult_Encoding_DefaultBinary) extension_object_classes[nid] = ContentFilterElementResult extension_object_ids['ContentFilterElementResult'] = nid nid = FourByteNodeId(ObjectIds.ContentFilterResult_Encoding_DefaultBinary) extension_object_classes[nid] = ContentFilterResult extension_object_ids['ContentFilterResult'] = nid nid = FourByteNodeId(ObjectIds.ParsingResult_Encoding_DefaultBinary) extension_object_classes[nid] = ParsingResult extension_object_ids['ParsingResult'] = nid nid = FourByteNodeId(ObjectIds.QueryFirstRequest_Encoding_DefaultBinary) extension_object_classes[nid] = QueryFirstRequest extension_object_ids['QueryFirstRequest'] = nid nid = FourByteNodeId(ObjectIds.QueryFirstResponse_Encoding_DefaultBinary) extension_object_classes[nid] = QueryFirstResponse extension_object_ids['QueryFirstResponse'] = nid nid = FourByteNodeId(ObjectIds.QueryNextRequest_Encoding_DefaultBinary) extension_object_classes[nid] = QueryNextRequest extension_object_ids['QueryNextRequest'] = nid nid = FourByteNodeId(ObjectIds.QueryNextResponse_Encoding_DefaultBinary) extension_object_classes[nid] = QueryNextResponse extension_object_ids['QueryNextResponse'] = nid nid = FourByteNodeId(ObjectIds.ReadValueId_Encoding_DefaultBinary) extension_object_classes[nid] = ReadValueId extension_object_ids['ReadValueId'] = nid nid = FourByteNodeId(ObjectIds.ReadRequest_Encoding_DefaultBinary) extension_object_classes[nid] = ReadRequest extension_object_ids['ReadRequest'] = nid nid = FourByteNodeId(ObjectIds.ReadResponse_Encoding_DefaultBinary) extension_object_classes[nid] = ReadResponse extension_object_ids['ReadResponse'] = nid nid = FourByteNodeId(ObjectIds.HistoryReadValueId_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryReadValueId extension_object_ids['HistoryReadValueId'] = nid nid = FourByteNodeId(ObjectIds.HistoryReadResult_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryReadResult extension_object_ids['HistoryReadResult'] = nid nid = FourByteNodeId(ObjectIds.HistoryReadDetails_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryReadDetails extension_object_ids['HistoryReadDetails'] = nid nid = FourByteNodeId(ObjectIds.ReadEventDetails_Encoding_DefaultBinary) extension_object_classes[nid] = ReadEventDetails extension_object_ids['ReadEventDetails'] = nid nid = FourByteNodeId(ObjectIds.ReadRawModifiedDetails_Encoding_DefaultBinary) extension_object_classes[nid] = ReadRawModifiedDetails extension_object_ids['ReadRawModifiedDetails'] = nid nid = FourByteNodeId(ObjectIds.ReadProcessedDetails_Encoding_DefaultBinary) extension_object_classes[nid] = ReadProcessedDetails extension_object_ids['ReadProcessedDetails'] = nid nid = FourByteNodeId(ObjectIds.ReadAtTimeDetails_Encoding_DefaultBinary) extension_object_classes[nid] = ReadAtTimeDetails extension_object_ids['ReadAtTimeDetails'] = nid nid = FourByteNodeId(ObjectIds.HistoryData_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryData extension_object_ids['HistoryData'] = nid nid = FourByteNodeId(ObjectIds.ModificationInfo_Encoding_DefaultBinary) extension_object_classes[nid] = ModificationInfo extension_object_ids['ModificationInfo'] = nid nid = FourByteNodeId(ObjectIds.HistoryModifiedData_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryModifiedData extension_object_ids['HistoryModifiedData'] = nid nid = FourByteNodeId(ObjectIds.HistoryEvent_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryEvent extension_object_ids['HistoryEvent'] = nid nid = FourByteNodeId(ObjectIds.HistoryReadRequest_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryReadRequest extension_object_ids['HistoryReadRequest'] = nid nid = FourByteNodeId(ObjectIds.HistoryReadResponse_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryReadResponse extension_object_ids['HistoryReadResponse'] = nid nid = FourByteNodeId(ObjectIds.WriteValue_Encoding_DefaultBinary) extension_object_classes[nid] = WriteValue extension_object_ids['WriteValue'] = nid nid = FourByteNodeId(ObjectIds.WriteRequest_Encoding_DefaultBinary) extension_object_classes[nid] = WriteRequest extension_object_ids['WriteRequest'] = nid nid = FourByteNodeId(ObjectIds.WriteResponse_Encoding_DefaultBinary) extension_object_classes[nid] = WriteResponse extension_object_ids['WriteResponse'] = nid nid = FourByteNodeId(ObjectIds.HistoryUpdateDetails_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryUpdateDetails extension_object_ids['HistoryUpdateDetails'] = nid nid = FourByteNodeId(ObjectIds.UpdateDataDetails_Encoding_DefaultBinary) extension_object_classes[nid] = UpdateDataDetails extension_object_ids['UpdateDataDetails'] = nid nid = FourByteNodeId(ObjectIds.UpdateStructureDataDetails_Encoding_DefaultBinary) extension_object_classes[nid] = UpdateStructureDataDetails extension_object_ids['UpdateStructureDataDetails'] = nid nid = FourByteNodeId(ObjectIds.UpdateEventDetails_Encoding_DefaultBinary) extension_object_classes[nid] = UpdateEventDetails extension_object_ids['UpdateEventDetails'] = nid nid = FourByteNodeId(ObjectIds.DeleteRawModifiedDetails_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteRawModifiedDetails extension_object_ids['DeleteRawModifiedDetails'] = nid nid = FourByteNodeId(ObjectIds.DeleteAtTimeDetails_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteAtTimeDetails extension_object_ids['DeleteAtTimeDetails'] = nid nid = FourByteNodeId(ObjectIds.DeleteEventDetails_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteEventDetails extension_object_ids['DeleteEventDetails'] = nid nid = FourByteNodeId(ObjectIds.HistoryUpdateResult_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryUpdateResult extension_object_ids['HistoryUpdateResult'] = nid nid = FourByteNodeId(ObjectIds.HistoryUpdateRequest_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryUpdateRequest extension_object_ids['HistoryUpdateRequest'] = nid nid = FourByteNodeId(ObjectIds.HistoryUpdateResponse_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryUpdateResponse extension_object_ids['HistoryUpdateResponse'] = nid nid = FourByteNodeId(ObjectIds.CallMethodRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CallMethodRequest extension_object_ids['CallMethodRequest'] = nid nid = FourByteNodeId(ObjectIds.CallMethodResult_Encoding_DefaultBinary) extension_object_classes[nid] = CallMethodResult extension_object_ids['CallMethodResult'] = nid nid = FourByteNodeId(ObjectIds.CallRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CallRequest extension_object_ids['CallRequest'] = nid nid = FourByteNodeId(ObjectIds.CallResponse_Encoding_DefaultBinary) extension_object_classes[nid] = CallResponse extension_object_ids['CallResponse'] = nid nid = FourByteNodeId(ObjectIds.MonitoringFilter_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoringFilter extension_object_ids['MonitoringFilter'] = nid nid = FourByteNodeId(ObjectIds.DataChangeFilter_Encoding_DefaultBinary) extension_object_classes[nid] = DataChangeFilter extension_object_ids['DataChangeFilter'] = nid nid = FourByteNodeId(ObjectIds.EventFilter_Encoding_DefaultBinary) extension_object_classes[nid] = EventFilter extension_object_ids['EventFilter'] = nid nid = FourByteNodeId(ObjectIds.AggregateConfiguration_Encoding_DefaultBinary) extension_object_classes[nid] = AggregateConfiguration extension_object_ids['AggregateConfiguration'] = nid nid = FourByteNodeId(ObjectIds.AggregateFilter_Encoding_DefaultBinary) extension_object_classes[nid] = AggregateFilter extension_object_ids['AggregateFilter'] = nid nid = FourByteNodeId(ObjectIds.MonitoringFilterResult_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoringFilterResult extension_object_ids['MonitoringFilterResult'] = nid nid = FourByteNodeId(ObjectIds.EventFilterResult_Encoding_DefaultBinary) extension_object_classes[nid] = EventFilterResult extension_object_ids['EventFilterResult'] = nid nid = FourByteNodeId(ObjectIds.AggregateFilterResult_Encoding_DefaultBinary) extension_object_classes[nid] = AggregateFilterResult extension_object_ids['AggregateFilterResult'] = nid nid = FourByteNodeId(ObjectIds.MonitoringParameters_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoringParameters extension_object_ids['MonitoringParameters'] = nid nid = FourByteNodeId(ObjectIds.MonitoredItemCreateRequest_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoredItemCreateRequest extension_object_ids['MonitoredItemCreateRequest'] = nid nid = FourByteNodeId(ObjectIds.MonitoredItemCreateResult_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoredItemCreateResult extension_object_ids['MonitoredItemCreateResult'] = nid nid = FourByteNodeId(ObjectIds.CreateMonitoredItemsRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CreateMonitoredItemsRequest extension_object_ids['CreateMonitoredItemsRequest'] = nid nid = FourByteNodeId(ObjectIds.CreateMonitoredItemsResponse_Encoding_DefaultBinary) extension_object_classes[nid] = CreateMonitoredItemsResponse extension_object_ids['CreateMonitoredItemsResponse'] = nid nid = FourByteNodeId(ObjectIds.MonitoredItemModifyRequest_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoredItemModifyRequest extension_object_ids['MonitoredItemModifyRequest'] = nid nid = FourByteNodeId(ObjectIds.MonitoredItemModifyResult_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoredItemModifyResult extension_object_ids['MonitoredItemModifyResult'] = nid nid = FourByteNodeId(ObjectIds.ModifyMonitoredItemsRequest_Encoding_DefaultBinary) extension_object_classes[nid] = ModifyMonitoredItemsRequest extension_object_ids['ModifyMonitoredItemsRequest'] = nid nid = FourByteNodeId(ObjectIds.ModifyMonitoredItemsResponse_Encoding_DefaultBinary) extension_object_classes[nid] = ModifyMonitoredItemsResponse extension_object_ids['ModifyMonitoredItemsResponse'] = nid nid = FourByteNodeId(ObjectIds.SetMonitoringModeRequest_Encoding_DefaultBinary) extension_object_classes[nid] = SetMonitoringModeRequest extension_object_ids['SetMonitoringModeRequest'] = nid nid = FourByteNodeId(ObjectIds.SetMonitoringModeResponse_Encoding_DefaultBinary) extension_object_classes[nid] = SetMonitoringModeResponse extension_object_ids['SetMonitoringModeResponse'] = nid nid = FourByteNodeId(ObjectIds.SetTriggeringRequest_Encoding_DefaultBinary) extension_object_classes[nid] = SetTriggeringRequest extension_object_ids['SetTriggeringRequest'] = nid nid = FourByteNodeId(ObjectIds.SetTriggeringResponse_Encoding_DefaultBinary) extension_object_classes[nid] = SetTriggeringResponse extension_object_ids['SetTriggeringResponse'] = nid nid = FourByteNodeId(ObjectIds.DeleteMonitoredItemsRequest_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteMonitoredItemsRequest extension_object_ids['DeleteMonitoredItemsRequest'] = nid nid = FourByteNodeId(ObjectIds.DeleteMonitoredItemsResponse_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteMonitoredItemsResponse extension_object_ids['DeleteMonitoredItemsResponse'] = nid nid = FourByteNodeId(ObjectIds.CreateSubscriptionRequest_Encoding_DefaultBinary) extension_object_classes[nid] = CreateSubscriptionRequest extension_object_ids['CreateSubscriptionRequest'] = nid nid = FourByteNodeId(ObjectIds.CreateSubscriptionResponse_Encoding_DefaultBinary) extension_object_classes[nid] = CreateSubscriptionResponse extension_object_ids['CreateSubscriptionResponse'] = nid nid = FourByteNodeId(ObjectIds.ModifySubscriptionRequest_Encoding_DefaultBinary) extension_object_classes[nid] = ModifySubscriptionRequest extension_object_ids['ModifySubscriptionRequest'] = nid nid = FourByteNodeId(ObjectIds.ModifySubscriptionResponse_Encoding_DefaultBinary) extension_object_classes[nid] = ModifySubscriptionResponse extension_object_ids['ModifySubscriptionResponse'] = nid nid = FourByteNodeId(ObjectIds.SetPublishingModeRequest_Encoding_DefaultBinary) extension_object_classes[nid] = SetPublishingModeRequest extension_object_ids['SetPublishingModeRequest'] = nid nid = FourByteNodeId(ObjectIds.SetPublishingModeResponse_Encoding_DefaultBinary) extension_object_classes[nid] = SetPublishingModeResponse extension_object_ids['SetPublishingModeResponse'] = nid nid = FourByteNodeId(ObjectIds.NotificationMessage_Encoding_DefaultBinary) extension_object_classes[nid] = NotificationMessage extension_object_ids['NotificationMessage'] = nid nid = FourByteNodeId(ObjectIds.NotificationData_Encoding_DefaultBinary) extension_object_classes[nid] = NotificationData extension_object_ids['NotificationData'] = nid nid = FourByteNodeId(ObjectIds.DataChangeNotification_Encoding_DefaultBinary) extension_object_classes[nid] = DataChangeNotification extension_object_ids['DataChangeNotification'] = nid nid = FourByteNodeId(ObjectIds.MonitoredItemNotification_Encoding_DefaultBinary) extension_object_classes[nid] = MonitoredItemNotification extension_object_ids['MonitoredItemNotification'] = nid nid = FourByteNodeId(ObjectIds.EventNotificationList_Encoding_DefaultBinary) extension_object_classes[nid] = EventNotificationList extension_object_ids['EventNotificationList'] = nid nid = FourByteNodeId(ObjectIds.EventFieldList_Encoding_DefaultBinary) extension_object_classes[nid] = EventFieldList extension_object_ids['EventFieldList'] = nid nid = FourByteNodeId(ObjectIds.HistoryEventFieldList_Encoding_DefaultBinary) extension_object_classes[nid] = HistoryEventFieldList extension_object_ids['HistoryEventFieldList'] = nid nid = FourByteNodeId(ObjectIds.StatusChangeNotification_Encoding_DefaultBinary) extension_object_classes[nid] = StatusChangeNotification extension_object_ids['StatusChangeNotification'] = nid nid = FourByteNodeId(ObjectIds.SubscriptionAcknowledgement_Encoding_DefaultBinary) extension_object_classes[nid] = SubscriptionAcknowledgement extension_object_ids['SubscriptionAcknowledgement'] = nid nid = FourByteNodeId(ObjectIds.PublishRequest_Encoding_DefaultBinary) extension_object_classes[nid] = PublishRequest extension_object_ids['PublishRequest'] = nid nid = FourByteNodeId(ObjectIds.PublishResponse_Encoding_DefaultBinary) extension_object_classes[nid] = PublishResponse extension_object_ids['PublishResponse'] = nid nid = FourByteNodeId(ObjectIds.RepublishRequest_Encoding_DefaultBinary) extension_object_classes[nid] = RepublishRequest extension_object_ids['RepublishRequest'] = nid nid = FourByteNodeId(ObjectIds.RepublishResponse_Encoding_DefaultBinary) extension_object_classes[nid] = RepublishResponse extension_object_ids['RepublishResponse'] = nid nid = FourByteNodeId(ObjectIds.TransferResult_Encoding_DefaultBinary) extension_object_classes[nid] = TransferResult extension_object_ids['TransferResult'] = nid nid = FourByteNodeId(ObjectIds.TransferSubscriptionsRequest_Encoding_DefaultBinary) extension_object_classes[nid] = TransferSubscriptionsRequest extension_object_ids['TransferSubscriptionsRequest'] = nid nid = FourByteNodeId(ObjectIds.TransferSubscriptionsResponse_Encoding_DefaultBinary) extension_object_classes[nid] = TransferSubscriptionsResponse extension_object_ids['TransferSubscriptionsResponse'] = nid nid = FourByteNodeId(ObjectIds.DeleteSubscriptionsRequest_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteSubscriptionsRequest extension_object_ids['DeleteSubscriptionsRequest'] = nid nid = FourByteNodeId(ObjectIds.DeleteSubscriptionsResponse_Encoding_DefaultBinary) extension_object_classes[nid] = DeleteSubscriptionsResponse extension_object_ids['DeleteSubscriptionsResponse'] = nid nid = FourByteNodeId(ObjectIds.BuildInfo_Encoding_DefaultBinary) extension_object_classes[nid] = BuildInfo extension_object_ids['BuildInfo'] = nid nid = FourByteNodeId(ObjectIds.RedundantServerDataType_Encoding_DefaultBinary) extension_object_classes[nid] = RedundantServerDataType extension_object_ids['RedundantServerDataType'] = nid nid = FourByteNodeId(ObjectIds.EndpointUrlListDataType_Encoding_DefaultBinary) extension_object_classes[nid] = EndpointUrlListDataType extension_object_ids['EndpointUrlListDataType'] = nid nid = FourByteNodeId(ObjectIds.NetworkGroupDataType_Encoding_DefaultBinary) extension_object_classes[nid] = NetworkGroupDataType extension_object_ids['NetworkGroupDataType'] = nid nid = FourByteNodeId(ObjectIds.SamplingIntervalDiagnosticsDataType_Encoding_DefaultBinary) extension_object_classes[nid] = SamplingIntervalDiagnosticsDataType extension_object_ids['SamplingIntervalDiagnosticsDataType'] = nid nid = FourByteNodeId(ObjectIds.ServerDiagnosticsSummaryDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ServerDiagnosticsSummaryDataType extension_object_ids['ServerDiagnosticsSummaryDataType'] = nid nid = FourByteNodeId(ObjectIds.ServerStatusDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ServerStatusDataType extension_object_ids['ServerStatusDataType'] = nid nid = FourByteNodeId(ObjectIds.SessionDiagnosticsDataType_Encoding_DefaultBinary) extension_object_classes[nid] = SessionDiagnosticsDataType extension_object_ids['SessionDiagnosticsDataType'] = nid nid = FourByteNodeId(ObjectIds.SessionSecurityDiagnosticsDataType_Encoding_DefaultBinary) extension_object_classes[nid] = SessionSecurityDiagnosticsDataType extension_object_ids['SessionSecurityDiagnosticsDataType'] = nid nid = FourByteNodeId(ObjectIds.ServiceCounterDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ServiceCounterDataType extension_object_ids['ServiceCounterDataType'] = nid nid = FourByteNodeId(ObjectIds.StatusResult_Encoding_DefaultBinary) extension_object_classes[nid] = StatusResult extension_object_ids['StatusResult'] = nid nid = FourByteNodeId(ObjectIds.SubscriptionDiagnosticsDataType_Encoding_DefaultBinary) extension_object_classes[nid] = SubscriptionDiagnosticsDataType extension_object_ids['SubscriptionDiagnosticsDataType'] = nid nid = FourByteNodeId(ObjectIds.ModelChangeStructureDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ModelChangeStructureDataType extension_object_ids['ModelChangeStructureDataType'] = nid nid = FourByteNodeId(ObjectIds.SemanticChangeStructureDataType_Encoding_DefaultBinary) extension_object_classes[nid] = SemanticChangeStructureDataType extension_object_ids['SemanticChangeStructureDataType'] = nid nid = FourByteNodeId(ObjectIds.Range_Encoding_DefaultBinary) extension_object_classes[nid] = Range extension_object_ids['Range'] = nid nid = FourByteNodeId(ObjectIds.EUInformation_Encoding_DefaultBinary) extension_object_classes[nid] = EUInformation extension_object_ids['EUInformation'] = nid nid = FourByteNodeId(ObjectIds.ComplexNumberType_Encoding_DefaultBinary) extension_object_classes[nid] = ComplexNumberType extension_object_ids['ComplexNumberType'] = nid nid = FourByteNodeId(ObjectIds.DoubleComplexNumberType_Encoding_DefaultBinary) extension_object_classes[nid] = DoubleComplexNumberType extension_object_ids['DoubleComplexNumberType'] = nid nid = FourByteNodeId(ObjectIds.AxisInformation_Encoding_DefaultBinary) extension_object_classes[nid] = AxisInformation extension_object_ids['AxisInformation'] = nid nid = FourByteNodeId(ObjectIds.XVType_Encoding_DefaultBinary) extension_object_classes[nid] = XVType extension_object_ids['XVType'] = nid nid = FourByteNodeId(ObjectIds.ProgramDiagnosticDataType_Encoding_DefaultBinary) extension_object_classes[nid] = ProgramDiagnosticDataType extension_object_ids['ProgramDiagnosticDataType'] = nid nid = FourByteNodeId(ObjectIds.ProgramDiagnostic2DataType_Encoding_DefaultBinary) extension_object_classes[nid] = ProgramDiagnostic2DataType extension_object_ids['ProgramDiagnostic2DataType'] = nid nid = FourByteNodeId(ObjectIds.Annotation_Encoding_DefaultBinary) extension_object_classes[nid] = Annotation extension_object_ids['Annotation'] = nid python-opcua-0.98.9/opcua/ua/uaprotocol_hand.py000066400000000000000000000245701357637245100215430ustar00rootroot00000000000000import struct from opcua.ua import uaprotocol_auto as auto from opcua.ua import uatypes from opcua.common import utils from opcua.ua.uatypes import AccessLevel, FrozenClass OPC_TCP_SCHEME = 'opc.tcp' class Hello(uatypes.FrozenClass): ua_types = (('ProtocolVersion', 'UInt32'), ('ReceiveBufferSize', 'UInt32'), ('SendBufferSize', 'UInt32'), ('MaxMessageSize', 'UInt32'), ('MaxChunkCount', 'UInt32'), ('EndpointUrl', 'String'), ) def __init__(self): self.ProtocolVersion = 0 self.ReceiveBufferSize = 65536 self.SendBufferSize = 65536 self.MaxMessageSize = 0 # No limits self.MaxChunkCount = 0 # No limits self.EndpointUrl = "" self._freeze = True class MessageType(object): Invalid = b"INV" # FIXME: check value Hello = b"HEL" Acknowledge = b"ACK" Error = b"ERR" SecureOpen = b"OPN" SecureClose = b"CLO" SecureMessage = b"MSG" class ChunkType(object): Invalid = b"0" # FIXME check Single = b"F" Intermediate = b"C" Abort = b"A" # when an error occurred and the Message is aborted (body is ErrorMessage) class Header(uatypes.FrozenClass): def __init__(self, msgType=None, chunkType=None, channelid=0): self.MessageType = msgType self.ChunkType = chunkType self.ChannelId = channelid self.body_size = 0 self.packet_size = 0 self._freeze = True def add_size(self, size): self.body_size += size @staticmethod def max_size(): return struct.calcsize("<3scII") def __str__(self): return "Header(type:{0}, chunk_type:{1}, body_size:{2}, channel:{3})".format( self.MessageType, self.ChunkType, self.body_size, self.ChannelId) __repr__ = __str__ class ErrorMessage(uatypes.FrozenClass): ua_types = (('Error', 'StatusCode'), ('Reason', 'String'), ) def __init__(self): self.Error = uatypes.StatusCode() self.Reason = "" self._freeze = True def __str__(self): return "MessageAbort(error:{0}, reason:{1})".format(self.Error, self.Reason) __repr__ = __str__ class Acknowledge(uatypes.FrozenClass): ua_types = [ ("ProtocolVersion", "UInt32"), ("ReceiveBufferSize", "UInt32"), ("SendBufferSize", "UInt32"), ("MaxMessageSize", "UInt32"), ("MaxChunkCount", "UInt32"), ] def __init__(self): self.ProtocolVersion = 0 self.ReceiveBufferSize = 65536 self.SendBufferSize = 65536 self.MaxMessageSize = 0 # No limits self.MaxChunkCount = 0 # No limits self._freeze = True class AsymmetricAlgorithmHeader(uatypes.FrozenClass): ua_types = [ ("SecurityPolicyURI", "String"), ("SenderCertificate", "ByteString"), ("ReceiverCertificateThumbPrint", "ByteString"), ] def __init__(self): self.SecurityPolicyURI = "http://opcfoundation.org/UA/SecurityPolicy#None" self.SenderCertificate = None self.ReceiverCertificateThumbPrint = None self._freeze = True def __str__(self): size1 = len(self.SenderCertificate) if self.SenderCertificate is not None else None size2 = len(self.ReceiverCertificateThumbPrint) if self.ReceiverCertificateThumbPrint is not None else None return "{0}(SecurityPolicy:{1}, certificatesize:{2}, receiverCertificatesize:{3} )".format( self.__class__.__name__, self.SecurityPolicyURI, size1, size2) __repr__ = __str__ class SymmetricAlgorithmHeader(uatypes.FrozenClass): ua_types = [ ("TokenId", "UInt32"), ] def __init__(self): self.TokenId = 0 self._freeze = True @staticmethod def max_size(): return struct.calcsize(" 2: unicode = str EPOCH_AS_FILETIME = 116444736000000000 # January 1, 1970 as MS file time HUNDREDS_OF_NANOSECONDS = 10000000 FILETIME_EPOCH_AS_DATETIME = datetime(1601, 1, 1) class UTC(tzinfo): """ UTC """ def utcoffset(self, dt): return timedelta(0) def tzname(self, dt): return "UTC" def dst(self, dt): return timedelta(0) # method copied from David Buxton sample code def datetime_to_win_epoch(dt): if (dt.tzinfo is None) or (dt.tzinfo.utcoffset(dt) is None): dt = dt.replace(tzinfo=UTC()) ft = EPOCH_AS_FILETIME + (timegm(dt.timetuple()) * HUNDREDS_OF_NANOSECONDS) return ft + (dt.microsecond * 10) def get_win_epoch(): return win_epoch_to_datetime(0) def win_epoch_to_datetime(epch): try: return FILETIME_EPOCH_AS_DATETIME + timedelta(microseconds=epch // 10) except OverflowError: # FILETIMEs after 31 Dec 9999 can't be converted to datetime logger.warning("datetime overflow: %s", epch) return datetime(MAXYEAR, 12, 31, 23, 59, 59, 999999) class _FrozenClass(object): """ Make it impossible to add members to a class. Not pythonic at all but we found out it prevents many many bugs in use of protocol structures """ _freeze = False def __setattr__(self, key, value): if self._freeze and not hasattr(self, key): raise TypeError("Error adding member '{0}' to class '{1}', class is frozen, members are {2}".format( key, self.__class__.__name__, self.__dict__.keys())) object.__setattr__(self, key, value) if "PYOPCUA_TYPO_CHECK" in os.environ: # typo check is cpu consuming, but it will make debug easy. # set PYOPCUA_TYPO_CHECK will make all uatype classes inherit from _FrozenClass FrozenClass = _FrozenClass else: FrozenClass = object class ValueRank(IntEnum): """ Defines dimensions of a variable. This enum does not support all cases since ValueRank support any n>0 but since it is an IntEnum it can be replace by a normal int """ ScalarOrOneDimension = -3 Any = -2 Scalar = -1 OneOrMoreDimensions = 0 OneDimension = 1 # the next names are not in spec but so common we express them here TwoDimensions = 2 ThreeDimensions = 3 FourDimensions = 4 class _MaskEnum(IntEnum): @classmethod def parse_bitfield(cls, the_int): """ Take an integer and interpret it as a set of enum values. """ if not isinstance(the_int, int): raise ValueError("Argument should be an int, we received {} fo type {}".format(the_int, type(the_int))) return {cls(b) for b in cls._bits(the_int)} @classmethod def to_bitfield(cls, collection): """ Takes some enum values and creates an integer from them. """ # make sure all elements are of the correct type (use itertools.tee in case we get passed an # iterator) iter1, iter2 = itertools.tee(iter(collection)) assert all(isinstance(x, cls) for x in iter1) return sum(x.mask for x in iter2) @property def mask(self): return 1 << self.value @staticmethod def _bits(n): """ Iterate over the bits in n. e.g. bits(44) yields at 2, 3, 5 """ assert n >= 0 # avoid infinite recursion pos = 0 while n: if n & 0x1: yield pos n = n // 2 pos += 1 class AccessLevel(_MaskEnum): """ Bit index to indicate what the access level is. Spec Part 3, appears multiple times, e.g. paragraph 5.6.2 Variable NodeClass """ CurrentRead = 0 CurrentWrite = 1 HistoryRead = 2 HistoryWrite = 3 SemanticChange = 4 StatusWrite = 5 TimestampWrite = 6 class WriteMask(_MaskEnum): """ Bit index to indicate which attribute of a node is writable Spec Part 3, Paragraph 5.2.7 WriteMask """ AccessLevel = 0 ArrayDimensions = 1 BrowseName = 2 ContainsNoLoops = 3 DataType = 4 Description = 5 DisplayName = 6 EventNotifier = 7 Executable = 8 Historizing = 9 InverseName = 10 IsAbstract = 11 MinimumSamplingInterval = 12 NodeClass = 13 NodeId = 14 Symmetric = 15 UserAccessLevel = 16 UserExecutable = 17 UserWriteMask = 18 ValueRank = 19 WriteMask = 20 ValueForVariableType = 21 class EventNotifier(_MaskEnum): """ Bit index to indicate how a node can be used for events. Spec Part 3, appears multiple times, e.g. Paragraph 5.4 View NodeClass """ SubscribeToEvents = 0 # Reserved = 1 HistoryRead = 2 HistoryWrite = 3 class StatusCode(FrozenClass): """ :ivar value: :vartype value: int :ivar name: :vartype name: string :ivar doc: :vartype doc: string """ ua_types = [("value", "UInt32")] def __init__(self, value=0): if isinstance(value, str): self.value = getattr(status_codes.StatusCodes, value) else: self.value = value self._freeze = True def check(self): """ Raises an exception if the status code is anything else than 0 (good). Use the is_good() method if you do not want an exception. """ if not self.is_good(): raise UaStatusCodeError(self.value) def is_good(self): """ return True if status is Good. """ mask = 3 << 30 if mask & self.value: return False else: return True @property def name(self): name, _ = status_codes.get_name_and_doc(self.value) return name @property def doc(self): _, doc = status_codes.get_name_and_doc(self.value) return doc def __str__(self): return 'StatusCode({0})'.format(self.name) __repr__ = __str__ def __eq__(self, other): return self.value == other.value def __ne__(self, other): return not self.__eq__(other) class NodeIdType(IntEnum): TwoByte = 0 FourByte = 1 Numeric = 2 String = 3 Guid = 4 ByteString = 5 class NodeId(object): """ NodeId Object Args: identifier: The identifier might be an int, a string, bytes or a Guid namespaceidx(int): The index of the namespace nodeidtype(NodeIdType): The type of the nodeid if it cannor be guess or you want something special like twobyte nodeid or fourbytenodeid :ivar Identifier: :vartype Identifier: NodeId :ivar NamespaceIndex: :vartype NamespaceIndex: Int :ivar NamespaceUri: :vartype NamespaceUri: String :ivar ServerIndex: :vartype ServerIndex: Int """ def __init__(self, identifier=None, namespaceidx=0, nodeidtype=None): self.Identifier = identifier self.NamespaceIndex = namespaceidx self.NodeIdType = nodeidtype self.NamespaceUri = "" self.ServerIndex = 0 self._freeze = True if self.Identifier is None: self.Identifier = 0 self.NodeIdType = NodeIdType.TwoByte return if self.NodeIdType is None: if isinstance(self.Identifier, int): self.NodeIdType = NodeIdType.Numeric elif isinstance(self.Identifier, str): self.NodeIdType = NodeIdType.String elif isinstance(self.Identifier, bytes): self.NodeIdType = NodeIdType.ByteString elif isinstance(self.Identifier, uuid.UUID): self.NodeIdType = NodeIdType.Guid else: raise UaError("NodeId: Could not guess type of NodeId, set NodeIdType") def __eq__(self, node): return isinstance(node, NodeId) and self.NamespaceIndex == node.NamespaceIndex and self.Identifier == node.Identifier def __ne__(self, other): return not self.__eq__(other) def __hash__(self): return hash((self.NamespaceIndex, self.Identifier)) def __lt__(self, other): if not isinstance(other, NodeId): raise AttributeError("Can only compare to NodeId") return (self.NodeIdType, self.NamespaceIndex, self.Identifier) < (other.NodeIdType, other.NamespaceIndex, other.Identifier) def is_null(self): if self.NamespaceIndex != 0: return False return self.has_null_identifier() def has_null_identifier(self): if not self.Identifier: return True if self.NodeIdType == NodeIdType.Guid and re.match(b'0.', self.Identifier): return True return False @staticmethod def from_string(string): try: return NodeId._from_string(string) except ValueError as ex: raise UaStringParsingError("Error parsing string {0}".format(string), ex) @staticmethod def _from_string(string): l = string.split(";") identifier = None namespace = 0 ntype = None srv = None nsu = None for el in l: if not el: continue k, v = el.split("=", 1) k = k.strip() v = v.strip() if k == "ns": namespace = int(v) elif k == "i": ntype = NodeIdType.Numeric identifier = int(v) elif k == "s": ntype = NodeIdType.String identifier = v elif k == "g": ntype = NodeIdType.Guid identifier = v elif k == "b": ntype = NodeIdType.ByteString identifier = v elif k == "srv": srv = v elif k == "nsu": nsu = v if identifier is None: raise UaStringParsingError("Could not find identifier in string: " + string) nodeid = NodeId(identifier, namespace, ntype) nodeid.NamespaceUri = nsu nodeid.ServerIndex = srv return nodeid def to_string(self): string = [] if self.NamespaceIndex != 0: string.append("ns={0}".format(self.NamespaceIndex)) ntype = None if self.NodeIdType == NodeIdType.Numeric: ntype = "i" elif self.NodeIdType == NodeIdType.String: ntype = "s" elif self.NodeIdType == NodeIdType.TwoByte: ntype = "i" elif self.NodeIdType == NodeIdType.FourByte: ntype = "i" elif self.NodeIdType == NodeIdType.Guid: ntype = "g" elif self.NodeIdType == NodeIdType.ByteString: ntype = "b" string.append("{0}={1}".format(ntype, self.Identifier)) if self.ServerIndex: string.append("srv={}".format(self.ServerIndex)) if self.NamespaceUri: string.append("nsu={0}".format(self.NamespaceUri)) return ";".join(string) def __str__(self): return "{0}NodeId({1})".format(self.NodeIdType.name, self.to_string()) __repr__ = __str__ def to_binary(self): import opcua return opcua.ua.ua_binary.nodeid_to_binary(self) class TwoByteNodeId(NodeId): def __init__(self, identifier): NodeId.__init__(self, identifier, 0, NodeIdType.TwoByte) class FourByteNodeId(NodeId): def __init__(self, identifier, namespace=0): NodeId.__init__(self, identifier, namespace, NodeIdType.FourByte) class NumericNodeId(NodeId): def __init__(self, identifier, namespace=0): NodeId.__init__(self, identifier, namespace, NodeIdType.Numeric) class ByteStringNodeId(NodeId): def __init__(self, identifier, namespace=0): NodeId.__init__(self, identifier, namespace, NodeIdType.ByteString) class GuidNodeId(NodeId): def __init__(self, identifier, namespace=0): NodeId.__init__(self, identifier, namespace, NodeIdType.Guid) class StringNodeId(NodeId): def __init__(self, identifier, namespace=0): NodeId.__init__(self, identifier, namespace, NodeIdType.String) ExpandedNodeId = NodeId class QualifiedName(FrozenClass): """ A string qualified with a namespace index. """ ua_types = [ ('NamespaceIndex', 'UInt16'), ('Name', 'String'), ] def __init__(self, name=None, namespaceidx=0): if not isinstance(namespaceidx, int): raise UaError("namespaceidx must be an int") self.NamespaceIndex = namespaceidx self.Name = name self._freeze = True def to_string(self): return "{0}:{1}".format(self.NamespaceIndex, self.Name) @staticmethod def from_string(string): if ":" in string: try: idx, name = string.split(":", 1) idx = int(idx) except (TypeError, ValueError) as ex: raise UaStringParsingError("Error parsing string {0}".format(string), ex) else: idx = 0 name = string return QualifiedName(name, idx) def __eq__(self, bname): return isinstance(bname, QualifiedName) and self.Name == bname.Name and self.NamespaceIndex == bname.NamespaceIndex def __ne__(self, other): return not self.__eq__(other) def __lt__(self, other): if not isinstance(other, QualifiedName): raise TypeError("Cannot compare QualifiedName and {0}".format(other)) if self.NamespaceIndex == other.NamespaceIndex: return self.Name < other.Name else: return self.NamespaceIndex < other.NamespaceIndex def __str__(self): return 'QualifiedName({0}:{1})'.format(self.NamespaceIndex, self.Name) __repr__ = __str__ class LocalizedText(FrozenClass): """ A string qualified with a namespace index. """ ua_switches = { 'Locale': ('Encoding', 0), 'Text': ('Encoding', 1), } ua_types = ( ('Encoding', 'Byte'), ('Locale', 'String'), ('Text', 'String'), ) def __init__(self, text=None): self.Encoding = 0 self._text = None if text: self.Text = text self.Locale = None self._freeze = True @property def Text(self): return self._text @Text.setter def Text(self, text): if not isinstance(text, str): raise ValueError("A LocalizedText object takes a string as argument, not a {}, {}".format(type(text), text)) self._text = text if self._text: self.Encoding |= (1 << 1) def to_string(self): # FIXME: use local if self.Text is None: return "" return self.Text def __str__(self): return 'LocalizedText(' + 'Encoding:' + str(self.Encoding) + ', ' + \ 'Locale:' + str(self.Locale) + ', ' + \ 'Text:' + str(self.Text) +')' __repr__ = __str__ def __eq__(self, other): if isinstance(other, LocalizedText) and self.Locale == other.Locale and self.Text == other.Text: return True return False def __ne__(self, other): return not self.__eq__(other) class ExtensionObject(FrozenClass): """ Any UA object packed as an ExtensionObject :ivar TypeId: :vartype TypeId: NodeId :ivar Body: :vartype Body: bytes """ ua_switches = { 'Body': ('Encoding', 0), } ua_types = ( ("TypeId", "NodeId"), ("Encoding", "Byte"), ("Body", "ByteString"), ) def __init__(self): self.TypeId = NodeId() self.Encoding = 0 self.Body = None self._freeze = True def __bool__(self): return self.Body is not None __nonzero__ = __bool__ # Python2 compatibilty def __str__(self): size = len(self.Body) if self.Body is not None else None return 'ExtensionObject(' + 'TypeId:' + str(self.TypeId) + ', ' + \ 'Encoding:' + str(self.Encoding) + ', ' + str(size) + ' bytes)' __repr__ = __str__ class VariantType(Enum): """ The possible types of a variant. :ivar Null: :ivar Boolean: :ivar SByte: :ivar Byte: :ivar Int16: :ivar UInt16: :ivar Int32: :ivar UInt32: :ivar Int64: :ivar UInt64: :ivar Float: :ivar Double: :ivar String: :ivar DateTime: :ivar Guid: :ivar ByteString: :ivar XmlElement: :ivar NodeId: :ivar ExpandedNodeId: :ivar StatusCode: :ivar QualifiedName: :ivar LocalizedText: :ivar ExtensionObject: :ivar DataValue: :ivar Variant: :ivar DiagnosticInfo: """ Null = 0 Boolean = 1 SByte = 2 Byte = 3 Int16 = 4 UInt16 = 5 Int32 = 6 UInt32 = 7 Int64 = 8 UInt64 = 9 Float = 10 Double = 11 String = 12 DateTime = 13 Guid = 14 ByteString = 15 XmlElement = 16 NodeId = 17 ExpandedNodeId = 18 StatusCode = 19 QualifiedName = 20 LocalizedText = 21 ExtensionObject = 22 DataValue = 23 Variant = 24 DiagnosticInfo = 25 class VariantTypeCustom(object): """ Looks like sometime we get variant with other values than those defined in VariantType. FIXME: We should not need this class, as far as I iunderstand the spec variants can only be of VariantType """ def __init__(self, val): self.name = "Custom" self.value = val if self.value > 0b00111111: raise UaError( "Cannot create VariantType. VariantType must be {0} > x > {1}, received {2}".format(0b111111, 25, val)) def __str__(self): return "VariantType.Custom:{0}".format(self.value) __repr__ = __str__ def __eq__(self, other): return self.value == other.value class Variant(FrozenClass): """ Create an OPC-UA Variant object. if no argument a Null Variant is created. if not variant type is given, attemps to guess type from python type if a variant is given as value, the new objects becomes a copy of the argument :ivar Value: :vartype Value: Any supported type :ivar VariantType: :vartype VariantType: VariantType :ivar Dimension: :vartype Dimensions: The length of each dimensions. Usually guessed from value. :ivar is_array: :vartype is_array: If the variant is an array. Usually guessed from value. """ def __init__(self, value=None, varianttype=None, dimensions=None, is_array=None): self._freeze = False # defers validation until ready. # Value, VariantType self._value = None self._variantType = None if isinstance(value, Variant): self.Value = value.Value self.VariantType = value.VariantType else: self.Value = value self.VariantType = varianttype # Dimensions self.Dimensions = dimensions if dimensions is None and isinstance(self.Value, (list, tuple)): dims = get_shape(self.Value) if len(dims) > 1: self.Dimensions = dims # is_array if is_array is not None: self.is_array = bool(is_array) else: self.is_array = isinstance(self.Value, (list, tuple)) # Validation check self._freeze = True self._validate() @property def Value(self): return self._value @Value.setter def Value(self, value): if not (self._value is None or isinstance(value, type(self._value))): logger.warning("Datatype changed from {} to {} in Variant {}.".format(type(self._value), type(value), self)) self._value = value self._validate() @property def VariantType(self): return self._variantType @VariantType.setter def VariantType(self, variantType): if variantType is not None: self._variantType = variantType else: self._variantType = self._guess_type(self.Value) self._validate() def _validate(self): if self._freeze is False: return elif isinstance(self._value, int) and self.VariantType in (VariantType.Float, VariantType.Double): self._value = float(self._value) elif self._value is None and not self.is_array and \ self.VariantType not in (VariantType.Null, VariantType.String, VariantType.DateTime): raise UaError("Non array Variant of type {0} cannot have value None".format(self.VariantType)) def __eq__(self, other): if isinstance(other, Variant) and self.VariantType == other.VariantType and self.Value == other.Value: return True return False def __ne__(self, other): return not self.__eq__(other) def _guess_type(self, val): if isinstance(val, (list, tuple)): error_val = val while val and isinstance(val[0], (list, tuple)): val = val[0] types = {type(el) for el in val} if len(types) == 0: raise UaError("List of zero length. Could not guess UA type of variable {0}".format(error_val)) elif types == set([int, float]): logger.debug( "Variable {0} has ints and floats. UA type will be {1}".format(error_val, VariantType.Double) ) val = float() elif len(types) > 1: raise UaError("List of multiple types. Could not guess UA type of variable {0}".format(error_val)) else: val = val[0] if val is None: return VariantType.Null elif isinstance(val, bool): return VariantType.Boolean elif isinstance(val, float): return VariantType.Double elif isinstance(val, IntEnum): return VariantType.Int32 elif isinstance(val, int): return VariantType.Int64 elif isinstance(val, (str, unicode)): return VariantType.String elif isinstance(val, bytes): return VariantType.ByteString elif isinstance(val, datetime): return VariantType.DateTime elif isinstance(val, uuid.UUID): return VariantType.Guid else: if isinstance(val, object): try: return getattr(VariantType, val.__class__.__name__) except AttributeError: return VariantType.ExtensionObject else: raise UaError("Could not guess UA type of {0} with type {1}, specify UA type".format(val, type(val))) def __str__(self): return "Variant(val:{0!s},type:{1})".format(self.Value, self.VariantType) __repr__ = __str__ def _split_list(l, n): n = max(1, n) return [l[i:i + n] for i in range(0, len(l), n)] def flatten_and_get_shape(mylist): dims = [] dims.append(len(mylist)) while isinstance(mylist[0], (list, tuple)): dims.append(len(mylist[0])) mylist = [item for sublist in mylist for item in sublist] if len(mylist) == 0: break return mylist, dims def flatten(mylist): if mylist is None: return None elif len(mylist) == 0: return mylist while isinstance(mylist[0], (list, tuple)): mylist = [item for sublist in mylist for item in sublist] if len(mylist) == 0: break return mylist def get_shape(mylist): dims = [] while isinstance(mylist, (list, tuple)): dims.append(len(mylist)) if len(mylist) == 0: break mylist = mylist[0] return dims class DataValue(FrozenClass): """ A value with an associated timestamp, and quality. Automatically generated from xml , copied and modified here to fix errors in xml spec :ivar Value: :vartype Value: Variant :ivar StatusCode: :vartype StatusCode: StatusCode :ivar SourceTimestamp: :vartype SourceTimestamp: datetime :ivar SourcePicoSeconds: :vartype SourcePicoSeconds: int :ivar ServerTimestamp: :vartype ServerTimestamp: datetime :ivar ServerPicoseconds: :vartype ServerPicoseconds: int """ ua_switches = { 'Value': ('Encoding', 0), 'StatusCode': ('Encoding', 1), 'SourceTimestamp': ('Encoding', 2), 'ServerTimestamp': ('Encoding', 3), 'SourcePicoseconds': ('Encoding', 4), 'ServerPicoseconds': ('Encoding', 5), } ua_types = ( ('Encoding', 'Byte'), ('Value', 'Variant'), ('StatusCode', 'StatusCode'), ('SourceTimestamp', 'DateTime'), ('SourcePicoseconds', 'UInt16'), ('ServerTimestamp', 'DateTime'), ('ServerPicoseconds', 'UInt16'), ) def __init__(self, variant=None, status=None): self.Encoding = 0 if not isinstance(variant, Variant): variant = Variant(variant) self.Value = variant if status is None: self.StatusCode = StatusCode() else: self.StatusCode = status self.SourceTimestamp = None # DateTime() self.SourcePicoseconds = None self.ServerTimestamp = None # DateTime() self.ServerPicoseconds = None self._freeze = True def __str__(self): s = 'DataValue(Value:{0}'.format(self.Value) if self.StatusCode is not None: s += ', StatusCode:{0}'.format(self.StatusCode) if self.SourceTimestamp is not None: s += ', SourceTimestamp:{0}'.format(self.SourceTimestamp) if self.ServerTimestamp is not None: s += ', ServerTimestamp:{0}'.format(self.ServerTimestamp) if self.SourcePicoseconds is not None: s += ', SourcePicoseconds:{0}'.format(self.SourcePicoseconds) if self.ServerPicoseconds is not None: s += ', ServerPicoseconds:{0}'.format(self.ServerPicoseconds) s += ')' return s __repr__ = __str__ def datatype_to_varianttype(int_type): """ Takes a NodeId or int and return a VariantType This is only supported if int_type < 63 due to VariantType encoding At low level we do not have access to address space thus decoding is limited a better version of this method can be find in ua_utils.py """ if isinstance(int_type, NodeId): int_type = int_type.Identifier if int_type <= 25: return VariantType(int_type) else: return VariantTypeCustom(int_type) def get_default_value(vtype): """ Given a variant type return default value for this type """ if vtype == VariantType.Null: return None elif vtype == VariantType.Boolean: return False elif vtype in (VariantType.SByte, VariantType.Byte): return 0 elif vtype == VariantType.ByteString: return b"" elif 4 <= vtype.value <= 9: return 0 elif vtype in (VariantType.Float, VariantType.Double): return 0.0 elif vtype == VariantType.String: return None # a string can be null elif vtype == VariantType.DateTime: return datetime.utcnow() elif vtype == VariantType.Guid: return uuid.uuid4() elif vtype == VariantType.XmlElement: return None #Not sure this is correct elif vtype == VariantType.NodeId: return NodeId() elif vtype == VariantType.ExpandedNodeId: return NodeId() elif vtype == VariantType.StatusCode: return StatusCode() elif vtype == VariantType.QualifiedName: return QualifiedName() elif vtype == VariantType.LocalizedText: return LocalizedText() elif vtype == VariantType.ExtensionObject: return ExtensionObject() elif vtype == VariantType.DataValue: return DataValue() elif vtype == VariantType.Variant: return Variant() else: raise RuntimeError("function take a uatype as argument, got:", vtype) # These dictionnaries are used to register extensions classes for automatic # decoding and encoding extension_object_classes = {} extension_object_ids = {} def register_extension_object(name, nodeid, class_type): """ Register a new extension object for automatic decoding and make them available in ua module """ logger.info("registring new extension object: %s %s %s", name, nodeid, class_type) extension_object_classes[nodeid] = class_type extension_object_ids[name] = nodeid # FIXME: Next line is not exactly a Python best practices, so feel free to propose something else # add new extensions objects to ua modules to automate decoding import opcua.ua setattr(opcua.ua, name, class_type) def get_extensionobject_class_type(typeid): """ Returns the registered class type for typid of an extension object """ if typeid in extension_object_classes: return extension_object_classes[typeid] else: return None class SecurityPolicyType(Enum): """ The supported types of SecurityPolicy. "None" "Basic128Rsa15_Sign" "Basic128Rsa15_SignAndEncrypt" "Basic256_Sign" "Basic256_SignAndEncrypt" "Basic256Sha256_Sign" "Basic256Sha256_SignAndEncrypt" """ NoSecurity = 0 Basic128Rsa15_Sign = 1 Basic128Rsa15_SignAndEncrypt = 2 Basic256_Sign = 3 Basic256_SignAndEncrypt = 4 Basic256Sha256_Sign = 5 Basic256Sha256_SignAndEncrypt = 6 python-opcua-0.98.9/release.py000066400000000000000000000022551357637245100162620ustar00rootroot00000000000000import re import os def bump_version(): with open("setup.py") as f: s = f.read() m = re.search(r'version="(.*)\.(.*)\.(.*)",', s) v1, v2, v3 = m.groups() oldv = "{0}.{1}.{2}".format(v1, v2, v3) newv = "{0}.{1}.{2}".format(v1, v2, str(int(v3) + 1)) print("Current version is: {0}, write new version, ctrl-c to exit".format(oldv)) ans = input(newv) if ans: newv = ans s = s.replace(oldv, newv) with open("setup.py", "w") as f: f.write(s) return newv def release(): v = bump_version() ans = input("version bumped, commiting?(Y/n)") if ans in ("", "y", "yes"): os.system("git add setup.py") os.system("git commit -m 'new release'") os.system("git tag {0}".format(v)) ans = input("change committed, push to server?(Y/n)") if ans in ("", "y", "yes"): os.system("git push") os.system("git push --tags") ans = input("upload to pip?(Y/n)") if ans in ("", "y", "yes"): os.system("rm -rf dist/*") os.system("python setup.py sdist") os.system("twine upload dist/*") if __name__ == "__main__": release() python-opcua-0.98.9/run-tests.sh000077500000000000000000000000401357637245100165610ustar00rootroot00000000000000#!/bin/sh python tests/tests.py python-opcua-0.98.9/schemas/000077500000000000000000000000001357637245100157075ustar00rootroot00000000000000python-opcua-0.98.9/schemas/AttributeIds.csv000066400000000000000000000006561357637245100210360ustar00rootroot00000000000000NodeId,1 NodeClass,2 BrowseName,3 DisplayName,4 Description,5 WriteMask,6 UserWriteMask,7 IsAbstract,8 Symmetric,9 InverseName,10 ContainsNoLoops,11 EventNotifier,12 Value,13 DataType,14 ValueRank,15 ArrayDimensions,16 AccessLevel,17 UserAccessLevel,18 MinimumSamplingInterval,19 Historizing,20 Executable,21 UserExecutable,22 DataTypeDefinition,23 RolePermissions,24 UserRolePermissions,25 AccessRestrictions,26 AccessLevelEx,27 python-opcua-0.98.9/schemas/NodeIds.csv000066400000000000000000024724601357637245100177700ustar00rootroot00000000000000Boolean,1,DataType SByte,2,DataType Byte,3,DataType Int16,4,DataType UInt16,5,DataType Int32,6,DataType UInt32,7,DataType Int64,8,DataType UInt64,9,DataType Float,10,DataType Double,11,DataType String,12,DataType DateTime,13,DataType Guid,14,DataType ByteString,15,DataType XmlElement,16,DataType NodeId,17,DataType ExpandedNodeId,18,DataType StatusCode,19,DataType QualifiedName,20,DataType LocalizedText,21,DataType Structure,22,DataType DataValue,23,DataType BaseDataType,24,DataType DiagnosticInfo,25,DataType Number,26,DataType Integer,27,DataType UInteger,28,DataType Enumeration,29,DataType Image,30,DataType References,31,ReferenceType NonHierarchicalReferences,32,ReferenceType HierarchicalReferences,33,ReferenceType HasChild,34,ReferenceType Organizes,35,ReferenceType HasEventSource,36,ReferenceType HasModellingRule,37,ReferenceType HasEncoding,38,ReferenceType HasDescription,39,ReferenceType HasTypeDefinition,40,ReferenceType GeneratesEvent,41,ReferenceType Aggregates,44,ReferenceType HasSubtype,45,ReferenceType HasProperty,46,ReferenceType HasComponent,47,ReferenceType HasNotifier,48,ReferenceType HasOrderedComponent,49,ReferenceType Decimal,50,DataType FromState,51,ReferenceType ToState,52,ReferenceType HasCause,53,ReferenceType HasEffect,54,ReferenceType HasHistoricalConfiguration,56,ReferenceType BaseObjectType,58,ObjectType FolderType,61,ObjectType BaseVariableType,62,VariableType BaseDataVariableType,63,VariableType PropertyType,68,VariableType DataTypeDescriptionType,69,VariableType DataTypeDictionaryType,72,VariableType DataTypeSystemType,75,ObjectType DataTypeEncodingType,76,ObjectType ModellingRuleType,77,ObjectType ModellingRule_Mandatory,78,Object ModellingRule_MandatoryShared,79,Object ModellingRule_Optional,80,Object ModellingRule_ExposesItsArray,83,Object RootFolder,84,Object ObjectsFolder,85,Object TypesFolder,86,Object ViewsFolder,87,Object ObjectTypesFolder,88,Object VariableTypesFolder,89,Object DataTypesFolder,90,Object ReferenceTypesFolder,91,Object XmlSchema_TypeSystem,92,Object OPCBinarySchema_TypeSystem,93,Object PermissionType,94,DataType AccessRestrictionType,95,DataType RolePermissionType,96,DataType DataTypeDefinition,97,DataType StructureType,98,DataType StructureDefinition,99,DataType EnumDefinition,100,DataType StructureField,101,DataType EnumField,102,DataType DataTypeDescriptionType_DataTypeVersion,104,Variable DataTypeDescriptionType_DictionaryFragment,105,Variable DataTypeDictionaryType_DataTypeVersion,106,Variable DataTypeDictionaryType_NamespaceUri,107,Variable ModellingRuleType_NamingRule,111,Variable ModellingRule_Mandatory_NamingRule,112,Variable ModellingRule_Optional_NamingRule,113,Variable ModellingRule_ExposesItsArray_NamingRule,114,Variable ModellingRule_MandatoryShared_NamingRule,116,Variable HasSubStateMachine,117,ReferenceType NamingRuleType,120,DataType DataTypeDefinition_Encoding_DefaultBinary,121,Object StructureDefinition_Encoding_DefaultBinary,122,Object EnumDefinition_Encoding_DefaultBinary,123,Object DataSetMetaDataType_Encoding_DefaultBinary,124,Object DataTypeDescription_Encoding_DefaultBinary,125,Object StructureDescription_Encoding_DefaultBinary,126,Object EnumDescription_Encoding_DefaultBinary,127,Object RolePermissionType_Encoding_DefaultBinary,128,Object IdType,256,DataType NodeClass,257,DataType Node,258,DataType Node_Encoding_DefaultXml,259,Object Node_Encoding_DefaultBinary,260,Object ObjectNode,261,DataType ObjectNode_Encoding_DefaultXml,262,Object ObjectNode_Encoding_DefaultBinary,263,Object ObjectTypeNode,264,DataType ObjectTypeNode_Encoding_DefaultXml,265,Object ObjectTypeNode_Encoding_DefaultBinary,266,Object VariableNode,267,DataType VariableNode_Encoding_DefaultXml,268,Object VariableNode_Encoding_DefaultBinary,269,Object VariableTypeNode,270,DataType VariableTypeNode_Encoding_DefaultXml,271,Object VariableTypeNode_Encoding_DefaultBinary,272,Object ReferenceTypeNode,273,DataType ReferenceTypeNode_Encoding_DefaultXml,274,Object ReferenceTypeNode_Encoding_DefaultBinary,275,Object MethodNode,276,DataType MethodNode_Encoding_DefaultXml,277,Object MethodNode_Encoding_DefaultBinary,278,Object ViewNode,279,DataType ViewNode_Encoding_DefaultXml,280,Object ViewNode_Encoding_DefaultBinary,281,Object DataTypeNode,282,DataType DataTypeNode_Encoding_DefaultXml,283,Object DataTypeNode_Encoding_DefaultBinary,284,Object ReferenceNode,285,DataType ReferenceNode_Encoding_DefaultXml,286,Object ReferenceNode_Encoding_DefaultBinary,287,Object IntegerId,288,DataType Counter,289,DataType Duration,290,DataType NumericRange,291,DataType Time,292,DataType Date,293,DataType UtcTime,294,DataType LocaleId,295,DataType Argument,296,DataType Argument_Encoding_DefaultXml,297,Object Argument_Encoding_DefaultBinary,298,Object StatusResult,299,DataType StatusResult_Encoding_DefaultXml,300,Object StatusResult_Encoding_DefaultBinary,301,Object MessageSecurityMode,302,DataType UserTokenType,303,DataType UserTokenPolicy,304,DataType UserTokenPolicy_Encoding_DefaultXml,305,Object UserTokenPolicy_Encoding_DefaultBinary,306,Object ApplicationType,307,DataType ApplicationDescription,308,DataType ApplicationDescription_Encoding_DefaultXml,309,Object ApplicationDescription_Encoding_DefaultBinary,310,Object ApplicationInstanceCertificate,311,DataType EndpointDescription,312,DataType EndpointDescription_Encoding_DefaultXml,313,Object EndpointDescription_Encoding_DefaultBinary,314,Object SecurityTokenRequestType,315,DataType UserIdentityToken,316,DataType UserIdentityToken_Encoding_DefaultXml,317,Object UserIdentityToken_Encoding_DefaultBinary,318,Object AnonymousIdentityToken,319,DataType AnonymousIdentityToken_Encoding_DefaultXml,320,Object AnonymousIdentityToken_Encoding_DefaultBinary,321,Object UserNameIdentityToken,322,DataType UserNameIdentityToken_Encoding_DefaultXml,323,Object UserNameIdentityToken_Encoding_DefaultBinary,324,Object X509IdentityToken,325,DataType X509IdentityToken_Encoding_DefaultXml,326,Object X509IdentityToken_Encoding_DefaultBinary,327,Object EndpointConfiguration,331,DataType EndpointConfiguration_Encoding_DefaultXml,332,Object EndpointConfiguration_Encoding_DefaultBinary,333,Object BuildInfo,338,DataType BuildInfo_Encoding_DefaultXml,339,Object BuildInfo_Encoding_DefaultBinary,340,Object SignedSoftwareCertificate,344,DataType SignedSoftwareCertificate_Encoding_DefaultXml,345,Object SignedSoftwareCertificate_Encoding_DefaultBinary,346,Object AttributeWriteMask,347,DataType NodeAttributesMask,348,DataType NodeAttributes,349,DataType NodeAttributes_Encoding_DefaultXml,350,Object NodeAttributes_Encoding_DefaultBinary,351,Object ObjectAttributes,352,DataType ObjectAttributes_Encoding_DefaultXml,353,Object ObjectAttributes_Encoding_DefaultBinary,354,Object VariableAttributes,355,DataType VariableAttributes_Encoding_DefaultXml,356,Object VariableAttributes_Encoding_DefaultBinary,357,Object MethodAttributes,358,DataType MethodAttributes_Encoding_DefaultXml,359,Object MethodAttributes_Encoding_DefaultBinary,360,Object ObjectTypeAttributes,361,DataType ObjectTypeAttributes_Encoding_DefaultXml,362,Object ObjectTypeAttributes_Encoding_DefaultBinary,363,Object VariableTypeAttributes,364,DataType VariableTypeAttributes_Encoding_DefaultXml,365,Object VariableTypeAttributes_Encoding_DefaultBinary,366,Object ReferenceTypeAttributes,367,DataType ReferenceTypeAttributes_Encoding_DefaultXml,368,Object ReferenceTypeAttributes_Encoding_DefaultBinary,369,Object DataTypeAttributes,370,DataType DataTypeAttributes_Encoding_DefaultXml,371,Object DataTypeAttributes_Encoding_DefaultBinary,372,Object ViewAttributes,373,DataType ViewAttributes_Encoding_DefaultXml,374,Object ViewAttributes_Encoding_DefaultBinary,375,Object AddNodesItem,376,DataType AddNodesItem_Encoding_DefaultXml,377,Object AddNodesItem_Encoding_DefaultBinary,378,Object AddReferencesItem,379,DataType AddReferencesItem_Encoding_DefaultXml,380,Object AddReferencesItem_Encoding_DefaultBinary,381,Object DeleteNodesItem,382,DataType DeleteNodesItem_Encoding_DefaultXml,383,Object DeleteNodesItem_Encoding_DefaultBinary,384,Object DeleteReferencesItem,385,DataType DeleteReferencesItem_Encoding_DefaultXml,386,Object DeleteReferencesItem_Encoding_DefaultBinary,387,Object SessionAuthenticationToken,388,DataType RequestHeader,389,DataType RequestHeader_Encoding_DefaultXml,390,Object RequestHeader_Encoding_DefaultBinary,391,Object ResponseHeader,392,DataType ResponseHeader_Encoding_DefaultXml,393,Object ResponseHeader_Encoding_DefaultBinary,394,Object ServiceFault,395,DataType ServiceFault_Encoding_DefaultXml,396,Object ServiceFault_Encoding_DefaultBinary,397,Object FindServersRequest,420,DataType FindServersRequest_Encoding_DefaultXml,421,Object FindServersRequest_Encoding_DefaultBinary,422,Object FindServersResponse,423,DataType FindServersResponse_Encoding_DefaultXml,424,Object FindServersResponse_Encoding_DefaultBinary,425,Object GetEndpointsRequest,426,DataType GetEndpointsRequest_Encoding_DefaultXml,427,Object GetEndpointsRequest_Encoding_DefaultBinary,428,Object GetEndpointsResponse,429,DataType GetEndpointsResponse_Encoding_DefaultXml,430,Object GetEndpointsResponse_Encoding_DefaultBinary,431,Object RegisteredServer,432,DataType RegisteredServer_Encoding_DefaultXml,433,Object RegisteredServer_Encoding_DefaultBinary,434,Object RegisterServerRequest,435,DataType RegisterServerRequest_Encoding_DefaultXml,436,Object RegisterServerRequest_Encoding_DefaultBinary,437,Object RegisterServerResponse,438,DataType RegisterServerResponse_Encoding_DefaultXml,439,Object RegisterServerResponse_Encoding_DefaultBinary,440,Object ChannelSecurityToken,441,DataType ChannelSecurityToken_Encoding_DefaultXml,442,Object ChannelSecurityToken_Encoding_DefaultBinary,443,Object OpenSecureChannelRequest,444,DataType OpenSecureChannelRequest_Encoding_DefaultXml,445,Object OpenSecureChannelRequest_Encoding_DefaultBinary,446,Object OpenSecureChannelResponse,447,DataType OpenSecureChannelResponse_Encoding_DefaultXml,448,Object OpenSecureChannelResponse_Encoding_DefaultBinary,449,Object CloseSecureChannelRequest,450,DataType CloseSecureChannelRequest_Encoding_DefaultXml,451,Object CloseSecureChannelRequest_Encoding_DefaultBinary,452,Object CloseSecureChannelResponse,453,DataType CloseSecureChannelResponse_Encoding_DefaultXml,454,Object CloseSecureChannelResponse_Encoding_DefaultBinary,455,Object SignatureData,456,DataType SignatureData_Encoding_DefaultXml,457,Object SignatureData_Encoding_DefaultBinary,458,Object CreateSessionRequest,459,DataType CreateSessionRequest_Encoding_DefaultXml,460,Object CreateSessionRequest_Encoding_DefaultBinary,461,Object CreateSessionResponse,462,DataType CreateSessionResponse_Encoding_DefaultXml,463,Object CreateSessionResponse_Encoding_DefaultBinary,464,Object ActivateSessionRequest,465,DataType ActivateSessionRequest_Encoding_DefaultXml,466,Object ActivateSessionRequest_Encoding_DefaultBinary,467,Object ActivateSessionResponse,468,DataType ActivateSessionResponse_Encoding_DefaultXml,469,Object ActivateSessionResponse_Encoding_DefaultBinary,470,Object CloseSessionRequest,471,DataType CloseSessionRequest_Encoding_DefaultXml,472,Object CloseSessionRequest_Encoding_DefaultBinary,473,Object CloseSessionResponse,474,DataType CloseSessionResponse_Encoding_DefaultXml,475,Object CloseSessionResponse_Encoding_DefaultBinary,476,Object CancelRequest,477,DataType CancelRequest_Encoding_DefaultXml,478,Object CancelRequest_Encoding_DefaultBinary,479,Object CancelResponse,480,DataType CancelResponse_Encoding_DefaultXml,481,Object CancelResponse_Encoding_DefaultBinary,482,Object AddNodesResult,483,DataType AddNodesResult_Encoding_DefaultXml,484,Object AddNodesResult_Encoding_DefaultBinary,485,Object AddNodesRequest,486,DataType AddNodesRequest_Encoding_DefaultXml,487,Object AddNodesRequest_Encoding_DefaultBinary,488,Object AddNodesResponse,489,DataType AddNodesResponse_Encoding_DefaultXml,490,Object AddNodesResponse_Encoding_DefaultBinary,491,Object AddReferencesRequest,492,DataType AddReferencesRequest_Encoding_DefaultXml,493,Object AddReferencesRequest_Encoding_DefaultBinary,494,Object AddReferencesResponse,495,DataType AddReferencesResponse_Encoding_DefaultXml,496,Object AddReferencesResponse_Encoding_DefaultBinary,497,Object DeleteNodesRequest,498,DataType DeleteNodesRequest_Encoding_DefaultXml,499,Object DeleteNodesRequest_Encoding_DefaultBinary,500,Object DeleteNodesResponse,501,DataType DeleteNodesResponse_Encoding_DefaultXml,502,Object DeleteNodesResponse_Encoding_DefaultBinary,503,Object DeleteReferencesRequest,504,DataType DeleteReferencesRequest_Encoding_DefaultXml,505,Object DeleteReferencesRequest_Encoding_DefaultBinary,506,Object DeleteReferencesResponse,507,DataType DeleteReferencesResponse_Encoding_DefaultXml,508,Object DeleteReferencesResponse_Encoding_DefaultBinary,509,Object BrowseDirection,510,DataType ViewDescription,511,DataType ViewDescription_Encoding_DefaultXml,512,Object ViewDescription_Encoding_DefaultBinary,513,Object BrowseDescription,514,DataType BrowseDescription_Encoding_DefaultXml,515,Object BrowseDescription_Encoding_DefaultBinary,516,Object BrowseResultMask,517,DataType ReferenceDescription,518,DataType ReferenceDescription_Encoding_DefaultXml,519,Object ReferenceDescription_Encoding_DefaultBinary,520,Object ContinuationPoint,521,DataType BrowseResult,522,DataType BrowseResult_Encoding_DefaultXml,523,Object BrowseResult_Encoding_DefaultBinary,524,Object BrowseRequest,525,DataType BrowseRequest_Encoding_DefaultXml,526,Object BrowseRequest_Encoding_DefaultBinary,527,Object BrowseResponse,528,DataType BrowseResponse_Encoding_DefaultXml,529,Object BrowseResponse_Encoding_DefaultBinary,530,Object BrowseNextRequest,531,DataType BrowseNextRequest_Encoding_DefaultXml,532,Object BrowseNextRequest_Encoding_DefaultBinary,533,Object BrowseNextResponse,534,DataType BrowseNextResponse_Encoding_DefaultXml,535,Object BrowseNextResponse_Encoding_DefaultBinary,536,Object RelativePathElement,537,DataType RelativePathElement_Encoding_DefaultXml,538,Object RelativePathElement_Encoding_DefaultBinary,539,Object RelativePath,540,DataType RelativePath_Encoding_DefaultXml,541,Object RelativePath_Encoding_DefaultBinary,542,Object BrowsePath,543,DataType BrowsePath_Encoding_DefaultXml,544,Object BrowsePath_Encoding_DefaultBinary,545,Object BrowsePathTarget,546,DataType BrowsePathTarget_Encoding_DefaultXml,547,Object BrowsePathTarget_Encoding_DefaultBinary,548,Object BrowsePathResult,549,DataType BrowsePathResult_Encoding_DefaultXml,550,Object BrowsePathResult_Encoding_DefaultBinary,551,Object TranslateBrowsePathsToNodeIdsRequest,552,DataType TranslateBrowsePathsToNodeIdsRequest_Encoding_DefaultXml,553,Object TranslateBrowsePathsToNodeIdsRequest_Encoding_DefaultBinary,554,Object TranslateBrowsePathsToNodeIdsResponse,555,DataType TranslateBrowsePathsToNodeIdsResponse_Encoding_DefaultXml,556,Object TranslateBrowsePathsToNodeIdsResponse_Encoding_DefaultBinary,557,Object RegisterNodesRequest,558,DataType RegisterNodesRequest_Encoding_DefaultXml,559,Object RegisterNodesRequest_Encoding_DefaultBinary,560,Object RegisterNodesResponse,561,DataType RegisterNodesResponse_Encoding_DefaultXml,562,Object RegisterNodesResponse_Encoding_DefaultBinary,563,Object UnregisterNodesRequest,564,DataType UnregisterNodesRequest_Encoding_DefaultXml,565,Object UnregisterNodesRequest_Encoding_DefaultBinary,566,Object UnregisterNodesResponse,567,DataType UnregisterNodesResponse_Encoding_DefaultXml,568,Object UnregisterNodesResponse_Encoding_DefaultBinary,569,Object QueryDataDescription,570,DataType QueryDataDescription_Encoding_DefaultXml,571,Object QueryDataDescription_Encoding_DefaultBinary,572,Object NodeTypeDescription,573,DataType NodeTypeDescription_Encoding_DefaultXml,574,Object NodeTypeDescription_Encoding_DefaultBinary,575,Object FilterOperator,576,DataType QueryDataSet,577,DataType QueryDataSet_Encoding_DefaultXml,578,Object QueryDataSet_Encoding_DefaultBinary,579,Object NodeReference,580,DataType NodeReference_Encoding_DefaultXml,581,Object NodeReference_Encoding_DefaultBinary,582,Object ContentFilterElement,583,DataType ContentFilterElement_Encoding_DefaultXml,584,Object ContentFilterElement_Encoding_DefaultBinary,585,Object ContentFilter,586,DataType ContentFilter_Encoding_DefaultXml,587,Object ContentFilter_Encoding_DefaultBinary,588,Object FilterOperand,589,DataType FilterOperand_Encoding_DefaultXml,590,Object FilterOperand_Encoding_DefaultBinary,591,Object ElementOperand,592,DataType ElementOperand_Encoding_DefaultXml,593,Object ElementOperand_Encoding_DefaultBinary,594,Object LiteralOperand,595,DataType LiteralOperand_Encoding_DefaultXml,596,Object LiteralOperand_Encoding_DefaultBinary,597,Object AttributeOperand,598,DataType AttributeOperand_Encoding_DefaultXml,599,Object AttributeOperand_Encoding_DefaultBinary,600,Object SimpleAttributeOperand,601,DataType SimpleAttributeOperand_Encoding_DefaultXml,602,Object SimpleAttributeOperand_Encoding_DefaultBinary,603,Object ContentFilterElementResult,604,DataType ContentFilterElementResult_Encoding_DefaultXml,605,Object ContentFilterElementResult_Encoding_DefaultBinary,606,Object ContentFilterResult,607,DataType ContentFilterResult_Encoding_DefaultXml,608,Object ContentFilterResult_Encoding_DefaultBinary,609,Object ParsingResult,610,DataType ParsingResult_Encoding_DefaultXml,611,Object ParsingResult_Encoding_DefaultBinary,612,Object QueryFirstRequest,613,DataType QueryFirstRequest_Encoding_DefaultXml,614,Object QueryFirstRequest_Encoding_DefaultBinary,615,Object QueryFirstResponse,616,DataType QueryFirstResponse_Encoding_DefaultXml,617,Object QueryFirstResponse_Encoding_DefaultBinary,618,Object QueryNextRequest,619,DataType QueryNextRequest_Encoding_DefaultXml,620,Object QueryNextRequest_Encoding_DefaultBinary,621,Object QueryNextResponse,622,DataType QueryNextResponse_Encoding_DefaultXml,623,Object QueryNextResponse_Encoding_DefaultBinary,624,Object TimestampsToReturn,625,DataType ReadValueId,626,DataType ReadValueId_Encoding_DefaultXml,627,Object ReadValueId_Encoding_DefaultBinary,628,Object ReadRequest,629,DataType ReadRequest_Encoding_DefaultXml,630,Object ReadRequest_Encoding_DefaultBinary,631,Object ReadResponse,632,DataType ReadResponse_Encoding_DefaultXml,633,Object ReadResponse_Encoding_DefaultBinary,634,Object HistoryReadValueId,635,DataType HistoryReadValueId_Encoding_DefaultXml,636,Object HistoryReadValueId_Encoding_DefaultBinary,637,Object HistoryReadResult,638,DataType HistoryReadResult_Encoding_DefaultXml,639,Object HistoryReadResult_Encoding_DefaultBinary,640,Object HistoryReadDetails,641,DataType HistoryReadDetails_Encoding_DefaultXml,642,Object HistoryReadDetails_Encoding_DefaultBinary,643,Object ReadEventDetails,644,DataType ReadEventDetails_Encoding_DefaultXml,645,Object ReadEventDetails_Encoding_DefaultBinary,646,Object ReadRawModifiedDetails,647,DataType ReadRawModifiedDetails_Encoding_DefaultXml,648,Object ReadRawModifiedDetails_Encoding_DefaultBinary,649,Object ReadProcessedDetails,650,DataType ReadProcessedDetails_Encoding_DefaultXml,651,Object ReadProcessedDetails_Encoding_DefaultBinary,652,Object ReadAtTimeDetails,653,DataType ReadAtTimeDetails_Encoding_DefaultXml,654,Object ReadAtTimeDetails_Encoding_DefaultBinary,655,Object HistoryData,656,DataType HistoryData_Encoding_DefaultXml,657,Object HistoryData_Encoding_DefaultBinary,658,Object HistoryEvent,659,DataType HistoryEvent_Encoding_DefaultXml,660,Object HistoryEvent_Encoding_DefaultBinary,661,Object HistoryReadRequest,662,DataType HistoryReadRequest_Encoding_DefaultXml,663,Object HistoryReadRequest_Encoding_DefaultBinary,664,Object HistoryReadResponse,665,DataType HistoryReadResponse_Encoding_DefaultXml,666,Object HistoryReadResponse_Encoding_DefaultBinary,667,Object WriteValue,668,DataType WriteValue_Encoding_DefaultXml,669,Object WriteValue_Encoding_DefaultBinary,670,Object WriteRequest,671,DataType WriteRequest_Encoding_DefaultXml,672,Object WriteRequest_Encoding_DefaultBinary,673,Object WriteResponse,674,DataType WriteResponse_Encoding_DefaultXml,675,Object WriteResponse_Encoding_DefaultBinary,676,Object HistoryUpdateDetails,677,DataType HistoryUpdateDetails_Encoding_DefaultXml,678,Object HistoryUpdateDetails_Encoding_DefaultBinary,679,Object UpdateDataDetails,680,DataType UpdateDataDetails_Encoding_DefaultXml,681,Object UpdateDataDetails_Encoding_DefaultBinary,682,Object UpdateEventDetails,683,DataType UpdateEventDetails_Encoding_DefaultXml,684,Object UpdateEventDetails_Encoding_DefaultBinary,685,Object DeleteRawModifiedDetails,686,DataType DeleteRawModifiedDetails_Encoding_DefaultXml,687,Object DeleteRawModifiedDetails_Encoding_DefaultBinary,688,Object DeleteAtTimeDetails,689,DataType DeleteAtTimeDetails_Encoding_DefaultXml,690,Object DeleteAtTimeDetails_Encoding_DefaultBinary,691,Object DeleteEventDetails,692,DataType DeleteEventDetails_Encoding_DefaultXml,693,Object DeleteEventDetails_Encoding_DefaultBinary,694,Object HistoryUpdateResult,695,DataType HistoryUpdateResult_Encoding_DefaultXml,696,Object HistoryUpdateResult_Encoding_DefaultBinary,697,Object HistoryUpdateRequest,698,DataType HistoryUpdateRequest_Encoding_DefaultXml,699,Object HistoryUpdateRequest_Encoding_DefaultBinary,700,Object HistoryUpdateResponse,701,DataType HistoryUpdateResponse_Encoding_DefaultXml,702,Object HistoryUpdateResponse_Encoding_DefaultBinary,703,Object CallMethodRequest,704,DataType CallMethodRequest_Encoding_DefaultXml,705,Object CallMethodRequest_Encoding_DefaultBinary,706,Object CallMethodResult,707,DataType CallMethodResult_Encoding_DefaultXml,708,Object CallMethodResult_Encoding_DefaultBinary,709,Object CallRequest,710,DataType CallRequest_Encoding_DefaultXml,711,Object CallRequest_Encoding_DefaultBinary,712,Object CallResponse,713,DataType CallResponse_Encoding_DefaultXml,714,Object CallResponse_Encoding_DefaultBinary,715,Object MonitoringMode,716,DataType DataChangeTrigger,717,DataType DeadbandType,718,DataType MonitoringFilter,719,DataType MonitoringFilter_Encoding_DefaultXml,720,Object MonitoringFilter_Encoding_DefaultBinary,721,Object DataChangeFilter,722,DataType DataChangeFilter_Encoding_DefaultXml,723,Object DataChangeFilter_Encoding_DefaultBinary,724,Object EventFilter,725,DataType EventFilter_Encoding_DefaultXml,726,Object EventFilter_Encoding_DefaultBinary,727,Object AggregateFilter,728,DataType AggregateFilter_Encoding_DefaultXml,729,Object AggregateFilter_Encoding_DefaultBinary,730,Object MonitoringFilterResult,731,DataType MonitoringFilterResult_Encoding_DefaultXml,732,Object MonitoringFilterResult_Encoding_DefaultBinary,733,Object EventFilterResult,734,DataType EventFilterResult_Encoding_DefaultXml,735,Object EventFilterResult_Encoding_DefaultBinary,736,Object AggregateFilterResult,737,DataType AggregateFilterResult_Encoding_DefaultXml,738,Object AggregateFilterResult_Encoding_DefaultBinary,739,Object MonitoringParameters,740,DataType MonitoringParameters_Encoding_DefaultXml,741,Object MonitoringParameters_Encoding_DefaultBinary,742,Object MonitoredItemCreateRequest,743,DataType MonitoredItemCreateRequest_Encoding_DefaultXml,744,Object MonitoredItemCreateRequest_Encoding_DefaultBinary,745,Object MonitoredItemCreateResult,746,DataType MonitoredItemCreateResult_Encoding_DefaultXml,747,Object MonitoredItemCreateResult_Encoding_DefaultBinary,748,Object CreateMonitoredItemsRequest,749,DataType CreateMonitoredItemsRequest_Encoding_DefaultXml,750,Object CreateMonitoredItemsRequest_Encoding_DefaultBinary,751,Object CreateMonitoredItemsResponse,752,DataType CreateMonitoredItemsResponse_Encoding_DefaultXml,753,Object CreateMonitoredItemsResponse_Encoding_DefaultBinary,754,Object MonitoredItemModifyRequest,755,DataType MonitoredItemModifyRequest_Encoding_DefaultXml,756,Object MonitoredItemModifyRequest_Encoding_DefaultBinary,757,Object MonitoredItemModifyResult,758,DataType MonitoredItemModifyResult_Encoding_DefaultXml,759,Object MonitoredItemModifyResult_Encoding_DefaultBinary,760,Object ModifyMonitoredItemsRequest,761,DataType ModifyMonitoredItemsRequest_Encoding_DefaultXml,762,Object ModifyMonitoredItemsRequest_Encoding_DefaultBinary,763,Object ModifyMonitoredItemsResponse,764,DataType ModifyMonitoredItemsResponse_Encoding_DefaultXml,765,Object ModifyMonitoredItemsResponse_Encoding_DefaultBinary,766,Object SetMonitoringModeRequest,767,DataType SetMonitoringModeRequest_Encoding_DefaultXml,768,Object SetMonitoringModeRequest_Encoding_DefaultBinary,769,Object SetMonitoringModeResponse,770,DataType SetMonitoringModeResponse_Encoding_DefaultXml,771,Object SetMonitoringModeResponse_Encoding_DefaultBinary,772,Object SetTriggeringRequest,773,DataType SetTriggeringRequest_Encoding_DefaultXml,774,Object SetTriggeringRequest_Encoding_DefaultBinary,775,Object SetTriggeringResponse,776,DataType SetTriggeringResponse_Encoding_DefaultXml,777,Object SetTriggeringResponse_Encoding_DefaultBinary,778,Object DeleteMonitoredItemsRequest,779,DataType DeleteMonitoredItemsRequest_Encoding_DefaultXml,780,Object DeleteMonitoredItemsRequest_Encoding_DefaultBinary,781,Object DeleteMonitoredItemsResponse,782,DataType DeleteMonitoredItemsResponse_Encoding_DefaultXml,783,Object DeleteMonitoredItemsResponse_Encoding_DefaultBinary,784,Object CreateSubscriptionRequest,785,DataType CreateSubscriptionRequest_Encoding_DefaultXml,786,Object CreateSubscriptionRequest_Encoding_DefaultBinary,787,Object CreateSubscriptionResponse,788,DataType CreateSubscriptionResponse_Encoding_DefaultXml,789,Object CreateSubscriptionResponse_Encoding_DefaultBinary,790,Object ModifySubscriptionRequest,791,DataType ModifySubscriptionRequest_Encoding_DefaultXml,792,Object ModifySubscriptionRequest_Encoding_DefaultBinary,793,Object ModifySubscriptionResponse,794,DataType ModifySubscriptionResponse_Encoding_DefaultXml,795,Object ModifySubscriptionResponse_Encoding_DefaultBinary,796,Object SetPublishingModeRequest,797,DataType SetPublishingModeRequest_Encoding_DefaultXml,798,Object SetPublishingModeRequest_Encoding_DefaultBinary,799,Object SetPublishingModeResponse,800,DataType SetPublishingModeResponse_Encoding_DefaultXml,801,Object SetPublishingModeResponse_Encoding_DefaultBinary,802,Object NotificationMessage,803,DataType NotificationMessage_Encoding_DefaultXml,804,Object NotificationMessage_Encoding_DefaultBinary,805,Object MonitoredItemNotification,806,DataType MonitoredItemNotification_Encoding_DefaultXml,807,Object MonitoredItemNotification_Encoding_DefaultBinary,808,Object DataChangeNotification,809,DataType DataChangeNotification_Encoding_DefaultXml,810,Object DataChangeNotification_Encoding_DefaultBinary,811,Object StatusChangeNotification,818,DataType StatusChangeNotification_Encoding_DefaultXml,819,Object StatusChangeNotification_Encoding_DefaultBinary,820,Object SubscriptionAcknowledgement,821,DataType SubscriptionAcknowledgement_Encoding_DefaultXml,822,Object SubscriptionAcknowledgement_Encoding_DefaultBinary,823,Object PublishRequest,824,DataType PublishRequest_Encoding_DefaultXml,825,Object PublishRequest_Encoding_DefaultBinary,826,Object PublishResponse,827,DataType PublishResponse_Encoding_DefaultXml,828,Object PublishResponse_Encoding_DefaultBinary,829,Object RepublishRequest,830,DataType RepublishRequest_Encoding_DefaultXml,831,Object RepublishRequest_Encoding_DefaultBinary,832,Object RepublishResponse,833,DataType RepublishResponse_Encoding_DefaultXml,834,Object RepublishResponse_Encoding_DefaultBinary,835,Object TransferResult,836,DataType TransferResult_Encoding_DefaultXml,837,Object TransferResult_Encoding_DefaultBinary,838,Object TransferSubscriptionsRequest,839,DataType TransferSubscriptionsRequest_Encoding_DefaultXml,840,Object TransferSubscriptionsRequest_Encoding_DefaultBinary,841,Object TransferSubscriptionsResponse,842,DataType TransferSubscriptionsResponse_Encoding_DefaultXml,843,Object TransferSubscriptionsResponse_Encoding_DefaultBinary,844,Object DeleteSubscriptionsRequest,845,DataType DeleteSubscriptionsRequest_Encoding_DefaultXml,846,Object DeleteSubscriptionsRequest_Encoding_DefaultBinary,847,Object DeleteSubscriptionsResponse,848,DataType DeleteSubscriptionsResponse_Encoding_DefaultXml,849,Object DeleteSubscriptionsResponse_Encoding_DefaultBinary,850,Object RedundancySupport,851,DataType ServerState,852,DataType RedundantServerDataType,853,DataType RedundantServerDataType_Encoding_DefaultXml,854,Object RedundantServerDataType_Encoding_DefaultBinary,855,Object SamplingIntervalDiagnosticsDataType,856,DataType SamplingIntervalDiagnosticsDataType_Encoding_DefaultXml,857,Object SamplingIntervalDiagnosticsDataType_Encoding_DefaultBinary,858,Object ServerDiagnosticsSummaryDataType,859,DataType ServerDiagnosticsSummaryDataType_Encoding_DefaultXml,860,Object ServerDiagnosticsSummaryDataType_Encoding_DefaultBinary,861,Object ServerStatusDataType,862,DataType ServerStatusDataType_Encoding_DefaultXml,863,Object ServerStatusDataType_Encoding_DefaultBinary,864,Object SessionDiagnosticsDataType,865,DataType SessionDiagnosticsDataType_Encoding_DefaultXml,866,Object SessionDiagnosticsDataType_Encoding_DefaultBinary,867,Object SessionSecurityDiagnosticsDataType,868,DataType SessionSecurityDiagnosticsDataType_Encoding_DefaultXml,869,Object SessionSecurityDiagnosticsDataType_Encoding_DefaultBinary,870,Object ServiceCounterDataType,871,DataType ServiceCounterDataType_Encoding_DefaultXml,872,Object ServiceCounterDataType_Encoding_DefaultBinary,873,Object SubscriptionDiagnosticsDataType,874,DataType SubscriptionDiagnosticsDataType_Encoding_DefaultXml,875,Object SubscriptionDiagnosticsDataType_Encoding_DefaultBinary,876,Object ModelChangeStructureDataType,877,DataType ModelChangeStructureDataType_Encoding_DefaultXml,878,Object ModelChangeStructureDataType_Encoding_DefaultBinary,879,Object Range,884,DataType Range_Encoding_DefaultXml,885,Object Range_Encoding_DefaultBinary,886,Object EUInformation,887,DataType EUInformation_Encoding_DefaultXml,888,Object EUInformation_Encoding_DefaultBinary,889,Object ExceptionDeviationFormat,890,DataType Annotation,891,DataType Annotation_Encoding_DefaultXml,892,Object Annotation_Encoding_DefaultBinary,893,Object ProgramDiagnosticDataType,894,DataType ProgramDiagnosticDataType_Encoding_DefaultXml,895,Object ProgramDiagnosticDataType_Encoding_DefaultBinary,896,Object SemanticChangeStructureDataType,897,DataType SemanticChangeStructureDataType_Encoding_DefaultXml,898,Object SemanticChangeStructureDataType_Encoding_DefaultBinary,899,Object EventNotificationList,914,DataType EventNotificationList_Encoding_DefaultXml,915,Object EventNotificationList_Encoding_DefaultBinary,916,Object EventFieldList,917,DataType EventFieldList_Encoding_DefaultXml,918,Object EventFieldList_Encoding_DefaultBinary,919,Object HistoryEventFieldList,920,DataType HistoryEventFieldList_Encoding_DefaultXml,921,Object HistoryEventFieldList_Encoding_DefaultBinary,922,Object IssuedIdentityToken,938,DataType IssuedIdentityToken_Encoding_DefaultXml,939,Object IssuedIdentityToken_Encoding_DefaultBinary,940,Object NotificationData,945,DataType NotificationData_Encoding_DefaultXml,946,Object NotificationData_Encoding_DefaultBinary,947,Object AggregateConfiguration,948,DataType AggregateConfiguration_Encoding_DefaultXml,949,Object AggregateConfiguration_Encoding_DefaultBinary,950,Object ImageBMP,2000,DataType ImageGIF,2001,DataType ImageJPG,2002,DataType ImagePNG,2003,DataType ServerType,2004,ObjectType ServerType_ServerArray,2005,Variable ServerType_NamespaceArray,2006,Variable ServerType_ServerStatus,2007,Variable ServerType_ServiceLevel,2008,Variable ServerType_ServerCapabilities,2009,Object ServerType_ServerDiagnostics,2010,Object ServerType_VendorServerInfo,2011,Object ServerType_ServerRedundancy,2012,Object ServerCapabilitiesType,2013,ObjectType ServerCapabilitiesType_ServerProfileArray,2014,Variable ServerCapabilitiesType_LocaleIdArray,2016,Variable ServerCapabilitiesType_MinSupportedSampleRate,2017,Variable ServerCapabilitiesType_ModellingRules,2019,Object ServerDiagnosticsType,2020,ObjectType ServerDiagnosticsType_ServerDiagnosticsSummary,2021,Variable ServerDiagnosticsType_SamplingIntervalDiagnosticsArray,2022,Variable ServerDiagnosticsType_SubscriptionDiagnosticsArray,2023,Variable ServerDiagnosticsType_EnabledFlag,2025,Variable SessionsDiagnosticsSummaryType,2026,ObjectType SessionsDiagnosticsSummaryType_SessionDiagnosticsArray,2027,Variable SessionsDiagnosticsSummaryType_SessionSecurityDiagnosticsArray,2028,Variable SessionDiagnosticsObjectType,2029,ObjectType SessionDiagnosticsObjectType_SessionDiagnostics,2030,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics,2031,Variable SessionDiagnosticsObjectType_SubscriptionDiagnosticsArray,2032,Variable VendorServerInfoType,2033,ObjectType ServerRedundancyType,2034,ObjectType ServerRedundancyType_RedundancySupport,2035,Variable TransparentRedundancyType,2036,ObjectType TransparentRedundancyType_CurrentServerId,2037,Variable TransparentRedundancyType_RedundantServerArray,2038,Variable NonTransparentRedundancyType,2039,ObjectType NonTransparentRedundancyType_ServerUriArray,2040,Variable BaseEventType,2041,ObjectType BaseEventType_EventId,2042,Variable BaseEventType_EventType,2043,Variable BaseEventType_SourceNode,2044,Variable BaseEventType_SourceName,2045,Variable BaseEventType_Time,2046,Variable BaseEventType_ReceiveTime,2047,Variable BaseEventType_Message,2050,Variable BaseEventType_Severity,2051,Variable AuditEventType,2052,ObjectType AuditEventType_ActionTimeStamp,2053,Variable AuditEventType_Status,2054,Variable AuditEventType_ServerId,2055,Variable AuditEventType_ClientAuditEntryId,2056,Variable AuditEventType_ClientUserId,2057,Variable AuditSecurityEventType,2058,ObjectType AuditChannelEventType,2059,ObjectType AuditOpenSecureChannelEventType,2060,ObjectType AuditOpenSecureChannelEventType_ClientCertificate,2061,Variable AuditOpenSecureChannelEventType_RequestType,2062,Variable AuditOpenSecureChannelEventType_SecurityPolicyUri,2063,Variable AuditOpenSecureChannelEventType_SecurityMode,2065,Variable AuditOpenSecureChannelEventType_RequestedLifetime,2066,Variable AuditSessionEventType,2069,ObjectType AuditSessionEventType_SessionId,2070,Variable AuditCreateSessionEventType,2071,ObjectType AuditCreateSessionEventType_SecureChannelId,2072,Variable AuditCreateSessionEventType_ClientCertificate,2073,Variable AuditCreateSessionEventType_RevisedSessionTimeout,2074,Variable AuditActivateSessionEventType,2075,ObjectType AuditActivateSessionEventType_ClientSoftwareCertificates,2076,Variable AuditActivateSessionEventType_UserIdentityToken,2077,Variable AuditCancelEventType,2078,ObjectType AuditCancelEventType_RequestHandle,2079,Variable AuditCertificateEventType,2080,ObjectType AuditCertificateEventType_Certificate,2081,Variable AuditCertificateDataMismatchEventType,2082,ObjectType AuditCertificateDataMismatchEventType_InvalidHostname,2083,Variable AuditCertificateDataMismatchEventType_InvalidUri,2084,Variable AuditCertificateExpiredEventType,2085,ObjectType AuditCertificateInvalidEventType,2086,ObjectType AuditCertificateUntrustedEventType,2087,ObjectType AuditCertificateRevokedEventType,2088,ObjectType AuditCertificateMismatchEventType,2089,ObjectType AuditNodeManagementEventType,2090,ObjectType AuditAddNodesEventType,2091,ObjectType AuditAddNodesEventType_NodesToAdd,2092,Variable AuditDeleteNodesEventType,2093,ObjectType AuditDeleteNodesEventType_NodesToDelete,2094,Variable AuditAddReferencesEventType,2095,ObjectType AuditAddReferencesEventType_ReferencesToAdd,2096,Variable AuditDeleteReferencesEventType,2097,ObjectType AuditDeleteReferencesEventType_ReferencesToDelete,2098,Variable AuditUpdateEventType,2099,ObjectType AuditWriteUpdateEventType,2100,ObjectType AuditWriteUpdateEventType_IndexRange,2101,Variable AuditWriteUpdateEventType_OldValue,2102,Variable AuditWriteUpdateEventType_NewValue,2103,Variable AuditHistoryUpdateEventType,2104,ObjectType AuditUpdateMethodEventType,2127,ObjectType AuditUpdateMethodEventType_MethodId,2128,Variable AuditUpdateMethodEventType_InputArguments,2129,Variable SystemEventType,2130,ObjectType DeviceFailureEventType,2131,ObjectType BaseModelChangeEventType,2132,ObjectType GeneralModelChangeEventType,2133,ObjectType GeneralModelChangeEventType_Changes,2134,Variable ServerVendorCapabilityType,2137,VariableType ServerStatusType,2138,VariableType ServerStatusType_StartTime,2139,Variable ServerStatusType_CurrentTime,2140,Variable ServerStatusType_State,2141,Variable ServerStatusType_BuildInfo,2142,Variable ServerDiagnosticsSummaryType,2150,VariableType ServerDiagnosticsSummaryType_ServerViewCount,2151,Variable ServerDiagnosticsSummaryType_CurrentSessionCount,2152,Variable ServerDiagnosticsSummaryType_CumulatedSessionCount,2153,Variable ServerDiagnosticsSummaryType_SecurityRejectedSessionCount,2154,Variable ServerDiagnosticsSummaryType_RejectedSessionCount,2155,Variable ServerDiagnosticsSummaryType_SessionTimeoutCount,2156,Variable ServerDiagnosticsSummaryType_SessionAbortCount,2157,Variable ServerDiagnosticsSummaryType_PublishingIntervalCount,2159,Variable ServerDiagnosticsSummaryType_CurrentSubscriptionCount,2160,Variable ServerDiagnosticsSummaryType_CumulatedSubscriptionCount,2161,Variable ServerDiagnosticsSummaryType_SecurityRejectedRequestsCount,2162,Variable ServerDiagnosticsSummaryType_RejectedRequestsCount,2163,Variable SamplingIntervalDiagnosticsArrayType,2164,VariableType SamplingIntervalDiagnosticsType,2165,VariableType SamplingIntervalDiagnosticsType_SamplingInterval,2166,Variable SubscriptionDiagnosticsArrayType,2171,VariableType SubscriptionDiagnosticsType,2172,VariableType SubscriptionDiagnosticsType_SessionId,2173,Variable SubscriptionDiagnosticsType_SubscriptionId,2174,Variable SubscriptionDiagnosticsType_Priority,2175,Variable SubscriptionDiagnosticsType_PublishingInterval,2176,Variable SubscriptionDiagnosticsType_MaxKeepAliveCount,2177,Variable SubscriptionDiagnosticsType_MaxNotificationsPerPublish,2179,Variable SubscriptionDiagnosticsType_PublishingEnabled,2180,Variable SubscriptionDiagnosticsType_ModifyCount,2181,Variable SubscriptionDiagnosticsType_EnableCount,2182,Variable SubscriptionDiagnosticsType_DisableCount,2183,Variable SubscriptionDiagnosticsType_RepublishRequestCount,2184,Variable SubscriptionDiagnosticsType_RepublishMessageRequestCount,2185,Variable SubscriptionDiagnosticsType_RepublishMessageCount,2186,Variable SubscriptionDiagnosticsType_TransferRequestCount,2187,Variable SubscriptionDiagnosticsType_TransferredToAltClientCount,2188,Variable SubscriptionDiagnosticsType_TransferredToSameClientCount,2189,Variable SubscriptionDiagnosticsType_PublishRequestCount,2190,Variable SubscriptionDiagnosticsType_DataChangeNotificationsCount,2191,Variable SubscriptionDiagnosticsType_NotificationsCount,2193,Variable SessionDiagnosticsArrayType,2196,VariableType SessionDiagnosticsVariableType,2197,VariableType SessionDiagnosticsVariableType_SessionId,2198,Variable SessionDiagnosticsVariableType_SessionName,2199,Variable SessionDiagnosticsVariableType_ClientDescription,2200,Variable SessionDiagnosticsVariableType_ServerUri,2201,Variable SessionDiagnosticsVariableType_EndpointUrl,2202,Variable SessionDiagnosticsVariableType_LocaleIds,2203,Variable SessionDiagnosticsVariableType_ActualSessionTimeout,2204,Variable SessionDiagnosticsVariableType_ClientConnectionTime,2205,Variable SessionDiagnosticsVariableType_ClientLastContactTime,2206,Variable SessionDiagnosticsVariableType_CurrentSubscriptionsCount,2207,Variable SessionDiagnosticsVariableType_CurrentMonitoredItemsCount,2208,Variable SessionDiagnosticsVariableType_CurrentPublishRequestsInQueue,2209,Variable SessionDiagnosticsVariableType_ReadCount,2217,Variable SessionDiagnosticsVariableType_HistoryReadCount,2218,Variable SessionDiagnosticsVariableType_WriteCount,2219,Variable SessionDiagnosticsVariableType_HistoryUpdateCount,2220,Variable SessionDiagnosticsVariableType_CallCount,2221,Variable SessionDiagnosticsVariableType_CreateMonitoredItemsCount,2222,Variable SessionDiagnosticsVariableType_ModifyMonitoredItemsCount,2223,Variable SessionDiagnosticsVariableType_SetMonitoringModeCount,2224,Variable SessionDiagnosticsVariableType_SetTriggeringCount,2225,Variable SessionDiagnosticsVariableType_DeleteMonitoredItemsCount,2226,Variable SessionDiagnosticsVariableType_CreateSubscriptionCount,2227,Variable SessionDiagnosticsVariableType_ModifySubscriptionCount,2228,Variable SessionDiagnosticsVariableType_SetPublishingModeCount,2229,Variable SessionDiagnosticsVariableType_PublishCount,2230,Variable SessionDiagnosticsVariableType_RepublishCount,2231,Variable SessionDiagnosticsVariableType_TransferSubscriptionsCount,2232,Variable SessionDiagnosticsVariableType_DeleteSubscriptionsCount,2233,Variable SessionDiagnosticsVariableType_AddNodesCount,2234,Variable SessionDiagnosticsVariableType_AddReferencesCount,2235,Variable SessionDiagnosticsVariableType_DeleteNodesCount,2236,Variable SessionDiagnosticsVariableType_DeleteReferencesCount,2237,Variable SessionDiagnosticsVariableType_BrowseCount,2238,Variable SessionDiagnosticsVariableType_BrowseNextCount,2239,Variable SessionDiagnosticsVariableType_TranslateBrowsePathsToNodeIdsCount,2240,Variable SessionDiagnosticsVariableType_QueryFirstCount,2241,Variable SessionDiagnosticsVariableType_QueryNextCount,2242,Variable SessionSecurityDiagnosticsArrayType,2243,VariableType SessionSecurityDiagnosticsType,2244,VariableType SessionSecurityDiagnosticsType_SessionId,2245,Variable SessionSecurityDiagnosticsType_ClientUserIdOfSession,2246,Variable SessionSecurityDiagnosticsType_ClientUserIdHistory,2247,Variable SessionSecurityDiagnosticsType_AuthenticationMechanism,2248,Variable SessionSecurityDiagnosticsType_Encoding,2249,Variable SessionSecurityDiagnosticsType_TransportProtocol,2250,Variable SessionSecurityDiagnosticsType_SecurityMode,2251,Variable SessionSecurityDiagnosticsType_SecurityPolicyUri,2252,Variable Server,2253,Object Server_ServerArray,2254,Variable Server_NamespaceArray,2255,Variable Server_ServerStatus,2256,Variable Server_ServerStatus_StartTime,2257,Variable Server_ServerStatus_CurrentTime,2258,Variable Server_ServerStatus_State,2259,Variable Server_ServerStatus_BuildInfo,2260,Variable Server_ServerStatus_BuildInfo_ProductName,2261,Variable Server_ServerStatus_BuildInfo_ProductUri,2262,Variable Server_ServerStatus_BuildInfo_ManufacturerName,2263,Variable Server_ServerStatus_BuildInfo_SoftwareVersion,2264,Variable Server_ServerStatus_BuildInfo_BuildNumber,2265,Variable Server_ServerStatus_BuildInfo_BuildDate,2266,Variable Server_ServiceLevel,2267,Variable Server_ServerCapabilities,2268,Object Server_ServerCapabilities_ServerProfileArray,2269,Variable Server_ServerCapabilities_LocaleIdArray,2271,Variable Server_ServerCapabilities_MinSupportedSampleRate,2272,Variable Server_ServerDiagnostics,2274,Object Server_ServerDiagnostics_ServerDiagnosticsSummary,2275,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_ServerViewCount,2276,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_CurrentSessionCount,2277,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_CumulatedSessionCount,2278,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_SecurityRejectedSessionCount,2279,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_SessionTimeoutCount,2281,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_SessionAbortCount,2282,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_PublishingIntervalCount,2284,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_CurrentSubscriptionCount,2285,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_CumulatedSubscriptionCount,2286,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_SecurityRejectedRequestsCount,2287,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_RejectedRequestsCount,2288,Variable Server_ServerDiagnostics_SamplingIntervalDiagnosticsArray,2289,Variable Server_ServerDiagnostics_SubscriptionDiagnosticsArray,2290,Variable Server_ServerDiagnostics_EnabledFlag,2294,Variable Server_VendorServerInfo,2295,Object Server_ServerRedundancy,2296,Object StateMachineType,2299,ObjectType StateType,2307,ObjectType StateType_StateNumber,2308,Variable InitialStateType,2309,ObjectType TransitionType,2310,ObjectType TransitionEventType,2311,ObjectType TransitionType_TransitionNumber,2312,Variable AuditUpdateStateEventType,2315,ObjectType HistoricalDataConfigurationType,2318,ObjectType HistoricalDataConfigurationType_Stepped,2323,Variable HistoricalDataConfigurationType_Definition,2324,Variable HistoricalDataConfigurationType_MaxTimeInterval,2325,Variable HistoricalDataConfigurationType_MinTimeInterval,2326,Variable HistoricalDataConfigurationType_ExceptionDeviation,2327,Variable HistoricalDataConfigurationType_ExceptionDeviationFormat,2328,Variable HistoryServerCapabilitiesType,2330,ObjectType HistoryServerCapabilitiesType_AccessHistoryDataCapability,2331,Variable HistoryServerCapabilitiesType_AccessHistoryEventsCapability,2332,Variable HistoryServerCapabilitiesType_InsertDataCapability,2334,Variable HistoryServerCapabilitiesType_ReplaceDataCapability,2335,Variable HistoryServerCapabilitiesType_UpdateDataCapability,2336,Variable HistoryServerCapabilitiesType_DeleteRawCapability,2337,Variable HistoryServerCapabilitiesType_DeleteAtTimeCapability,2338,Variable AggregateFunctionType,2340,ObjectType AggregateFunction_Interpolative,2341,Object AggregateFunction_Average,2342,Object AggregateFunction_TimeAverage,2343,Object AggregateFunction_Total,2344,Object AggregateFunction_Minimum,2346,Object AggregateFunction_Maximum,2347,Object AggregateFunction_MinimumActualTime,2348,Object AggregateFunction_MaximumActualTime,2349,Object AggregateFunction_Range,2350,Object AggregateFunction_AnnotationCount,2351,Object AggregateFunction_Count,2352,Object AggregateFunction_NumberOfTransitions,2355,Object AggregateFunction_Start,2357,Object AggregateFunction_End,2358,Object AggregateFunction_Delta,2359,Object AggregateFunction_DurationGood,2360,Object AggregateFunction_DurationBad,2361,Object AggregateFunction_PercentGood,2362,Object AggregateFunction_PercentBad,2363,Object AggregateFunction_WorstQuality,2364,Object DataItemType,2365,VariableType DataItemType_Definition,2366,Variable DataItemType_ValuePrecision,2367,Variable AnalogItemType,2368,VariableType AnalogItemType_EURange,2369,Variable AnalogItemType_InstrumentRange,2370,Variable AnalogItemType_EngineeringUnits,2371,Variable DiscreteItemType,2372,VariableType TwoStateDiscreteType,2373,VariableType TwoStateDiscreteType_FalseState,2374,Variable TwoStateDiscreteType_TrueState,2375,Variable MultiStateDiscreteType,2376,VariableType MultiStateDiscreteType_EnumStrings,2377,Variable ProgramTransitionEventType,2378,ObjectType ProgramTransitionEventType_IntermediateResult,2379,Variable ProgramDiagnosticType,2380,VariableType ProgramDiagnosticType_CreateSessionId,2381,Variable ProgramDiagnosticType_CreateClientName,2382,Variable ProgramDiagnosticType_InvocationCreationTime,2383,Variable ProgramDiagnosticType_LastTransitionTime,2384,Variable ProgramDiagnosticType_LastMethodCall,2385,Variable ProgramDiagnosticType_LastMethodSessionId,2386,Variable ProgramDiagnosticType_LastMethodInputArguments,2387,Variable ProgramDiagnosticType_LastMethodOutputArguments,2388,Variable ProgramDiagnosticType_LastMethodCallTime,2389,Variable ProgramDiagnosticType_LastMethodReturnStatus,2390,Variable ProgramStateMachineType,2391,ObjectType ProgramStateMachineType_Creatable,2392,Variable ProgramStateMachineType_Deletable,2393,Variable ProgramStateMachineType_AutoDelete,2394,Variable ProgramStateMachineType_RecycleCount,2395,Variable ProgramStateMachineType_InstanceCount,2396,Variable ProgramStateMachineType_MaxInstanceCount,2397,Variable ProgramStateMachineType_MaxRecycleCount,2398,Variable ProgramStateMachineType_ProgramDiagnostics,2399,Variable ProgramStateMachineType_Ready,2400,Object ProgramStateMachineType_Ready_StateNumber,2401,Variable ProgramStateMachineType_Running,2402,Object ProgramStateMachineType_Running_StateNumber,2403,Variable ProgramStateMachineType_Suspended,2404,Object ProgramStateMachineType_Suspended_StateNumber,2405,Variable ProgramStateMachineType_Halted,2406,Object ProgramStateMachineType_Halted_StateNumber,2407,Variable ProgramStateMachineType_HaltedToReady,2408,Object ProgramStateMachineType_HaltedToReady_TransitionNumber,2409,Variable ProgramStateMachineType_ReadyToRunning,2410,Object ProgramStateMachineType_ReadyToRunning_TransitionNumber,2411,Variable ProgramStateMachineType_RunningToHalted,2412,Object ProgramStateMachineType_RunningToHalted_TransitionNumber,2413,Variable ProgramStateMachineType_RunningToReady,2414,Object ProgramStateMachineType_RunningToReady_TransitionNumber,2415,Variable ProgramStateMachineType_RunningToSuspended,2416,Object ProgramStateMachineType_RunningToSuspended_TransitionNumber,2417,Variable ProgramStateMachineType_SuspendedToRunning,2418,Object ProgramStateMachineType_SuspendedToRunning_TransitionNumber,2419,Variable ProgramStateMachineType_SuspendedToHalted,2420,Object ProgramStateMachineType_SuspendedToHalted_TransitionNumber,2421,Variable ProgramStateMachineType_SuspendedToReady,2422,Object ProgramStateMachineType_SuspendedToReady_TransitionNumber,2423,Variable ProgramStateMachineType_ReadyToHalted,2424,Object ProgramStateMachineType_ReadyToHalted_TransitionNumber,2425,Variable ProgramStateMachineType_Start,2426,Method ProgramStateMachineType_Suspend,2427,Method ProgramStateMachineType_Resume,2428,Method ProgramStateMachineType_Halt,2429,Method ProgramStateMachineType_Reset,2430,Method SessionDiagnosticsVariableType_RegisterNodesCount,2730,Variable SessionDiagnosticsVariableType_UnregisterNodesCount,2731,Variable ServerCapabilitiesType_MaxBrowseContinuationPoints,2732,Variable ServerCapabilitiesType_MaxQueryContinuationPoints,2733,Variable ServerCapabilitiesType_MaxHistoryContinuationPoints,2734,Variable Server_ServerCapabilities_MaxBrowseContinuationPoints,2735,Variable Server_ServerCapabilities_MaxQueryContinuationPoints,2736,Variable Server_ServerCapabilities_MaxHistoryContinuationPoints,2737,Variable SemanticChangeEventType,2738,ObjectType SemanticChangeEventType_Changes,2739,Variable ServerType_Auditing,2742,Variable ServerDiagnosticsType_SessionsDiagnosticsSummary,2744,Object AuditChannelEventType_SecureChannelId,2745,Variable AuditOpenSecureChannelEventType_ClientCertificateThumbprint,2746,Variable AuditCreateSessionEventType_ClientCertificateThumbprint,2747,Variable AuditUrlMismatchEventType,2748,ObjectType AuditUrlMismatchEventType_EndpointUrl,2749,Variable AuditWriteUpdateEventType_AttributeId,2750,Variable AuditHistoryUpdateEventType_ParameterDataTypeId,2751,Variable ServerStatusType_SecondsTillShutdown,2752,Variable ServerStatusType_ShutdownReason,2753,Variable ServerCapabilitiesType_AggregateFunctions,2754,Object StateVariableType,2755,VariableType StateVariableType_Id,2756,Variable StateVariableType_Name,2757,Variable StateVariableType_Number,2758,Variable StateVariableType_EffectiveDisplayName,2759,Variable FiniteStateVariableType,2760,VariableType FiniteStateVariableType_Id,2761,Variable TransitionVariableType,2762,VariableType TransitionVariableType_Id,2763,Variable TransitionVariableType_Name,2764,Variable TransitionVariableType_Number,2765,Variable TransitionVariableType_TransitionTime,2766,Variable FiniteTransitionVariableType,2767,VariableType FiniteTransitionVariableType_Id,2768,Variable StateMachineType_CurrentState,2769,Variable StateMachineType_LastTransition,2770,Variable FiniteStateMachineType,2771,ObjectType FiniteStateMachineType_CurrentState,2772,Variable FiniteStateMachineType_LastTransition,2773,Variable TransitionEventType_Transition,2774,Variable TransitionEventType_FromState,2775,Variable TransitionEventType_ToState,2776,Variable AuditUpdateStateEventType_OldStateId,2777,Variable AuditUpdateStateEventType_NewStateId,2778,Variable ConditionType,2782,ObjectType RefreshStartEventType,2787,ObjectType RefreshEndEventType,2788,ObjectType RefreshRequiredEventType,2789,ObjectType AuditConditionEventType,2790,ObjectType AuditConditionEnableEventType,2803,ObjectType AuditConditionCommentEventType,2829,ObjectType DialogConditionType,2830,ObjectType DialogConditionType_Prompt,2831,Variable AcknowledgeableConditionType,2881,ObjectType AlarmConditionType,2915,ObjectType ShelvedStateMachineType,2929,ObjectType ShelvedStateMachineType_Unshelved,2930,Object ShelvedStateMachineType_TimedShelved,2932,Object ShelvedStateMachineType_OneShotShelved,2933,Object ShelvedStateMachineType_UnshelvedToTimedShelved,2935,Object ShelvedStateMachineType_UnshelvedToOneShotShelved,2936,Object ShelvedStateMachineType_TimedShelvedToUnshelved,2940,Object ShelvedStateMachineType_TimedShelvedToOneShotShelved,2942,Object ShelvedStateMachineType_OneShotShelvedToUnshelved,2943,Object ShelvedStateMachineType_OneShotShelvedToTimedShelved,2945,Object ShelvedStateMachineType_Unshelve,2947,Method ShelvedStateMachineType_OneShotShelve,2948,Method ShelvedStateMachineType_TimedShelve,2949,Method LimitAlarmType,2955,ObjectType ShelvedStateMachineType_TimedShelve_InputArguments,2991,Variable Server_ServerStatus_SecondsTillShutdown,2992,Variable Server_ServerStatus_ShutdownReason,2993,Variable Server_Auditing,2994,Variable Server_ServerCapabilities_ModellingRules,2996,Object Server_ServerCapabilities_AggregateFunctions,2997,Object SubscriptionDiagnosticsType_EventNotificationsCount,2998,Variable AuditHistoryEventUpdateEventType,2999,ObjectType AuditHistoryEventUpdateEventType_Filter,3003,Variable AuditHistoryValueUpdateEventType,3006,ObjectType AuditHistoryDeleteEventType,3012,ObjectType AuditHistoryRawModifyDeleteEventType,3014,ObjectType AuditHistoryRawModifyDeleteEventType_IsDeleteModified,3015,Variable AuditHistoryRawModifyDeleteEventType_StartTime,3016,Variable AuditHistoryRawModifyDeleteEventType_EndTime,3017,Variable AuditHistoryAtTimeDeleteEventType,3019,ObjectType AuditHistoryAtTimeDeleteEventType_ReqTimes,3020,Variable AuditHistoryAtTimeDeleteEventType_OldValues,3021,Variable AuditHistoryEventDeleteEventType,3022,ObjectType AuditHistoryEventDeleteEventType_EventIds,3023,Variable AuditHistoryEventDeleteEventType_OldValues,3024,Variable AuditHistoryEventUpdateEventType_UpdatedNode,3025,Variable AuditHistoryValueUpdateEventType_UpdatedNode,3026,Variable AuditHistoryDeleteEventType_UpdatedNode,3027,Variable AuditHistoryEventUpdateEventType_PerformInsertReplace,3028,Variable AuditHistoryEventUpdateEventType_NewValues,3029,Variable AuditHistoryEventUpdateEventType_OldValues,3030,Variable AuditHistoryValueUpdateEventType_PerformInsertReplace,3031,Variable AuditHistoryValueUpdateEventType_NewValues,3032,Variable AuditHistoryValueUpdateEventType_OldValues,3033,Variable AuditHistoryRawModifyDeleteEventType_OldValues,3034,Variable EventQueueOverflowEventType,3035,ObjectType EventTypesFolder,3048,Object ServerCapabilitiesType_SoftwareCertificates,3049,Variable SessionDiagnosticsVariableType_MaxResponseMessageSize,3050,Variable BuildInfoType,3051,VariableType BuildInfoType_ProductUri,3052,Variable BuildInfoType_ManufacturerName,3053,Variable BuildInfoType_ProductName,3054,Variable BuildInfoType_SoftwareVersion,3055,Variable BuildInfoType_BuildNumber,3056,Variable BuildInfoType_BuildDate,3057,Variable SessionSecurityDiagnosticsType_ClientCertificate,3058,Variable HistoricalDataConfigurationType_AggregateConfiguration,3059,Object DefaultBinary,3062,Object DefaultXml,3063,Object AlwaysGeneratesEvent,3065,ReferenceType Icon,3067,Variable NodeVersion,3068,Variable LocalTime,3069,Variable AllowNulls,3070,Variable EnumValues,3071,Variable InputArguments,3072,Variable OutputArguments,3073,Variable ServerType_ServerStatus_StartTime,3074,Variable ServerType_ServerStatus_CurrentTime,3075,Variable ServerType_ServerStatus_State,3076,Variable ServerType_ServerStatus_BuildInfo,3077,Variable ServerType_ServerStatus_BuildInfo_ProductUri,3078,Variable ServerType_ServerStatus_BuildInfo_ManufacturerName,3079,Variable ServerType_ServerStatus_BuildInfo_ProductName,3080,Variable ServerType_ServerStatus_BuildInfo_SoftwareVersion,3081,Variable ServerType_ServerStatus_BuildInfo_BuildNumber,3082,Variable ServerType_ServerStatus_BuildInfo_BuildDate,3083,Variable ServerType_ServerStatus_SecondsTillShutdown,3084,Variable ServerType_ServerStatus_ShutdownReason,3085,Variable ServerType_ServerCapabilities_ServerProfileArray,3086,Variable ServerType_ServerCapabilities_LocaleIdArray,3087,Variable ServerType_ServerCapabilities_MinSupportedSampleRate,3088,Variable ServerType_ServerCapabilities_MaxBrowseContinuationPoints,3089,Variable ServerType_ServerCapabilities_MaxQueryContinuationPoints,3090,Variable ServerType_ServerCapabilities_MaxHistoryContinuationPoints,3091,Variable ServerType_ServerCapabilities_SoftwareCertificates,3092,Variable ServerType_ServerCapabilities_ModellingRules,3093,Object ServerType_ServerCapabilities_AggregateFunctions,3094,Object ServerType_ServerDiagnostics_ServerDiagnosticsSummary,3095,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_ServerViewCount,3096,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_CurrentSessionCount,3097,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_CumulatedSessionCount,3098,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_SecurityRejectedSessionCount,3099,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_RejectedSessionCount,3100,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_SessionTimeoutCount,3101,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_SessionAbortCount,3102,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_PublishingIntervalCount,3104,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_CurrentSubscriptionCount,3105,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_CumulatedSubscriptionCount,3106,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_SecurityRejectedRequestsCount,3107,Variable ServerType_ServerDiagnostics_ServerDiagnosticsSummary_RejectedRequestsCount,3108,Variable ServerType_ServerDiagnostics_SamplingIntervalDiagnosticsArray,3109,Variable ServerType_ServerDiagnostics_SubscriptionDiagnosticsArray,3110,Variable ServerType_ServerDiagnostics_SessionsDiagnosticsSummary,3111,Object ServerType_ServerDiagnostics_SessionsDiagnosticsSummary_SessionDiagnosticsArray,3112,Variable ServerType_ServerDiagnostics_SessionsDiagnosticsSummary_SessionSecurityDiagnosticsArray,3113,Variable ServerType_ServerDiagnostics_EnabledFlag,3114,Variable ServerType_ServerRedundancy_RedundancySupport,3115,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_ServerViewCount,3116,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_CurrentSessionCount,3117,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_CumulatedSessionCount,3118,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_SecurityRejectedSessionCount,3119,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_RejectedSessionCount,3120,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_SessionTimeoutCount,3121,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_SessionAbortCount,3122,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_PublishingIntervalCount,3124,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_CurrentSubscriptionCount,3125,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_CumulatedSubscriptionCount,3126,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_SecurityRejectedRequestsCount,3127,Variable ServerDiagnosticsType_ServerDiagnosticsSummary_RejectedRequestsCount,3128,Variable ServerDiagnosticsType_SessionsDiagnosticsSummary_SessionDiagnosticsArray,3129,Variable ServerDiagnosticsType_SessionsDiagnosticsSummary_SessionSecurityDiagnosticsArray,3130,Variable SessionDiagnosticsObjectType_SessionDiagnostics_SessionId,3131,Variable SessionDiagnosticsObjectType_SessionDiagnostics_SessionName,3132,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ClientDescription,3133,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ServerUri,3134,Variable SessionDiagnosticsObjectType_SessionDiagnostics_EndpointUrl,3135,Variable SessionDiagnosticsObjectType_SessionDiagnostics_LocaleIds,3136,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ActualSessionTimeout,3137,Variable SessionDiagnosticsObjectType_SessionDiagnostics_MaxResponseMessageSize,3138,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ClientConnectionTime,3139,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ClientLastContactTime,3140,Variable SessionDiagnosticsObjectType_SessionDiagnostics_CurrentSubscriptionsCount,3141,Variable SessionDiagnosticsObjectType_SessionDiagnostics_CurrentMonitoredItemsCount,3142,Variable SessionDiagnosticsObjectType_SessionDiagnostics_CurrentPublishRequestsInQueue,3143,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ReadCount,3151,Variable SessionDiagnosticsObjectType_SessionDiagnostics_HistoryReadCount,3152,Variable SessionDiagnosticsObjectType_SessionDiagnostics_WriteCount,3153,Variable SessionDiagnosticsObjectType_SessionDiagnostics_HistoryUpdateCount,3154,Variable SessionDiagnosticsObjectType_SessionDiagnostics_CallCount,3155,Variable SessionDiagnosticsObjectType_SessionDiagnostics_CreateMonitoredItemsCount,3156,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ModifyMonitoredItemsCount,3157,Variable SessionDiagnosticsObjectType_SessionDiagnostics_SetMonitoringModeCount,3158,Variable SessionDiagnosticsObjectType_SessionDiagnostics_SetTriggeringCount,3159,Variable SessionDiagnosticsObjectType_SessionDiagnostics_DeleteMonitoredItemsCount,3160,Variable SessionDiagnosticsObjectType_SessionDiagnostics_CreateSubscriptionCount,3161,Variable SessionDiagnosticsObjectType_SessionDiagnostics_ModifySubscriptionCount,3162,Variable SessionDiagnosticsObjectType_SessionDiagnostics_SetPublishingModeCount,3163,Variable SessionDiagnosticsObjectType_SessionDiagnostics_PublishCount,3164,Variable SessionDiagnosticsObjectType_SessionDiagnostics_RepublishCount,3165,Variable SessionDiagnosticsObjectType_SessionDiagnostics_TransferSubscriptionsCount,3166,Variable SessionDiagnosticsObjectType_SessionDiagnostics_DeleteSubscriptionsCount,3167,Variable SessionDiagnosticsObjectType_SessionDiagnostics_AddNodesCount,3168,Variable SessionDiagnosticsObjectType_SessionDiagnostics_AddReferencesCount,3169,Variable SessionDiagnosticsObjectType_SessionDiagnostics_DeleteNodesCount,3170,Variable SessionDiagnosticsObjectType_SessionDiagnostics_DeleteReferencesCount,3171,Variable SessionDiagnosticsObjectType_SessionDiagnostics_BrowseCount,3172,Variable SessionDiagnosticsObjectType_SessionDiagnostics_BrowseNextCount,3173,Variable SessionDiagnosticsObjectType_SessionDiagnostics_TranslateBrowsePathsToNodeIdsCount,3174,Variable SessionDiagnosticsObjectType_SessionDiagnostics_QueryFirstCount,3175,Variable SessionDiagnosticsObjectType_SessionDiagnostics_QueryNextCount,3176,Variable SessionDiagnosticsObjectType_SessionDiagnostics_RegisterNodesCount,3177,Variable SessionDiagnosticsObjectType_SessionDiagnostics_UnregisterNodesCount,3178,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_SessionId,3179,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_ClientUserIdOfSession,3180,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_ClientUserIdHistory,3181,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_AuthenticationMechanism,3182,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_Encoding,3183,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_TransportProtocol,3184,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_SecurityMode,3185,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_SecurityPolicyUri,3186,Variable SessionDiagnosticsObjectType_SessionSecurityDiagnostics_ClientCertificate,3187,Variable TransparentRedundancyType_RedundancySupport,3188,Variable NonTransparentRedundancyType_RedundancySupport,3189,Variable BaseEventType_LocalTime,3190,Variable EventQueueOverflowEventType_EventId,3191,Variable EventQueueOverflowEventType_EventType,3192,Variable EventQueueOverflowEventType_SourceNode,3193,Variable EventQueueOverflowEventType_SourceName,3194,Variable EventQueueOverflowEventType_Time,3195,Variable EventQueueOverflowEventType_ReceiveTime,3196,Variable EventQueueOverflowEventType_LocalTime,3197,Variable EventQueueOverflowEventType_Message,3198,Variable EventQueueOverflowEventType_Severity,3199,Variable AuditEventType_EventId,3200,Variable AuditEventType_EventType,3201,Variable AuditEventType_SourceNode,3202,Variable AuditEventType_SourceName,3203,Variable AuditEventType_Time,3204,Variable AuditEventType_ReceiveTime,3205,Variable AuditEventType_LocalTime,3206,Variable AuditEventType_Message,3207,Variable AuditEventType_Severity,3208,Variable AuditSecurityEventType_EventId,3209,Variable AuditSecurityEventType_EventType,3210,Variable AuditSecurityEventType_SourceNode,3211,Variable AuditSecurityEventType_SourceName,3212,Variable AuditSecurityEventType_Time,3213,Variable AuditSecurityEventType_ReceiveTime,3214,Variable AuditSecurityEventType_LocalTime,3215,Variable AuditSecurityEventType_Message,3216,Variable AuditSecurityEventType_Severity,3217,Variable AuditSecurityEventType_ActionTimeStamp,3218,Variable AuditSecurityEventType_Status,3219,Variable AuditSecurityEventType_ServerId,3220,Variable AuditSecurityEventType_ClientAuditEntryId,3221,Variable AuditSecurityEventType_ClientUserId,3222,Variable AuditChannelEventType_EventId,3223,Variable AuditChannelEventType_EventType,3224,Variable AuditChannelEventType_SourceNode,3225,Variable AuditChannelEventType_SourceName,3226,Variable AuditChannelEventType_Time,3227,Variable AuditChannelEventType_ReceiveTime,3228,Variable AuditChannelEventType_LocalTime,3229,Variable AuditChannelEventType_Message,3230,Variable AuditChannelEventType_Severity,3231,Variable AuditChannelEventType_ActionTimeStamp,3232,Variable AuditChannelEventType_Status,3233,Variable AuditChannelEventType_ServerId,3234,Variable AuditChannelEventType_ClientAuditEntryId,3235,Variable AuditChannelEventType_ClientUserId,3236,Variable AuditOpenSecureChannelEventType_EventId,3237,Variable AuditOpenSecureChannelEventType_EventType,3238,Variable AuditOpenSecureChannelEventType_SourceNode,3239,Variable AuditOpenSecureChannelEventType_SourceName,3240,Variable AuditOpenSecureChannelEventType_Time,3241,Variable AuditOpenSecureChannelEventType_ReceiveTime,3242,Variable AuditOpenSecureChannelEventType_LocalTime,3243,Variable AuditOpenSecureChannelEventType_Message,3244,Variable AuditOpenSecureChannelEventType_Severity,3245,Variable AuditOpenSecureChannelEventType_ActionTimeStamp,3246,Variable AuditOpenSecureChannelEventType_Status,3247,Variable AuditOpenSecureChannelEventType_ServerId,3248,Variable AuditOpenSecureChannelEventType_ClientAuditEntryId,3249,Variable AuditOpenSecureChannelEventType_ClientUserId,3250,Variable AuditOpenSecureChannelEventType_SecureChannelId,3251,Variable AuditSessionEventType_EventId,3252,Variable AuditSessionEventType_EventType,3253,Variable AuditSessionEventType_SourceNode,3254,Variable AuditSessionEventType_SourceName,3255,Variable AuditSessionEventType_Time,3256,Variable AuditSessionEventType_ReceiveTime,3257,Variable AuditSessionEventType_LocalTime,3258,Variable AuditSessionEventType_Message,3259,Variable AuditSessionEventType_Severity,3260,Variable AuditSessionEventType_ActionTimeStamp,3261,Variable AuditSessionEventType_Status,3262,Variable AuditSessionEventType_ServerId,3263,Variable AuditSessionEventType_ClientAuditEntryId,3264,Variable AuditSessionEventType_ClientUserId,3265,Variable AuditCreateSessionEventType_EventId,3266,Variable AuditCreateSessionEventType_EventType,3267,Variable AuditCreateSessionEventType_SourceNode,3268,Variable AuditCreateSessionEventType_SourceName,3269,Variable AuditCreateSessionEventType_Time,3270,Variable AuditCreateSessionEventType_ReceiveTime,3271,Variable AuditCreateSessionEventType_LocalTime,3272,Variable AuditCreateSessionEventType_Message,3273,Variable AuditCreateSessionEventType_Severity,3274,Variable AuditCreateSessionEventType_ActionTimeStamp,3275,Variable AuditCreateSessionEventType_Status,3276,Variable AuditCreateSessionEventType_ServerId,3277,Variable AuditCreateSessionEventType_ClientAuditEntryId,3278,Variable AuditCreateSessionEventType_ClientUserId,3279,Variable AuditUrlMismatchEventType_EventId,3281,Variable AuditUrlMismatchEventType_EventType,3282,Variable AuditUrlMismatchEventType_SourceNode,3283,Variable AuditUrlMismatchEventType_SourceName,3284,Variable AuditUrlMismatchEventType_Time,3285,Variable AuditUrlMismatchEventType_ReceiveTime,3286,Variable AuditUrlMismatchEventType_LocalTime,3287,Variable AuditUrlMismatchEventType_Message,3288,Variable AuditUrlMismatchEventType_Severity,3289,Variable AuditUrlMismatchEventType_ActionTimeStamp,3290,Variable AuditUrlMismatchEventType_Status,3291,Variable AuditUrlMismatchEventType_ServerId,3292,Variable AuditUrlMismatchEventType_ClientAuditEntryId,3293,Variable AuditUrlMismatchEventType_ClientUserId,3294,Variable AuditUrlMismatchEventType_SecureChannelId,3296,Variable AuditUrlMismatchEventType_ClientCertificate,3297,Variable AuditUrlMismatchEventType_ClientCertificateThumbprint,3298,Variable AuditUrlMismatchEventType_RevisedSessionTimeout,3299,Variable AuditActivateSessionEventType_EventId,3300,Variable AuditActivateSessionEventType_EventType,3301,Variable AuditActivateSessionEventType_SourceNode,3302,Variable AuditActivateSessionEventType_SourceName,3303,Variable AuditActivateSessionEventType_Time,3304,Variable AuditActivateSessionEventType_ReceiveTime,3305,Variable AuditActivateSessionEventType_LocalTime,3306,Variable AuditActivateSessionEventType_Message,3307,Variable AuditActivateSessionEventType_Severity,3308,Variable AuditActivateSessionEventType_ActionTimeStamp,3309,Variable AuditActivateSessionEventType_Status,3310,Variable AuditActivateSessionEventType_ServerId,3311,Variable AuditActivateSessionEventType_ClientAuditEntryId,3312,Variable AuditActivateSessionEventType_ClientUserId,3313,Variable AuditActivateSessionEventType_SessionId,3314,Variable AuditCancelEventType_EventId,3315,Variable AuditCancelEventType_EventType,3316,Variable AuditCancelEventType_SourceNode,3317,Variable AuditCancelEventType_SourceName,3318,Variable AuditCancelEventType_Time,3319,Variable AuditCancelEventType_ReceiveTime,3320,Variable AuditCancelEventType_LocalTime,3321,Variable AuditCancelEventType_Message,3322,Variable AuditCancelEventType_Severity,3323,Variable AuditCancelEventType_ActionTimeStamp,3324,Variable AuditCancelEventType_Status,3325,Variable AuditCancelEventType_ServerId,3326,Variable AuditCancelEventType_ClientAuditEntryId,3327,Variable AuditCancelEventType_ClientUserId,3328,Variable AuditCancelEventType_SessionId,3329,Variable AuditCertificateEventType_EventId,3330,Variable AuditCertificateEventType_EventType,3331,Variable AuditCertificateEventType_SourceNode,3332,Variable AuditCertificateEventType_SourceName,3333,Variable AuditCertificateEventType_Time,3334,Variable AuditCertificateEventType_ReceiveTime,3335,Variable AuditCertificateEventType_LocalTime,3336,Variable AuditCertificateEventType_Message,3337,Variable AuditCertificateEventType_Severity,3338,Variable AuditCertificateEventType_ActionTimeStamp,3339,Variable AuditCertificateEventType_Status,3340,Variable AuditCertificateEventType_ServerId,3341,Variable AuditCertificateEventType_ClientAuditEntryId,3342,Variable AuditCertificateEventType_ClientUserId,3343,Variable AuditCertificateDataMismatchEventType_EventId,3344,Variable AuditCertificateDataMismatchEventType_EventType,3345,Variable AuditCertificateDataMismatchEventType_SourceNode,3346,Variable AuditCertificateDataMismatchEventType_SourceName,3347,Variable AuditCertificateDataMismatchEventType_Time,3348,Variable AuditCertificateDataMismatchEventType_ReceiveTime,3349,Variable AuditCertificateDataMismatchEventType_LocalTime,3350,Variable AuditCertificateDataMismatchEventType_Message,3351,Variable AuditCertificateDataMismatchEventType_Severity,3352,Variable AuditCertificateDataMismatchEventType_ActionTimeStamp,3353,Variable AuditCertificateDataMismatchEventType_Status,3354,Variable AuditCertificateDataMismatchEventType_ServerId,3355,Variable AuditCertificateDataMismatchEventType_ClientAuditEntryId,3356,Variable AuditCertificateDataMismatchEventType_ClientUserId,3357,Variable AuditCertificateDataMismatchEventType_Certificate,3358,Variable AuditCertificateExpiredEventType_EventId,3359,Variable AuditCertificateExpiredEventType_EventType,3360,Variable AuditCertificateExpiredEventType_SourceNode,3361,Variable AuditCertificateExpiredEventType_SourceName,3362,Variable AuditCertificateExpiredEventType_Time,3363,Variable AuditCertificateExpiredEventType_ReceiveTime,3364,Variable AuditCertificateExpiredEventType_LocalTime,3365,Variable AuditCertificateExpiredEventType_Message,3366,Variable AuditCertificateExpiredEventType_Severity,3367,Variable AuditCertificateExpiredEventType_ActionTimeStamp,3368,Variable AuditCertificateExpiredEventType_Status,3369,Variable AuditCertificateExpiredEventType_ServerId,3370,Variable AuditCertificateExpiredEventType_ClientAuditEntryId,3371,Variable AuditCertificateExpiredEventType_ClientUserId,3372,Variable AuditCertificateExpiredEventType_Certificate,3373,Variable AuditCertificateInvalidEventType_EventId,3374,Variable AuditCertificateInvalidEventType_EventType,3375,Variable AuditCertificateInvalidEventType_SourceNode,3376,Variable AuditCertificateInvalidEventType_SourceName,3377,Variable AuditCertificateInvalidEventType_Time,3378,Variable AuditCertificateInvalidEventType_ReceiveTime,3379,Variable AuditCertificateInvalidEventType_LocalTime,3380,Variable AuditCertificateInvalidEventType_Message,3381,Variable AuditCertificateInvalidEventType_Severity,3382,Variable AuditCertificateInvalidEventType_ActionTimeStamp,3383,Variable AuditCertificateInvalidEventType_Status,3384,Variable AuditCertificateInvalidEventType_ServerId,3385,Variable AuditCertificateInvalidEventType_ClientAuditEntryId,3386,Variable AuditCertificateInvalidEventType_ClientUserId,3387,Variable AuditCertificateInvalidEventType_Certificate,3388,Variable AuditCertificateUntrustedEventType_EventId,3389,Variable AuditCertificateUntrustedEventType_EventType,3390,Variable AuditCertificateUntrustedEventType_SourceNode,3391,Variable AuditCertificateUntrustedEventType_SourceName,3392,Variable AuditCertificateUntrustedEventType_Time,3393,Variable AuditCertificateUntrustedEventType_ReceiveTime,3394,Variable AuditCertificateUntrustedEventType_LocalTime,3395,Variable AuditCertificateUntrustedEventType_Message,3396,Variable AuditCertificateUntrustedEventType_Severity,3397,Variable AuditCertificateUntrustedEventType_ActionTimeStamp,3398,Variable AuditCertificateUntrustedEventType_Status,3399,Variable AuditCertificateUntrustedEventType_ServerId,3400,Variable AuditCertificateUntrustedEventType_ClientAuditEntryId,3401,Variable AuditCertificateUntrustedEventType_ClientUserId,3402,Variable AuditCertificateUntrustedEventType_Certificate,3403,Variable AuditCertificateRevokedEventType_EventId,3404,Variable AuditCertificateRevokedEventType_EventType,3405,Variable AuditCertificateRevokedEventType_SourceNode,3406,Variable AuditCertificateRevokedEventType_SourceName,3407,Variable AuditCertificateRevokedEventType_Time,3408,Variable AuditCertificateRevokedEventType_ReceiveTime,3409,Variable AuditCertificateRevokedEventType_LocalTime,3410,Variable AuditCertificateRevokedEventType_Message,3411,Variable AuditCertificateRevokedEventType_Severity,3412,Variable AuditCertificateRevokedEventType_ActionTimeStamp,3413,Variable AuditCertificateRevokedEventType_Status,3414,Variable AuditCertificateRevokedEventType_ServerId,3415,Variable AuditCertificateRevokedEventType_ClientAuditEntryId,3416,Variable AuditCertificateRevokedEventType_ClientUserId,3417,Variable AuditCertificateRevokedEventType_Certificate,3418,Variable AuditCertificateMismatchEventType_EventId,3419,Variable AuditCertificateMismatchEventType_EventType,3420,Variable AuditCertificateMismatchEventType_SourceNode,3421,Variable AuditCertificateMismatchEventType_SourceName,3422,Variable AuditCertificateMismatchEventType_Time,3423,Variable AuditCertificateMismatchEventType_ReceiveTime,3424,Variable AuditCertificateMismatchEventType_LocalTime,3425,Variable AuditCertificateMismatchEventType_Message,3426,Variable AuditCertificateMismatchEventType_Severity,3427,Variable AuditCertificateMismatchEventType_ActionTimeStamp,3428,Variable AuditCertificateMismatchEventType_Status,3429,Variable AuditCertificateMismatchEventType_ServerId,3430,Variable AuditCertificateMismatchEventType_ClientAuditEntryId,3431,Variable AuditCertificateMismatchEventType_ClientUserId,3432,Variable AuditCertificateMismatchEventType_Certificate,3433,Variable AuditNodeManagementEventType_EventId,3434,Variable AuditNodeManagementEventType_EventType,3435,Variable AuditNodeManagementEventType_SourceNode,3436,Variable AuditNodeManagementEventType_SourceName,3437,Variable AuditNodeManagementEventType_Time,3438,Variable AuditNodeManagementEventType_ReceiveTime,3439,Variable AuditNodeManagementEventType_LocalTime,3440,Variable AuditNodeManagementEventType_Message,3441,Variable AuditNodeManagementEventType_Severity,3442,Variable AuditNodeManagementEventType_ActionTimeStamp,3443,Variable AuditNodeManagementEventType_Status,3444,Variable AuditNodeManagementEventType_ServerId,3445,Variable AuditNodeManagementEventType_ClientAuditEntryId,3446,Variable AuditNodeManagementEventType_ClientUserId,3447,Variable AuditAddNodesEventType_EventId,3448,Variable AuditAddNodesEventType_EventType,3449,Variable AuditAddNodesEventType_SourceNode,3450,Variable AuditAddNodesEventType_SourceName,3451,Variable AuditAddNodesEventType_Time,3452,Variable AuditAddNodesEventType_ReceiveTime,3453,Variable AuditAddNodesEventType_LocalTime,3454,Variable AuditAddNodesEventType_Message,3455,Variable AuditAddNodesEventType_Severity,3456,Variable AuditAddNodesEventType_ActionTimeStamp,3457,Variable AuditAddNodesEventType_Status,3458,Variable AuditAddNodesEventType_ServerId,3459,Variable AuditAddNodesEventType_ClientAuditEntryId,3460,Variable AuditAddNodesEventType_ClientUserId,3461,Variable AuditDeleteNodesEventType_EventId,3462,Variable AuditDeleteNodesEventType_EventType,3463,Variable AuditDeleteNodesEventType_SourceNode,3464,Variable AuditDeleteNodesEventType_SourceName,3465,Variable AuditDeleteNodesEventType_Time,3466,Variable AuditDeleteNodesEventType_ReceiveTime,3467,Variable AuditDeleteNodesEventType_LocalTime,3468,Variable AuditDeleteNodesEventType_Message,3469,Variable AuditDeleteNodesEventType_Severity,3470,Variable AuditDeleteNodesEventType_ActionTimeStamp,3471,Variable AuditDeleteNodesEventType_Status,3472,Variable AuditDeleteNodesEventType_ServerId,3473,Variable AuditDeleteNodesEventType_ClientAuditEntryId,3474,Variable AuditDeleteNodesEventType_ClientUserId,3475,Variable AuditAddReferencesEventType_EventId,3476,Variable AuditAddReferencesEventType_EventType,3477,Variable AuditAddReferencesEventType_SourceNode,3478,Variable AuditAddReferencesEventType_SourceName,3479,Variable AuditAddReferencesEventType_Time,3480,Variable AuditAddReferencesEventType_ReceiveTime,3481,Variable AuditAddReferencesEventType_LocalTime,3482,Variable AuditAddReferencesEventType_Message,3483,Variable AuditAddReferencesEventType_Severity,3484,Variable AuditAddReferencesEventType_ActionTimeStamp,3485,Variable AuditAddReferencesEventType_Status,3486,Variable AuditAddReferencesEventType_ServerId,3487,Variable AuditAddReferencesEventType_ClientAuditEntryId,3488,Variable AuditAddReferencesEventType_ClientUserId,3489,Variable AuditDeleteReferencesEventType_EventId,3490,Variable AuditDeleteReferencesEventType_EventType,3491,Variable AuditDeleteReferencesEventType_SourceNode,3492,Variable AuditDeleteReferencesEventType_SourceName,3493,Variable AuditDeleteReferencesEventType_Time,3494,Variable AuditDeleteReferencesEventType_ReceiveTime,3495,Variable AuditDeleteReferencesEventType_LocalTime,3496,Variable AuditDeleteReferencesEventType_Message,3497,Variable AuditDeleteReferencesEventType_Severity,3498,Variable AuditDeleteReferencesEventType_ActionTimeStamp,3499,Variable AuditDeleteReferencesEventType_Status,3500,Variable AuditDeleteReferencesEventType_ServerId,3501,Variable AuditDeleteReferencesEventType_ClientAuditEntryId,3502,Variable AuditDeleteReferencesEventType_ClientUserId,3503,Variable AuditUpdateEventType_EventId,3504,Variable AuditUpdateEventType_EventType,3505,Variable AuditUpdateEventType_SourceNode,3506,Variable AuditUpdateEventType_SourceName,3507,Variable AuditUpdateEventType_Time,3508,Variable AuditUpdateEventType_ReceiveTime,3509,Variable AuditUpdateEventType_LocalTime,3510,Variable AuditUpdateEventType_Message,3511,Variable AuditUpdateEventType_Severity,3512,Variable AuditUpdateEventType_ActionTimeStamp,3513,Variable AuditUpdateEventType_Status,3514,Variable AuditUpdateEventType_ServerId,3515,Variable AuditUpdateEventType_ClientAuditEntryId,3516,Variable AuditUpdateEventType_ClientUserId,3517,Variable AuditWriteUpdateEventType_EventId,3518,Variable AuditWriteUpdateEventType_EventType,3519,Variable AuditWriteUpdateEventType_SourceNode,3520,Variable AuditWriteUpdateEventType_SourceName,3521,Variable AuditWriteUpdateEventType_Time,3522,Variable AuditWriteUpdateEventType_ReceiveTime,3523,Variable AuditWriteUpdateEventType_LocalTime,3524,Variable AuditWriteUpdateEventType_Message,3525,Variable AuditWriteUpdateEventType_Severity,3526,Variable AuditWriteUpdateEventType_ActionTimeStamp,3527,Variable AuditWriteUpdateEventType_Status,3528,Variable AuditWriteUpdateEventType_ServerId,3529,Variable AuditWriteUpdateEventType_ClientAuditEntryId,3530,Variable AuditWriteUpdateEventType_ClientUserId,3531,Variable AuditHistoryUpdateEventType_EventId,3532,Variable AuditHistoryUpdateEventType_EventType,3533,Variable AuditHistoryUpdateEventType_SourceNode,3534,Variable AuditHistoryUpdateEventType_SourceName,3535,Variable AuditHistoryUpdateEventType_Time,3536,Variable AuditHistoryUpdateEventType_ReceiveTime,3537,Variable AuditHistoryUpdateEventType_LocalTime,3538,Variable AuditHistoryUpdateEventType_Message,3539,Variable AuditHistoryUpdateEventType_Severity,3540,Variable AuditHistoryUpdateEventType_ActionTimeStamp,3541,Variable AuditHistoryUpdateEventType_Status,3542,Variable AuditHistoryUpdateEventType_ServerId,3543,Variable AuditHistoryUpdateEventType_ClientAuditEntryId,3544,Variable AuditHistoryUpdateEventType_ClientUserId,3545,Variable AuditHistoryEventUpdateEventType_EventId,3546,Variable AuditHistoryEventUpdateEventType_EventType,3547,Variable AuditHistoryEventUpdateEventType_SourceNode,3548,Variable AuditHistoryEventUpdateEventType_SourceName,3549,Variable AuditHistoryEventUpdateEventType_Time,3550,Variable AuditHistoryEventUpdateEventType_ReceiveTime,3551,Variable AuditHistoryEventUpdateEventType_LocalTime,3552,Variable AuditHistoryEventUpdateEventType_Message,3553,Variable AuditHistoryEventUpdateEventType_Severity,3554,Variable AuditHistoryEventUpdateEventType_ActionTimeStamp,3555,Variable AuditHistoryEventUpdateEventType_Status,3556,Variable AuditHistoryEventUpdateEventType_ServerId,3557,Variable AuditHistoryEventUpdateEventType_ClientAuditEntryId,3558,Variable AuditHistoryEventUpdateEventType_ClientUserId,3559,Variable AuditHistoryEventUpdateEventType_ParameterDataTypeId,3560,Variable AuditHistoryValueUpdateEventType_EventId,3561,Variable AuditHistoryValueUpdateEventType_EventType,3562,Variable AuditHistoryValueUpdateEventType_SourceNode,3563,Variable AuditHistoryValueUpdateEventType_SourceName,3564,Variable AuditHistoryValueUpdateEventType_Time,3565,Variable AuditHistoryValueUpdateEventType_ReceiveTime,3566,Variable AuditHistoryValueUpdateEventType_LocalTime,3567,Variable AuditHistoryValueUpdateEventType_Message,3568,Variable AuditHistoryValueUpdateEventType_Severity,3569,Variable AuditHistoryValueUpdateEventType_ActionTimeStamp,3570,Variable AuditHistoryValueUpdateEventType_Status,3571,Variable AuditHistoryValueUpdateEventType_ServerId,3572,Variable AuditHistoryValueUpdateEventType_ClientAuditEntryId,3573,Variable AuditHistoryValueUpdateEventType_ClientUserId,3574,Variable AuditHistoryValueUpdateEventType_ParameterDataTypeId,3575,Variable AuditHistoryDeleteEventType_EventId,3576,Variable AuditHistoryDeleteEventType_EventType,3577,Variable AuditHistoryDeleteEventType_SourceNode,3578,Variable AuditHistoryDeleteEventType_SourceName,3579,Variable AuditHistoryDeleteEventType_Time,3580,Variable AuditHistoryDeleteEventType_ReceiveTime,3581,Variable AuditHistoryDeleteEventType_LocalTime,3582,Variable AuditHistoryDeleteEventType_Message,3583,Variable AuditHistoryDeleteEventType_Severity,3584,Variable AuditHistoryDeleteEventType_ActionTimeStamp,3585,Variable AuditHistoryDeleteEventType_Status,3586,Variable AuditHistoryDeleteEventType_ServerId,3587,Variable AuditHistoryDeleteEventType_ClientAuditEntryId,3588,Variable AuditHistoryDeleteEventType_ClientUserId,3589,Variable AuditHistoryDeleteEventType_ParameterDataTypeId,3590,Variable AuditHistoryRawModifyDeleteEventType_EventId,3591,Variable AuditHistoryRawModifyDeleteEventType_EventType,3592,Variable AuditHistoryRawModifyDeleteEventType_SourceNode,3593,Variable AuditHistoryRawModifyDeleteEventType_SourceName,3594,Variable AuditHistoryRawModifyDeleteEventType_Time,3595,Variable AuditHistoryRawModifyDeleteEventType_ReceiveTime,3596,Variable AuditHistoryRawModifyDeleteEventType_LocalTime,3597,Variable AuditHistoryRawModifyDeleteEventType_Message,3598,Variable AuditHistoryRawModifyDeleteEventType_Severity,3599,Variable AuditHistoryRawModifyDeleteEventType_ActionTimeStamp,3600,Variable AuditHistoryRawModifyDeleteEventType_Status,3601,Variable AuditHistoryRawModifyDeleteEventType_ServerId,3602,Variable AuditHistoryRawModifyDeleteEventType_ClientAuditEntryId,3603,Variable AuditHistoryRawModifyDeleteEventType_ClientUserId,3604,Variable AuditHistoryRawModifyDeleteEventType_ParameterDataTypeId,3605,Variable AuditHistoryRawModifyDeleteEventType_UpdatedNode,3606,Variable AuditHistoryAtTimeDeleteEventType_EventId,3607,Variable AuditHistoryAtTimeDeleteEventType_EventType,3608,Variable AuditHistoryAtTimeDeleteEventType_SourceNode,3609,Variable AuditHistoryAtTimeDeleteEventType_SourceName,3610,Variable AuditHistoryAtTimeDeleteEventType_Time,3611,Variable AuditHistoryAtTimeDeleteEventType_ReceiveTime,3612,Variable AuditHistoryAtTimeDeleteEventType_LocalTime,3613,Variable AuditHistoryAtTimeDeleteEventType_Message,3614,Variable AuditHistoryAtTimeDeleteEventType_Severity,3615,Variable AuditHistoryAtTimeDeleteEventType_ActionTimeStamp,3616,Variable AuditHistoryAtTimeDeleteEventType_Status,3617,Variable AuditHistoryAtTimeDeleteEventType_ServerId,3618,Variable AuditHistoryAtTimeDeleteEventType_ClientAuditEntryId,3619,Variable AuditHistoryAtTimeDeleteEventType_ClientUserId,3620,Variable AuditHistoryAtTimeDeleteEventType_ParameterDataTypeId,3621,Variable AuditHistoryAtTimeDeleteEventType_UpdatedNode,3622,Variable AuditHistoryEventDeleteEventType_EventId,3623,Variable AuditHistoryEventDeleteEventType_EventType,3624,Variable AuditHistoryEventDeleteEventType_SourceNode,3625,Variable AuditHistoryEventDeleteEventType_SourceName,3626,Variable AuditHistoryEventDeleteEventType_Time,3627,Variable AuditHistoryEventDeleteEventType_ReceiveTime,3628,Variable AuditHistoryEventDeleteEventType_LocalTime,3629,Variable AuditHistoryEventDeleteEventType_Message,3630,Variable AuditHistoryEventDeleteEventType_Severity,3631,Variable AuditHistoryEventDeleteEventType_ActionTimeStamp,3632,Variable AuditHistoryEventDeleteEventType_Status,3633,Variable AuditHistoryEventDeleteEventType_ServerId,3634,Variable AuditHistoryEventDeleteEventType_ClientAuditEntryId,3635,Variable AuditHistoryEventDeleteEventType_ClientUserId,3636,Variable AuditHistoryEventDeleteEventType_ParameterDataTypeId,3637,Variable AuditHistoryEventDeleteEventType_UpdatedNode,3638,Variable AuditUpdateMethodEventType_EventId,3639,Variable AuditUpdateMethodEventType_EventType,3640,Variable AuditUpdateMethodEventType_SourceNode,3641,Variable AuditUpdateMethodEventType_SourceName,3642,Variable AuditUpdateMethodEventType_Time,3643,Variable AuditUpdateMethodEventType_ReceiveTime,3644,Variable AuditUpdateMethodEventType_LocalTime,3645,Variable AuditUpdateMethodEventType_Message,3646,Variable AuditUpdateMethodEventType_Severity,3647,Variable AuditUpdateMethodEventType_ActionTimeStamp,3648,Variable AuditUpdateMethodEventType_Status,3649,Variable AuditUpdateMethodEventType_ServerId,3650,Variable AuditUpdateMethodEventType_ClientAuditEntryId,3651,Variable AuditUpdateMethodEventType_ClientUserId,3652,Variable SystemEventType_EventId,3653,Variable SystemEventType_EventType,3654,Variable SystemEventType_SourceNode,3655,Variable SystemEventType_SourceName,3656,Variable SystemEventType_Time,3657,Variable SystemEventType_ReceiveTime,3658,Variable SystemEventType_LocalTime,3659,Variable SystemEventType_Message,3660,Variable SystemEventType_Severity,3661,Variable DeviceFailureEventType_EventId,3662,Variable DeviceFailureEventType_EventType,3663,Variable DeviceFailureEventType_SourceNode,3664,Variable DeviceFailureEventType_SourceName,3665,Variable DeviceFailureEventType_Time,3666,Variable DeviceFailureEventType_ReceiveTime,3667,Variable DeviceFailureEventType_LocalTime,3668,Variable DeviceFailureEventType_Message,3669,Variable DeviceFailureEventType_Severity,3670,Variable BaseModelChangeEventType_EventId,3671,Variable BaseModelChangeEventType_EventType,3672,Variable BaseModelChangeEventType_SourceNode,3673,Variable BaseModelChangeEventType_SourceName,3674,Variable BaseModelChangeEventType_Time,3675,Variable BaseModelChangeEventType_ReceiveTime,3676,Variable BaseModelChangeEventType_LocalTime,3677,Variable BaseModelChangeEventType_Message,3678,Variable BaseModelChangeEventType_Severity,3679,Variable GeneralModelChangeEventType_EventId,3680,Variable GeneralModelChangeEventType_EventType,3681,Variable GeneralModelChangeEventType_SourceNode,3682,Variable GeneralModelChangeEventType_SourceName,3683,Variable GeneralModelChangeEventType_Time,3684,Variable GeneralModelChangeEventType_ReceiveTime,3685,Variable GeneralModelChangeEventType_LocalTime,3686,Variable GeneralModelChangeEventType_Message,3687,Variable GeneralModelChangeEventType_Severity,3688,Variable SemanticChangeEventType_EventId,3689,Variable SemanticChangeEventType_EventType,3690,Variable SemanticChangeEventType_SourceNode,3691,Variable SemanticChangeEventType_SourceName,3692,Variable SemanticChangeEventType_Time,3693,Variable SemanticChangeEventType_ReceiveTime,3694,Variable SemanticChangeEventType_LocalTime,3695,Variable SemanticChangeEventType_Message,3696,Variable SemanticChangeEventType_Severity,3697,Variable ServerStatusType_BuildInfo_ProductUri,3698,Variable ServerStatusType_BuildInfo_ManufacturerName,3699,Variable ServerStatusType_BuildInfo_ProductName,3700,Variable ServerStatusType_BuildInfo_SoftwareVersion,3701,Variable ServerStatusType_BuildInfo_BuildNumber,3702,Variable ServerStatusType_BuildInfo_BuildDate,3703,Variable Server_ServerCapabilities_SoftwareCertificates,3704,Variable Server_ServerDiagnostics_ServerDiagnosticsSummary_RejectedSessionCount,3705,Variable Server_ServerDiagnostics_SessionsDiagnosticsSummary,3706,Object Server_ServerDiagnostics_SessionsDiagnosticsSummary_SessionDiagnosticsArray,3707,Variable Server_ServerDiagnostics_SessionsDiagnosticsSummary_SessionSecurityDiagnosticsArray,3708,Variable Server_ServerRedundancy_RedundancySupport,3709,Variable FiniteStateVariableType_Name,3714,Variable FiniteStateVariableType_Number,3715,Variable FiniteStateVariableType_EffectiveDisplayName,3716,Variable FiniteTransitionVariableType_Name,3717,Variable FiniteTransitionVariableType_Number,3718,Variable FiniteTransitionVariableType_TransitionTime,3719,Variable StateMachineType_CurrentState_Id,3720,Variable StateMachineType_CurrentState_Name,3721,Variable StateMachineType_CurrentState_Number,3722,Variable StateMachineType_CurrentState_EffectiveDisplayName,3723,Variable StateMachineType_LastTransition_Id,3724,Variable StateMachineType_LastTransition_Name,3725,Variable StateMachineType_LastTransition_Number,3726,Variable StateMachineType_LastTransition_TransitionTime,3727,Variable FiniteStateMachineType_CurrentState_Id,3728,Variable FiniteStateMachineType_CurrentState_Name,3729,Variable FiniteStateMachineType_CurrentState_Number,3730,Variable FiniteStateMachineType_CurrentState_EffectiveDisplayName,3731,Variable FiniteStateMachineType_LastTransition_Id,3732,Variable FiniteStateMachineType_LastTransition_Name,3733,Variable FiniteStateMachineType_LastTransition_Number,3734,Variable FiniteStateMachineType_LastTransition_TransitionTime,3735,Variable InitialStateType_StateNumber,3736,Variable TransitionEventType_EventId,3737,Variable TransitionEventType_EventType,3738,Variable TransitionEventType_SourceNode,3739,Variable TransitionEventType_SourceName,3740,Variable TransitionEventType_Time,3741,Variable TransitionEventType_ReceiveTime,3742,Variable TransitionEventType_LocalTime,3743,Variable TransitionEventType_Message,3744,Variable TransitionEventType_Severity,3745,Variable TransitionEventType_FromState_Id,3746,Variable TransitionEventType_FromState_Name,3747,Variable TransitionEventType_FromState_Number,3748,Variable TransitionEventType_FromState_EffectiveDisplayName,3749,Variable TransitionEventType_ToState_Id,3750,Variable TransitionEventType_ToState_Name,3751,Variable TransitionEventType_ToState_Number,3752,Variable TransitionEventType_ToState_EffectiveDisplayName,3753,Variable TransitionEventType_Transition_Id,3754,Variable TransitionEventType_Transition_Name,3755,Variable TransitionEventType_Transition_Number,3756,Variable TransitionEventType_Transition_TransitionTime,3757,Variable AuditUpdateStateEventType_EventId,3758,Variable AuditUpdateStateEventType_EventType,3759,Variable AuditUpdateStateEventType_SourceNode,3760,Variable AuditUpdateStateEventType_SourceName,3761,Variable AuditUpdateStateEventType_Time,3762,Variable AuditUpdateStateEventType_ReceiveTime,3763,Variable AuditUpdateStateEventType_LocalTime,3764,Variable AuditUpdateStateEventType_Message,3765,Variable AuditUpdateStateEventType_Severity,3766,Variable AuditUpdateStateEventType_ActionTimeStamp,3767,Variable AuditUpdateStateEventType_Status,3768,Variable AuditUpdateStateEventType_ServerId,3769,Variable AuditUpdateStateEventType_ClientAuditEntryId,3770,Variable AuditUpdateStateEventType_ClientUserId,3771,Variable AuditUpdateStateEventType_MethodId,3772,Variable AuditUpdateStateEventType_InputArguments,3773,Variable AnalogItemType_Definition,3774,Variable AnalogItemType_ValuePrecision,3775,Variable DiscreteItemType_Definition,3776,Variable DiscreteItemType_ValuePrecision,3777,Variable TwoStateDiscreteType_Definition,3778,Variable TwoStateDiscreteType_ValuePrecision,3779,Variable MultiStateDiscreteType_Definition,3780,Variable MultiStateDiscreteType_ValuePrecision,3781,Variable ProgramTransitionEventType_EventId,3782,Variable ProgramTransitionEventType_EventType,3783,Variable ProgramTransitionEventType_SourceNode,3784,Variable ProgramTransitionEventType_SourceName,3785,Variable ProgramTransitionEventType_Time,3786,Variable ProgramTransitionEventType_ReceiveTime,3787,Variable ProgramTransitionEventType_LocalTime,3788,Variable ProgramTransitionEventType_Message,3789,Variable ProgramTransitionEventType_Severity,3790,Variable ProgramTransitionEventType_FromState,3791,Variable ProgramTransitionEventType_FromState_Id,3792,Variable ProgramTransitionEventType_FromState_Name,3793,Variable ProgramTransitionEventType_FromState_Number,3794,Variable ProgramTransitionEventType_FromState_EffectiveDisplayName,3795,Variable ProgramTransitionEventType_ToState,3796,Variable ProgramTransitionEventType_ToState_Id,3797,Variable ProgramTransitionEventType_ToState_Name,3798,Variable ProgramTransitionEventType_ToState_Number,3799,Variable ProgramTransitionEventType_ToState_EffectiveDisplayName,3800,Variable ProgramTransitionEventType_Transition,3801,Variable ProgramTransitionEventType_Transition_Id,3802,Variable ProgramTransitionEventType_Transition_Name,3803,Variable ProgramTransitionEventType_Transition_Number,3804,Variable ProgramTransitionEventType_Transition_TransitionTime,3805,Variable ProgramTransitionAuditEventType,3806,ObjectType ProgramTransitionAuditEventType_EventId,3807,Variable ProgramTransitionAuditEventType_EventType,3808,Variable ProgramTransitionAuditEventType_SourceNode,3809,Variable ProgramTransitionAuditEventType_SourceName,3810,Variable ProgramTransitionAuditEventType_Time,3811,Variable ProgramTransitionAuditEventType_ReceiveTime,3812,Variable ProgramTransitionAuditEventType_LocalTime,3813,Variable ProgramTransitionAuditEventType_Message,3814,Variable ProgramTransitionAuditEventType_Severity,3815,Variable ProgramTransitionAuditEventType_ActionTimeStamp,3816,Variable ProgramTransitionAuditEventType_Status,3817,Variable ProgramTransitionAuditEventType_ServerId,3818,Variable ProgramTransitionAuditEventType_ClientAuditEntryId,3819,Variable ProgramTransitionAuditEventType_ClientUserId,3820,Variable ProgramTransitionAuditEventType_MethodId,3821,Variable ProgramTransitionAuditEventType_InputArguments,3822,Variable ProgramTransitionAuditEventType_OldStateId,3823,Variable ProgramTransitionAuditEventType_NewStateId,3824,Variable ProgramTransitionAuditEventType_Transition,3825,Variable ProgramTransitionAuditEventType_Transition_Id,3826,Variable ProgramTransitionAuditEventType_Transition_Name,3827,Variable ProgramTransitionAuditEventType_Transition_Number,3828,Variable ProgramTransitionAuditEventType_Transition_TransitionTime,3829,Variable ProgramStateMachineType_CurrentState,3830,Variable ProgramStateMachineType_CurrentState_Id,3831,Variable ProgramStateMachineType_CurrentState_Name,3832,Variable ProgramStateMachineType_CurrentState_Number,3833,Variable ProgramStateMachineType_CurrentState_EffectiveDisplayName,3834,Variable ProgramStateMachineType_LastTransition,3835,Variable ProgramStateMachineType_LastTransition_Id,3836,Variable ProgramStateMachineType_LastTransition_Name,3837,Variable ProgramStateMachineType_LastTransition_Number,3838,Variable ProgramStateMachineType_LastTransition_TransitionTime,3839,Variable ProgramStateMachineType_ProgramDiagnostics_CreateSessionId,3840,Variable ProgramStateMachineType_ProgramDiagnostics_CreateClientName,3841,Variable ProgramStateMachineType_ProgramDiagnostics_InvocationCreationTime,3842,Variable ProgramStateMachineType_ProgramDiagnostics_LastTransitionTime,3843,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodCall,3844,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodSessionId,3845,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodInputArguments,3846,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodOutputArguments,3847,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodCallTime,3848,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodReturnStatus,3849,Variable ProgramStateMachineType_FinalResultData,3850,Object AddCommentMethodType,3863,Method AddCommentMethodType_InputArguments,3864,Variable ConditionType_EventId,3865,Variable ConditionType_EventType,3866,Variable ConditionType_SourceNode,3867,Variable ConditionType_SourceName,3868,Variable ConditionType_Time,3869,Variable ConditionType_ReceiveTime,3870,Variable ConditionType_LocalTime,3871,Variable ConditionType_Message,3872,Variable ConditionType_Severity,3873,Variable ConditionType_Retain,3874,Variable ConditionType_ConditionRefresh,3875,Method ConditionType_ConditionRefresh_InputArguments,3876,Variable RefreshStartEventType_EventId,3969,Variable RefreshStartEventType_EventType,3970,Variable RefreshStartEventType_SourceNode,3971,Variable RefreshStartEventType_SourceName,3972,Variable RefreshStartEventType_Time,3973,Variable RefreshStartEventType_ReceiveTime,3974,Variable RefreshStartEventType_LocalTime,3975,Variable RefreshStartEventType_Message,3976,Variable RefreshStartEventType_Severity,3977,Variable RefreshEndEventType_EventId,3978,Variable RefreshEndEventType_EventType,3979,Variable RefreshEndEventType_SourceNode,3980,Variable RefreshEndEventType_SourceName,3981,Variable RefreshEndEventType_Time,3982,Variable RefreshEndEventType_ReceiveTime,3983,Variable RefreshEndEventType_LocalTime,3984,Variable RefreshEndEventType_Message,3985,Variable RefreshEndEventType_Severity,3986,Variable RefreshRequiredEventType_EventId,3987,Variable RefreshRequiredEventType_EventType,3988,Variable RefreshRequiredEventType_SourceNode,3989,Variable RefreshRequiredEventType_SourceName,3990,Variable RefreshRequiredEventType_Time,3991,Variable RefreshRequiredEventType_ReceiveTime,3992,Variable RefreshRequiredEventType_LocalTime,3993,Variable RefreshRequiredEventType_Message,3994,Variable RefreshRequiredEventType_Severity,3995,Variable AuditConditionEventType_EventId,3996,Variable AuditConditionEventType_EventType,3997,Variable AuditConditionEventType_SourceNode,3998,Variable AuditConditionEventType_SourceName,3999,Variable AuditConditionEventType_Time,4000,Variable AuditConditionEventType_ReceiveTime,4001,Variable AuditConditionEventType_LocalTime,4002,Variable AuditConditionEventType_Message,4003,Variable AuditConditionEventType_Severity,4004,Variable AuditConditionEventType_ActionTimeStamp,4005,Variable AuditConditionEventType_Status,4006,Variable AuditConditionEventType_ServerId,4007,Variable AuditConditionEventType_ClientAuditEntryId,4008,Variable AuditConditionEventType_ClientUserId,4009,Variable AuditConditionEventType_MethodId,4010,Variable AuditConditionEventType_InputArguments,4011,Variable AuditConditionEnableEventType_EventId,4106,Variable AuditConditionEnableEventType_EventType,4107,Variable AuditConditionEnableEventType_SourceNode,4108,Variable AuditConditionEnableEventType_SourceName,4109,Variable AuditConditionEnableEventType_Time,4110,Variable AuditConditionEnableEventType_ReceiveTime,4111,Variable AuditConditionEnableEventType_LocalTime,4112,Variable AuditConditionEnableEventType_Message,4113,Variable AuditConditionEnableEventType_Severity,4114,Variable AuditConditionEnableEventType_ActionTimeStamp,4115,Variable AuditConditionEnableEventType_Status,4116,Variable AuditConditionEnableEventType_ServerId,4117,Variable AuditConditionEnableEventType_ClientAuditEntryId,4118,Variable AuditConditionEnableEventType_ClientUserId,4119,Variable AuditConditionEnableEventType_MethodId,4120,Variable AuditConditionEnableEventType_InputArguments,4121,Variable AuditConditionCommentEventType_EventId,4170,Variable AuditConditionCommentEventType_EventType,4171,Variable AuditConditionCommentEventType_SourceNode,4172,Variable AuditConditionCommentEventType_SourceName,4173,Variable AuditConditionCommentEventType_Time,4174,Variable AuditConditionCommentEventType_ReceiveTime,4175,Variable AuditConditionCommentEventType_LocalTime,4176,Variable AuditConditionCommentEventType_Message,4177,Variable AuditConditionCommentEventType_Severity,4178,Variable AuditConditionCommentEventType_ActionTimeStamp,4179,Variable AuditConditionCommentEventType_Status,4180,Variable AuditConditionCommentEventType_ServerId,4181,Variable AuditConditionCommentEventType_ClientAuditEntryId,4182,Variable AuditConditionCommentEventType_ClientUserId,4183,Variable AuditConditionCommentEventType_MethodId,4184,Variable AuditConditionCommentEventType_InputArguments,4185,Variable DialogConditionType_EventId,4188,Variable DialogConditionType_EventType,4189,Variable DialogConditionType_SourceNode,4190,Variable DialogConditionType_SourceName,4191,Variable DialogConditionType_Time,4192,Variable DialogConditionType_ReceiveTime,4193,Variable DialogConditionType_LocalTime,4194,Variable DialogConditionType_Message,4195,Variable DialogConditionType_Severity,4196,Variable DialogConditionType_Retain,4197,Variable DialogConditionType_ConditionRefresh,4198,Method DialogConditionType_ConditionRefresh_InputArguments,4199,Variable AcknowledgeableConditionType_EventId,5113,Variable AcknowledgeableConditionType_EventType,5114,Variable AcknowledgeableConditionType_SourceNode,5115,Variable AcknowledgeableConditionType_SourceName,5116,Variable AcknowledgeableConditionType_Time,5117,Variable AcknowledgeableConditionType_ReceiveTime,5118,Variable AcknowledgeableConditionType_LocalTime,5119,Variable AcknowledgeableConditionType_Message,5120,Variable AcknowledgeableConditionType_Severity,5121,Variable AcknowledgeableConditionType_Retain,5122,Variable AcknowledgeableConditionType_ConditionRefresh,5123,Method AcknowledgeableConditionType_ConditionRefresh_InputArguments,5124,Variable AlarmConditionType_EventId,5540,Variable AlarmConditionType_EventType,5541,Variable AlarmConditionType_SourceNode,5542,Variable AlarmConditionType_SourceName,5543,Variable AlarmConditionType_Time,5544,Variable AlarmConditionType_ReceiveTime,5545,Variable AlarmConditionType_LocalTime,5546,Variable AlarmConditionType_Message,5547,Variable AlarmConditionType_Severity,5548,Variable AlarmConditionType_Retain,5549,Variable AlarmConditionType_ConditionRefresh,5550,Method AlarmConditionType_ConditionRefresh_InputArguments,5551,Variable ShelvedStateMachineType_CurrentState,6088,Variable ShelvedStateMachineType_CurrentState_Id,6089,Variable ShelvedStateMachineType_CurrentState_Name,6090,Variable ShelvedStateMachineType_CurrentState_Number,6091,Variable ShelvedStateMachineType_CurrentState_EffectiveDisplayName,6092,Variable ShelvedStateMachineType_LastTransition,6093,Variable ShelvedStateMachineType_LastTransition_Id,6094,Variable ShelvedStateMachineType_LastTransition_Name,6095,Variable ShelvedStateMachineType_LastTransition_Number,6096,Variable ShelvedStateMachineType_LastTransition_TransitionTime,6097,Variable ShelvedStateMachineType_Unshelved_StateNumber,6098,Variable ShelvedStateMachineType_TimedShelved_StateNumber,6100,Variable ShelvedStateMachineType_OneShotShelved_StateNumber,6101,Variable TimedShelveMethodType,6102,Method TimedShelveMethodType_InputArguments,6103,Variable LimitAlarmType_EventId,6116,Variable LimitAlarmType_EventType,6117,Variable LimitAlarmType_SourceNode,6118,Variable LimitAlarmType_SourceName,6119,Variable LimitAlarmType_Time,6120,Variable LimitAlarmType_ReceiveTime,6121,Variable LimitAlarmType_LocalTime,6122,Variable LimitAlarmType_Message,6123,Variable LimitAlarmType_Severity,6124,Variable LimitAlarmType_Retain,6125,Variable LimitAlarmType_ConditionRefresh,6126,Method LimitAlarmType_ConditionRefresh_InputArguments,6127,Variable IdType_EnumStrings,7591,Variable EnumValueType,7594,DataType MessageSecurityMode_EnumStrings,7595,Variable UserTokenType_EnumStrings,7596,Variable ApplicationType_EnumStrings,7597,Variable SecurityTokenRequestType_EnumStrings,7598,Variable BrowseDirection_EnumStrings,7603,Variable FilterOperator_EnumStrings,7605,Variable TimestampsToReturn_EnumStrings,7606,Variable MonitoringMode_EnumStrings,7608,Variable DataChangeTrigger_EnumStrings,7609,Variable DeadbandType_EnumStrings,7610,Variable RedundancySupport_EnumStrings,7611,Variable ServerState_EnumStrings,7612,Variable ExceptionDeviationFormat_EnumStrings,7614,Variable EnumValueType_Encoding_DefaultXml,7616,Object OpcUa_BinarySchema,7617,Variable OpcUa_BinarySchema_DataTypeVersion,7618,Variable OpcUa_BinarySchema_NamespaceUri,7619,Variable OpcUa_BinarySchema_Argument,7650,Variable OpcUa_BinarySchema_Argument_DataTypeVersion,7651,Variable OpcUa_BinarySchema_Argument_DictionaryFragment,7652,Variable OpcUa_BinarySchema_EnumValueType,7656,Variable OpcUa_BinarySchema_EnumValueType_DataTypeVersion,7657,Variable OpcUa_BinarySchema_EnumValueType_DictionaryFragment,7658,Variable OpcUa_BinarySchema_StatusResult,7659,Variable OpcUa_BinarySchema_StatusResult_DataTypeVersion,7660,Variable OpcUa_BinarySchema_StatusResult_DictionaryFragment,7661,Variable OpcUa_BinarySchema_UserTokenPolicy,7662,Variable OpcUa_BinarySchema_UserTokenPolicy_DataTypeVersion,7663,Variable OpcUa_BinarySchema_UserTokenPolicy_DictionaryFragment,7664,Variable OpcUa_BinarySchema_ApplicationDescription,7665,Variable OpcUa_BinarySchema_ApplicationDescription_DataTypeVersion,7666,Variable OpcUa_BinarySchema_ApplicationDescription_DictionaryFragment,7667,Variable OpcUa_BinarySchema_EndpointDescription,7668,Variable OpcUa_BinarySchema_EndpointDescription_DataTypeVersion,7669,Variable OpcUa_BinarySchema_EndpointDescription_DictionaryFragment,7670,Variable OpcUa_BinarySchema_UserIdentityToken,7671,Variable OpcUa_BinarySchema_UserIdentityToken_DataTypeVersion,7672,Variable OpcUa_BinarySchema_UserIdentityToken_DictionaryFragment,7673,Variable OpcUa_BinarySchema_AnonymousIdentityToken,7674,Variable OpcUa_BinarySchema_AnonymousIdentityToken_DataTypeVersion,7675,Variable OpcUa_BinarySchema_AnonymousIdentityToken_DictionaryFragment,7676,Variable OpcUa_BinarySchema_UserNameIdentityToken,7677,Variable OpcUa_BinarySchema_UserNameIdentityToken_DataTypeVersion,7678,Variable OpcUa_BinarySchema_UserNameIdentityToken_DictionaryFragment,7679,Variable OpcUa_BinarySchema_X509IdentityToken,7680,Variable OpcUa_BinarySchema_X509IdentityToken_DataTypeVersion,7681,Variable OpcUa_BinarySchema_X509IdentityToken_DictionaryFragment,7682,Variable OpcUa_BinarySchema_IssuedIdentityToken,7683,Variable OpcUa_BinarySchema_IssuedIdentityToken_DataTypeVersion,7684,Variable OpcUa_BinarySchema_IssuedIdentityToken_DictionaryFragment,7685,Variable OpcUa_BinarySchema_EndpointConfiguration,7686,Variable OpcUa_BinarySchema_EndpointConfiguration_DataTypeVersion,7687,Variable OpcUa_BinarySchema_EndpointConfiguration_DictionaryFragment,7688,Variable OpcUa_BinarySchema_BuildInfo,7692,Variable OpcUa_BinarySchema_BuildInfo_DataTypeVersion,7693,Variable OpcUa_BinarySchema_BuildInfo_DictionaryFragment,7694,Variable OpcUa_BinarySchema_SignedSoftwareCertificate,7698,Variable OpcUa_BinarySchema_SignedSoftwareCertificate_DataTypeVersion,7699,Variable OpcUa_BinarySchema_SignedSoftwareCertificate_DictionaryFragment,7700,Variable OpcUa_BinarySchema_AddNodesItem,7728,Variable OpcUa_BinarySchema_AddNodesItem_DataTypeVersion,7729,Variable OpcUa_BinarySchema_AddNodesItem_DictionaryFragment,7730,Variable OpcUa_BinarySchema_AddReferencesItem,7731,Variable OpcUa_BinarySchema_AddReferencesItem_DataTypeVersion,7732,Variable OpcUa_BinarySchema_AddReferencesItem_DictionaryFragment,7733,Variable OpcUa_BinarySchema_DeleteNodesItem,7734,Variable OpcUa_BinarySchema_DeleteNodesItem_DataTypeVersion,7735,Variable OpcUa_BinarySchema_DeleteNodesItem_DictionaryFragment,7736,Variable OpcUa_BinarySchema_DeleteReferencesItem,7737,Variable OpcUa_BinarySchema_DeleteReferencesItem_DataTypeVersion,7738,Variable OpcUa_BinarySchema_DeleteReferencesItem_DictionaryFragment,7739,Variable OpcUa_BinarySchema_RegisteredServer,7782,Variable OpcUa_BinarySchema_RegisteredServer_DataTypeVersion,7783,Variable OpcUa_BinarySchema_RegisteredServer_DictionaryFragment,7784,Variable OpcUa_BinarySchema_ContentFilterElement,7929,Variable OpcUa_BinarySchema_ContentFilterElement_DataTypeVersion,7930,Variable OpcUa_BinarySchema_ContentFilterElement_DictionaryFragment,7931,Variable OpcUa_BinarySchema_ContentFilter,7932,Variable OpcUa_BinarySchema_ContentFilter_DataTypeVersion,7933,Variable OpcUa_BinarySchema_ContentFilter_DictionaryFragment,7934,Variable OpcUa_BinarySchema_FilterOperand,7935,Variable OpcUa_BinarySchema_FilterOperand_DataTypeVersion,7936,Variable OpcUa_BinarySchema_FilterOperand_DictionaryFragment,7937,Variable OpcUa_BinarySchema_ElementOperand,7938,Variable OpcUa_BinarySchema_ElementOperand_DataTypeVersion,7939,Variable OpcUa_BinarySchema_ElementOperand_DictionaryFragment,7940,Variable OpcUa_BinarySchema_LiteralOperand,7941,Variable OpcUa_BinarySchema_LiteralOperand_DataTypeVersion,7942,Variable OpcUa_BinarySchema_LiteralOperand_DictionaryFragment,7943,Variable OpcUa_BinarySchema_AttributeOperand,7944,Variable OpcUa_BinarySchema_AttributeOperand_DataTypeVersion,7945,Variable OpcUa_BinarySchema_AttributeOperand_DictionaryFragment,7946,Variable OpcUa_BinarySchema_SimpleAttributeOperand,7947,Variable OpcUa_BinarySchema_SimpleAttributeOperand_DataTypeVersion,7948,Variable OpcUa_BinarySchema_SimpleAttributeOperand_DictionaryFragment,7949,Variable OpcUa_BinarySchema_HistoryEvent,8004,Variable OpcUa_BinarySchema_HistoryEvent_DataTypeVersion,8005,Variable OpcUa_BinarySchema_HistoryEvent_DictionaryFragment,8006,Variable OpcUa_BinarySchema_MonitoringFilter,8067,Variable OpcUa_BinarySchema_MonitoringFilter_DataTypeVersion,8068,Variable OpcUa_BinarySchema_MonitoringFilter_DictionaryFragment,8069,Variable OpcUa_BinarySchema_EventFilter,8073,Variable OpcUa_BinarySchema_EventFilter_DataTypeVersion,8074,Variable OpcUa_BinarySchema_EventFilter_DictionaryFragment,8075,Variable OpcUa_BinarySchema_AggregateConfiguration,8076,Variable OpcUa_BinarySchema_AggregateConfiguration_DataTypeVersion,8077,Variable OpcUa_BinarySchema_AggregateConfiguration_DictionaryFragment,8078,Variable OpcUa_BinarySchema_HistoryEventFieldList,8172,Variable OpcUa_BinarySchema_HistoryEventFieldList_DataTypeVersion,8173,Variable OpcUa_BinarySchema_HistoryEventFieldList_DictionaryFragment,8174,Variable OpcUa_BinarySchema_RedundantServerDataType,8208,Variable OpcUa_BinarySchema_RedundantServerDataType_DataTypeVersion,8209,Variable OpcUa_BinarySchema_RedundantServerDataType_DictionaryFragment,8210,Variable OpcUa_BinarySchema_SamplingIntervalDiagnosticsDataType,8211,Variable OpcUa_BinarySchema_SamplingIntervalDiagnosticsDataType_DataTypeVersion,8212,Variable OpcUa_BinarySchema_SamplingIntervalDiagnosticsDataType_DictionaryFragment,8213,Variable OpcUa_BinarySchema_ServerDiagnosticsSummaryDataType,8214,Variable OpcUa_BinarySchema_ServerDiagnosticsSummaryDataType_DataTypeVersion,8215,Variable OpcUa_BinarySchema_ServerDiagnosticsSummaryDataType_DictionaryFragment,8216,Variable OpcUa_BinarySchema_ServerStatusDataType,8217,Variable OpcUa_BinarySchema_ServerStatusDataType_DataTypeVersion,8218,Variable OpcUa_BinarySchema_ServerStatusDataType_DictionaryFragment,8219,Variable OpcUa_BinarySchema_SessionDiagnosticsDataType,8220,Variable OpcUa_BinarySchema_SessionDiagnosticsDataType_DataTypeVersion,8221,Variable OpcUa_BinarySchema_SessionDiagnosticsDataType_DictionaryFragment,8222,Variable OpcUa_BinarySchema_SessionSecurityDiagnosticsDataType,8223,Variable OpcUa_BinarySchema_SessionSecurityDiagnosticsDataType_DataTypeVersion,8224,Variable OpcUa_BinarySchema_SessionSecurityDiagnosticsDataType_DictionaryFragment,8225,Variable OpcUa_BinarySchema_ServiceCounterDataType,8226,Variable OpcUa_BinarySchema_ServiceCounterDataType_DataTypeVersion,8227,Variable OpcUa_BinarySchema_ServiceCounterDataType_DictionaryFragment,8228,Variable OpcUa_BinarySchema_SubscriptionDiagnosticsDataType,8229,Variable OpcUa_BinarySchema_SubscriptionDiagnosticsDataType_DataTypeVersion,8230,Variable OpcUa_BinarySchema_SubscriptionDiagnosticsDataType_DictionaryFragment,8231,Variable OpcUa_BinarySchema_ModelChangeStructureDataType,8232,Variable OpcUa_BinarySchema_ModelChangeStructureDataType_DataTypeVersion,8233,Variable OpcUa_BinarySchema_ModelChangeStructureDataType_DictionaryFragment,8234,Variable OpcUa_BinarySchema_SemanticChangeStructureDataType,8235,Variable OpcUa_BinarySchema_SemanticChangeStructureDataType_DataTypeVersion,8236,Variable OpcUa_BinarySchema_SemanticChangeStructureDataType_DictionaryFragment,8237,Variable OpcUa_BinarySchema_Range,8238,Variable OpcUa_BinarySchema_Range_DataTypeVersion,8239,Variable OpcUa_BinarySchema_Range_DictionaryFragment,8240,Variable OpcUa_BinarySchema_EUInformation,8241,Variable OpcUa_BinarySchema_EUInformation_DataTypeVersion,8242,Variable OpcUa_BinarySchema_EUInformation_DictionaryFragment,8243,Variable OpcUa_BinarySchema_Annotation,8244,Variable OpcUa_BinarySchema_Annotation_DataTypeVersion,8245,Variable OpcUa_BinarySchema_Annotation_DictionaryFragment,8246,Variable OpcUa_BinarySchema_ProgramDiagnosticDataType,8247,Variable OpcUa_BinarySchema_ProgramDiagnosticDataType_DataTypeVersion,8248,Variable OpcUa_BinarySchema_ProgramDiagnosticDataType_DictionaryFragment,8249,Variable EnumValueType_Encoding_DefaultBinary,8251,Object OpcUa_XmlSchema,8252,Variable OpcUa_XmlSchema_DataTypeVersion,8253,Variable OpcUa_XmlSchema_NamespaceUri,8254,Variable OpcUa_XmlSchema_Argument,8285,Variable OpcUa_XmlSchema_Argument_DataTypeVersion,8286,Variable OpcUa_XmlSchema_Argument_DictionaryFragment,8287,Variable OpcUa_XmlSchema_EnumValueType,8291,Variable OpcUa_XmlSchema_EnumValueType_DataTypeVersion,8292,Variable OpcUa_XmlSchema_EnumValueType_DictionaryFragment,8293,Variable OpcUa_XmlSchema_StatusResult,8294,Variable OpcUa_XmlSchema_StatusResult_DataTypeVersion,8295,Variable OpcUa_XmlSchema_StatusResult_DictionaryFragment,8296,Variable OpcUa_XmlSchema_UserTokenPolicy,8297,Variable OpcUa_XmlSchema_UserTokenPolicy_DataTypeVersion,8298,Variable OpcUa_XmlSchema_UserTokenPolicy_DictionaryFragment,8299,Variable OpcUa_XmlSchema_ApplicationDescription,8300,Variable OpcUa_XmlSchema_ApplicationDescription_DataTypeVersion,8301,Variable OpcUa_XmlSchema_ApplicationDescription_DictionaryFragment,8302,Variable OpcUa_XmlSchema_EndpointDescription,8303,Variable OpcUa_XmlSchema_EndpointDescription_DataTypeVersion,8304,Variable OpcUa_XmlSchema_EndpointDescription_DictionaryFragment,8305,Variable OpcUa_XmlSchema_UserIdentityToken,8306,Variable OpcUa_XmlSchema_UserIdentityToken_DataTypeVersion,8307,Variable OpcUa_XmlSchema_UserIdentityToken_DictionaryFragment,8308,Variable OpcUa_XmlSchema_AnonymousIdentityToken,8309,Variable OpcUa_XmlSchema_AnonymousIdentityToken_DataTypeVersion,8310,Variable OpcUa_XmlSchema_AnonymousIdentityToken_DictionaryFragment,8311,Variable OpcUa_XmlSchema_UserNameIdentityToken,8312,Variable OpcUa_XmlSchema_UserNameIdentityToken_DataTypeVersion,8313,Variable OpcUa_XmlSchema_UserNameIdentityToken_DictionaryFragment,8314,Variable OpcUa_XmlSchema_X509IdentityToken,8315,Variable OpcUa_XmlSchema_X509IdentityToken_DataTypeVersion,8316,Variable OpcUa_XmlSchema_X509IdentityToken_DictionaryFragment,8317,Variable OpcUa_XmlSchema_IssuedIdentityToken,8318,Variable OpcUa_XmlSchema_IssuedIdentityToken_DataTypeVersion,8319,Variable OpcUa_XmlSchema_IssuedIdentityToken_DictionaryFragment,8320,Variable OpcUa_XmlSchema_EndpointConfiguration,8321,Variable OpcUa_XmlSchema_EndpointConfiguration_DataTypeVersion,8322,Variable OpcUa_XmlSchema_EndpointConfiguration_DictionaryFragment,8323,Variable OpcUa_XmlSchema_BuildInfo,8327,Variable OpcUa_XmlSchema_BuildInfo_DataTypeVersion,8328,Variable OpcUa_XmlSchema_BuildInfo_DictionaryFragment,8329,Variable OpcUa_XmlSchema_SignedSoftwareCertificate,8333,Variable OpcUa_XmlSchema_SignedSoftwareCertificate_DataTypeVersion,8334,Variable OpcUa_XmlSchema_SignedSoftwareCertificate_DictionaryFragment,8335,Variable OpcUa_XmlSchema_AddNodesItem,8363,Variable OpcUa_XmlSchema_AddNodesItem_DataTypeVersion,8364,Variable OpcUa_XmlSchema_AddNodesItem_DictionaryFragment,8365,Variable OpcUa_XmlSchema_AddReferencesItem,8366,Variable OpcUa_XmlSchema_AddReferencesItem_DataTypeVersion,8367,Variable OpcUa_XmlSchema_AddReferencesItem_DictionaryFragment,8368,Variable OpcUa_XmlSchema_DeleteNodesItem,8369,Variable OpcUa_XmlSchema_DeleteNodesItem_DataTypeVersion,8370,Variable OpcUa_XmlSchema_DeleteNodesItem_DictionaryFragment,8371,Variable OpcUa_XmlSchema_DeleteReferencesItem,8372,Variable OpcUa_XmlSchema_DeleteReferencesItem_DataTypeVersion,8373,Variable OpcUa_XmlSchema_DeleteReferencesItem_DictionaryFragment,8374,Variable OpcUa_XmlSchema_RegisteredServer,8417,Variable OpcUa_XmlSchema_RegisteredServer_DataTypeVersion,8418,Variable OpcUa_XmlSchema_RegisteredServer_DictionaryFragment,8419,Variable OpcUa_XmlSchema_ContentFilterElement,8564,Variable OpcUa_XmlSchema_ContentFilterElement_DataTypeVersion,8565,Variable OpcUa_XmlSchema_ContentFilterElement_DictionaryFragment,8566,Variable OpcUa_XmlSchema_ContentFilter,8567,Variable OpcUa_XmlSchema_ContentFilter_DataTypeVersion,8568,Variable OpcUa_XmlSchema_ContentFilter_DictionaryFragment,8569,Variable OpcUa_XmlSchema_FilterOperand,8570,Variable OpcUa_XmlSchema_FilterOperand_DataTypeVersion,8571,Variable OpcUa_XmlSchema_FilterOperand_DictionaryFragment,8572,Variable OpcUa_XmlSchema_ElementOperand,8573,Variable OpcUa_XmlSchema_ElementOperand_DataTypeVersion,8574,Variable OpcUa_XmlSchema_ElementOperand_DictionaryFragment,8575,Variable OpcUa_XmlSchema_LiteralOperand,8576,Variable OpcUa_XmlSchema_LiteralOperand_DataTypeVersion,8577,Variable OpcUa_XmlSchema_LiteralOperand_DictionaryFragment,8578,Variable OpcUa_XmlSchema_AttributeOperand,8579,Variable OpcUa_XmlSchema_AttributeOperand_DataTypeVersion,8580,Variable OpcUa_XmlSchema_AttributeOperand_DictionaryFragment,8581,Variable OpcUa_XmlSchema_SimpleAttributeOperand,8582,Variable OpcUa_XmlSchema_SimpleAttributeOperand_DataTypeVersion,8583,Variable OpcUa_XmlSchema_SimpleAttributeOperand_DictionaryFragment,8584,Variable OpcUa_XmlSchema_HistoryEvent,8639,Variable OpcUa_XmlSchema_HistoryEvent_DataTypeVersion,8640,Variable OpcUa_XmlSchema_HistoryEvent_DictionaryFragment,8641,Variable OpcUa_XmlSchema_MonitoringFilter,8702,Variable OpcUa_XmlSchema_MonitoringFilter_DataTypeVersion,8703,Variable OpcUa_XmlSchema_MonitoringFilter_DictionaryFragment,8704,Variable OpcUa_XmlSchema_EventFilter,8708,Variable OpcUa_XmlSchema_EventFilter_DataTypeVersion,8709,Variable OpcUa_XmlSchema_EventFilter_DictionaryFragment,8710,Variable OpcUa_XmlSchema_AggregateConfiguration,8711,Variable OpcUa_XmlSchema_AggregateConfiguration_DataTypeVersion,8712,Variable OpcUa_XmlSchema_AggregateConfiguration_DictionaryFragment,8713,Variable OpcUa_XmlSchema_HistoryEventFieldList,8807,Variable OpcUa_XmlSchema_HistoryEventFieldList_DataTypeVersion,8808,Variable OpcUa_XmlSchema_HistoryEventFieldList_DictionaryFragment,8809,Variable OpcUa_XmlSchema_RedundantServerDataType,8843,Variable OpcUa_XmlSchema_RedundantServerDataType_DataTypeVersion,8844,Variable OpcUa_XmlSchema_RedundantServerDataType_DictionaryFragment,8845,Variable OpcUa_XmlSchema_SamplingIntervalDiagnosticsDataType,8846,Variable OpcUa_XmlSchema_SamplingIntervalDiagnosticsDataType_DataTypeVersion,8847,Variable OpcUa_XmlSchema_SamplingIntervalDiagnosticsDataType_DictionaryFragment,8848,Variable OpcUa_XmlSchema_ServerDiagnosticsSummaryDataType,8849,Variable OpcUa_XmlSchema_ServerDiagnosticsSummaryDataType_DataTypeVersion,8850,Variable OpcUa_XmlSchema_ServerDiagnosticsSummaryDataType_DictionaryFragment,8851,Variable OpcUa_XmlSchema_ServerStatusDataType,8852,Variable OpcUa_XmlSchema_ServerStatusDataType_DataTypeVersion,8853,Variable OpcUa_XmlSchema_ServerStatusDataType_DictionaryFragment,8854,Variable OpcUa_XmlSchema_SessionDiagnosticsDataType,8855,Variable OpcUa_XmlSchema_SessionDiagnosticsDataType_DataTypeVersion,8856,Variable OpcUa_XmlSchema_SessionDiagnosticsDataType_DictionaryFragment,8857,Variable OpcUa_XmlSchema_SessionSecurityDiagnosticsDataType,8858,Variable OpcUa_XmlSchema_SessionSecurityDiagnosticsDataType_DataTypeVersion,8859,Variable OpcUa_XmlSchema_SessionSecurityDiagnosticsDataType_DictionaryFragment,8860,Variable OpcUa_XmlSchema_ServiceCounterDataType,8861,Variable OpcUa_XmlSchema_ServiceCounterDataType_DataTypeVersion,8862,Variable OpcUa_XmlSchema_ServiceCounterDataType_DictionaryFragment,8863,Variable OpcUa_XmlSchema_SubscriptionDiagnosticsDataType,8864,Variable OpcUa_XmlSchema_SubscriptionDiagnosticsDataType_DataTypeVersion,8865,Variable OpcUa_XmlSchema_SubscriptionDiagnosticsDataType_DictionaryFragment,8866,Variable OpcUa_XmlSchema_ModelChangeStructureDataType,8867,Variable OpcUa_XmlSchema_ModelChangeStructureDataType_DataTypeVersion,8868,Variable OpcUa_XmlSchema_ModelChangeStructureDataType_DictionaryFragment,8869,Variable OpcUa_XmlSchema_SemanticChangeStructureDataType,8870,Variable OpcUa_XmlSchema_SemanticChangeStructureDataType_DataTypeVersion,8871,Variable OpcUa_XmlSchema_SemanticChangeStructureDataType_DictionaryFragment,8872,Variable OpcUa_XmlSchema_Range,8873,Variable OpcUa_XmlSchema_Range_DataTypeVersion,8874,Variable OpcUa_XmlSchema_Range_DictionaryFragment,8875,Variable OpcUa_XmlSchema_EUInformation,8876,Variable OpcUa_XmlSchema_EUInformation_DataTypeVersion,8877,Variable OpcUa_XmlSchema_EUInformation_DictionaryFragment,8878,Variable OpcUa_XmlSchema_Annotation,8879,Variable OpcUa_XmlSchema_Annotation_DataTypeVersion,8880,Variable OpcUa_XmlSchema_Annotation_DictionaryFragment,8881,Variable OpcUa_XmlSchema_ProgramDiagnosticDataType,8882,Variable OpcUa_XmlSchema_ProgramDiagnosticDataType_DataTypeVersion,8883,Variable OpcUa_XmlSchema_ProgramDiagnosticDataType_DictionaryFragment,8884,Variable SubscriptionDiagnosticsType_MaxLifetimeCount,8888,Variable SubscriptionDiagnosticsType_LatePublishRequestCount,8889,Variable SubscriptionDiagnosticsType_CurrentKeepAliveCount,8890,Variable SubscriptionDiagnosticsType_CurrentLifetimeCount,8891,Variable SubscriptionDiagnosticsType_UnacknowledgedMessageCount,8892,Variable SubscriptionDiagnosticsType_DiscardedMessageCount,8893,Variable SubscriptionDiagnosticsType_MonitoredItemCount,8894,Variable SubscriptionDiagnosticsType_DisabledMonitoredItemCount,8895,Variable SubscriptionDiagnosticsType_MonitoringQueueOverflowCount,8896,Variable SubscriptionDiagnosticsType_NextSequenceNumber,8897,Variable SessionDiagnosticsObjectType_SessionDiagnostics_TotalRequestCount,8898,Variable SessionDiagnosticsVariableType_TotalRequestCount,8900,Variable SubscriptionDiagnosticsType_EventQueueOverflowCount,8902,Variable TimeZoneDataType,8912,DataType TimeZoneDataType_Encoding_DefaultXml,8913,Object OpcUa_BinarySchema_TimeZoneDataType,8914,Variable OpcUa_BinarySchema_TimeZoneDataType_DataTypeVersion,8915,Variable OpcUa_BinarySchema_TimeZoneDataType_DictionaryFragment,8916,Variable TimeZoneDataType_Encoding_DefaultBinary,8917,Object OpcUa_XmlSchema_TimeZoneDataType,8918,Variable OpcUa_XmlSchema_TimeZoneDataType_DataTypeVersion,8919,Variable OpcUa_XmlSchema_TimeZoneDataType_DictionaryFragment,8920,Variable AuditConditionRespondEventType,8927,ObjectType AuditConditionRespondEventType_EventId,8928,Variable AuditConditionRespondEventType_EventType,8929,Variable AuditConditionRespondEventType_SourceNode,8930,Variable AuditConditionRespondEventType_SourceName,8931,Variable AuditConditionRespondEventType_Time,8932,Variable AuditConditionRespondEventType_ReceiveTime,8933,Variable AuditConditionRespondEventType_LocalTime,8934,Variable AuditConditionRespondEventType_Message,8935,Variable AuditConditionRespondEventType_Severity,8936,Variable AuditConditionRespondEventType_ActionTimeStamp,8937,Variable AuditConditionRespondEventType_Status,8938,Variable AuditConditionRespondEventType_ServerId,8939,Variable AuditConditionRespondEventType_ClientAuditEntryId,8940,Variable AuditConditionRespondEventType_ClientUserId,8941,Variable AuditConditionRespondEventType_MethodId,8942,Variable AuditConditionRespondEventType_InputArguments,8943,Variable AuditConditionAcknowledgeEventType,8944,ObjectType AuditConditionAcknowledgeEventType_EventId,8945,Variable AuditConditionAcknowledgeEventType_EventType,8946,Variable AuditConditionAcknowledgeEventType_SourceNode,8947,Variable AuditConditionAcknowledgeEventType_SourceName,8948,Variable AuditConditionAcknowledgeEventType_Time,8949,Variable AuditConditionAcknowledgeEventType_ReceiveTime,8950,Variable AuditConditionAcknowledgeEventType_LocalTime,8951,Variable AuditConditionAcknowledgeEventType_Message,8952,Variable AuditConditionAcknowledgeEventType_Severity,8953,Variable AuditConditionAcknowledgeEventType_ActionTimeStamp,8954,Variable AuditConditionAcknowledgeEventType_Status,8955,Variable AuditConditionAcknowledgeEventType_ServerId,8956,Variable AuditConditionAcknowledgeEventType_ClientAuditEntryId,8957,Variable AuditConditionAcknowledgeEventType_ClientUserId,8958,Variable AuditConditionAcknowledgeEventType_MethodId,8959,Variable AuditConditionAcknowledgeEventType_InputArguments,8960,Variable AuditConditionConfirmEventType,8961,ObjectType AuditConditionConfirmEventType_EventId,8962,Variable AuditConditionConfirmEventType_EventType,8963,Variable AuditConditionConfirmEventType_SourceNode,8964,Variable AuditConditionConfirmEventType_SourceName,8965,Variable AuditConditionConfirmEventType_Time,8966,Variable AuditConditionConfirmEventType_ReceiveTime,8967,Variable AuditConditionConfirmEventType_LocalTime,8968,Variable AuditConditionConfirmEventType_Message,8969,Variable AuditConditionConfirmEventType_Severity,8970,Variable AuditConditionConfirmEventType_ActionTimeStamp,8971,Variable AuditConditionConfirmEventType_Status,8972,Variable AuditConditionConfirmEventType_ServerId,8973,Variable AuditConditionConfirmEventType_ClientAuditEntryId,8974,Variable AuditConditionConfirmEventType_ClientUserId,8975,Variable AuditConditionConfirmEventType_MethodId,8976,Variable AuditConditionConfirmEventType_InputArguments,8977,Variable TwoStateVariableType,8995,VariableType TwoStateVariableType_Id,8996,Variable TwoStateVariableType_Name,8997,Variable TwoStateVariableType_Number,8998,Variable TwoStateVariableType_EffectiveDisplayName,8999,Variable TwoStateVariableType_TransitionTime,9000,Variable TwoStateVariableType_EffectiveTransitionTime,9001,Variable ConditionVariableType,9002,VariableType ConditionVariableType_SourceTimestamp,9003,Variable HasTrueSubState,9004,ReferenceType HasFalseSubState,9005,ReferenceType HasCondition,9006,ReferenceType ConditionRefreshMethodType,9007,Method ConditionRefreshMethodType_InputArguments,9008,Variable ConditionType_ConditionName,9009,Variable ConditionType_BranchId,9010,Variable ConditionType_EnabledState,9011,Variable ConditionType_EnabledState_Id,9012,Variable ConditionType_EnabledState_Name,9013,Variable ConditionType_EnabledState_Number,9014,Variable ConditionType_EnabledState_EffectiveDisplayName,9015,Variable ConditionType_EnabledState_TransitionTime,9016,Variable ConditionType_EnabledState_EffectiveTransitionTime,9017,Variable ConditionType_EnabledState_TrueState,9018,Variable ConditionType_EnabledState_FalseState,9019,Variable ConditionType_Quality,9020,Variable ConditionType_Quality_SourceTimestamp,9021,Variable ConditionType_LastSeverity,9022,Variable ConditionType_LastSeverity_SourceTimestamp,9023,Variable ConditionType_Comment,9024,Variable ConditionType_Comment_SourceTimestamp,9025,Variable ConditionType_ClientUserId,9026,Variable ConditionType_Enable,9027,Method ConditionType_Disable,9028,Method ConditionType_AddComment,9029,Method ConditionType_AddComment_InputArguments,9030,Variable DialogResponseMethodType,9031,Method DialogResponseMethodType_InputArguments,9032,Variable DialogConditionType_ConditionName,9033,Variable DialogConditionType_BranchId,9034,Variable DialogConditionType_EnabledState,9035,Variable DialogConditionType_EnabledState_Id,9036,Variable DialogConditionType_EnabledState_Name,9037,Variable DialogConditionType_EnabledState_Number,9038,Variable DialogConditionType_EnabledState_EffectiveDisplayName,9039,Variable DialogConditionType_EnabledState_TransitionTime,9040,Variable DialogConditionType_EnabledState_EffectiveTransitionTime,9041,Variable DialogConditionType_EnabledState_TrueState,9042,Variable DialogConditionType_EnabledState_FalseState,9043,Variable DialogConditionType_Quality,9044,Variable DialogConditionType_Quality_SourceTimestamp,9045,Variable DialogConditionType_LastSeverity,9046,Variable DialogConditionType_LastSeverity_SourceTimestamp,9047,Variable DialogConditionType_Comment,9048,Variable DialogConditionType_Comment_SourceTimestamp,9049,Variable DialogConditionType_ClientUserId,9050,Variable DialogConditionType_Enable,9051,Method DialogConditionType_Disable,9052,Method DialogConditionType_AddComment,9053,Method DialogConditionType_AddComment_InputArguments,9054,Variable DialogConditionType_DialogState,9055,Variable DialogConditionType_DialogState_Id,9056,Variable DialogConditionType_DialogState_Name,9057,Variable DialogConditionType_DialogState_Number,9058,Variable DialogConditionType_DialogState_EffectiveDisplayName,9059,Variable DialogConditionType_DialogState_TransitionTime,9060,Variable DialogConditionType_DialogState_EffectiveTransitionTime,9061,Variable DialogConditionType_DialogState_TrueState,9062,Variable DialogConditionType_DialogState_FalseState,9063,Variable DialogConditionType_ResponseOptionSet,9064,Variable DialogConditionType_DefaultResponse,9065,Variable DialogConditionType_OkResponse,9066,Variable DialogConditionType_CancelResponse,9067,Variable DialogConditionType_LastResponse,9068,Variable DialogConditionType_Respond,9069,Method DialogConditionType_Respond_InputArguments,9070,Variable AcknowledgeableConditionType_ConditionName,9071,Variable AcknowledgeableConditionType_BranchId,9072,Variable AcknowledgeableConditionType_EnabledState,9073,Variable AcknowledgeableConditionType_EnabledState_Id,9074,Variable AcknowledgeableConditionType_EnabledState_Name,9075,Variable AcknowledgeableConditionType_EnabledState_Number,9076,Variable AcknowledgeableConditionType_EnabledState_EffectiveDisplayName,9077,Variable AcknowledgeableConditionType_EnabledState_TransitionTime,9078,Variable AcknowledgeableConditionType_EnabledState_EffectiveTransitionTime,9079,Variable AcknowledgeableConditionType_EnabledState_TrueState,9080,Variable AcknowledgeableConditionType_EnabledState_FalseState,9081,Variable AcknowledgeableConditionType_Quality,9082,Variable AcknowledgeableConditionType_Quality_SourceTimestamp,9083,Variable AcknowledgeableConditionType_LastSeverity,9084,Variable AcknowledgeableConditionType_LastSeverity_SourceTimestamp,9085,Variable AcknowledgeableConditionType_Comment,9086,Variable AcknowledgeableConditionType_Comment_SourceTimestamp,9087,Variable AcknowledgeableConditionType_ClientUserId,9088,Variable AcknowledgeableConditionType_Enable,9089,Method AcknowledgeableConditionType_Disable,9090,Method AcknowledgeableConditionType_AddComment,9091,Method AcknowledgeableConditionType_AddComment_InputArguments,9092,Variable AcknowledgeableConditionType_AckedState,9093,Variable AcknowledgeableConditionType_AckedState_Id,9094,Variable AcknowledgeableConditionType_AckedState_Name,9095,Variable AcknowledgeableConditionType_AckedState_Number,9096,Variable AcknowledgeableConditionType_AckedState_EffectiveDisplayName,9097,Variable AcknowledgeableConditionType_AckedState_TransitionTime,9098,Variable AcknowledgeableConditionType_AckedState_EffectiveTransitionTime,9099,Variable AcknowledgeableConditionType_AckedState_TrueState,9100,Variable AcknowledgeableConditionType_AckedState_FalseState,9101,Variable AcknowledgeableConditionType_ConfirmedState,9102,Variable AcknowledgeableConditionType_ConfirmedState_Id,9103,Variable AcknowledgeableConditionType_ConfirmedState_Name,9104,Variable AcknowledgeableConditionType_ConfirmedState_Number,9105,Variable AcknowledgeableConditionType_ConfirmedState_EffectiveDisplayName,9106,Variable AcknowledgeableConditionType_ConfirmedState_TransitionTime,9107,Variable AcknowledgeableConditionType_ConfirmedState_EffectiveTransitionTime,9108,Variable AcknowledgeableConditionType_ConfirmedState_TrueState,9109,Variable AcknowledgeableConditionType_ConfirmedState_FalseState,9110,Variable AcknowledgeableConditionType_Acknowledge,9111,Method AcknowledgeableConditionType_Acknowledge_InputArguments,9112,Variable AcknowledgeableConditionType_Confirm,9113,Method AcknowledgeableConditionType_Confirm_InputArguments,9114,Variable ShelvedStateMachineType_UnshelveTime,9115,Variable AlarmConditionType_ConditionName,9116,Variable AlarmConditionType_BranchId,9117,Variable AlarmConditionType_EnabledState,9118,Variable AlarmConditionType_EnabledState_Id,9119,Variable AlarmConditionType_EnabledState_Name,9120,Variable AlarmConditionType_EnabledState_Number,9121,Variable AlarmConditionType_EnabledState_EffectiveDisplayName,9122,Variable AlarmConditionType_EnabledState_TransitionTime,9123,Variable AlarmConditionType_EnabledState_EffectiveTransitionTime,9124,Variable AlarmConditionType_EnabledState_TrueState,9125,Variable AlarmConditionType_EnabledState_FalseState,9126,Variable AlarmConditionType_Quality,9127,Variable AlarmConditionType_Quality_SourceTimestamp,9128,Variable AlarmConditionType_LastSeverity,9129,Variable AlarmConditionType_LastSeverity_SourceTimestamp,9130,Variable AlarmConditionType_Comment,9131,Variable AlarmConditionType_Comment_SourceTimestamp,9132,Variable AlarmConditionType_ClientUserId,9133,Variable AlarmConditionType_Enable,9134,Method AlarmConditionType_Disable,9135,Method AlarmConditionType_AddComment,9136,Method AlarmConditionType_AddComment_InputArguments,9137,Variable AlarmConditionType_AckedState,9138,Variable AlarmConditionType_AckedState_Id,9139,Variable AlarmConditionType_AckedState_Name,9140,Variable AlarmConditionType_AckedState_Number,9141,Variable AlarmConditionType_AckedState_EffectiveDisplayName,9142,Variable AlarmConditionType_AckedState_TransitionTime,9143,Variable AlarmConditionType_AckedState_EffectiveTransitionTime,9144,Variable AlarmConditionType_AckedState_TrueState,9145,Variable AlarmConditionType_AckedState_FalseState,9146,Variable AlarmConditionType_ConfirmedState,9147,Variable AlarmConditionType_ConfirmedState_Id,9148,Variable AlarmConditionType_ConfirmedState_Name,9149,Variable AlarmConditionType_ConfirmedState_Number,9150,Variable AlarmConditionType_ConfirmedState_EffectiveDisplayName,9151,Variable AlarmConditionType_ConfirmedState_TransitionTime,9152,Variable AlarmConditionType_ConfirmedState_EffectiveTransitionTime,9153,Variable AlarmConditionType_ConfirmedState_TrueState,9154,Variable AlarmConditionType_ConfirmedState_FalseState,9155,Variable AlarmConditionType_Acknowledge,9156,Method AlarmConditionType_Acknowledge_InputArguments,9157,Variable AlarmConditionType_Confirm,9158,Method AlarmConditionType_Confirm_InputArguments,9159,Variable AlarmConditionType_ActiveState,9160,Variable AlarmConditionType_ActiveState_Id,9161,Variable AlarmConditionType_ActiveState_Name,9162,Variable AlarmConditionType_ActiveState_Number,9163,Variable AlarmConditionType_ActiveState_EffectiveDisplayName,9164,Variable AlarmConditionType_ActiveState_TransitionTime,9165,Variable AlarmConditionType_ActiveState_EffectiveTransitionTime,9166,Variable AlarmConditionType_ActiveState_TrueState,9167,Variable AlarmConditionType_ActiveState_FalseState,9168,Variable AlarmConditionType_SuppressedState,9169,Variable AlarmConditionType_SuppressedState_Id,9170,Variable AlarmConditionType_SuppressedState_Name,9171,Variable AlarmConditionType_SuppressedState_Number,9172,Variable AlarmConditionType_SuppressedState_EffectiveDisplayName,9173,Variable AlarmConditionType_SuppressedState_TransitionTime,9174,Variable AlarmConditionType_SuppressedState_EffectiveTransitionTime,9175,Variable AlarmConditionType_SuppressedState_TrueState,9176,Variable AlarmConditionType_SuppressedState_FalseState,9177,Variable AlarmConditionType_ShelvingState,9178,Object AlarmConditionType_ShelvingState_CurrentState,9179,Variable AlarmConditionType_ShelvingState_CurrentState_Id,9180,Variable AlarmConditionType_ShelvingState_CurrentState_Name,9181,Variable AlarmConditionType_ShelvingState_CurrentState_Number,9182,Variable AlarmConditionType_ShelvingState_CurrentState_EffectiveDisplayName,9183,Variable AlarmConditionType_ShelvingState_LastTransition,9184,Variable AlarmConditionType_ShelvingState_LastTransition_Id,9185,Variable AlarmConditionType_ShelvingState_LastTransition_Name,9186,Variable AlarmConditionType_ShelvingState_LastTransition_Number,9187,Variable AlarmConditionType_ShelvingState_LastTransition_TransitionTime,9188,Variable AlarmConditionType_ShelvingState_UnshelveTime,9189,Variable AlarmConditionType_ShelvingState_Unshelve,9211,Method AlarmConditionType_ShelvingState_OneShotShelve,9212,Method AlarmConditionType_ShelvingState_TimedShelve,9213,Method AlarmConditionType_ShelvingState_TimedShelve_InputArguments,9214,Variable AlarmConditionType_SuppressedOrShelved,9215,Variable AlarmConditionType_MaxTimeShelved,9216,Variable LimitAlarmType_ConditionName,9217,Variable LimitAlarmType_BranchId,9218,Variable LimitAlarmType_EnabledState,9219,Variable LimitAlarmType_EnabledState_Id,9220,Variable LimitAlarmType_EnabledState_Name,9221,Variable LimitAlarmType_EnabledState_Number,9222,Variable LimitAlarmType_EnabledState_EffectiveDisplayName,9223,Variable LimitAlarmType_EnabledState_TransitionTime,9224,Variable LimitAlarmType_EnabledState_EffectiveTransitionTime,9225,Variable LimitAlarmType_EnabledState_TrueState,9226,Variable LimitAlarmType_EnabledState_FalseState,9227,Variable LimitAlarmType_Quality,9228,Variable LimitAlarmType_Quality_SourceTimestamp,9229,Variable LimitAlarmType_LastSeverity,9230,Variable LimitAlarmType_LastSeverity_SourceTimestamp,9231,Variable LimitAlarmType_Comment,9232,Variable LimitAlarmType_Comment_SourceTimestamp,9233,Variable LimitAlarmType_ClientUserId,9234,Variable LimitAlarmType_Enable,9235,Method LimitAlarmType_Disable,9236,Method LimitAlarmType_AddComment,9237,Method LimitAlarmType_AddComment_InputArguments,9238,Variable LimitAlarmType_AckedState,9239,Variable LimitAlarmType_AckedState_Id,9240,Variable LimitAlarmType_AckedState_Name,9241,Variable LimitAlarmType_AckedState_Number,9242,Variable LimitAlarmType_AckedState_EffectiveDisplayName,9243,Variable LimitAlarmType_AckedState_TransitionTime,9244,Variable LimitAlarmType_AckedState_EffectiveTransitionTime,9245,Variable LimitAlarmType_AckedState_TrueState,9246,Variable LimitAlarmType_AckedState_FalseState,9247,Variable LimitAlarmType_ConfirmedState,9248,Variable LimitAlarmType_ConfirmedState_Id,9249,Variable LimitAlarmType_ConfirmedState_Name,9250,Variable LimitAlarmType_ConfirmedState_Number,9251,Variable LimitAlarmType_ConfirmedState_EffectiveDisplayName,9252,Variable LimitAlarmType_ConfirmedState_TransitionTime,9253,Variable LimitAlarmType_ConfirmedState_EffectiveTransitionTime,9254,Variable LimitAlarmType_ConfirmedState_TrueState,9255,Variable LimitAlarmType_ConfirmedState_FalseState,9256,Variable LimitAlarmType_Acknowledge,9257,Method LimitAlarmType_Acknowledge_InputArguments,9258,Variable LimitAlarmType_Confirm,9259,Method LimitAlarmType_Confirm_InputArguments,9260,Variable LimitAlarmType_ActiveState,9261,Variable LimitAlarmType_ActiveState_Id,9262,Variable LimitAlarmType_ActiveState_Name,9263,Variable LimitAlarmType_ActiveState_Number,9264,Variable LimitAlarmType_ActiveState_EffectiveDisplayName,9265,Variable LimitAlarmType_ActiveState_TransitionTime,9266,Variable LimitAlarmType_ActiveState_EffectiveTransitionTime,9267,Variable LimitAlarmType_ActiveState_TrueState,9268,Variable LimitAlarmType_ActiveState_FalseState,9269,Variable LimitAlarmType_SuppressedState,9270,Variable LimitAlarmType_SuppressedState_Id,9271,Variable LimitAlarmType_SuppressedState_Name,9272,Variable LimitAlarmType_SuppressedState_Number,9273,Variable LimitAlarmType_SuppressedState_EffectiveDisplayName,9274,Variable LimitAlarmType_SuppressedState_TransitionTime,9275,Variable LimitAlarmType_SuppressedState_EffectiveTransitionTime,9276,Variable LimitAlarmType_SuppressedState_TrueState,9277,Variable LimitAlarmType_SuppressedState_FalseState,9278,Variable LimitAlarmType_ShelvingState,9279,Object LimitAlarmType_ShelvingState_CurrentState,9280,Variable LimitAlarmType_ShelvingState_CurrentState_Id,9281,Variable LimitAlarmType_ShelvingState_CurrentState_Name,9282,Variable LimitAlarmType_ShelvingState_CurrentState_Number,9283,Variable LimitAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,9284,Variable LimitAlarmType_ShelvingState_LastTransition,9285,Variable LimitAlarmType_ShelvingState_LastTransition_Id,9286,Variable LimitAlarmType_ShelvingState_LastTransition_Name,9287,Variable LimitAlarmType_ShelvingState_LastTransition_Number,9288,Variable LimitAlarmType_ShelvingState_LastTransition_TransitionTime,9289,Variable LimitAlarmType_ShelvingState_UnshelveTime,9290,Variable LimitAlarmType_ShelvingState_Unshelve,9312,Method LimitAlarmType_ShelvingState_OneShotShelve,9313,Method LimitAlarmType_ShelvingState_TimedShelve,9314,Method LimitAlarmType_ShelvingState_TimedShelve_InputArguments,9315,Variable LimitAlarmType_SuppressedOrShelved,9316,Variable LimitAlarmType_MaxTimeShelved,9317,Variable ExclusiveLimitStateMachineType,9318,ObjectType ExclusiveLimitStateMachineType_CurrentState,9319,Variable ExclusiveLimitStateMachineType_CurrentState_Id,9320,Variable ExclusiveLimitStateMachineType_CurrentState_Name,9321,Variable ExclusiveLimitStateMachineType_CurrentState_Number,9322,Variable ExclusiveLimitStateMachineType_CurrentState_EffectiveDisplayName,9323,Variable ExclusiveLimitStateMachineType_LastTransition,9324,Variable ExclusiveLimitStateMachineType_LastTransition_Id,9325,Variable ExclusiveLimitStateMachineType_LastTransition_Name,9326,Variable ExclusiveLimitStateMachineType_LastTransition_Number,9327,Variable ExclusiveLimitStateMachineType_LastTransition_TransitionTime,9328,Variable ExclusiveLimitStateMachineType_HighHigh,9329,Object ExclusiveLimitStateMachineType_HighHigh_StateNumber,9330,Variable ExclusiveLimitStateMachineType_High,9331,Object ExclusiveLimitStateMachineType_High_StateNumber,9332,Variable ExclusiveLimitStateMachineType_Low,9333,Object ExclusiveLimitStateMachineType_Low_StateNumber,9334,Variable ExclusiveLimitStateMachineType_LowLow,9335,Object ExclusiveLimitStateMachineType_LowLow_StateNumber,9336,Variable ExclusiveLimitStateMachineType_LowLowToLow,9337,Object ExclusiveLimitStateMachineType_LowToLowLow,9338,Object ExclusiveLimitStateMachineType_HighHighToHigh,9339,Object ExclusiveLimitStateMachineType_HighToHighHigh,9340,Object ExclusiveLimitAlarmType,9341,ObjectType ExclusiveLimitAlarmType_EventId,9342,Variable ExclusiveLimitAlarmType_EventType,9343,Variable ExclusiveLimitAlarmType_SourceNode,9344,Variable ExclusiveLimitAlarmType_SourceName,9345,Variable ExclusiveLimitAlarmType_Time,9346,Variable ExclusiveLimitAlarmType_ReceiveTime,9347,Variable ExclusiveLimitAlarmType_LocalTime,9348,Variable ExclusiveLimitAlarmType_Message,9349,Variable ExclusiveLimitAlarmType_Severity,9350,Variable ExclusiveLimitAlarmType_ConditionName,9351,Variable ExclusiveLimitAlarmType_BranchId,9352,Variable ExclusiveLimitAlarmType_Retain,9353,Variable ExclusiveLimitAlarmType_EnabledState,9354,Variable ExclusiveLimitAlarmType_EnabledState_Id,9355,Variable ExclusiveLimitAlarmType_EnabledState_Name,9356,Variable ExclusiveLimitAlarmType_EnabledState_Number,9357,Variable ExclusiveLimitAlarmType_EnabledState_EffectiveDisplayName,9358,Variable ExclusiveLimitAlarmType_EnabledState_TransitionTime,9359,Variable ExclusiveLimitAlarmType_EnabledState_EffectiveTransitionTime,9360,Variable ExclusiveLimitAlarmType_EnabledState_TrueState,9361,Variable ExclusiveLimitAlarmType_EnabledState_FalseState,9362,Variable ExclusiveLimitAlarmType_Quality,9363,Variable ExclusiveLimitAlarmType_Quality_SourceTimestamp,9364,Variable ExclusiveLimitAlarmType_LastSeverity,9365,Variable ExclusiveLimitAlarmType_LastSeverity_SourceTimestamp,9366,Variable ExclusiveLimitAlarmType_Comment,9367,Variable ExclusiveLimitAlarmType_Comment_SourceTimestamp,9368,Variable ExclusiveLimitAlarmType_ClientUserId,9369,Variable ExclusiveLimitAlarmType_Enable,9370,Method ExclusiveLimitAlarmType_Disable,9371,Method ExclusiveLimitAlarmType_AddComment,9372,Method ExclusiveLimitAlarmType_AddComment_InputArguments,9373,Variable ExclusiveLimitAlarmType_ConditionRefresh,9374,Method ExclusiveLimitAlarmType_ConditionRefresh_InputArguments,9375,Variable ExclusiveLimitAlarmType_AckedState,9376,Variable ExclusiveLimitAlarmType_AckedState_Id,9377,Variable ExclusiveLimitAlarmType_AckedState_Name,9378,Variable ExclusiveLimitAlarmType_AckedState_Number,9379,Variable ExclusiveLimitAlarmType_AckedState_EffectiveDisplayName,9380,Variable ExclusiveLimitAlarmType_AckedState_TransitionTime,9381,Variable ExclusiveLimitAlarmType_AckedState_EffectiveTransitionTime,9382,Variable ExclusiveLimitAlarmType_AckedState_TrueState,9383,Variable ExclusiveLimitAlarmType_AckedState_FalseState,9384,Variable ExclusiveLimitAlarmType_ConfirmedState,9385,Variable ExclusiveLimitAlarmType_ConfirmedState_Id,9386,Variable ExclusiveLimitAlarmType_ConfirmedState_Name,9387,Variable ExclusiveLimitAlarmType_ConfirmedState_Number,9388,Variable ExclusiveLimitAlarmType_ConfirmedState_EffectiveDisplayName,9389,Variable ExclusiveLimitAlarmType_ConfirmedState_TransitionTime,9390,Variable ExclusiveLimitAlarmType_ConfirmedState_EffectiveTransitionTime,9391,Variable ExclusiveLimitAlarmType_ConfirmedState_TrueState,9392,Variable ExclusiveLimitAlarmType_ConfirmedState_FalseState,9393,Variable ExclusiveLimitAlarmType_Acknowledge,9394,Method ExclusiveLimitAlarmType_Acknowledge_InputArguments,9395,Variable ExclusiveLimitAlarmType_Confirm,9396,Method ExclusiveLimitAlarmType_Confirm_InputArguments,9397,Variable ExclusiveLimitAlarmType_ActiveState,9398,Variable ExclusiveLimitAlarmType_ActiveState_Id,9399,Variable ExclusiveLimitAlarmType_ActiveState_Name,9400,Variable ExclusiveLimitAlarmType_ActiveState_Number,9401,Variable ExclusiveLimitAlarmType_ActiveState_EffectiveDisplayName,9402,Variable ExclusiveLimitAlarmType_ActiveState_TransitionTime,9403,Variable ExclusiveLimitAlarmType_ActiveState_EffectiveTransitionTime,9404,Variable ExclusiveLimitAlarmType_ActiveState_TrueState,9405,Variable ExclusiveLimitAlarmType_ActiveState_FalseState,9406,Variable ExclusiveLimitAlarmType_SuppressedState,9407,Variable ExclusiveLimitAlarmType_SuppressedState_Id,9408,Variable ExclusiveLimitAlarmType_SuppressedState_Name,9409,Variable ExclusiveLimitAlarmType_SuppressedState_Number,9410,Variable ExclusiveLimitAlarmType_SuppressedState_EffectiveDisplayName,9411,Variable ExclusiveLimitAlarmType_SuppressedState_TransitionTime,9412,Variable ExclusiveLimitAlarmType_SuppressedState_EffectiveTransitionTime,9413,Variable ExclusiveLimitAlarmType_SuppressedState_TrueState,9414,Variable ExclusiveLimitAlarmType_SuppressedState_FalseState,9415,Variable ExclusiveLimitAlarmType_ShelvingState,9416,Object ExclusiveLimitAlarmType_ShelvingState_CurrentState,9417,Variable ExclusiveLimitAlarmType_ShelvingState_CurrentState_Id,9418,Variable ExclusiveLimitAlarmType_ShelvingState_CurrentState_Name,9419,Variable ExclusiveLimitAlarmType_ShelvingState_CurrentState_Number,9420,Variable ExclusiveLimitAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,9421,Variable ExclusiveLimitAlarmType_ShelvingState_LastTransition,9422,Variable ExclusiveLimitAlarmType_ShelvingState_LastTransition_Id,9423,Variable ExclusiveLimitAlarmType_ShelvingState_LastTransition_Name,9424,Variable ExclusiveLimitAlarmType_ShelvingState_LastTransition_Number,9425,Variable ExclusiveLimitAlarmType_ShelvingState_LastTransition_TransitionTime,9426,Variable ExclusiveLimitAlarmType_ShelvingState_UnshelveTime,9427,Variable ExclusiveLimitAlarmType_ShelvingState_Unshelve,9449,Method ExclusiveLimitAlarmType_ShelvingState_OneShotShelve,9450,Method ExclusiveLimitAlarmType_ShelvingState_TimedShelve,9451,Method ExclusiveLimitAlarmType_ShelvingState_TimedShelve_InputArguments,9452,Variable ExclusiveLimitAlarmType_SuppressedOrShelved,9453,Variable ExclusiveLimitAlarmType_MaxTimeShelved,9454,Variable ExclusiveLimitAlarmType_LimitState,9455,Object ExclusiveLimitAlarmType_LimitState_CurrentState,9456,Variable ExclusiveLimitAlarmType_LimitState_CurrentState_Id,9457,Variable ExclusiveLimitAlarmType_LimitState_CurrentState_Name,9458,Variable ExclusiveLimitAlarmType_LimitState_CurrentState_Number,9459,Variable ExclusiveLimitAlarmType_LimitState_CurrentState_EffectiveDisplayName,9460,Variable ExclusiveLimitAlarmType_LimitState_LastTransition,9461,Variable ExclusiveLimitAlarmType_LimitState_LastTransition_Id,9462,Variable ExclusiveLimitAlarmType_LimitState_LastTransition_Name,9463,Variable ExclusiveLimitAlarmType_LimitState_LastTransition_Number,9464,Variable ExclusiveLimitAlarmType_LimitState_LastTransition_TransitionTime,9465,Variable ExclusiveLimitAlarmType_HighHighLimit,9478,Variable ExclusiveLimitAlarmType_HighLimit,9479,Variable ExclusiveLimitAlarmType_LowLimit,9480,Variable ExclusiveLimitAlarmType_LowLowLimit,9481,Variable ExclusiveLevelAlarmType,9482,ObjectType ExclusiveLevelAlarmType_EventId,9483,Variable ExclusiveLevelAlarmType_EventType,9484,Variable ExclusiveLevelAlarmType_SourceNode,9485,Variable ExclusiveLevelAlarmType_SourceName,9486,Variable ExclusiveLevelAlarmType_Time,9487,Variable ExclusiveLevelAlarmType_ReceiveTime,9488,Variable ExclusiveLevelAlarmType_LocalTime,9489,Variable ExclusiveLevelAlarmType_Message,9490,Variable ExclusiveLevelAlarmType_Severity,9491,Variable ExclusiveLevelAlarmType_ConditionName,9492,Variable ExclusiveLevelAlarmType_BranchId,9493,Variable ExclusiveLevelAlarmType_Retain,9494,Variable ExclusiveLevelAlarmType_EnabledState,9495,Variable ExclusiveLevelAlarmType_EnabledState_Id,9496,Variable ExclusiveLevelAlarmType_EnabledState_Name,9497,Variable ExclusiveLevelAlarmType_EnabledState_Number,9498,Variable ExclusiveLevelAlarmType_EnabledState_EffectiveDisplayName,9499,Variable ExclusiveLevelAlarmType_EnabledState_TransitionTime,9500,Variable ExclusiveLevelAlarmType_EnabledState_EffectiveTransitionTime,9501,Variable ExclusiveLevelAlarmType_EnabledState_TrueState,9502,Variable ExclusiveLevelAlarmType_EnabledState_FalseState,9503,Variable ExclusiveLevelAlarmType_Quality,9504,Variable ExclusiveLevelAlarmType_Quality_SourceTimestamp,9505,Variable ExclusiveLevelAlarmType_LastSeverity,9506,Variable ExclusiveLevelAlarmType_LastSeverity_SourceTimestamp,9507,Variable ExclusiveLevelAlarmType_Comment,9508,Variable ExclusiveLevelAlarmType_Comment_SourceTimestamp,9509,Variable ExclusiveLevelAlarmType_ClientUserId,9510,Variable ExclusiveLevelAlarmType_Enable,9511,Method ExclusiveLevelAlarmType_Disable,9512,Method ExclusiveLevelAlarmType_AddComment,9513,Method ExclusiveLevelAlarmType_AddComment_InputArguments,9514,Variable ExclusiveLevelAlarmType_ConditionRefresh,9515,Method ExclusiveLevelAlarmType_ConditionRefresh_InputArguments,9516,Variable ExclusiveLevelAlarmType_AckedState,9517,Variable ExclusiveLevelAlarmType_AckedState_Id,9518,Variable ExclusiveLevelAlarmType_AckedState_Name,9519,Variable ExclusiveLevelAlarmType_AckedState_Number,9520,Variable ExclusiveLevelAlarmType_AckedState_EffectiveDisplayName,9521,Variable ExclusiveLevelAlarmType_AckedState_TransitionTime,9522,Variable ExclusiveLevelAlarmType_AckedState_EffectiveTransitionTime,9523,Variable ExclusiveLevelAlarmType_AckedState_TrueState,9524,Variable ExclusiveLevelAlarmType_AckedState_FalseState,9525,Variable ExclusiveLevelAlarmType_ConfirmedState,9526,Variable ExclusiveLevelAlarmType_ConfirmedState_Id,9527,Variable ExclusiveLevelAlarmType_ConfirmedState_Name,9528,Variable ExclusiveLevelAlarmType_ConfirmedState_Number,9529,Variable ExclusiveLevelAlarmType_ConfirmedState_EffectiveDisplayName,9530,Variable ExclusiveLevelAlarmType_ConfirmedState_TransitionTime,9531,Variable ExclusiveLevelAlarmType_ConfirmedState_EffectiveTransitionTime,9532,Variable ExclusiveLevelAlarmType_ConfirmedState_TrueState,9533,Variable ExclusiveLevelAlarmType_ConfirmedState_FalseState,9534,Variable ExclusiveLevelAlarmType_Acknowledge,9535,Method ExclusiveLevelAlarmType_Acknowledge_InputArguments,9536,Variable ExclusiveLevelAlarmType_Confirm,9537,Method ExclusiveLevelAlarmType_Confirm_InputArguments,9538,Variable ExclusiveLevelAlarmType_ActiveState,9539,Variable ExclusiveLevelAlarmType_ActiveState_Id,9540,Variable ExclusiveLevelAlarmType_ActiveState_Name,9541,Variable ExclusiveLevelAlarmType_ActiveState_Number,9542,Variable ExclusiveLevelAlarmType_ActiveState_EffectiveDisplayName,9543,Variable ExclusiveLevelAlarmType_ActiveState_TransitionTime,9544,Variable ExclusiveLevelAlarmType_ActiveState_EffectiveTransitionTime,9545,Variable ExclusiveLevelAlarmType_ActiveState_TrueState,9546,Variable ExclusiveLevelAlarmType_ActiveState_FalseState,9547,Variable ExclusiveLevelAlarmType_SuppressedState,9548,Variable ExclusiveLevelAlarmType_SuppressedState_Id,9549,Variable ExclusiveLevelAlarmType_SuppressedState_Name,9550,Variable ExclusiveLevelAlarmType_SuppressedState_Number,9551,Variable ExclusiveLevelAlarmType_SuppressedState_EffectiveDisplayName,9552,Variable ExclusiveLevelAlarmType_SuppressedState_TransitionTime,9553,Variable ExclusiveLevelAlarmType_SuppressedState_EffectiveTransitionTime,9554,Variable ExclusiveLevelAlarmType_SuppressedState_TrueState,9555,Variable ExclusiveLevelAlarmType_SuppressedState_FalseState,9556,Variable ExclusiveLevelAlarmType_ShelvingState,9557,Object ExclusiveLevelAlarmType_ShelvingState_CurrentState,9558,Variable ExclusiveLevelAlarmType_ShelvingState_CurrentState_Id,9559,Variable ExclusiveLevelAlarmType_ShelvingState_CurrentState_Name,9560,Variable ExclusiveLevelAlarmType_ShelvingState_CurrentState_Number,9561,Variable ExclusiveLevelAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,9562,Variable ExclusiveLevelAlarmType_ShelvingState_LastTransition,9563,Variable ExclusiveLevelAlarmType_ShelvingState_LastTransition_Id,9564,Variable ExclusiveLevelAlarmType_ShelvingState_LastTransition_Name,9565,Variable ExclusiveLevelAlarmType_ShelvingState_LastTransition_Number,9566,Variable ExclusiveLevelAlarmType_ShelvingState_LastTransition_TransitionTime,9567,Variable ExclusiveLevelAlarmType_ShelvingState_UnshelveTime,9568,Variable ExclusiveLevelAlarmType_ShelvingState_Unshelve,9590,Method ExclusiveLevelAlarmType_ShelvingState_OneShotShelve,9591,Method ExclusiveLevelAlarmType_ShelvingState_TimedShelve,9592,Method ExclusiveLevelAlarmType_ShelvingState_TimedShelve_InputArguments,9593,Variable ExclusiveLevelAlarmType_SuppressedOrShelved,9594,Variable ExclusiveLevelAlarmType_MaxTimeShelved,9595,Variable ExclusiveLevelAlarmType_LimitState,9596,Object ExclusiveLevelAlarmType_LimitState_CurrentState,9597,Variable ExclusiveLevelAlarmType_LimitState_CurrentState_Id,9598,Variable ExclusiveLevelAlarmType_LimitState_CurrentState_Name,9599,Variable ExclusiveLevelAlarmType_LimitState_CurrentState_Number,9600,Variable ExclusiveLevelAlarmType_LimitState_CurrentState_EffectiveDisplayName,9601,Variable ExclusiveLevelAlarmType_LimitState_LastTransition,9602,Variable ExclusiveLevelAlarmType_LimitState_LastTransition_Id,9603,Variable ExclusiveLevelAlarmType_LimitState_LastTransition_Name,9604,Variable ExclusiveLevelAlarmType_LimitState_LastTransition_Number,9605,Variable ExclusiveLevelAlarmType_LimitState_LastTransition_TransitionTime,9606,Variable ExclusiveLevelAlarmType_HighHighLimit,9619,Variable ExclusiveLevelAlarmType_HighLimit,9620,Variable ExclusiveLevelAlarmType_LowLimit,9621,Variable ExclusiveLevelAlarmType_LowLowLimit,9622,Variable ExclusiveRateOfChangeAlarmType,9623,ObjectType ExclusiveRateOfChangeAlarmType_EventId,9624,Variable ExclusiveRateOfChangeAlarmType_EventType,9625,Variable ExclusiveRateOfChangeAlarmType_SourceNode,9626,Variable ExclusiveRateOfChangeAlarmType_SourceName,9627,Variable ExclusiveRateOfChangeAlarmType_Time,9628,Variable ExclusiveRateOfChangeAlarmType_ReceiveTime,9629,Variable ExclusiveRateOfChangeAlarmType_LocalTime,9630,Variable ExclusiveRateOfChangeAlarmType_Message,9631,Variable ExclusiveRateOfChangeAlarmType_Severity,9632,Variable ExclusiveRateOfChangeAlarmType_ConditionName,9633,Variable ExclusiveRateOfChangeAlarmType_BranchId,9634,Variable ExclusiveRateOfChangeAlarmType_Retain,9635,Variable ExclusiveRateOfChangeAlarmType_EnabledState,9636,Variable ExclusiveRateOfChangeAlarmType_EnabledState_Id,9637,Variable ExclusiveRateOfChangeAlarmType_EnabledState_Name,9638,Variable ExclusiveRateOfChangeAlarmType_EnabledState_Number,9639,Variable ExclusiveRateOfChangeAlarmType_EnabledState_EffectiveDisplayName,9640,Variable ExclusiveRateOfChangeAlarmType_EnabledState_TransitionTime,9641,Variable ExclusiveRateOfChangeAlarmType_EnabledState_EffectiveTransitionTime,9642,Variable ExclusiveRateOfChangeAlarmType_EnabledState_TrueState,9643,Variable ExclusiveRateOfChangeAlarmType_EnabledState_FalseState,9644,Variable ExclusiveRateOfChangeAlarmType_Quality,9645,Variable ExclusiveRateOfChangeAlarmType_Quality_SourceTimestamp,9646,Variable ExclusiveRateOfChangeAlarmType_LastSeverity,9647,Variable ExclusiveRateOfChangeAlarmType_LastSeverity_SourceTimestamp,9648,Variable ExclusiveRateOfChangeAlarmType_Comment,9649,Variable ExclusiveRateOfChangeAlarmType_Comment_SourceTimestamp,9650,Variable ExclusiveRateOfChangeAlarmType_ClientUserId,9651,Variable ExclusiveRateOfChangeAlarmType_Enable,9652,Method ExclusiveRateOfChangeAlarmType_Disable,9653,Method ExclusiveRateOfChangeAlarmType_AddComment,9654,Method ExclusiveRateOfChangeAlarmType_AddComment_InputArguments,9655,Variable ExclusiveRateOfChangeAlarmType_ConditionRefresh,9656,Method ExclusiveRateOfChangeAlarmType_ConditionRefresh_InputArguments,9657,Variable ExclusiveRateOfChangeAlarmType_AckedState,9658,Variable ExclusiveRateOfChangeAlarmType_AckedState_Id,9659,Variable ExclusiveRateOfChangeAlarmType_AckedState_Name,9660,Variable ExclusiveRateOfChangeAlarmType_AckedState_Number,9661,Variable ExclusiveRateOfChangeAlarmType_AckedState_EffectiveDisplayName,9662,Variable ExclusiveRateOfChangeAlarmType_AckedState_TransitionTime,9663,Variable ExclusiveRateOfChangeAlarmType_AckedState_EffectiveTransitionTime,9664,Variable ExclusiveRateOfChangeAlarmType_AckedState_TrueState,9665,Variable ExclusiveRateOfChangeAlarmType_AckedState_FalseState,9666,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState,9667,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_Id,9668,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_Name,9669,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_Number,9670,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_EffectiveDisplayName,9671,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_TransitionTime,9672,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_EffectiveTransitionTime,9673,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_TrueState,9674,Variable ExclusiveRateOfChangeAlarmType_ConfirmedState_FalseState,9675,Variable ExclusiveRateOfChangeAlarmType_Acknowledge,9676,Method ExclusiveRateOfChangeAlarmType_Acknowledge_InputArguments,9677,Variable ExclusiveRateOfChangeAlarmType_Confirm,9678,Method ExclusiveRateOfChangeAlarmType_Confirm_InputArguments,9679,Variable ExclusiveRateOfChangeAlarmType_ActiveState,9680,Variable ExclusiveRateOfChangeAlarmType_ActiveState_Id,9681,Variable ExclusiveRateOfChangeAlarmType_ActiveState_Name,9682,Variable ExclusiveRateOfChangeAlarmType_ActiveState_Number,9683,Variable ExclusiveRateOfChangeAlarmType_ActiveState_EffectiveDisplayName,9684,Variable ExclusiveRateOfChangeAlarmType_ActiveState_TransitionTime,9685,Variable ExclusiveRateOfChangeAlarmType_ActiveState_EffectiveTransitionTime,9686,Variable ExclusiveRateOfChangeAlarmType_ActiveState_TrueState,9687,Variable ExclusiveRateOfChangeAlarmType_ActiveState_FalseState,9688,Variable ExclusiveRateOfChangeAlarmType_SuppressedState,9689,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_Id,9690,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_Name,9691,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_Number,9692,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_EffectiveDisplayName,9693,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_TransitionTime,9694,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_EffectiveTransitionTime,9695,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_TrueState,9696,Variable ExclusiveRateOfChangeAlarmType_SuppressedState_FalseState,9697,Variable ExclusiveRateOfChangeAlarmType_ShelvingState,9698,Object ExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState,9699,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_Id,9700,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_Name,9701,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_Number,9702,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,9703,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition,9704,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_Id,9705,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_Name,9706,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_Number,9707,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_TransitionTime,9708,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_UnshelveTime,9709,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_Unshelve,9731,Method ExclusiveRateOfChangeAlarmType_ShelvingState_OneShotShelve,9732,Method ExclusiveRateOfChangeAlarmType_ShelvingState_TimedShelve,9733,Method ExclusiveRateOfChangeAlarmType_ShelvingState_TimedShelve_InputArguments,9734,Variable ExclusiveRateOfChangeAlarmType_SuppressedOrShelved,9735,Variable ExclusiveRateOfChangeAlarmType_MaxTimeShelved,9736,Variable ExclusiveRateOfChangeAlarmType_LimitState,9737,Object ExclusiveRateOfChangeAlarmType_LimitState_CurrentState,9738,Variable ExclusiveRateOfChangeAlarmType_LimitState_CurrentState_Id,9739,Variable ExclusiveRateOfChangeAlarmType_LimitState_CurrentState_Name,9740,Variable ExclusiveRateOfChangeAlarmType_LimitState_CurrentState_Number,9741,Variable ExclusiveRateOfChangeAlarmType_LimitState_CurrentState_EffectiveDisplayName,9742,Variable ExclusiveRateOfChangeAlarmType_LimitState_LastTransition,9743,Variable ExclusiveRateOfChangeAlarmType_LimitState_LastTransition_Id,9744,Variable ExclusiveRateOfChangeAlarmType_LimitState_LastTransition_Name,9745,Variable ExclusiveRateOfChangeAlarmType_LimitState_LastTransition_Number,9746,Variable ExclusiveRateOfChangeAlarmType_LimitState_LastTransition_TransitionTime,9747,Variable ExclusiveRateOfChangeAlarmType_HighHighLimit,9760,Variable ExclusiveRateOfChangeAlarmType_HighLimit,9761,Variable ExclusiveRateOfChangeAlarmType_LowLimit,9762,Variable ExclusiveRateOfChangeAlarmType_LowLowLimit,9763,Variable ExclusiveDeviationAlarmType,9764,ObjectType ExclusiveDeviationAlarmType_EventId,9765,Variable ExclusiveDeviationAlarmType_EventType,9766,Variable ExclusiveDeviationAlarmType_SourceNode,9767,Variable ExclusiveDeviationAlarmType_SourceName,9768,Variable ExclusiveDeviationAlarmType_Time,9769,Variable ExclusiveDeviationAlarmType_ReceiveTime,9770,Variable ExclusiveDeviationAlarmType_LocalTime,9771,Variable ExclusiveDeviationAlarmType_Message,9772,Variable ExclusiveDeviationAlarmType_Severity,9773,Variable ExclusiveDeviationAlarmType_ConditionName,9774,Variable ExclusiveDeviationAlarmType_BranchId,9775,Variable ExclusiveDeviationAlarmType_Retain,9776,Variable ExclusiveDeviationAlarmType_EnabledState,9777,Variable ExclusiveDeviationAlarmType_EnabledState_Id,9778,Variable ExclusiveDeviationAlarmType_EnabledState_Name,9779,Variable ExclusiveDeviationAlarmType_EnabledState_Number,9780,Variable ExclusiveDeviationAlarmType_EnabledState_EffectiveDisplayName,9781,Variable ExclusiveDeviationAlarmType_EnabledState_TransitionTime,9782,Variable ExclusiveDeviationAlarmType_EnabledState_EffectiveTransitionTime,9783,Variable ExclusiveDeviationAlarmType_EnabledState_TrueState,9784,Variable ExclusiveDeviationAlarmType_EnabledState_FalseState,9785,Variable ExclusiveDeviationAlarmType_Quality,9786,Variable ExclusiveDeviationAlarmType_Quality_SourceTimestamp,9787,Variable ExclusiveDeviationAlarmType_LastSeverity,9788,Variable ExclusiveDeviationAlarmType_LastSeverity_SourceTimestamp,9789,Variable ExclusiveDeviationAlarmType_Comment,9790,Variable ExclusiveDeviationAlarmType_Comment_SourceTimestamp,9791,Variable ExclusiveDeviationAlarmType_ClientUserId,9792,Variable ExclusiveDeviationAlarmType_Enable,9793,Method ExclusiveDeviationAlarmType_Disable,9794,Method ExclusiveDeviationAlarmType_AddComment,9795,Method ExclusiveDeviationAlarmType_AddComment_InputArguments,9796,Variable ExclusiveDeviationAlarmType_ConditionRefresh,9797,Method ExclusiveDeviationAlarmType_ConditionRefresh_InputArguments,9798,Variable ExclusiveDeviationAlarmType_AckedState,9799,Variable ExclusiveDeviationAlarmType_AckedState_Id,9800,Variable ExclusiveDeviationAlarmType_AckedState_Name,9801,Variable ExclusiveDeviationAlarmType_AckedState_Number,9802,Variable ExclusiveDeviationAlarmType_AckedState_EffectiveDisplayName,9803,Variable ExclusiveDeviationAlarmType_AckedState_TransitionTime,9804,Variable ExclusiveDeviationAlarmType_AckedState_EffectiveTransitionTime,9805,Variable ExclusiveDeviationAlarmType_AckedState_TrueState,9806,Variable ExclusiveDeviationAlarmType_AckedState_FalseState,9807,Variable ExclusiveDeviationAlarmType_ConfirmedState,9808,Variable ExclusiveDeviationAlarmType_ConfirmedState_Id,9809,Variable ExclusiveDeviationAlarmType_ConfirmedState_Name,9810,Variable ExclusiveDeviationAlarmType_ConfirmedState_Number,9811,Variable ExclusiveDeviationAlarmType_ConfirmedState_EffectiveDisplayName,9812,Variable ExclusiveDeviationAlarmType_ConfirmedState_TransitionTime,9813,Variable ExclusiveDeviationAlarmType_ConfirmedState_EffectiveTransitionTime,9814,Variable ExclusiveDeviationAlarmType_ConfirmedState_TrueState,9815,Variable ExclusiveDeviationAlarmType_ConfirmedState_FalseState,9816,Variable ExclusiveDeviationAlarmType_Acknowledge,9817,Method ExclusiveDeviationAlarmType_Acknowledge_InputArguments,9818,Variable ExclusiveDeviationAlarmType_Confirm,9819,Method ExclusiveDeviationAlarmType_Confirm_InputArguments,9820,Variable ExclusiveDeviationAlarmType_ActiveState,9821,Variable ExclusiveDeviationAlarmType_ActiveState_Id,9822,Variable ExclusiveDeviationAlarmType_ActiveState_Name,9823,Variable ExclusiveDeviationAlarmType_ActiveState_Number,9824,Variable ExclusiveDeviationAlarmType_ActiveState_EffectiveDisplayName,9825,Variable ExclusiveDeviationAlarmType_ActiveState_TransitionTime,9826,Variable ExclusiveDeviationAlarmType_ActiveState_EffectiveTransitionTime,9827,Variable ExclusiveDeviationAlarmType_ActiveState_TrueState,9828,Variable ExclusiveDeviationAlarmType_ActiveState_FalseState,9829,Variable ExclusiveDeviationAlarmType_SuppressedState,9830,Variable ExclusiveDeviationAlarmType_SuppressedState_Id,9831,Variable ExclusiveDeviationAlarmType_SuppressedState_Name,9832,Variable ExclusiveDeviationAlarmType_SuppressedState_Number,9833,Variable ExclusiveDeviationAlarmType_SuppressedState_EffectiveDisplayName,9834,Variable ExclusiveDeviationAlarmType_SuppressedState_TransitionTime,9835,Variable ExclusiveDeviationAlarmType_SuppressedState_EffectiveTransitionTime,9836,Variable ExclusiveDeviationAlarmType_SuppressedState_TrueState,9837,Variable ExclusiveDeviationAlarmType_SuppressedState_FalseState,9838,Variable ExclusiveDeviationAlarmType_ShelvingState,9839,Object ExclusiveDeviationAlarmType_ShelvingState_CurrentState,9840,Variable ExclusiveDeviationAlarmType_ShelvingState_CurrentState_Id,9841,Variable ExclusiveDeviationAlarmType_ShelvingState_CurrentState_Name,9842,Variable ExclusiveDeviationAlarmType_ShelvingState_CurrentState_Number,9843,Variable ExclusiveDeviationAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,9844,Variable ExclusiveDeviationAlarmType_ShelvingState_LastTransition,9845,Variable ExclusiveDeviationAlarmType_ShelvingState_LastTransition_Id,9846,Variable ExclusiveDeviationAlarmType_ShelvingState_LastTransition_Name,9847,Variable ExclusiveDeviationAlarmType_ShelvingState_LastTransition_Number,9848,Variable ExclusiveDeviationAlarmType_ShelvingState_LastTransition_TransitionTime,9849,Variable ExclusiveDeviationAlarmType_ShelvingState_UnshelveTime,9850,Variable ExclusiveDeviationAlarmType_ShelvingState_Unshelve,9872,Method ExclusiveDeviationAlarmType_ShelvingState_OneShotShelve,9873,Method ExclusiveDeviationAlarmType_ShelvingState_TimedShelve,9874,Method ExclusiveDeviationAlarmType_ShelvingState_TimedShelve_InputArguments,9875,Variable ExclusiveDeviationAlarmType_SuppressedOrShelved,9876,Variable ExclusiveDeviationAlarmType_MaxTimeShelved,9877,Variable ExclusiveDeviationAlarmType_LimitState,9878,Object ExclusiveDeviationAlarmType_LimitState_CurrentState,9879,Variable ExclusiveDeviationAlarmType_LimitState_CurrentState_Id,9880,Variable ExclusiveDeviationAlarmType_LimitState_CurrentState_Name,9881,Variable ExclusiveDeviationAlarmType_LimitState_CurrentState_Number,9882,Variable ExclusiveDeviationAlarmType_LimitState_CurrentState_EffectiveDisplayName,9883,Variable ExclusiveDeviationAlarmType_LimitState_LastTransition,9884,Variable ExclusiveDeviationAlarmType_LimitState_LastTransition_Id,9885,Variable ExclusiveDeviationAlarmType_LimitState_LastTransition_Name,9886,Variable ExclusiveDeviationAlarmType_LimitState_LastTransition_Number,9887,Variable ExclusiveDeviationAlarmType_LimitState_LastTransition_TransitionTime,9888,Variable ExclusiveDeviationAlarmType_HighHighLimit,9901,Variable ExclusiveDeviationAlarmType_HighLimit,9902,Variable ExclusiveDeviationAlarmType_LowLimit,9903,Variable ExclusiveDeviationAlarmType_LowLowLimit,9904,Variable ExclusiveDeviationAlarmType_SetpointNode,9905,Variable NonExclusiveLimitAlarmType,9906,ObjectType NonExclusiveLimitAlarmType_EventId,9907,Variable NonExclusiveLimitAlarmType_EventType,9908,Variable NonExclusiveLimitAlarmType_SourceNode,9909,Variable NonExclusiveLimitAlarmType_SourceName,9910,Variable NonExclusiveLimitAlarmType_Time,9911,Variable NonExclusiveLimitAlarmType_ReceiveTime,9912,Variable NonExclusiveLimitAlarmType_LocalTime,9913,Variable NonExclusiveLimitAlarmType_Message,9914,Variable NonExclusiveLimitAlarmType_Severity,9915,Variable NonExclusiveLimitAlarmType_ConditionName,9916,Variable NonExclusiveLimitAlarmType_BranchId,9917,Variable NonExclusiveLimitAlarmType_Retain,9918,Variable NonExclusiveLimitAlarmType_EnabledState,9919,Variable NonExclusiveLimitAlarmType_EnabledState_Id,9920,Variable NonExclusiveLimitAlarmType_EnabledState_Name,9921,Variable NonExclusiveLimitAlarmType_EnabledState_Number,9922,Variable NonExclusiveLimitAlarmType_EnabledState_EffectiveDisplayName,9923,Variable NonExclusiveLimitAlarmType_EnabledState_TransitionTime,9924,Variable NonExclusiveLimitAlarmType_EnabledState_EffectiveTransitionTime,9925,Variable NonExclusiveLimitAlarmType_EnabledState_TrueState,9926,Variable NonExclusiveLimitAlarmType_EnabledState_FalseState,9927,Variable NonExclusiveLimitAlarmType_Quality,9928,Variable NonExclusiveLimitAlarmType_Quality_SourceTimestamp,9929,Variable NonExclusiveLimitAlarmType_LastSeverity,9930,Variable NonExclusiveLimitAlarmType_LastSeverity_SourceTimestamp,9931,Variable NonExclusiveLimitAlarmType_Comment,9932,Variable NonExclusiveLimitAlarmType_Comment_SourceTimestamp,9933,Variable NonExclusiveLimitAlarmType_ClientUserId,9934,Variable NonExclusiveLimitAlarmType_Enable,9935,Method NonExclusiveLimitAlarmType_Disable,9936,Method NonExclusiveLimitAlarmType_AddComment,9937,Method NonExclusiveLimitAlarmType_AddComment_InputArguments,9938,Variable NonExclusiveLimitAlarmType_ConditionRefresh,9939,Method NonExclusiveLimitAlarmType_ConditionRefresh_InputArguments,9940,Variable NonExclusiveLimitAlarmType_AckedState,9941,Variable NonExclusiveLimitAlarmType_AckedState_Id,9942,Variable NonExclusiveLimitAlarmType_AckedState_Name,9943,Variable NonExclusiveLimitAlarmType_AckedState_Number,9944,Variable NonExclusiveLimitAlarmType_AckedState_EffectiveDisplayName,9945,Variable NonExclusiveLimitAlarmType_AckedState_TransitionTime,9946,Variable NonExclusiveLimitAlarmType_AckedState_EffectiveTransitionTime,9947,Variable NonExclusiveLimitAlarmType_AckedState_TrueState,9948,Variable NonExclusiveLimitAlarmType_AckedState_FalseState,9949,Variable NonExclusiveLimitAlarmType_ConfirmedState,9950,Variable NonExclusiveLimitAlarmType_ConfirmedState_Id,9951,Variable NonExclusiveLimitAlarmType_ConfirmedState_Name,9952,Variable NonExclusiveLimitAlarmType_ConfirmedState_Number,9953,Variable NonExclusiveLimitAlarmType_ConfirmedState_EffectiveDisplayName,9954,Variable NonExclusiveLimitAlarmType_ConfirmedState_TransitionTime,9955,Variable NonExclusiveLimitAlarmType_ConfirmedState_EffectiveTransitionTime,9956,Variable NonExclusiveLimitAlarmType_ConfirmedState_TrueState,9957,Variable NonExclusiveLimitAlarmType_ConfirmedState_FalseState,9958,Variable NonExclusiveLimitAlarmType_Acknowledge,9959,Method NonExclusiveLimitAlarmType_Acknowledge_InputArguments,9960,Variable NonExclusiveLimitAlarmType_Confirm,9961,Method NonExclusiveLimitAlarmType_Confirm_InputArguments,9962,Variable NonExclusiveLimitAlarmType_ActiveState,9963,Variable NonExclusiveLimitAlarmType_ActiveState_Id,9964,Variable NonExclusiveLimitAlarmType_ActiveState_Name,9965,Variable NonExclusiveLimitAlarmType_ActiveState_Number,9966,Variable NonExclusiveLimitAlarmType_ActiveState_EffectiveDisplayName,9967,Variable NonExclusiveLimitAlarmType_ActiveState_TransitionTime,9968,Variable NonExclusiveLimitAlarmType_ActiveState_EffectiveTransitionTime,9969,Variable NonExclusiveLimitAlarmType_ActiveState_TrueState,9970,Variable NonExclusiveLimitAlarmType_ActiveState_FalseState,9971,Variable NonExclusiveLimitAlarmType_SuppressedState,9972,Variable NonExclusiveLimitAlarmType_SuppressedState_Id,9973,Variable NonExclusiveLimitAlarmType_SuppressedState_Name,9974,Variable NonExclusiveLimitAlarmType_SuppressedState_Number,9975,Variable NonExclusiveLimitAlarmType_SuppressedState_EffectiveDisplayName,9976,Variable NonExclusiveLimitAlarmType_SuppressedState_TransitionTime,9977,Variable NonExclusiveLimitAlarmType_SuppressedState_EffectiveTransitionTime,9978,Variable NonExclusiveLimitAlarmType_SuppressedState_TrueState,9979,Variable NonExclusiveLimitAlarmType_SuppressedState_FalseState,9980,Variable NonExclusiveLimitAlarmType_ShelvingState,9981,Object NonExclusiveLimitAlarmType_ShelvingState_CurrentState,9982,Variable NonExclusiveLimitAlarmType_ShelvingState_CurrentState_Id,9983,Variable NonExclusiveLimitAlarmType_ShelvingState_CurrentState_Name,9984,Variable NonExclusiveLimitAlarmType_ShelvingState_CurrentState_Number,9985,Variable NonExclusiveLimitAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,9986,Variable NonExclusiveLimitAlarmType_ShelvingState_LastTransition,9987,Variable NonExclusiveLimitAlarmType_ShelvingState_LastTransition_Id,9988,Variable NonExclusiveLimitAlarmType_ShelvingState_LastTransition_Name,9989,Variable NonExclusiveLimitAlarmType_ShelvingState_LastTransition_Number,9990,Variable NonExclusiveLimitAlarmType_ShelvingState_LastTransition_TransitionTime,9991,Variable NonExclusiveLimitAlarmType_ShelvingState_UnshelveTime,9992,Variable NonExclusiveLimitAlarmType_ShelvingState_Unshelve,10014,Method NonExclusiveLimitAlarmType_ShelvingState_OneShotShelve,10015,Method NonExclusiveLimitAlarmType_ShelvingState_TimedShelve,10016,Method NonExclusiveLimitAlarmType_ShelvingState_TimedShelve_InputArguments,10017,Variable NonExclusiveLimitAlarmType_SuppressedOrShelved,10018,Variable NonExclusiveLimitAlarmType_MaxTimeShelved,10019,Variable NonExclusiveLimitAlarmType_HighHighState,10020,Variable NonExclusiveLimitAlarmType_HighHighState_Id,10021,Variable NonExclusiveLimitAlarmType_HighHighState_Name,10022,Variable NonExclusiveLimitAlarmType_HighHighState_Number,10023,Variable NonExclusiveLimitAlarmType_HighHighState_EffectiveDisplayName,10024,Variable NonExclusiveLimitAlarmType_HighHighState_TransitionTime,10025,Variable NonExclusiveLimitAlarmType_HighHighState_EffectiveTransitionTime,10026,Variable NonExclusiveLimitAlarmType_HighHighState_TrueState,10027,Variable NonExclusiveLimitAlarmType_HighHighState_FalseState,10028,Variable NonExclusiveLimitAlarmType_HighState,10029,Variable NonExclusiveLimitAlarmType_HighState_Id,10030,Variable NonExclusiveLimitAlarmType_HighState_Name,10031,Variable NonExclusiveLimitAlarmType_HighState_Number,10032,Variable NonExclusiveLimitAlarmType_HighState_EffectiveDisplayName,10033,Variable NonExclusiveLimitAlarmType_HighState_TransitionTime,10034,Variable NonExclusiveLimitAlarmType_HighState_EffectiveTransitionTime,10035,Variable NonExclusiveLimitAlarmType_HighState_TrueState,10036,Variable NonExclusiveLimitAlarmType_HighState_FalseState,10037,Variable NonExclusiveLimitAlarmType_LowState,10038,Variable NonExclusiveLimitAlarmType_LowState_Id,10039,Variable NonExclusiveLimitAlarmType_LowState_Name,10040,Variable NonExclusiveLimitAlarmType_LowState_Number,10041,Variable NonExclusiveLimitAlarmType_LowState_EffectiveDisplayName,10042,Variable NonExclusiveLimitAlarmType_LowState_TransitionTime,10043,Variable NonExclusiveLimitAlarmType_LowState_EffectiveTransitionTime,10044,Variable NonExclusiveLimitAlarmType_LowState_TrueState,10045,Variable NonExclusiveLimitAlarmType_LowState_FalseState,10046,Variable NonExclusiveLimitAlarmType_LowLowState,10047,Variable NonExclusiveLimitAlarmType_LowLowState_Id,10048,Variable NonExclusiveLimitAlarmType_LowLowState_Name,10049,Variable NonExclusiveLimitAlarmType_LowLowState_Number,10050,Variable NonExclusiveLimitAlarmType_LowLowState_EffectiveDisplayName,10051,Variable NonExclusiveLimitAlarmType_LowLowState_TransitionTime,10052,Variable NonExclusiveLimitAlarmType_LowLowState_EffectiveTransitionTime,10053,Variable NonExclusiveLimitAlarmType_LowLowState_TrueState,10054,Variable NonExclusiveLimitAlarmType_LowLowState_FalseState,10055,Variable NonExclusiveLimitAlarmType_HighHighLimit,10056,Variable NonExclusiveLimitAlarmType_HighLimit,10057,Variable NonExclusiveLimitAlarmType_LowLimit,10058,Variable NonExclusiveLimitAlarmType_LowLowLimit,10059,Variable NonExclusiveLevelAlarmType,10060,ObjectType NonExclusiveLevelAlarmType_EventId,10061,Variable NonExclusiveLevelAlarmType_EventType,10062,Variable NonExclusiveLevelAlarmType_SourceNode,10063,Variable NonExclusiveLevelAlarmType_SourceName,10064,Variable NonExclusiveLevelAlarmType_Time,10065,Variable NonExclusiveLevelAlarmType_ReceiveTime,10066,Variable NonExclusiveLevelAlarmType_LocalTime,10067,Variable NonExclusiveLevelAlarmType_Message,10068,Variable NonExclusiveLevelAlarmType_Severity,10069,Variable NonExclusiveLevelAlarmType_ConditionName,10070,Variable NonExclusiveLevelAlarmType_BranchId,10071,Variable NonExclusiveLevelAlarmType_Retain,10072,Variable NonExclusiveLevelAlarmType_EnabledState,10073,Variable NonExclusiveLevelAlarmType_EnabledState_Id,10074,Variable NonExclusiveLevelAlarmType_EnabledState_Name,10075,Variable NonExclusiveLevelAlarmType_EnabledState_Number,10076,Variable NonExclusiveLevelAlarmType_EnabledState_EffectiveDisplayName,10077,Variable NonExclusiveLevelAlarmType_EnabledState_TransitionTime,10078,Variable NonExclusiveLevelAlarmType_EnabledState_EffectiveTransitionTime,10079,Variable NonExclusiveLevelAlarmType_EnabledState_TrueState,10080,Variable NonExclusiveLevelAlarmType_EnabledState_FalseState,10081,Variable NonExclusiveLevelAlarmType_Quality,10082,Variable NonExclusiveLevelAlarmType_Quality_SourceTimestamp,10083,Variable NonExclusiveLevelAlarmType_LastSeverity,10084,Variable NonExclusiveLevelAlarmType_LastSeverity_SourceTimestamp,10085,Variable NonExclusiveLevelAlarmType_Comment,10086,Variable NonExclusiveLevelAlarmType_Comment_SourceTimestamp,10087,Variable NonExclusiveLevelAlarmType_ClientUserId,10088,Variable NonExclusiveLevelAlarmType_Enable,10089,Method NonExclusiveLevelAlarmType_Disable,10090,Method NonExclusiveLevelAlarmType_AddComment,10091,Method NonExclusiveLevelAlarmType_AddComment_InputArguments,10092,Variable NonExclusiveLevelAlarmType_ConditionRefresh,10093,Method NonExclusiveLevelAlarmType_ConditionRefresh_InputArguments,10094,Variable NonExclusiveLevelAlarmType_AckedState,10095,Variable NonExclusiveLevelAlarmType_AckedState_Id,10096,Variable NonExclusiveLevelAlarmType_AckedState_Name,10097,Variable NonExclusiveLevelAlarmType_AckedState_Number,10098,Variable NonExclusiveLevelAlarmType_AckedState_EffectiveDisplayName,10099,Variable NonExclusiveLevelAlarmType_AckedState_TransitionTime,10100,Variable NonExclusiveLevelAlarmType_AckedState_EffectiveTransitionTime,10101,Variable NonExclusiveLevelAlarmType_AckedState_TrueState,10102,Variable NonExclusiveLevelAlarmType_AckedState_FalseState,10103,Variable NonExclusiveLevelAlarmType_ConfirmedState,10104,Variable NonExclusiveLevelAlarmType_ConfirmedState_Id,10105,Variable NonExclusiveLevelAlarmType_ConfirmedState_Name,10106,Variable NonExclusiveLevelAlarmType_ConfirmedState_Number,10107,Variable NonExclusiveLevelAlarmType_ConfirmedState_EffectiveDisplayName,10108,Variable NonExclusiveLevelAlarmType_ConfirmedState_TransitionTime,10109,Variable NonExclusiveLevelAlarmType_ConfirmedState_EffectiveTransitionTime,10110,Variable NonExclusiveLevelAlarmType_ConfirmedState_TrueState,10111,Variable NonExclusiveLevelAlarmType_ConfirmedState_FalseState,10112,Variable NonExclusiveLevelAlarmType_Acknowledge,10113,Method NonExclusiveLevelAlarmType_Acknowledge_InputArguments,10114,Variable NonExclusiveLevelAlarmType_Confirm,10115,Method NonExclusiveLevelAlarmType_Confirm_InputArguments,10116,Variable NonExclusiveLevelAlarmType_ActiveState,10117,Variable NonExclusiveLevelAlarmType_ActiveState_Id,10118,Variable NonExclusiveLevelAlarmType_ActiveState_Name,10119,Variable NonExclusiveLevelAlarmType_ActiveState_Number,10120,Variable NonExclusiveLevelAlarmType_ActiveState_EffectiveDisplayName,10121,Variable NonExclusiveLevelAlarmType_ActiveState_TransitionTime,10122,Variable NonExclusiveLevelAlarmType_ActiveState_EffectiveTransitionTime,10123,Variable NonExclusiveLevelAlarmType_ActiveState_TrueState,10124,Variable NonExclusiveLevelAlarmType_ActiveState_FalseState,10125,Variable NonExclusiveLevelAlarmType_SuppressedState,10126,Variable NonExclusiveLevelAlarmType_SuppressedState_Id,10127,Variable NonExclusiveLevelAlarmType_SuppressedState_Name,10128,Variable NonExclusiveLevelAlarmType_SuppressedState_Number,10129,Variable NonExclusiveLevelAlarmType_SuppressedState_EffectiveDisplayName,10130,Variable NonExclusiveLevelAlarmType_SuppressedState_TransitionTime,10131,Variable NonExclusiveLevelAlarmType_SuppressedState_EffectiveTransitionTime,10132,Variable NonExclusiveLevelAlarmType_SuppressedState_TrueState,10133,Variable NonExclusiveLevelAlarmType_SuppressedState_FalseState,10134,Variable NonExclusiveLevelAlarmType_ShelvingState,10135,Object NonExclusiveLevelAlarmType_ShelvingState_CurrentState,10136,Variable NonExclusiveLevelAlarmType_ShelvingState_CurrentState_Id,10137,Variable NonExclusiveLevelAlarmType_ShelvingState_CurrentState_Name,10138,Variable NonExclusiveLevelAlarmType_ShelvingState_CurrentState_Number,10139,Variable NonExclusiveLevelAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,10140,Variable NonExclusiveLevelAlarmType_ShelvingState_LastTransition,10141,Variable NonExclusiveLevelAlarmType_ShelvingState_LastTransition_Id,10142,Variable NonExclusiveLevelAlarmType_ShelvingState_LastTransition_Name,10143,Variable NonExclusiveLevelAlarmType_ShelvingState_LastTransition_Number,10144,Variable NonExclusiveLevelAlarmType_ShelvingState_LastTransition_TransitionTime,10145,Variable NonExclusiveLevelAlarmType_ShelvingState_UnshelveTime,10146,Variable NonExclusiveLevelAlarmType_ShelvingState_Unshelve,10168,Method NonExclusiveLevelAlarmType_ShelvingState_OneShotShelve,10169,Method NonExclusiveLevelAlarmType_ShelvingState_TimedShelve,10170,Method NonExclusiveLevelAlarmType_ShelvingState_TimedShelve_InputArguments,10171,Variable NonExclusiveLevelAlarmType_SuppressedOrShelved,10172,Variable NonExclusiveLevelAlarmType_MaxTimeShelved,10173,Variable NonExclusiveLevelAlarmType_HighHighState,10174,Variable NonExclusiveLevelAlarmType_HighHighState_Id,10175,Variable NonExclusiveLevelAlarmType_HighHighState_Name,10176,Variable NonExclusiveLevelAlarmType_HighHighState_Number,10177,Variable NonExclusiveLevelAlarmType_HighHighState_EffectiveDisplayName,10178,Variable NonExclusiveLevelAlarmType_HighHighState_TransitionTime,10179,Variable NonExclusiveLevelAlarmType_HighHighState_EffectiveTransitionTime,10180,Variable NonExclusiveLevelAlarmType_HighHighState_TrueState,10181,Variable NonExclusiveLevelAlarmType_HighHighState_FalseState,10182,Variable NonExclusiveLevelAlarmType_HighState,10183,Variable NonExclusiveLevelAlarmType_HighState_Id,10184,Variable NonExclusiveLevelAlarmType_HighState_Name,10185,Variable NonExclusiveLevelAlarmType_HighState_Number,10186,Variable NonExclusiveLevelAlarmType_HighState_EffectiveDisplayName,10187,Variable NonExclusiveLevelAlarmType_HighState_TransitionTime,10188,Variable NonExclusiveLevelAlarmType_HighState_EffectiveTransitionTime,10189,Variable NonExclusiveLevelAlarmType_HighState_TrueState,10190,Variable NonExclusiveLevelAlarmType_HighState_FalseState,10191,Variable NonExclusiveLevelAlarmType_LowState,10192,Variable NonExclusiveLevelAlarmType_LowState_Id,10193,Variable NonExclusiveLevelAlarmType_LowState_Name,10194,Variable NonExclusiveLevelAlarmType_LowState_Number,10195,Variable NonExclusiveLevelAlarmType_LowState_EffectiveDisplayName,10196,Variable NonExclusiveLevelAlarmType_LowState_TransitionTime,10197,Variable NonExclusiveLevelAlarmType_LowState_EffectiveTransitionTime,10198,Variable NonExclusiveLevelAlarmType_LowState_TrueState,10199,Variable NonExclusiveLevelAlarmType_LowState_FalseState,10200,Variable NonExclusiveLevelAlarmType_LowLowState,10201,Variable NonExclusiveLevelAlarmType_LowLowState_Id,10202,Variable NonExclusiveLevelAlarmType_LowLowState_Name,10203,Variable NonExclusiveLevelAlarmType_LowLowState_Number,10204,Variable NonExclusiveLevelAlarmType_LowLowState_EffectiveDisplayName,10205,Variable NonExclusiveLevelAlarmType_LowLowState_TransitionTime,10206,Variable NonExclusiveLevelAlarmType_LowLowState_EffectiveTransitionTime,10207,Variable NonExclusiveLevelAlarmType_LowLowState_TrueState,10208,Variable NonExclusiveLevelAlarmType_LowLowState_FalseState,10209,Variable NonExclusiveLevelAlarmType_HighHighLimit,10210,Variable NonExclusiveLevelAlarmType_HighLimit,10211,Variable NonExclusiveLevelAlarmType_LowLimit,10212,Variable NonExclusiveLevelAlarmType_LowLowLimit,10213,Variable NonExclusiveRateOfChangeAlarmType,10214,ObjectType NonExclusiveRateOfChangeAlarmType_EventId,10215,Variable NonExclusiveRateOfChangeAlarmType_EventType,10216,Variable NonExclusiveRateOfChangeAlarmType_SourceNode,10217,Variable NonExclusiveRateOfChangeAlarmType_SourceName,10218,Variable NonExclusiveRateOfChangeAlarmType_Time,10219,Variable NonExclusiveRateOfChangeAlarmType_ReceiveTime,10220,Variable NonExclusiveRateOfChangeAlarmType_LocalTime,10221,Variable NonExclusiveRateOfChangeAlarmType_Message,10222,Variable NonExclusiveRateOfChangeAlarmType_Severity,10223,Variable NonExclusiveRateOfChangeAlarmType_ConditionName,10224,Variable NonExclusiveRateOfChangeAlarmType_BranchId,10225,Variable NonExclusiveRateOfChangeAlarmType_Retain,10226,Variable NonExclusiveRateOfChangeAlarmType_EnabledState,10227,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_Id,10228,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_Name,10229,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_Number,10230,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_EffectiveDisplayName,10231,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_TransitionTime,10232,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_EffectiveTransitionTime,10233,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_TrueState,10234,Variable NonExclusiveRateOfChangeAlarmType_EnabledState_FalseState,10235,Variable NonExclusiveRateOfChangeAlarmType_Quality,10236,Variable NonExclusiveRateOfChangeAlarmType_Quality_SourceTimestamp,10237,Variable NonExclusiveRateOfChangeAlarmType_LastSeverity,10238,Variable NonExclusiveRateOfChangeAlarmType_LastSeverity_SourceTimestamp,10239,Variable NonExclusiveRateOfChangeAlarmType_Comment,10240,Variable NonExclusiveRateOfChangeAlarmType_Comment_SourceTimestamp,10241,Variable NonExclusiveRateOfChangeAlarmType_ClientUserId,10242,Variable NonExclusiveRateOfChangeAlarmType_Enable,10243,Method NonExclusiveRateOfChangeAlarmType_Disable,10244,Method NonExclusiveRateOfChangeAlarmType_AddComment,10245,Method NonExclusiveRateOfChangeAlarmType_AddComment_InputArguments,10246,Variable NonExclusiveRateOfChangeAlarmType_ConditionRefresh,10247,Method NonExclusiveRateOfChangeAlarmType_ConditionRefresh_InputArguments,10248,Variable NonExclusiveRateOfChangeAlarmType_AckedState,10249,Variable NonExclusiveRateOfChangeAlarmType_AckedState_Id,10250,Variable NonExclusiveRateOfChangeAlarmType_AckedState_Name,10251,Variable NonExclusiveRateOfChangeAlarmType_AckedState_Number,10252,Variable NonExclusiveRateOfChangeAlarmType_AckedState_EffectiveDisplayName,10253,Variable NonExclusiveRateOfChangeAlarmType_AckedState_TransitionTime,10254,Variable NonExclusiveRateOfChangeAlarmType_AckedState_EffectiveTransitionTime,10255,Variable NonExclusiveRateOfChangeAlarmType_AckedState_TrueState,10256,Variable NonExclusiveRateOfChangeAlarmType_AckedState_FalseState,10257,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState,10258,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_Id,10259,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_Name,10260,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_Number,10261,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_EffectiveDisplayName,10262,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_TransitionTime,10263,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_EffectiveTransitionTime,10264,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_TrueState,10265,Variable NonExclusiveRateOfChangeAlarmType_ConfirmedState_FalseState,10266,Variable NonExclusiveRateOfChangeAlarmType_Acknowledge,10267,Method NonExclusiveRateOfChangeAlarmType_Acknowledge_InputArguments,10268,Variable NonExclusiveRateOfChangeAlarmType_Confirm,10269,Method NonExclusiveRateOfChangeAlarmType_Confirm_InputArguments,10270,Variable NonExclusiveRateOfChangeAlarmType_ActiveState,10271,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_Id,10272,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_Name,10273,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_Number,10274,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_EffectiveDisplayName,10275,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_TransitionTime,10276,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_EffectiveTransitionTime,10277,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_TrueState,10278,Variable NonExclusiveRateOfChangeAlarmType_ActiveState_FalseState,10279,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState,10280,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_Id,10281,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_Name,10282,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_Number,10283,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_EffectiveDisplayName,10284,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_TransitionTime,10285,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_EffectiveTransitionTime,10286,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_TrueState,10287,Variable NonExclusiveRateOfChangeAlarmType_SuppressedState_FalseState,10288,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState,10289,Object NonExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState,10290,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_Id,10291,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_Name,10292,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_Number,10293,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,10294,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition,10295,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_Id,10296,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_Name,10297,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_Number,10298,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_TransitionTime,10299,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_UnshelveTime,10300,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_Unshelve,10322,Method NonExclusiveRateOfChangeAlarmType_ShelvingState_OneShotShelve,10323,Method NonExclusiveRateOfChangeAlarmType_ShelvingState_TimedShelve,10324,Method NonExclusiveRateOfChangeAlarmType_ShelvingState_TimedShelve_InputArguments,10325,Variable NonExclusiveRateOfChangeAlarmType_SuppressedOrShelved,10326,Variable NonExclusiveRateOfChangeAlarmType_MaxTimeShelved,10327,Variable NonExclusiveRateOfChangeAlarmType_HighHighState,10328,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_Id,10329,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_Name,10330,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_Number,10331,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_EffectiveDisplayName,10332,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_TransitionTime,10333,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_EffectiveTransitionTime,10334,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_TrueState,10335,Variable NonExclusiveRateOfChangeAlarmType_HighHighState_FalseState,10336,Variable NonExclusiveRateOfChangeAlarmType_HighState,10337,Variable NonExclusiveRateOfChangeAlarmType_HighState_Id,10338,Variable NonExclusiveRateOfChangeAlarmType_HighState_Name,10339,Variable NonExclusiveRateOfChangeAlarmType_HighState_Number,10340,Variable NonExclusiveRateOfChangeAlarmType_HighState_EffectiveDisplayName,10341,Variable NonExclusiveRateOfChangeAlarmType_HighState_TransitionTime,10342,Variable NonExclusiveRateOfChangeAlarmType_HighState_EffectiveTransitionTime,10343,Variable NonExclusiveRateOfChangeAlarmType_HighState_TrueState,10344,Variable NonExclusiveRateOfChangeAlarmType_HighState_FalseState,10345,Variable NonExclusiveRateOfChangeAlarmType_LowState,10346,Variable NonExclusiveRateOfChangeAlarmType_LowState_Id,10347,Variable NonExclusiveRateOfChangeAlarmType_LowState_Name,10348,Variable NonExclusiveRateOfChangeAlarmType_LowState_Number,10349,Variable NonExclusiveRateOfChangeAlarmType_LowState_EffectiveDisplayName,10350,Variable NonExclusiveRateOfChangeAlarmType_LowState_TransitionTime,10351,Variable NonExclusiveRateOfChangeAlarmType_LowState_EffectiveTransitionTime,10352,Variable NonExclusiveRateOfChangeAlarmType_LowState_TrueState,10353,Variable NonExclusiveRateOfChangeAlarmType_LowState_FalseState,10354,Variable NonExclusiveRateOfChangeAlarmType_LowLowState,10355,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_Id,10356,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_Name,10357,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_Number,10358,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_EffectiveDisplayName,10359,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_TransitionTime,10360,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_EffectiveTransitionTime,10361,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_TrueState,10362,Variable NonExclusiveRateOfChangeAlarmType_LowLowState_FalseState,10363,Variable NonExclusiveRateOfChangeAlarmType_HighHighLimit,10364,Variable NonExclusiveRateOfChangeAlarmType_HighLimit,10365,Variable NonExclusiveRateOfChangeAlarmType_LowLimit,10366,Variable NonExclusiveRateOfChangeAlarmType_LowLowLimit,10367,Variable NonExclusiveDeviationAlarmType,10368,ObjectType NonExclusiveDeviationAlarmType_EventId,10369,Variable NonExclusiveDeviationAlarmType_EventType,10370,Variable NonExclusiveDeviationAlarmType_SourceNode,10371,Variable NonExclusiveDeviationAlarmType_SourceName,10372,Variable NonExclusiveDeviationAlarmType_Time,10373,Variable NonExclusiveDeviationAlarmType_ReceiveTime,10374,Variable NonExclusiveDeviationAlarmType_LocalTime,10375,Variable NonExclusiveDeviationAlarmType_Message,10376,Variable NonExclusiveDeviationAlarmType_Severity,10377,Variable NonExclusiveDeviationAlarmType_ConditionName,10378,Variable NonExclusiveDeviationAlarmType_BranchId,10379,Variable NonExclusiveDeviationAlarmType_Retain,10380,Variable NonExclusiveDeviationAlarmType_EnabledState,10381,Variable NonExclusiveDeviationAlarmType_EnabledState_Id,10382,Variable NonExclusiveDeviationAlarmType_EnabledState_Name,10383,Variable NonExclusiveDeviationAlarmType_EnabledState_Number,10384,Variable NonExclusiveDeviationAlarmType_EnabledState_EffectiveDisplayName,10385,Variable NonExclusiveDeviationAlarmType_EnabledState_TransitionTime,10386,Variable NonExclusiveDeviationAlarmType_EnabledState_EffectiveTransitionTime,10387,Variable NonExclusiveDeviationAlarmType_EnabledState_TrueState,10388,Variable NonExclusiveDeviationAlarmType_EnabledState_FalseState,10389,Variable NonExclusiveDeviationAlarmType_Quality,10390,Variable NonExclusiveDeviationAlarmType_Quality_SourceTimestamp,10391,Variable NonExclusiveDeviationAlarmType_LastSeverity,10392,Variable NonExclusiveDeviationAlarmType_LastSeverity_SourceTimestamp,10393,Variable NonExclusiveDeviationAlarmType_Comment,10394,Variable NonExclusiveDeviationAlarmType_Comment_SourceTimestamp,10395,Variable NonExclusiveDeviationAlarmType_ClientUserId,10396,Variable NonExclusiveDeviationAlarmType_Enable,10397,Method NonExclusiveDeviationAlarmType_Disable,10398,Method NonExclusiveDeviationAlarmType_AddComment,10399,Method NonExclusiveDeviationAlarmType_AddComment_InputArguments,10400,Variable NonExclusiveDeviationAlarmType_ConditionRefresh,10401,Method NonExclusiveDeviationAlarmType_ConditionRefresh_InputArguments,10402,Variable NonExclusiveDeviationAlarmType_AckedState,10403,Variable NonExclusiveDeviationAlarmType_AckedState_Id,10404,Variable NonExclusiveDeviationAlarmType_AckedState_Name,10405,Variable NonExclusiveDeviationAlarmType_AckedState_Number,10406,Variable NonExclusiveDeviationAlarmType_AckedState_EffectiveDisplayName,10407,Variable NonExclusiveDeviationAlarmType_AckedState_TransitionTime,10408,Variable NonExclusiveDeviationAlarmType_AckedState_EffectiveTransitionTime,10409,Variable NonExclusiveDeviationAlarmType_AckedState_TrueState,10410,Variable NonExclusiveDeviationAlarmType_AckedState_FalseState,10411,Variable NonExclusiveDeviationAlarmType_ConfirmedState,10412,Variable NonExclusiveDeviationAlarmType_ConfirmedState_Id,10413,Variable NonExclusiveDeviationAlarmType_ConfirmedState_Name,10414,Variable NonExclusiveDeviationAlarmType_ConfirmedState_Number,10415,Variable NonExclusiveDeviationAlarmType_ConfirmedState_EffectiveDisplayName,10416,Variable NonExclusiveDeviationAlarmType_ConfirmedState_TransitionTime,10417,Variable NonExclusiveDeviationAlarmType_ConfirmedState_EffectiveTransitionTime,10418,Variable NonExclusiveDeviationAlarmType_ConfirmedState_TrueState,10419,Variable NonExclusiveDeviationAlarmType_ConfirmedState_FalseState,10420,Variable NonExclusiveDeviationAlarmType_Acknowledge,10421,Method NonExclusiveDeviationAlarmType_Acknowledge_InputArguments,10422,Variable NonExclusiveDeviationAlarmType_Confirm,10423,Method NonExclusiveDeviationAlarmType_Confirm_InputArguments,10424,Variable NonExclusiveDeviationAlarmType_ActiveState,10425,Variable NonExclusiveDeviationAlarmType_ActiveState_Id,10426,Variable NonExclusiveDeviationAlarmType_ActiveState_Name,10427,Variable NonExclusiveDeviationAlarmType_ActiveState_Number,10428,Variable NonExclusiveDeviationAlarmType_ActiveState_EffectiveDisplayName,10429,Variable NonExclusiveDeviationAlarmType_ActiveState_TransitionTime,10430,Variable NonExclusiveDeviationAlarmType_ActiveState_EffectiveTransitionTime,10431,Variable NonExclusiveDeviationAlarmType_ActiveState_TrueState,10432,Variable NonExclusiveDeviationAlarmType_ActiveState_FalseState,10433,Variable NonExclusiveDeviationAlarmType_SuppressedState,10434,Variable NonExclusiveDeviationAlarmType_SuppressedState_Id,10435,Variable NonExclusiveDeviationAlarmType_SuppressedState_Name,10436,Variable NonExclusiveDeviationAlarmType_SuppressedState_Number,10437,Variable NonExclusiveDeviationAlarmType_SuppressedState_EffectiveDisplayName,10438,Variable NonExclusiveDeviationAlarmType_SuppressedState_TransitionTime,10439,Variable NonExclusiveDeviationAlarmType_SuppressedState_EffectiveTransitionTime,10440,Variable NonExclusiveDeviationAlarmType_SuppressedState_TrueState,10441,Variable NonExclusiveDeviationAlarmType_SuppressedState_FalseState,10442,Variable NonExclusiveDeviationAlarmType_ShelvingState,10443,Object NonExclusiveDeviationAlarmType_ShelvingState_CurrentState,10444,Variable NonExclusiveDeviationAlarmType_ShelvingState_CurrentState_Id,10445,Variable NonExclusiveDeviationAlarmType_ShelvingState_CurrentState_Name,10446,Variable NonExclusiveDeviationAlarmType_ShelvingState_CurrentState_Number,10447,Variable NonExclusiveDeviationAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,10448,Variable NonExclusiveDeviationAlarmType_ShelvingState_LastTransition,10449,Variable NonExclusiveDeviationAlarmType_ShelvingState_LastTransition_Id,10450,Variable NonExclusiveDeviationAlarmType_ShelvingState_LastTransition_Name,10451,Variable NonExclusiveDeviationAlarmType_ShelvingState_LastTransition_Number,10452,Variable NonExclusiveDeviationAlarmType_ShelvingState_LastTransition_TransitionTime,10453,Variable NonExclusiveDeviationAlarmType_ShelvingState_UnshelveTime,10454,Variable NonExclusiveDeviationAlarmType_ShelvingState_Unshelve,10476,Method NonExclusiveDeviationAlarmType_ShelvingState_OneShotShelve,10477,Method NonExclusiveDeviationAlarmType_ShelvingState_TimedShelve,10478,Method NonExclusiveDeviationAlarmType_ShelvingState_TimedShelve_InputArguments,10479,Variable NonExclusiveDeviationAlarmType_SuppressedOrShelved,10480,Variable NonExclusiveDeviationAlarmType_MaxTimeShelved,10481,Variable NonExclusiveDeviationAlarmType_HighHighState,10482,Variable NonExclusiveDeviationAlarmType_HighHighState_Id,10483,Variable NonExclusiveDeviationAlarmType_HighHighState_Name,10484,Variable NonExclusiveDeviationAlarmType_HighHighState_Number,10485,Variable NonExclusiveDeviationAlarmType_HighHighState_EffectiveDisplayName,10486,Variable NonExclusiveDeviationAlarmType_HighHighState_TransitionTime,10487,Variable NonExclusiveDeviationAlarmType_HighHighState_EffectiveTransitionTime,10488,Variable NonExclusiveDeviationAlarmType_HighHighState_TrueState,10489,Variable NonExclusiveDeviationAlarmType_HighHighState_FalseState,10490,Variable NonExclusiveDeviationAlarmType_HighState,10491,Variable NonExclusiveDeviationAlarmType_HighState_Id,10492,Variable NonExclusiveDeviationAlarmType_HighState_Name,10493,Variable NonExclusiveDeviationAlarmType_HighState_Number,10494,Variable NonExclusiveDeviationAlarmType_HighState_EffectiveDisplayName,10495,Variable NonExclusiveDeviationAlarmType_HighState_TransitionTime,10496,Variable NonExclusiveDeviationAlarmType_HighState_EffectiveTransitionTime,10497,Variable NonExclusiveDeviationAlarmType_HighState_TrueState,10498,Variable NonExclusiveDeviationAlarmType_HighState_FalseState,10499,Variable NonExclusiveDeviationAlarmType_LowState,10500,Variable NonExclusiveDeviationAlarmType_LowState_Id,10501,Variable NonExclusiveDeviationAlarmType_LowState_Name,10502,Variable NonExclusiveDeviationAlarmType_LowState_Number,10503,Variable NonExclusiveDeviationAlarmType_LowState_EffectiveDisplayName,10504,Variable NonExclusiveDeviationAlarmType_LowState_TransitionTime,10505,Variable NonExclusiveDeviationAlarmType_LowState_EffectiveTransitionTime,10506,Variable NonExclusiveDeviationAlarmType_LowState_TrueState,10507,Variable NonExclusiveDeviationAlarmType_LowState_FalseState,10508,Variable NonExclusiveDeviationAlarmType_LowLowState,10509,Variable NonExclusiveDeviationAlarmType_LowLowState_Id,10510,Variable NonExclusiveDeviationAlarmType_LowLowState_Name,10511,Variable NonExclusiveDeviationAlarmType_LowLowState_Number,10512,Variable NonExclusiveDeviationAlarmType_LowLowState_EffectiveDisplayName,10513,Variable NonExclusiveDeviationAlarmType_LowLowState_TransitionTime,10514,Variable NonExclusiveDeviationAlarmType_LowLowState_EffectiveTransitionTime,10515,Variable NonExclusiveDeviationAlarmType_LowLowState_TrueState,10516,Variable NonExclusiveDeviationAlarmType_LowLowState_FalseState,10517,Variable NonExclusiveDeviationAlarmType_HighHighLimit,10518,Variable NonExclusiveDeviationAlarmType_HighLimit,10519,Variable NonExclusiveDeviationAlarmType_LowLimit,10520,Variable NonExclusiveDeviationAlarmType_LowLowLimit,10521,Variable NonExclusiveDeviationAlarmType_SetpointNode,10522,Variable DiscreteAlarmType,10523,ObjectType DiscreteAlarmType_EventId,10524,Variable DiscreteAlarmType_EventType,10525,Variable DiscreteAlarmType_SourceNode,10526,Variable DiscreteAlarmType_SourceName,10527,Variable DiscreteAlarmType_Time,10528,Variable DiscreteAlarmType_ReceiveTime,10529,Variable DiscreteAlarmType_LocalTime,10530,Variable DiscreteAlarmType_Message,10531,Variable DiscreteAlarmType_Severity,10532,Variable DiscreteAlarmType_ConditionName,10533,Variable DiscreteAlarmType_BranchId,10534,Variable DiscreteAlarmType_Retain,10535,Variable DiscreteAlarmType_EnabledState,10536,Variable DiscreteAlarmType_EnabledState_Id,10537,Variable DiscreteAlarmType_EnabledState_Name,10538,Variable DiscreteAlarmType_EnabledState_Number,10539,Variable DiscreteAlarmType_EnabledState_EffectiveDisplayName,10540,Variable DiscreteAlarmType_EnabledState_TransitionTime,10541,Variable DiscreteAlarmType_EnabledState_EffectiveTransitionTime,10542,Variable DiscreteAlarmType_EnabledState_TrueState,10543,Variable DiscreteAlarmType_EnabledState_FalseState,10544,Variable DiscreteAlarmType_Quality,10545,Variable DiscreteAlarmType_Quality_SourceTimestamp,10546,Variable DiscreteAlarmType_LastSeverity,10547,Variable DiscreteAlarmType_LastSeverity_SourceTimestamp,10548,Variable DiscreteAlarmType_Comment,10549,Variable DiscreteAlarmType_Comment_SourceTimestamp,10550,Variable DiscreteAlarmType_ClientUserId,10551,Variable DiscreteAlarmType_Enable,10552,Method DiscreteAlarmType_Disable,10553,Method DiscreteAlarmType_AddComment,10554,Method DiscreteAlarmType_AddComment_InputArguments,10555,Variable DiscreteAlarmType_ConditionRefresh,10556,Method DiscreteAlarmType_ConditionRefresh_InputArguments,10557,Variable DiscreteAlarmType_AckedState,10558,Variable DiscreteAlarmType_AckedState_Id,10559,Variable DiscreteAlarmType_AckedState_Name,10560,Variable DiscreteAlarmType_AckedState_Number,10561,Variable DiscreteAlarmType_AckedState_EffectiveDisplayName,10562,Variable DiscreteAlarmType_AckedState_TransitionTime,10563,Variable DiscreteAlarmType_AckedState_EffectiveTransitionTime,10564,Variable DiscreteAlarmType_AckedState_TrueState,10565,Variable DiscreteAlarmType_AckedState_FalseState,10566,Variable DiscreteAlarmType_ConfirmedState,10567,Variable DiscreteAlarmType_ConfirmedState_Id,10568,Variable DiscreteAlarmType_ConfirmedState_Name,10569,Variable DiscreteAlarmType_ConfirmedState_Number,10570,Variable DiscreteAlarmType_ConfirmedState_EffectiveDisplayName,10571,Variable DiscreteAlarmType_ConfirmedState_TransitionTime,10572,Variable DiscreteAlarmType_ConfirmedState_EffectiveTransitionTime,10573,Variable DiscreteAlarmType_ConfirmedState_TrueState,10574,Variable DiscreteAlarmType_ConfirmedState_FalseState,10575,Variable DiscreteAlarmType_Acknowledge,10576,Method DiscreteAlarmType_Acknowledge_InputArguments,10577,Variable DiscreteAlarmType_Confirm,10578,Method DiscreteAlarmType_Confirm_InputArguments,10579,Variable DiscreteAlarmType_ActiveState,10580,Variable DiscreteAlarmType_ActiveState_Id,10581,Variable DiscreteAlarmType_ActiveState_Name,10582,Variable DiscreteAlarmType_ActiveState_Number,10583,Variable DiscreteAlarmType_ActiveState_EffectiveDisplayName,10584,Variable DiscreteAlarmType_ActiveState_TransitionTime,10585,Variable DiscreteAlarmType_ActiveState_EffectiveTransitionTime,10586,Variable DiscreteAlarmType_ActiveState_TrueState,10587,Variable DiscreteAlarmType_ActiveState_FalseState,10588,Variable DiscreteAlarmType_SuppressedState,10589,Variable DiscreteAlarmType_SuppressedState_Id,10590,Variable DiscreteAlarmType_SuppressedState_Name,10591,Variable DiscreteAlarmType_SuppressedState_Number,10592,Variable DiscreteAlarmType_SuppressedState_EffectiveDisplayName,10593,Variable DiscreteAlarmType_SuppressedState_TransitionTime,10594,Variable DiscreteAlarmType_SuppressedState_EffectiveTransitionTime,10595,Variable DiscreteAlarmType_SuppressedState_TrueState,10596,Variable DiscreteAlarmType_SuppressedState_FalseState,10597,Variable DiscreteAlarmType_ShelvingState,10598,Object DiscreteAlarmType_ShelvingState_CurrentState,10599,Variable DiscreteAlarmType_ShelvingState_CurrentState_Id,10600,Variable DiscreteAlarmType_ShelvingState_CurrentState_Name,10601,Variable DiscreteAlarmType_ShelvingState_CurrentState_Number,10602,Variable DiscreteAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,10603,Variable DiscreteAlarmType_ShelvingState_LastTransition,10604,Variable DiscreteAlarmType_ShelvingState_LastTransition_Id,10605,Variable DiscreteAlarmType_ShelvingState_LastTransition_Name,10606,Variable DiscreteAlarmType_ShelvingState_LastTransition_Number,10607,Variable DiscreteAlarmType_ShelvingState_LastTransition_TransitionTime,10608,Variable DiscreteAlarmType_ShelvingState_UnshelveTime,10609,Variable DiscreteAlarmType_ShelvingState_Unshelve,10631,Method DiscreteAlarmType_ShelvingState_OneShotShelve,10632,Method DiscreteAlarmType_ShelvingState_TimedShelve,10633,Method DiscreteAlarmType_ShelvingState_TimedShelve_InputArguments,10634,Variable DiscreteAlarmType_SuppressedOrShelved,10635,Variable DiscreteAlarmType_MaxTimeShelved,10636,Variable OffNormalAlarmType,10637,ObjectType OffNormalAlarmType_EventId,10638,Variable OffNormalAlarmType_EventType,10639,Variable OffNormalAlarmType_SourceNode,10640,Variable OffNormalAlarmType_SourceName,10641,Variable OffNormalAlarmType_Time,10642,Variable OffNormalAlarmType_ReceiveTime,10643,Variable OffNormalAlarmType_LocalTime,10644,Variable OffNormalAlarmType_Message,10645,Variable OffNormalAlarmType_Severity,10646,Variable OffNormalAlarmType_ConditionName,10647,Variable OffNormalAlarmType_BranchId,10648,Variable OffNormalAlarmType_Retain,10649,Variable OffNormalAlarmType_EnabledState,10650,Variable OffNormalAlarmType_EnabledState_Id,10651,Variable OffNormalAlarmType_EnabledState_Name,10652,Variable OffNormalAlarmType_EnabledState_Number,10653,Variable OffNormalAlarmType_EnabledState_EffectiveDisplayName,10654,Variable OffNormalAlarmType_EnabledState_TransitionTime,10655,Variable OffNormalAlarmType_EnabledState_EffectiveTransitionTime,10656,Variable OffNormalAlarmType_EnabledState_TrueState,10657,Variable OffNormalAlarmType_EnabledState_FalseState,10658,Variable OffNormalAlarmType_Quality,10659,Variable OffNormalAlarmType_Quality_SourceTimestamp,10660,Variable OffNormalAlarmType_LastSeverity,10661,Variable OffNormalAlarmType_LastSeverity_SourceTimestamp,10662,Variable OffNormalAlarmType_Comment,10663,Variable OffNormalAlarmType_Comment_SourceTimestamp,10664,Variable OffNormalAlarmType_ClientUserId,10665,Variable OffNormalAlarmType_Enable,10666,Method OffNormalAlarmType_Disable,10667,Method OffNormalAlarmType_AddComment,10668,Method OffNormalAlarmType_AddComment_InputArguments,10669,Variable OffNormalAlarmType_ConditionRefresh,10670,Method OffNormalAlarmType_ConditionRefresh_InputArguments,10671,Variable OffNormalAlarmType_AckedState,10672,Variable OffNormalAlarmType_AckedState_Id,10673,Variable OffNormalAlarmType_AckedState_Name,10674,Variable OffNormalAlarmType_AckedState_Number,10675,Variable OffNormalAlarmType_AckedState_EffectiveDisplayName,10676,Variable OffNormalAlarmType_AckedState_TransitionTime,10677,Variable OffNormalAlarmType_AckedState_EffectiveTransitionTime,10678,Variable OffNormalAlarmType_AckedState_TrueState,10679,Variable OffNormalAlarmType_AckedState_FalseState,10680,Variable OffNormalAlarmType_ConfirmedState,10681,Variable OffNormalAlarmType_ConfirmedState_Id,10682,Variable OffNormalAlarmType_ConfirmedState_Name,10683,Variable OffNormalAlarmType_ConfirmedState_Number,10684,Variable OffNormalAlarmType_ConfirmedState_EffectiveDisplayName,10685,Variable OffNormalAlarmType_ConfirmedState_TransitionTime,10686,Variable OffNormalAlarmType_ConfirmedState_EffectiveTransitionTime,10687,Variable OffNormalAlarmType_ConfirmedState_TrueState,10688,Variable OffNormalAlarmType_ConfirmedState_FalseState,10689,Variable OffNormalAlarmType_Acknowledge,10690,Method OffNormalAlarmType_Acknowledge_InputArguments,10691,Variable OffNormalAlarmType_Confirm,10692,Method OffNormalAlarmType_Confirm_InputArguments,10693,Variable OffNormalAlarmType_ActiveState,10694,Variable OffNormalAlarmType_ActiveState_Id,10695,Variable OffNormalAlarmType_ActiveState_Name,10696,Variable OffNormalAlarmType_ActiveState_Number,10697,Variable OffNormalAlarmType_ActiveState_EffectiveDisplayName,10698,Variable OffNormalAlarmType_ActiveState_TransitionTime,10699,Variable OffNormalAlarmType_ActiveState_EffectiveTransitionTime,10700,Variable OffNormalAlarmType_ActiveState_TrueState,10701,Variable OffNormalAlarmType_ActiveState_FalseState,10702,Variable OffNormalAlarmType_SuppressedState,10703,Variable OffNormalAlarmType_SuppressedState_Id,10704,Variable OffNormalAlarmType_SuppressedState_Name,10705,Variable OffNormalAlarmType_SuppressedState_Number,10706,Variable OffNormalAlarmType_SuppressedState_EffectiveDisplayName,10707,Variable OffNormalAlarmType_SuppressedState_TransitionTime,10708,Variable OffNormalAlarmType_SuppressedState_EffectiveTransitionTime,10709,Variable OffNormalAlarmType_SuppressedState_TrueState,10710,Variable OffNormalAlarmType_SuppressedState_FalseState,10711,Variable OffNormalAlarmType_ShelvingState,10712,Object OffNormalAlarmType_ShelvingState_CurrentState,10713,Variable OffNormalAlarmType_ShelvingState_CurrentState_Id,10714,Variable OffNormalAlarmType_ShelvingState_CurrentState_Name,10715,Variable OffNormalAlarmType_ShelvingState_CurrentState_Number,10716,Variable OffNormalAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,10717,Variable OffNormalAlarmType_ShelvingState_LastTransition,10718,Variable OffNormalAlarmType_ShelvingState_LastTransition_Id,10719,Variable OffNormalAlarmType_ShelvingState_LastTransition_Name,10720,Variable OffNormalAlarmType_ShelvingState_LastTransition_Number,10721,Variable OffNormalAlarmType_ShelvingState_LastTransition_TransitionTime,10722,Variable OffNormalAlarmType_ShelvingState_UnshelveTime,10723,Variable OffNormalAlarmType_ShelvingState_Unshelve,10745,Method OffNormalAlarmType_ShelvingState_OneShotShelve,10746,Method OffNormalAlarmType_ShelvingState_TimedShelve,10747,Method OffNormalAlarmType_ShelvingState_TimedShelve_InputArguments,10748,Variable OffNormalAlarmType_SuppressedOrShelved,10749,Variable OffNormalAlarmType_MaxTimeShelved,10750,Variable TripAlarmType,10751,ObjectType TripAlarmType_EventId,10752,Variable TripAlarmType_EventType,10753,Variable TripAlarmType_SourceNode,10754,Variable TripAlarmType_SourceName,10755,Variable TripAlarmType_Time,10756,Variable TripAlarmType_ReceiveTime,10757,Variable TripAlarmType_LocalTime,10758,Variable TripAlarmType_Message,10759,Variable TripAlarmType_Severity,10760,Variable TripAlarmType_ConditionName,10761,Variable TripAlarmType_BranchId,10762,Variable TripAlarmType_Retain,10763,Variable TripAlarmType_EnabledState,10764,Variable TripAlarmType_EnabledState_Id,10765,Variable TripAlarmType_EnabledState_Name,10766,Variable TripAlarmType_EnabledState_Number,10767,Variable TripAlarmType_EnabledState_EffectiveDisplayName,10768,Variable TripAlarmType_EnabledState_TransitionTime,10769,Variable TripAlarmType_EnabledState_EffectiveTransitionTime,10770,Variable TripAlarmType_EnabledState_TrueState,10771,Variable TripAlarmType_EnabledState_FalseState,10772,Variable TripAlarmType_Quality,10773,Variable TripAlarmType_Quality_SourceTimestamp,10774,Variable TripAlarmType_LastSeverity,10775,Variable TripAlarmType_LastSeverity_SourceTimestamp,10776,Variable TripAlarmType_Comment,10777,Variable TripAlarmType_Comment_SourceTimestamp,10778,Variable TripAlarmType_ClientUserId,10779,Variable TripAlarmType_Enable,10780,Method TripAlarmType_Disable,10781,Method TripAlarmType_AddComment,10782,Method TripAlarmType_AddComment_InputArguments,10783,Variable TripAlarmType_ConditionRefresh,10784,Method TripAlarmType_ConditionRefresh_InputArguments,10785,Variable TripAlarmType_AckedState,10786,Variable TripAlarmType_AckedState_Id,10787,Variable TripAlarmType_AckedState_Name,10788,Variable TripAlarmType_AckedState_Number,10789,Variable TripAlarmType_AckedState_EffectiveDisplayName,10790,Variable TripAlarmType_AckedState_TransitionTime,10791,Variable TripAlarmType_AckedState_EffectiveTransitionTime,10792,Variable TripAlarmType_AckedState_TrueState,10793,Variable TripAlarmType_AckedState_FalseState,10794,Variable TripAlarmType_ConfirmedState,10795,Variable TripAlarmType_ConfirmedState_Id,10796,Variable TripAlarmType_ConfirmedState_Name,10797,Variable TripAlarmType_ConfirmedState_Number,10798,Variable TripAlarmType_ConfirmedState_EffectiveDisplayName,10799,Variable TripAlarmType_ConfirmedState_TransitionTime,10800,Variable TripAlarmType_ConfirmedState_EffectiveTransitionTime,10801,Variable TripAlarmType_ConfirmedState_TrueState,10802,Variable TripAlarmType_ConfirmedState_FalseState,10803,Variable TripAlarmType_Acknowledge,10804,Method TripAlarmType_Acknowledge_InputArguments,10805,Variable TripAlarmType_Confirm,10806,Method TripAlarmType_Confirm_InputArguments,10807,Variable TripAlarmType_ActiveState,10808,Variable TripAlarmType_ActiveState_Id,10809,Variable TripAlarmType_ActiveState_Name,10810,Variable TripAlarmType_ActiveState_Number,10811,Variable TripAlarmType_ActiveState_EffectiveDisplayName,10812,Variable TripAlarmType_ActiveState_TransitionTime,10813,Variable TripAlarmType_ActiveState_EffectiveTransitionTime,10814,Variable TripAlarmType_ActiveState_TrueState,10815,Variable TripAlarmType_ActiveState_FalseState,10816,Variable TripAlarmType_SuppressedState,10817,Variable TripAlarmType_SuppressedState_Id,10818,Variable TripAlarmType_SuppressedState_Name,10819,Variable TripAlarmType_SuppressedState_Number,10820,Variable TripAlarmType_SuppressedState_EffectiveDisplayName,10821,Variable TripAlarmType_SuppressedState_TransitionTime,10822,Variable TripAlarmType_SuppressedState_EffectiveTransitionTime,10823,Variable TripAlarmType_SuppressedState_TrueState,10824,Variable TripAlarmType_SuppressedState_FalseState,10825,Variable TripAlarmType_ShelvingState,10826,Object TripAlarmType_ShelvingState_CurrentState,10827,Variable TripAlarmType_ShelvingState_CurrentState_Id,10828,Variable TripAlarmType_ShelvingState_CurrentState_Name,10829,Variable TripAlarmType_ShelvingState_CurrentState_Number,10830,Variable TripAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,10831,Variable TripAlarmType_ShelvingState_LastTransition,10832,Variable TripAlarmType_ShelvingState_LastTransition_Id,10833,Variable TripAlarmType_ShelvingState_LastTransition_Name,10834,Variable TripAlarmType_ShelvingState_LastTransition_Number,10835,Variable TripAlarmType_ShelvingState_LastTransition_TransitionTime,10836,Variable TripAlarmType_ShelvingState_UnshelveTime,10837,Variable TripAlarmType_ShelvingState_Unshelve,10859,Method TripAlarmType_ShelvingState_OneShotShelve,10860,Method TripAlarmType_ShelvingState_TimedShelve,10861,Method TripAlarmType_ShelvingState_TimedShelve_InputArguments,10862,Variable TripAlarmType_SuppressedOrShelved,10863,Variable TripAlarmType_MaxTimeShelved,10864,Variable AuditConditionShelvingEventType,11093,ObjectType AuditConditionShelvingEventType_EventId,11094,Variable AuditConditionShelvingEventType_EventType,11095,Variable AuditConditionShelvingEventType_SourceNode,11096,Variable AuditConditionShelvingEventType_SourceName,11097,Variable AuditConditionShelvingEventType_Time,11098,Variable AuditConditionShelvingEventType_ReceiveTime,11099,Variable AuditConditionShelvingEventType_LocalTime,11100,Variable AuditConditionShelvingEventType_Message,11101,Variable AuditConditionShelvingEventType_Severity,11102,Variable AuditConditionShelvingEventType_ActionTimeStamp,11103,Variable AuditConditionShelvingEventType_Status,11104,Variable AuditConditionShelvingEventType_ServerId,11105,Variable AuditConditionShelvingEventType_ClientAuditEntryId,11106,Variable AuditConditionShelvingEventType_ClientUserId,11107,Variable AuditConditionShelvingEventType_MethodId,11108,Variable AuditConditionShelvingEventType_InputArguments,11109,Variable TwoStateVariableType_TrueState,11110,Variable TwoStateVariableType_FalseState,11111,Variable ConditionType_ConditionClassId,11112,Variable ConditionType_ConditionClassName,11113,Variable DialogConditionType_ConditionClassId,11114,Variable DialogConditionType_ConditionClassName,11115,Variable AcknowledgeableConditionType_ConditionClassId,11116,Variable AcknowledgeableConditionType_ConditionClassName,11117,Variable AlarmConditionType_ConditionClassId,11118,Variable AlarmConditionType_ConditionClassName,11119,Variable AlarmConditionType_InputNode,11120,Variable LimitAlarmType_ConditionClassId,11121,Variable LimitAlarmType_ConditionClassName,11122,Variable LimitAlarmType_InputNode,11123,Variable LimitAlarmType_HighHighLimit,11124,Variable LimitAlarmType_HighLimit,11125,Variable LimitAlarmType_LowLimit,11126,Variable LimitAlarmType_LowLowLimit,11127,Variable ExclusiveLimitAlarmType_ConditionClassId,11128,Variable ExclusiveLimitAlarmType_ConditionClassName,11129,Variable ExclusiveLimitAlarmType_InputNode,11130,Variable ExclusiveLevelAlarmType_ConditionClassId,11131,Variable ExclusiveLevelAlarmType_ConditionClassName,11132,Variable ExclusiveLevelAlarmType_InputNode,11133,Variable ExclusiveRateOfChangeAlarmType_ConditionClassId,11134,Variable ExclusiveRateOfChangeAlarmType_ConditionClassName,11135,Variable ExclusiveRateOfChangeAlarmType_InputNode,11136,Variable ExclusiveDeviationAlarmType_ConditionClassId,11137,Variable ExclusiveDeviationAlarmType_ConditionClassName,11138,Variable ExclusiveDeviationAlarmType_InputNode,11139,Variable NonExclusiveLimitAlarmType_ConditionClassId,11140,Variable NonExclusiveLimitAlarmType_ConditionClassName,11141,Variable NonExclusiveLimitAlarmType_InputNode,11142,Variable NonExclusiveLevelAlarmType_ConditionClassId,11143,Variable NonExclusiveLevelAlarmType_ConditionClassName,11144,Variable NonExclusiveLevelAlarmType_InputNode,11145,Variable NonExclusiveRateOfChangeAlarmType_ConditionClassId,11146,Variable NonExclusiveRateOfChangeAlarmType_ConditionClassName,11147,Variable NonExclusiveRateOfChangeAlarmType_InputNode,11148,Variable NonExclusiveDeviationAlarmType_ConditionClassId,11149,Variable NonExclusiveDeviationAlarmType_ConditionClassName,11150,Variable NonExclusiveDeviationAlarmType_InputNode,11151,Variable DiscreteAlarmType_ConditionClassId,11152,Variable DiscreteAlarmType_ConditionClassName,11153,Variable DiscreteAlarmType_InputNode,11154,Variable OffNormalAlarmType_ConditionClassId,11155,Variable OffNormalAlarmType_ConditionClassName,11156,Variable OffNormalAlarmType_InputNode,11157,Variable OffNormalAlarmType_NormalState,11158,Variable TripAlarmType_ConditionClassId,11159,Variable TripAlarmType_ConditionClassName,11160,Variable TripAlarmType_InputNode,11161,Variable TripAlarmType_NormalState,11162,Variable BaseConditionClassType,11163,ObjectType ProcessConditionClassType,11164,ObjectType MaintenanceConditionClassType,11165,ObjectType SystemConditionClassType,11166,ObjectType HistoricalDataConfigurationType_AggregateConfiguration_TreatUncertainAsBad,11168,Variable HistoricalDataConfigurationType_AggregateConfiguration_PercentDataBad,11169,Variable HistoricalDataConfigurationType_AggregateConfiguration_PercentDataGood,11170,Variable HistoricalDataConfigurationType_AggregateConfiguration_UseSlopedExtrapolation,11171,Variable HistoryServerCapabilitiesType_AggregateFunctions,11172,Object AggregateConfigurationType,11187,ObjectType AggregateConfigurationType_TreatUncertainAsBad,11188,Variable AggregateConfigurationType_PercentDataBad,11189,Variable AggregateConfigurationType_PercentDataGood,11190,Variable AggregateConfigurationType_UseSlopedExtrapolation,11191,Variable HistoryServerCapabilities,11192,Object HistoryServerCapabilities_AccessHistoryDataCapability,11193,Variable HistoryServerCapabilities_InsertDataCapability,11196,Variable HistoryServerCapabilities_ReplaceDataCapability,11197,Variable HistoryServerCapabilities_UpdateDataCapability,11198,Variable HistoryServerCapabilities_DeleteRawCapability,11199,Variable HistoryServerCapabilities_DeleteAtTimeCapability,11200,Variable HistoryServerCapabilities_AggregateFunctions,11201,Object HAConfiguration,11202,Object HAConfiguration_AggregateConfiguration,11203,Object HAConfiguration_AggregateConfiguration_TreatUncertainAsBad,11204,Variable HAConfiguration_AggregateConfiguration_PercentDataBad,11205,Variable HAConfiguration_AggregateConfiguration_PercentDataGood,11206,Variable HAConfiguration_AggregateConfiguration_UseSlopedExtrapolation,11207,Variable HAConfiguration_Stepped,11208,Variable HAConfiguration_Definition,11209,Variable HAConfiguration_MaxTimeInterval,11210,Variable HAConfiguration_MinTimeInterval,11211,Variable HAConfiguration_ExceptionDeviation,11212,Variable HAConfiguration_ExceptionDeviationFormat,11213,Variable Annotations,11214,Variable HistoricalEventFilter,11215,Variable ModificationInfo,11216,DataType HistoryModifiedData,11217,DataType ModificationInfo_Encoding_DefaultXml,11218,Object HistoryModifiedData_Encoding_DefaultXml,11219,Object ModificationInfo_Encoding_DefaultBinary,11226,Object HistoryModifiedData_Encoding_DefaultBinary,11227,Object HistoryUpdateType,11234,DataType MultiStateValueDiscreteType,11238,VariableType MultiStateValueDiscreteType_Definition,11239,Variable MultiStateValueDiscreteType_ValuePrecision,11240,Variable MultiStateValueDiscreteType_EnumValues,11241,Variable HistoryServerCapabilities_AccessHistoryEventsCapability,11242,Variable HistoryServerCapabilitiesType_MaxReturnDataValues,11268,Variable HistoryServerCapabilitiesType_MaxReturnEventValues,11269,Variable HistoryServerCapabilitiesType_InsertAnnotationCapability,11270,Variable HistoryServerCapabilities_MaxReturnDataValues,11273,Variable HistoryServerCapabilities_MaxReturnEventValues,11274,Variable HistoryServerCapabilities_InsertAnnotationCapability,11275,Variable HistoryServerCapabilitiesType_InsertEventCapability,11278,Variable HistoryServerCapabilitiesType_ReplaceEventCapability,11279,Variable HistoryServerCapabilitiesType_UpdateEventCapability,11280,Variable HistoryServerCapabilities_InsertEventCapability,11281,Variable HistoryServerCapabilities_ReplaceEventCapability,11282,Variable HistoryServerCapabilities_UpdateEventCapability,11283,Variable AggregateFunction_TimeAverage2,11285,Object AggregateFunction_Minimum2,11286,Object AggregateFunction_Maximum2,11287,Object AggregateFunction_Range2,11288,Object AggregateFunction_WorstQuality2,11292,Object PerformUpdateType,11293,DataType UpdateStructureDataDetails,11295,DataType UpdateStructureDataDetails_Encoding_DefaultXml,11296,Object UpdateStructureDataDetails_Encoding_DefaultBinary,11300,Object AggregateFunction_Total2,11304,Object AggregateFunction_MinimumActualTime2,11305,Object AggregateFunction_MaximumActualTime2,11306,Object AggregateFunction_DurationInStateZero,11307,Object AggregateFunction_DurationInStateNonZero,11308,Object Server_ServerRedundancy_CurrentServerId,11312,Variable Server_ServerRedundancy_RedundantServerArray,11313,Variable Server_ServerRedundancy_ServerUriArray,11314,Variable ShelvedStateMachineType_UnshelvedToTimedShelved_TransitionNumber,11322,Variable ShelvedStateMachineType_UnshelvedToOneShotShelved_TransitionNumber,11323,Variable ShelvedStateMachineType_TimedShelvedToUnshelved_TransitionNumber,11324,Variable ShelvedStateMachineType_TimedShelvedToOneShotShelved_TransitionNumber,11325,Variable ShelvedStateMachineType_OneShotShelvedToUnshelved_TransitionNumber,11326,Variable ShelvedStateMachineType_OneShotShelvedToTimedShelved_TransitionNumber,11327,Variable ExclusiveLimitStateMachineType_LowLowToLow_TransitionNumber,11340,Variable ExclusiveLimitStateMachineType_LowToLowLow_TransitionNumber,11341,Variable ExclusiveLimitStateMachineType_HighHighToHigh_TransitionNumber,11342,Variable ExclusiveLimitStateMachineType_HighToHighHigh_TransitionNumber,11343,Variable AggregateFunction_StandardDeviationSample,11426,Object AggregateFunction_StandardDeviationPopulation,11427,Object AggregateFunction_VarianceSample,11428,Object AggregateFunction_VariancePopulation,11429,Object EnumStrings,11432,Variable ValueAsText,11433,Variable ProgressEventType,11436,ObjectType ProgressEventType_EventId,11437,Variable ProgressEventType_EventType,11438,Variable ProgressEventType_SourceNode,11439,Variable ProgressEventType_SourceName,11440,Variable ProgressEventType_Time,11441,Variable ProgressEventType_ReceiveTime,11442,Variable ProgressEventType_LocalTime,11443,Variable ProgressEventType_Message,11444,Variable ProgressEventType_Severity,11445,Variable SystemStatusChangeEventType,11446,ObjectType SystemStatusChangeEventType_EventId,11447,Variable SystemStatusChangeEventType_EventType,11448,Variable SystemStatusChangeEventType_SourceNode,11449,Variable SystemStatusChangeEventType_SourceName,11450,Variable SystemStatusChangeEventType_Time,11451,Variable SystemStatusChangeEventType_ReceiveTime,11452,Variable SystemStatusChangeEventType_LocalTime,11453,Variable SystemStatusChangeEventType_Message,11454,Variable SystemStatusChangeEventType_Severity,11455,Variable TransitionVariableType_EffectiveTransitionTime,11456,Variable FiniteTransitionVariableType_EffectiveTransitionTime,11457,Variable StateMachineType_LastTransition_EffectiveTransitionTime,11458,Variable FiniteStateMachineType_LastTransition_EffectiveTransitionTime,11459,Variable TransitionEventType_Transition_EffectiveTransitionTime,11460,Variable MultiStateValueDiscreteType_ValueAsText,11461,Variable ProgramTransitionEventType_Transition_EffectiveTransitionTime,11462,Variable ProgramTransitionAuditEventType_Transition_EffectiveTransitionTime,11463,Variable ProgramStateMachineType_LastTransition_EffectiveTransitionTime,11464,Variable ShelvedStateMachineType_LastTransition_EffectiveTransitionTime,11465,Variable AlarmConditionType_ShelvingState_LastTransition_EffectiveTransitionTime,11466,Variable LimitAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11467,Variable ExclusiveLimitStateMachineType_LastTransition_EffectiveTransitionTime,11468,Variable ExclusiveLimitAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11469,Variable ExclusiveLimitAlarmType_LimitState_LastTransition_EffectiveTransitionTime,11470,Variable ExclusiveLevelAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11471,Variable ExclusiveLevelAlarmType_LimitState_LastTransition_EffectiveTransitionTime,11472,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11473,Variable ExclusiveRateOfChangeAlarmType_LimitState_LastTransition_EffectiveTransitionTime,11474,Variable ExclusiveDeviationAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11475,Variable ExclusiveDeviationAlarmType_LimitState_LastTransition_EffectiveTransitionTime,11476,Variable NonExclusiveLimitAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11477,Variable NonExclusiveLevelAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11478,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11479,Variable NonExclusiveDeviationAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11480,Variable DiscreteAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11481,Variable OffNormalAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11482,Variable TripAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11483,Variable AuditActivateSessionEventType_SecureChannelId,11485,Variable OptionSetType,11487,VariableType OptionSetType_OptionSetValues,11488,Variable ServerType_GetMonitoredItems,11489,Method ServerType_GetMonitoredItems_InputArguments,11490,Variable ServerType_GetMonitoredItems_OutputArguments,11491,Variable Server_GetMonitoredItems,11492,Method Server_GetMonitoredItems_InputArguments,11493,Variable Server_GetMonitoredItems_OutputArguments,11494,Variable GetMonitoredItemsMethodType,11495,Method GetMonitoredItemsMethodType_InputArguments,11496,Variable GetMonitoredItemsMethodType_OutputArguments,11497,Variable MaxStringLength,11498,Variable HistoricalDataConfigurationType_StartOfArchive,11499,Variable HistoricalDataConfigurationType_StartOfOnlineArchive,11500,Variable HistoryServerCapabilitiesType_DeleteEventCapability,11501,Variable HistoryServerCapabilities_DeleteEventCapability,11502,Variable HAConfiguration_StartOfArchive,11503,Variable HAConfiguration_StartOfOnlineArchive,11504,Variable AggregateFunction_StartBound,11505,Object AggregateFunction_EndBound,11506,Object AggregateFunction_DeltaBounds,11507,Object ModellingRule_OptionalPlaceholder,11508,Object ModellingRule_OptionalPlaceholder_NamingRule,11509,Variable ModellingRule_MandatoryPlaceholder,11510,Object ModellingRule_MandatoryPlaceholder_NamingRule,11511,Variable MaxArrayLength,11512,Variable EngineeringUnits,11513,Variable ServerType_ServerCapabilities_MaxArrayLength,11514,Variable ServerType_ServerCapabilities_MaxStringLength,11515,Variable ServerType_ServerCapabilities_OperationLimits,11516,Object ServerType_ServerCapabilities_OperationLimits_MaxNodesPerRead,11517,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerWrite,11519,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerMethodCall,11521,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerBrowse,11522,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerRegisterNodes,11523,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerTranslateBrowsePathsToNodeIds,11524,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerNodeManagement,11525,Variable ServerType_ServerCapabilities_OperationLimits_MaxMonitoredItemsPerCall,11526,Variable ServerType_Namespaces,11527,Object ServerCapabilitiesType_MaxArrayLength,11549,Variable ServerCapabilitiesType_MaxStringLength,11550,Variable ServerCapabilitiesType_OperationLimits,11551,Object ServerCapabilitiesType_OperationLimits_MaxNodesPerRead,11552,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerWrite,11554,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerMethodCall,11556,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerBrowse,11557,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerRegisterNodes,11558,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerTranslateBrowsePathsToNodeIds,11559,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerNodeManagement,11560,Variable ServerCapabilitiesType_OperationLimits_MaxMonitoredItemsPerCall,11561,Variable ServerCapabilitiesType_VendorCapability_Placeholder,11562,Variable OperationLimitsType,11564,ObjectType OperationLimitsType_MaxNodesPerRead,11565,Variable OperationLimitsType_MaxNodesPerWrite,11567,Variable OperationLimitsType_MaxNodesPerMethodCall,11569,Variable OperationLimitsType_MaxNodesPerBrowse,11570,Variable OperationLimitsType_MaxNodesPerRegisterNodes,11571,Variable OperationLimitsType_MaxNodesPerTranslateBrowsePathsToNodeIds,11572,Variable OperationLimitsType_MaxNodesPerNodeManagement,11573,Variable OperationLimitsType_MaxMonitoredItemsPerCall,11574,Variable FileType,11575,ObjectType FileType_Size,11576,Variable FileType_OpenCount,11579,Variable FileType_Open,11580,Method FileType_Open_InputArguments,11581,Variable FileType_Open_OutputArguments,11582,Variable FileType_Close,11583,Method FileType_Close_InputArguments,11584,Variable FileType_Read,11585,Method FileType_Read_InputArguments,11586,Variable FileType_Read_OutputArguments,11587,Variable FileType_Write,11588,Method FileType_Write_InputArguments,11589,Variable FileType_GetPosition,11590,Method FileType_GetPosition_InputArguments,11591,Variable FileType_GetPosition_OutputArguments,11592,Variable FileType_SetPosition,11593,Method FileType_SetPosition_InputArguments,11594,Variable AddressSpaceFileType,11595,ObjectType AddressSpaceFileType_Size,11596,Variable AddressSpaceFileType_OpenCount,11599,Variable AddressSpaceFileType_Open,11600,Method AddressSpaceFileType_Open_InputArguments,11601,Variable AddressSpaceFileType_Open_OutputArguments,11602,Variable AddressSpaceFileType_Close,11603,Method AddressSpaceFileType_Close_InputArguments,11604,Variable AddressSpaceFileType_Read,11605,Method AddressSpaceFileType_Read_InputArguments,11606,Variable AddressSpaceFileType_Read_OutputArguments,11607,Variable AddressSpaceFileType_Write,11608,Method AddressSpaceFileType_Write_InputArguments,11609,Variable AddressSpaceFileType_GetPosition,11610,Method AddressSpaceFileType_GetPosition_InputArguments,11611,Variable AddressSpaceFileType_GetPosition_OutputArguments,11612,Variable AddressSpaceFileType_SetPosition,11613,Method AddressSpaceFileType_SetPosition_InputArguments,11614,Variable AddressSpaceFileType_ExportNamespace,11615,Method NamespaceMetadataType,11616,ObjectType NamespaceMetadataType_NamespaceUri,11617,Variable NamespaceMetadataType_NamespaceVersion,11618,Variable NamespaceMetadataType_NamespacePublicationDate,11619,Variable NamespaceMetadataType_IsNamespaceSubset,11620,Variable NamespaceMetadataType_StaticNodeIdTypes,11621,Variable NamespaceMetadataType_StaticNumericNodeIdRange,11622,Variable NamespaceMetadataType_StaticStringNodeIdPattern,11623,Variable NamespaceMetadataType_NamespaceFile,11624,Object NamespaceMetadataType_NamespaceFile_Size,11625,Variable NamespaceMetadataType_NamespaceFile_OpenCount,11628,Variable NamespaceMetadataType_NamespaceFile_Open,11629,Method NamespaceMetadataType_NamespaceFile_Open_InputArguments,11630,Variable NamespaceMetadataType_NamespaceFile_Open_OutputArguments,11631,Variable NamespaceMetadataType_NamespaceFile_Close,11632,Method NamespaceMetadataType_NamespaceFile_Close_InputArguments,11633,Variable NamespaceMetadataType_NamespaceFile_Read,11634,Method NamespaceMetadataType_NamespaceFile_Read_InputArguments,11635,Variable NamespaceMetadataType_NamespaceFile_Read_OutputArguments,11636,Variable NamespaceMetadataType_NamespaceFile_Write,11637,Method NamespaceMetadataType_NamespaceFile_Write_InputArguments,11638,Variable NamespaceMetadataType_NamespaceFile_GetPosition,11639,Method NamespaceMetadataType_NamespaceFile_GetPosition_InputArguments,11640,Variable NamespaceMetadataType_NamespaceFile_GetPosition_OutputArguments,11641,Variable NamespaceMetadataType_NamespaceFile_SetPosition,11642,Method NamespaceMetadataType_NamespaceFile_SetPosition_InputArguments,11643,Variable NamespaceMetadataType_NamespaceFile_ExportNamespace,11644,Method NamespacesType,11645,ObjectType NamespacesType_NamespaceIdentifier_Placeholder,11646,Object NamespacesType_NamespaceIdentifier_Placeholder_NamespaceUri,11647,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceVersion,11648,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespacePublicationDate,11649,Variable NamespacesType_NamespaceIdentifier_Placeholder_IsNamespaceSubset,11650,Variable NamespacesType_NamespaceIdentifier_Placeholder_StaticNodeIdTypes,11651,Variable NamespacesType_NamespaceIdentifier_Placeholder_StaticNumericNodeIdRange,11652,Variable NamespacesType_NamespaceIdentifier_Placeholder_StaticStringNodeIdPattern,11653,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile,11654,Object NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Size,11655,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_OpenCount,11658,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Open,11659,Method NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Open_InputArguments,11660,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Open_OutputArguments,11661,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Close,11662,Method NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Close_InputArguments,11663,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Read,11664,Method NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Read_InputArguments,11665,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Read_OutputArguments,11666,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Write,11667,Method NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Write_InputArguments,11668,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_GetPosition,11669,Method NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_GetPosition_InputArguments,11670,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_GetPosition_OutputArguments,11671,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_SetPosition,11672,Method NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_SetPosition_InputArguments,11673,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_ExportNamespace,11674,Method SystemStatusChangeEventType_SystemState,11696,Variable SamplingIntervalDiagnosticsType_SampledMonitoredItemsCount,11697,Variable SamplingIntervalDiagnosticsType_MaxSampledMonitoredItemsCount,11698,Variable SamplingIntervalDiagnosticsType_DisabledMonitoredItemsSamplingCount,11699,Variable OptionSetType_BitMask,11701,Variable Server_ServerCapabilities_MaxArrayLength,11702,Variable Server_ServerCapabilities_MaxStringLength,11703,Variable Server_ServerCapabilities_OperationLimits,11704,Object Server_ServerCapabilities_OperationLimits_MaxNodesPerRead,11705,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerWrite,11707,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerMethodCall,11709,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerBrowse,11710,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerRegisterNodes,11711,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerTranslateBrowsePathsToNodeIds,11712,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerNodeManagement,11713,Variable Server_ServerCapabilities_OperationLimits_MaxMonitoredItemsPerCall,11714,Variable Server_Namespaces,11715,Object BitFieldMaskDataType,11737,DataType OpenMethodType,11738,Method OpenMethodType_InputArguments,11739,Variable OpenMethodType_OutputArguments,11740,Variable CloseMethodType,11741,Method CloseMethodType_InputArguments,11742,Variable ReadMethodType,11743,Method ReadMethodType_InputArguments,11744,Variable ReadMethodType_OutputArguments,11745,Variable WriteMethodType,11746,Method WriteMethodType_InputArguments,11747,Variable GetPositionMethodType,11748,Method GetPositionMethodType_InputArguments,11749,Variable GetPositionMethodType_OutputArguments,11750,Variable SetPositionMethodType,11751,Method SetPositionMethodType_InputArguments,11752,Variable SystemOffNormalAlarmType,11753,ObjectType SystemOffNormalAlarmType_EventId,11754,Variable SystemOffNormalAlarmType_EventType,11755,Variable SystemOffNormalAlarmType_SourceNode,11756,Variable SystemOffNormalAlarmType_SourceName,11757,Variable SystemOffNormalAlarmType_Time,11758,Variable SystemOffNormalAlarmType_ReceiveTime,11759,Variable SystemOffNormalAlarmType_LocalTime,11760,Variable SystemOffNormalAlarmType_Message,11761,Variable SystemOffNormalAlarmType_Severity,11762,Variable SystemOffNormalAlarmType_ConditionClassId,11763,Variable SystemOffNormalAlarmType_ConditionClassName,11764,Variable SystemOffNormalAlarmType_ConditionName,11765,Variable SystemOffNormalAlarmType_BranchId,11766,Variable SystemOffNormalAlarmType_Retain,11767,Variable SystemOffNormalAlarmType_EnabledState,11768,Variable SystemOffNormalAlarmType_EnabledState_Id,11769,Variable SystemOffNormalAlarmType_EnabledState_Name,11770,Variable SystemOffNormalAlarmType_EnabledState_Number,11771,Variable SystemOffNormalAlarmType_EnabledState_EffectiveDisplayName,11772,Variable SystemOffNormalAlarmType_EnabledState_TransitionTime,11773,Variable SystemOffNormalAlarmType_EnabledState_EffectiveTransitionTime,11774,Variable SystemOffNormalAlarmType_EnabledState_TrueState,11775,Variable SystemOffNormalAlarmType_EnabledState_FalseState,11776,Variable SystemOffNormalAlarmType_Quality,11777,Variable SystemOffNormalAlarmType_Quality_SourceTimestamp,11778,Variable SystemOffNormalAlarmType_LastSeverity,11779,Variable SystemOffNormalAlarmType_LastSeverity_SourceTimestamp,11780,Variable SystemOffNormalAlarmType_Comment,11781,Variable SystemOffNormalAlarmType_Comment_SourceTimestamp,11782,Variable SystemOffNormalAlarmType_ClientUserId,11783,Variable SystemOffNormalAlarmType_Disable,11784,Method SystemOffNormalAlarmType_Enable,11785,Method SystemOffNormalAlarmType_AddComment,11786,Method SystemOffNormalAlarmType_AddComment_InputArguments,11787,Variable SystemOffNormalAlarmType_ConditionRefresh,11788,Method SystemOffNormalAlarmType_ConditionRefresh_InputArguments,11789,Variable SystemOffNormalAlarmType_AckedState,11790,Variable SystemOffNormalAlarmType_AckedState_Id,11791,Variable SystemOffNormalAlarmType_AckedState_Name,11792,Variable SystemOffNormalAlarmType_AckedState_Number,11793,Variable SystemOffNormalAlarmType_AckedState_EffectiveDisplayName,11794,Variable SystemOffNormalAlarmType_AckedState_TransitionTime,11795,Variable SystemOffNormalAlarmType_AckedState_EffectiveTransitionTime,11796,Variable SystemOffNormalAlarmType_AckedState_TrueState,11797,Variable SystemOffNormalAlarmType_AckedState_FalseState,11798,Variable SystemOffNormalAlarmType_ConfirmedState,11799,Variable SystemOffNormalAlarmType_ConfirmedState_Id,11800,Variable SystemOffNormalAlarmType_ConfirmedState_Name,11801,Variable SystemOffNormalAlarmType_ConfirmedState_Number,11802,Variable SystemOffNormalAlarmType_ConfirmedState_EffectiveDisplayName,11803,Variable SystemOffNormalAlarmType_ConfirmedState_TransitionTime,11804,Variable SystemOffNormalAlarmType_ConfirmedState_EffectiveTransitionTime,11805,Variable SystemOffNormalAlarmType_ConfirmedState_TrueState,11806,Variable SystemOffNormalAlarmType_ConfirmedState_FalseState,11807,Variable SystemOffNormalAlarmType_Acknowledge,11808,Method SystemOffNormalAlarmType_Acknowledge_InputArguments,11809,Variable SystemOffNormalAlarmType_Confirm,11810,Method SystemOffNormalAlarmType_Confirm_InputArguments,11811,Variable SystemOffNormalAlarmType_ActiveState,11812,Variable SystemOffNormalAlarmType_ActiveState_Id,11813,Variable SystemOffNormalAlarmType_ActiveState_Name,11814,Variable SystemOffNormalAlarmType_ActiveState_Number,11815,Variable SystemOffNormalAlarmType_ActiveState_EffectiveDisplayName,11816,Variable SystemOffNormalAlarmType_ActiveState_TransitionTime,11817,Variable SystemOffNormalAlarmType_ActiveState_EffectiveTransitionTime,11818,Variable SystemOffNormalAlarmType_ActiveState_TrueState,11819,Variable SystemOffNormalAlarmType_ActiveState_FalseState,11820,Variable SystemOffNormalAlarmType_InputNode,11821,Variable SystemOffNormalAlarmType_SuppressedState,11822,Variable SystemOffNormalAlarmType_SuppressedState_Id,11823,Variable SystemOffNormalAlarmType_SuppressedState_Name,11824,Variable SystemOffNormalAlarmType_SuppressedState_Number,11825,Variable SystemOffNormalAlarmType_SuppressedState_EffectiveDisplayName,11826,Variable SystemOffNormalAlarmType_SuppressedState_TransitionTime,11827,Variable SystemOffNormalAlarmType_SuppressedState_EffectiveTransitionTime,11828,Variable SystemOffNormalAlarmType_SuppressedState_TrueState,11829,Variable SystemOffNormalAlarmType_SuppressedState_FalseState,11830,Variable SystemOffNormalAlarmType_ShelvingState,11831,Object SystemOffNormalAlarmType_ShelvingState_CurrentState,11832,Variable SystemOffNormalAlarmType_ShelvingState_CurrentState_Id,11833,Variable SystemOffNormalAlarmType_ShelvingState_CurrentState_Name,11834,Variable SystemOffNormalAlarmType_ShelvingState_CurrentState_Number,11835,Variable SystemOffNormalAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,11836,Variable SystemOffNormalAlarmType_ShelvingState_LastTransition,11837,Variable SystemOffNormalAlarmType_ShelvingState_LastTransition_Id,11838,Variable SystemOffNormalAlarmType_ShelvingState_LastTransition_Name,11839,Variable SystemOffNormalAlarmType_ShelvingState_LastTransition_Number,11840,Variable SystemOffNormalAlarmType_ShelvingState_LastTransition_TransitionTime,11841,Variable SystemOffNormalAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,11842,Variable SystemOffNormalAlarmType_ShelvingState_UnshelveTime,11843,Variable SystemOffNormalAlarmType_ShelvingState_Unshelve,11844,Method SystemOffNormalAlarmType_ShelvingState_OneShotShelve,11845,Method SystemOffNormalAlarmType_ShelvingState_TimedShelve,11846,Method SystemOffNormalAlarmType_ShelvingState_TimedShelve_InputArguments,11847,Variable SystemOffNormalAlarmType_SuppressedOrShelved,11848,Variable SystemOffNormalAlarmType_MaxTimeShelved,11849,Variable SystemOffNormalAlarmType_NormalState,11850,Variable AuditConditionCommentEventType_Comment,11851,Variable AuditConditionRespondEventType_SelectedResponse,11852,Variable AuditConditionAcknowledgeEventType_Comment,11853,Variable AuditConditionConfirmEventType_Comment,11854,Variable AuditConditionShelvingEventType_ShelvingTime,11855,Variable AuditProgramTransitionEventType,11856,ObjectType AuditProgramTransitionEventType_EventId,11857,Variable AuditProgramTransitionEventType_EventType,11858,Variable AuditProgramTransitionEventType_SourceNode,11859,Variable AuditProgramTransitionEventType_SourceName,11860,Variable AuditProgramTransitionEventType_Time,11861,Variable AuditProgramTransitionEventType_ReceiveTime,11862,Variable AuditProgramTransitionEventType_LocalTime,11863,Variable AuditProgramTransitionEventType_Message,11864,Variable AuditProgramTransitionEventType_Severity,11865,Variable AuditProgramTransitionEventType_ActionTimeStamp,11866,Variable AuditProgramTransitionEventType_Status,11867,Variable AuditProgramTransitionEventType_ServerId,11868,Variable AuditProgramTransitionEventType_ClientAuditEntryId,11869,Variable AuditProgramTransitionEventType_ClientUserId,11870,Variable AuditProgramTransitionEventType_MethodId,11871,Variable AuditProgramTransitionEventType_InputArguments,11872,Variable AuditProgramTransitionEventType_OldStateId,11873,Variable AuditProgramTransitionEventType_NewStateId,11874,Variable AuditProgramTransitionEventType_TransitionNumber,11875,Variable HistoricalDataConfigurationType_AggregateFunctions,11876,Object HAConfiguration_AggregateFunctions,11877,Object NodeClass_EnumValues,11878,Variable InstanceNode,11879,DataType TypeNode,11880,DataType NodeAttributesMask_EnumValues,11881,Variable BrowseResultMask_EnumValues,11883,Variable HistoryUpdateType_EnumValues,11884,Variable PerformUpdateType_EnumValues,11885,Variable InstanceNode_Encoding_DefaultXml,11887,Object TypeNode_Encoding_DefaultXml,11888,Object InstanceNode_Encoding_DefaultBinary,11889,Object TypeNode_Encoding_DefaultBinary,11890,Object SessionDiagnosticsObjectType_SessionDiagnostics_UnauthorizedRequestCount,11891,Variable SessionDiagnosticsVariableType_UnauthorizedRequestCount,11892,Variable OpenFileMode,11939,DataType OpenFileMode_EnumValues,11940,Variable ModelChangeStructureVerbMask,11941,DataType ModelChangeStructureVerbMask_EnumValues,11942,Variable EndpointUrlListDataType,11943,DataType NetworkGroupDataType,11944,DataType NonTransparentNetworkRedundancyType,11945,ObjectType NonTransparentNetworkRedundancyType_RedundancySupport,11946,Variable NonTransparentNetworkRedundancyType_ServerUriArray,11947,Variable NonTransparentNetworkRedundancyType_ServerNetworkGroups,11948,Variable EndpointUrlListDataType_Encoding_DefaultXml,11949,Object NetworkGroupDataType_Encoding_DefaultXml,11950,Object OpcUa_XmlSchema_EndpointUrlListDataType,11951,Variable OpcUa_XmlSchema_EndpointUrlListDataType_DataTypeVersion,11952,Variable OpcUa_XmlSchema_EndpointUrlListDataType_DictionaryFragment,11953,Variable OpcUa_XmlSchema_NetworkGroupDataType,11954,Variable OpcUa_XmlSchema_NetworkGroupDataType_DataTypeVersion,11955,Variable OpcUa_XmlSchema_NetworkGroupDataType_DictionaryFragment,11956,Variable EndpointUrlListDataType_Encoding_DefaultBinary,11957,Object NetworkGroupDataType_Encoding_DefaultBinary,11958,Object OpcUa_BinarySchema_EndpointUrlListDataType,11959,Variable OpcUa_BinarySchema_EndpointUrlListDataType_DataTypeVersion,11960,Variable OpcUa_BinarySchema_EndpointUrlListDataType_DictionaryFragment,11961,Variable OpcUa_BinarySchema_NetworkGroupDataType,11962,Variable OpcUa_BinarySchema_NetworkGroupDataType_DataTypeVersion,11963,Variable OpcUa_BinarySchema_NetworkGroupDataType_DictionaryFragment,11964,Variable ArrayItemType,12021,VariableType ArrayItemType_Definition,12022,Variable ArrayItemType_ValuePrecision,12023,Variable ArrayItemType_InstrumentRange,12024,Variable ArrayItemType_EURange,12025,Variable ArrayItemType_EngineeringUnits,12026,Variable ArrayItemType_Title,12027,Variable ArrayItemType_AxisScaleType,12028,Variable YArrayItemType,12029,VariableType YArrayItemType_Definition,12030,Variable YArrayItemType_ValuePrecision,12031,Variable YArrayItemType_InstrumentRange,12032,Variable YArrayItemType_EURange,12033,Variable YArrayItemType_EngineeringUnits,12034,Variable YArrayItemType_Title,12035,Variable YArrayItemType_AxisScaleType,12036,Variable YArrayItemType_XAxisDefinition,12037,Variable XYArrayItemType,12038,VariableType XYArrayItemType_Definition,12039,Variable XYArrayItemType_ValuePrecision,12040,Variable XYArrayItemType_InstrumentRange,12041,Variable XYArrayItemType_EURange,12042,Variable XYArrayItemType_EngineeringUnits,12043,Variable XYArrayItemType_Title,12044,Variable XYArrayItemType_AxisScaleType,12045,Variable XYArrayItemType_XAxisDefinition,12046,Variable ImageItemType,12047,VariableType ImageItemType_Definition,12048,Variable ImageItemType_ValuePrecision,12049,Variable ImageItemType_InstrumentRange,12050,Variable ImageItemType_EURange,12051,Variable ImageItemType_EngineeringUnits,12052,Variable ImageItemType_Title,12053,Variable ImageItemType_AxisScaleType,12054,Variable ImageItemType_XAxisDefinition,12055,Variable ImageItemType_YAxisDefinition,12056,Variable CubeItemType,12057,VariableType CubeItemType_Definition,12058,Variable CubeItemType_ValuePrecision,12059,Variable CubeItemType_InstrumentRange,12060,Variable CubeItemType_EURange,12061,Variable CubeItemType_EngineeringUnits,12062,Variable CubeItemType_Title,12063,Variable CubeItemType_AxisScaleType,12064,Variable CubeItemType_XAxisDefinition,12065,Variable CubeItemType_YAxisDefinition,12066,Variable CubeItemType_ZAxisDefinition,12067,Variable NDimensionArrayItemType,12068,VariableType NDimensionArrayItemType_Definition,12069,Variable NDimensionArrayItemType_ValuePrecision,12070,Variable NDimensionArrayItemType_InstrumentRange,12071,Variable NDimensionArrayItemType_EURange,12072,Variable NDimensionArrayItemType_EngineeringUnits,12073,Variable NDimensionArrayItemType_Title,12074,Variable NDimensionArrayItemType_AxisScaleType,12075,Variable NDimensionArrayItemType_AxisDefinition,12076,Variable AxisScaleEnumeration,12077,DataType AxisScaleEnumeration_EnumStrings,12078,Variable AxisInformation,12079,DataType XVType,12080,DataType AxisInformation_Encoding_DefaultXml,12081,Object XVType_Encoding_DefaultXml,12082,Object OpcUa_XmlSchema_AxisInformation,12083,Variable OpcUa_XmlSchema_AxisInformation_DataTypeVersion,12084,Variable OpcUa_XmlSchema_AxisInformation_DictionaryFragment,12085,Variable OpcUa_XmlSchema_XVType,12086,Variable OpcUa_XmlSchema_XVType_DataTypeVersion,12087,Variable OpcUa_XmlSchema_XVType_DictionaryFragment,12088,Variable AxisInformation_Encoding_DefaultBinary,12089,Object XVType_Encoding_DefaultBinary,12090,Object OpcUa_BinarySchema_AxisInformation,12091,Variable OpcUa_BinarySchema_AxisInformation_DataTypeVersion,12092,Variable OpcUa_BinarySchema_AxisInformation_DictionaryFragment,12093,Variable OpcUa_BinarySchema_XVType,12094,Variable OpcUa_BinarySchema_XVType_DataTypeVersion,12095,Variable OpcUa_BinarySchema_XVType_DictionaryFragment,12096,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder,12097,Object SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics,12098,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_SessionId,12099,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_SessionName,12100,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ClientDescription,12101,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ServerUri,12102,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_EndpointUrl,12103,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_LocaleIds,12104,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ActualSessionTimeout,12105,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_MaxResponseMessageSize,12106,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ClientConnectionTime,12107,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ClientLastContactTime,12108,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_CurrentSubscriptionsCount,12109,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_CurrentMonitoredItemsCount,12110,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_CurrentPublishRequestsInQueue,12111,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_TotalRequestCount,12112,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_UnauthorizedRequestCount,12113,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ReadCount,12114,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_HistoryReadCount,12115,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_WriteCount,12116,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_HistoryUpdateCount,12117,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_CallCount,12118,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_CreateMonitoredItemsCount,12119,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ModifyMonitoredItemsCount,12120,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_SetMonitoringModeCount,12121,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_SetTriggeringCount,12122,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_DeleteMonitoredItemsCount,12123,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_CreateSubscriptionCount,12124,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_ModifySubscriptionCount,12125,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_SetPublishingModeCount,12126,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_PublishCount,12127,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_RepublishCount,12128,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_TransferSubscriptionsCount,12129,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_DeleteSubscriptionsCount,12130,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_AddNodesCount,12131,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_AddReferencesCount,12132,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_DeleteNodesCount,12133,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_DeleteReferencesCount,12134,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_BrowseCount,12135,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_BrowseNextCount,12136,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_TranslateBrowsePathsToNodeIdsCount,12137,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_QueryFirstCount,12138,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_QueryNextCount,12139,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_RegisterNodesCount,12140,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionDiagnostics_UnregisterNodesCount,12141,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics,12142,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_SessionId,12143,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_ClientUserIdOfSession,12144,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_ClientUserIdHistory,12145,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_AuthenticationMechanism,12146,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_Encoding,12147,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_TransportProtocol,12148,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_SecurityMode,12149,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_SecurityPolicyUri,12150,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SessionSecurityDiagnostics_ClientCertificate,12151,Variable SessionsDiagnosticsSummaryType_ClientName_Placeholder_SubscriptionDiagnosticsArray,12152,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadData,12153,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadEvents,12154,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateData,12155,Variable ServerType_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateEvents,12156,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerHistoryReadData,12157,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerHistoryReadEvents,12158,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerHistoryUpdateData,12159,Variable ServerCapabilitiesType_OperationLimits_MaxNodesPerHistoryUpdateEvents,12160,Variable OperationLimitsType_MaxNodesPerHistoryReadData,12161,Variable OperationLimitsType_MaxNodesPerHistoryReadEvents,12162,Variable OperationLimitsType_MaxNodesPerHistoryUpdateData,12163,Variable OperationLimitsType_MaxNodesPerHistoryUpdateEvents,12164,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadData,12165,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryReadEvents,12166,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateData,12167,Variable Server_ServerCapabilities_OperationLimits_MaxNodesPerHistoryUpdateEvents,12168,Variable NamingRuleType_EnumValues,12169,Variable ViewVersion,12170,Variable ComplexNumberType,12171,DataType DoubleComplexNumberType,12172,DataType ComplexNumberType_Encoding_DefaultXml,12173,Object DoubleComplexNumberType_Encoding_DefaultXml,12174,Object OpcUa_XmlSchema_ComplexNumberType,12175,Variable OpcUa_XmlSchema_ComplexNumberType_DataTypeVersion,12176,Variable OpcUa_XmlSchema_ComplexNumberType_DictionaryFragment,12177,Variable OpcUa_XmlSchema_DoubleComplexNumberType,12178,Variable OpcUa_XmlSchema_DoubleComplexNumberType_DataTypeVersion,12179,Variable OpcUa_XmlSchema_DoubleComplexNumberType_DictionaryFragment,12180,Variable ComplexNumberType_Encoding_DefaultBinary,12181,Object DoubleComplexNumberType_Encoding_DefaultBinary,12182,Object OpcUa_BinarySchema_ComplexNumberType,12183,Variable OpcUa_BinarySchema_ComplexNumberType_DataTypeVersion,12184,Variable OpcUa_BinarySchema_ComplexNumberType_DictionaryFragment,12185,Variable OpcUa_BinarySchema_DoubleComplexNumberType,12186,Variable OpcUa_BinarySchema_DoubleComplexNumberType_DataTypeVersion,12187,Variable OpcUa_BinarySchema_DoubleComplexNumberType_DictionaryFragment,12188,Variable ServerOnNetwork,12189,DataType FindServersOnNetworkRequest,12190,DataType FindServersOnNetworkResponse,12191,DataType RegisterServer2Request,12193,DataType RegisterServer2Response,12194,DataType ServerOnNetwork_Encoding_DefaultXml,12195,Object FindServersOnNetworkRequest_Encoding_DefaultXml,12196,Object FindServersOnNetworkResponse_Encoding_DefaultXml,12197,Object RegisterServer2Request_Encoding_DefaultXml,12199,Object RegisterServer2Response_Encoding_DefaultXml,12200,Object OpcUa_XmlSchema_ServerOnNetwork,12201,Variable OpcUa_XmlSchema_ServerOnNetwork_DataTypeVersion,12202,Variable OpcUa_XmlSchema_ServerOnNetwork_DictionaryFragment,12203,Variable ServerOnNetwork_Encoding_DefaultBinary,12207,Object FindServersOnNetworkRequest_Encoding_DefaultBinary,12208,Object FindServersOnNetworkResponse_Encoding_DefaultBinary,12209,Object RegisterServer2Request_Encoding_DefaultBinary,12211,Object RegisterServer2Response_Encoding_DefaultBinary,12212,Object OpcUa_BinarySchema_ServerOnNetwork,12213,Variable OpcUa_BinarySchema_ServerOnNetwork_DataTypeVersion,12214,Variable OpcUa_BinarySchema_ServerOnNetwork_DictionaryFragment,12215,Variable ProgressEventType_Context,12502,Variable ProgressEventType_Progress,12503,Variable OpenWithMasksMethodType,12513,Method OpenWithMasksMethodType_InputArguments,12514,Variable OpenWithMasksMethodType_OutputArguments,12515,Variable CloseAndUpdateMethodType,12516,Method CloseAndUpdateMethodType_OutputArguments,12517,Variable AddCertificateMethodType,12518,Method AddCertificateMethodType_InputArguments,12519,Variable RemoveCertificateMethodType,12520,Method RemoveCertificateMethodType_InputArguments,12521,Variable TrustListType,12522,ObjectType TrustListType_Size,12523,Variable TrustListType_OpenCount,12526,Variable TrustListType_Open,12527,Method TrustListType_Open_InputArguments,12528,Variable TrustListType_Open_OutputArguments,12529,Variable TrustListType_Close,12530,Method TrustListType_Close_InputArguments,12531,Variable TrustListType_Read,12532,Method TrustListType_Read_InputArguments,12533,Variable TrustListType_Read_OutputArguments,12534,Variable TrustListType_Write,12535,Method TrustListType_Write_InputArguments,12536,Variable TrustListType_GetPosition,12537,Method TrustListType_GetPosition_InputArguments,12538,Variable TrustListType_GetPosition_OutputArguments,12539,Variable TrustListType_SetPosition,12540,Method TrustListType_SetPosition_InputArguments,12541,Variable TrustListType_LastUpdateTime,12542,Variable TrustListType_OpenWithMasks,12543,Method TrustListType_OpenWithMasks_InputArguments,12544,Variable TrustListType_OpenWithMasks_OutputArguments,12545,Variable TrustListType_CloseAndUpdate,12546,Method TrustListType_CloseAndUpdate_OutputArguments,12547,Variable TrustListType_AddCertificate,12548,Method TrustListType_AddCertificate_InputArguments,12549,Variable TrustListType_RemoveCertificate,12550,Method TrustListType_RemoveCertificate_InputArguments,12551,Variable TrustListMasks,12552,DataType TrustListMasks_EnumValues,12553,Variable TrustListDataType,12554,DataType CertificateGroupType,12555,ObjectType CertificateType,12556,ObjectType ApplicationCertificateType,12557,ObjectType HttpsCertificateType,12558,ObjectType RsaMinApplicationCertificateType,12559,ObjectType RsaSha256ApplicationCertificateType,12560,ObjectType TrustListUpdatedAuditEventType,12561,ObjectType TrustListUpdatedAuditEventType_EventId,12562,Variable TrustListUpdatedAuditEventType_EventType,12563,Variable TrustListUpdatedAuditEventType_SourceNode,12564,Variable TrustListUpdatedAuditEventType_SourceName,12565,Variable TrustListUpdatedAuditEventType_Time,12566,Variable TrustListUpdatedAuditEventType_ReceiveTime,12567,Variable TrustListUpdatedAuditEventType_LocalTime,12568,Variable TrustListUpdatedAuditEventType_Message,12569,Variable TrustListUpdatedAuditEventType_Severity,12570,Variable TrustListUpdatedAuditEventType_ActionTimeStamp,12571,Variable TrustListUpdatedAuditEventType_Status,12572,Variable TrustListUpdatedAuditEventType_ServerId,12573,Variable TrustListUpdatedAuditEventType_ClientAuditEntryId,12574,Variable TrustListUpdatedAuditEventType_ClientUserId,12575,Variable TrustListUpdatedAuditEventType_MethodId,12576,Variable TrustListUpdatedAuditEventType_InputArguments,12577,Variable UpdateCertificateMethodType,12578,Method UpdateCertificateMethodType_InputArguments,12579,Variable UpdateCertificateMethodType_OutputArguments,12580,Variable ServerConfigurationType,12581,ObjectType ServerConfigurationType_SupportedPrivateKeyFormats,12583,Variable ServerConfigurationType_MaxTrustListSize,12584,Variable ServerConfigurationType_MulticastDnsEnabled,12585,Variable ServerConfigurationType_UpdateCertificate,12616,Method ServerConfigurationType_UpdateCertificate_InputArguments,12617,Variable ServerConfigurationType_UpdateCertificate_OutputArguments,12618,Variable CertificateUpdatedAuditEventType,12620,ObjectType CertificateUpdatedAuditEventType_EventId,12621,Variable CertificateUpdatedAuditEventType_EventType,12622,Variable CertificateUpdatedAuditEventType_SourceNode,12623,Variable CertificateUpdatedAuditEventType_SourceName,12624,Variable CertificateUpdatedAuditEventType_Time,12625,Variable CertificateUpdatedAuditEventType_ReceiveTime,12626,Variable CertificateUpdatedAuditEventType_LocalTime,12627,Variable CertificateUpdatedAuditEventType_Message,12628,Variable CertificateUpdatedAuditEventType_Severity,12629,Variable CertificateUpdatedAuditEventType_ActionTimeStamp,12630,Variable CertificateUpdatedAuditEventType_Status,12631,Variable CertificateUpdatedAuditEventType_ServerId,12632,Variable CertificateUpdatedAuditEventType_ClientAuditEntryId,12633,Variable CertificateUpdatedAuditEventType_ClientUserId,12634,Variable CertificateUpdatedAuditEventType_MethodId,12635,Variable CertificateUpdatedAuditEventType_InputArguments,12636,Variable ServerConfiguration,12637,Object ServerConfiguration_SupportedPrivateKeyFormats,12639,Variable ServerConfiguration_MaxTrustListSize,12640,Variable ServerConfiguration_MulticastDnsEnabled,12641,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList,12642,Object ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Size,12643,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_OpenCount,12646,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Open,12647,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Open_InputArguments,12648,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Open_OutputArguments,12649,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Close,12650,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Close_InputArguments,12651,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Read,12652,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Read_InputArguments,12653,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Read_OutputArguments,12654,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Write,12655,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Write_InputArguments,12656,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_GetPosition,12657,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_GetPosition_InputArguments,12658,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_GetPosition_OutputArguments,12659,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_SetPosition,12660,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_SetPosition_InputArguments,12661,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_LastUpdateTime,12662,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_OpenWithMasks,12663,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_OpenWithMasks_InputArguments,12664,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_OpenWithMasks_OutputArguments,12665,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_CloseAndUpdate,12666,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_CloseAndUpdate_OutputArguments,12667,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_AddCertificate,12668,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_AddCertificate_InputArguments,12669,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_RemoveCertificate,12670,Method ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_RemoveCertificate_InputArguments,12671,Variable TrustListDataType_Encoding_DefaultXml,12676,Object OpcUa_XmlSchema_TrustListDataType,12677,Variable OpcUa_XmlSchema_TrustListDataType_DataTypeVersion,12678,Variable OpcUa_XmlSchema_TrustListDataType_DictionaryFragment,12679,Variable TrustListDataType_Encoding_DefaultBinary,12680,Object OpcUa_BinarySchema_TrustListDataType,12681,Variable OpcUa_BinarySchema_TrustListDataType_DataTypeVersion,12682,Variable OpcUa_BinarySchema_TrustListDataType_DictionaryFragment,12683,Variable FileType_Writable,12686,Variable FileType_UserWritable,12687,Variable AddressSpaceFileType_Writable,12688,Variable AddressSpaceFileType_UserWritable,12689,Variable NamespaceMetadataType_NamespaceFile_Writable,12690,Variable NamespaceMetadataType_NamespaceFile_UserWritable,12691,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_Writable,12692,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_UserWritable,12693,Variable TrustListType_Writable,12698,Variable TrustListType_UserWritable,12699,Variable CloseAndUpdateMethodType_InputArguments,12704,Variable TrustListType_CloseAndUpdate_InputArguments,12705,Variable ServerConfigurationType_ServerCapabilities,12708,Variable ServerConfiguration_ServerCapabilities,12710,Variable OpcUa_XmlSchema_RelativePathElement,12712,Variable OpcUa_XmlSchema_RelativePathElement_DataTypeVersion,12713,Variable OpcUa_XmlSchema_RelativePathElement_DictionaryFragment,12714,Variable OpcUa_XmlSchema_RelativePath,12715,Variable OpcUa_XmlSchema_RelativePath_DataTypeVersion,12716,Variable OpcUa_XmlSchema_RelativePath_DictionaryFragment,12717,Variable OpcUa_BinarySchema_RelativePathElement,12718,Variable OpcUa_BinarySchema_RelativePathElement_DataTypeVersion,12719,Variable OpcUa_BinarySchema_RelativePathElement_DictionaryFragment,12720,Variable OpcUa_BinarySchema_RelativePath,12721,Variable OpcUa_BinarySchema_RelativePath_DataTypeVersion,12722,Variable OpcUa_BinarySchema_RelativePath_DictionaryFragment,12723,Variable ServerConfigurationType_CreateSigningRequest,12731,Method ServerConfigurationType_CreateSigningRequest_InputArguments,12732,Variable ServerConfigurationType_CreateSigningRequest_OutputArguments,12733,Variable ServerConfigurationType_ApplyChanges,12734,Method ServerConfiguration_CreateSigningRequest,12737,Method ServerConfiguration_CreateSigningRequest_InputArguments,12738,Variable ServerConfiguration_CreateSigningRequest_OutputArguments,12739,Variable ServerConfiguration_ApplyChanges,12740,Method CreateSigningRequestMethodType,12741,Method CreateSigningRequestMethodType_InputArguments,12742,Variable CreateSigningRequestMethodType_OutputArguments,12743,Variable OptionSetValues,12745,Variable ServerType_SetSubscriptionDurable,12746,Method ServerType_SetSubscriptionDurable_InputArguments,12747,Variable ServerType_SetSubscriptionDurable_OutputArguments,12748,Variable Server_SetSubscriptionDurable,12749,Method Server_SetSubscriptionDurable_InputArguments,12750,Variable Server_SetSubscriptionDurable_OutputArguments,12751,Variable SetSubscriptionDurableMethodType,12752,Method SetSubscriptionDurableMethodType_InputArguments,12753,Variable SetSubscriptionDurableMethodType_OutputArguments,12754,Variable OptionSet,12755,DataType Union,12756,DataType OptionSet_Encoding_DefaultXml,12757,Object Union_Encoding_DefaultXml,12758,Object OpcUa_XmlSchema_OptionSet,12759,Variable OpcUa_XmlSchema_OptionSet_DataTypeVersion,12760,Variable OpcUa_XmlSchema_OptionSet_DictionaryFragment,12761,Variable OpcUa_XmlSchema_Union,12762,Variable OpcUa_XmlSchema_Union_DataTypeVersion,12763,Variable OpcUa_XmlSchema_Union_DictionaryFragment,12764,Variable OptionSet_Encoding_DefaultBinary,12765,Object Union_Encoding_DefaultBinary,12766,Object OpcUa_BinarySchema_OptionSet,12767,Variable OpcUa_BinarySchema_OptionSet_DataTypeVersion,12768,Variable OpcUa_BinarySchema_OptionSet_DictionaryFragment,12769,Variable OpcUa_BinarySchema_Union,12770,Variable OpcUa_BinarySchema_Union_DataTypeVersion,12771,Variable OpcUa_BinarySchema_Union_DictionaryFragment,12772,Variable GetRejectedListMethodType,12773,Method GetRejectedListMethodType_OutputArguments,12774,Variable ServerConfigurationType_GetRejectedList,12775,Method ServerConfigurationType_GetRejectedList_OutputArguments,12776,Variable ServerConfiguration_GetRejectedList,12777,Method ServerConfiguration_GetRejectedList_OutputArguments,12778,Variable SamplingIntervalDiagnosticsArrayType_SamplingIntervalDiagnostics,12779,Variable SamplingIntervalDiagnosticsArrayType_SamplingIntervalDiagnostics_SamplingInterval,12780,Variable SamplingIntervalDiagnosticsArrayType_SamplingIntervalDiagnostics_SampledMonitoredItemsCount,12781,Variable SamplingIntervalDiagnosticsArrayType_SamplingIntervalDiagnostics_MaxSampledMonitoredItemsCount,12782,Variable SamplingIntervalDiagnosticsArrayType_SamplingIntervalDiagnostics_DisabledMonitoredItemsSamplingCount,12783,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics,12784,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_SessionId,12785,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_SubscriptionId,12786,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_Priority,12787,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_PublishingInterval,12788,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_MaxKeepAliveCount,12789,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_MaxLifetimeCount,12790,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_MaxNotificationsPerPublish,12791,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_PublishingEnabled,12792,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_ModifyCount,12793,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_EnableCount,12794,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_DisableCount,12795,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_RepublishRequestCount,12796,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_RepublishMessageRequestCount,12797,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_RepublishMessageCount,12798,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_TransferRequestCount,12799,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_TransferredToAltClientCount,12800,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_TransferredToSameClientCount,12801,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_PublishRequestCount,12802,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_DataChangeNotificationsCount,12803,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_EventNotificationsCount,12804,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_NotificationsCount,12805,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_LatePublishRequestCount,12806,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_CurrentKeepAliveCount,12807,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_CurrentLifetimeCount,12808,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_UnacknowledgedMessageCount,12809,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_DiscardedMessageCount,12810,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_MonitoredItemCount,12811,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_DisabledMonitoredItemCount,12812,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_MonitoringQueueOverflowCount,12813,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_NextSequenceNumber,12814,Variable SubscriptionDiagnosticsArrayType_SubscriptionDiagnostics_EventQueueOverflowCount,12815,Variable SessionDiagnosticsArrayType_SessionDiagnostics,12816,Variable SessionDiagnosticsArrayType_SessionDiagnostics_SessionId,12817,Variable SessionDiagnosticsArrayType_SessionDiagnostics_SessionName,12818,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ClientDescription,12819,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ServerUri,12820,Variable SessionDiagnosticsArrayType_SessionDiagnostics_EndpointUrl,12821,Variable SessionDiagnosticsArrayType_SessionDiagnostics_LocaleIds,12822,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ActualSessionTimeout,12823,Variable SessionDiagnosticsArrayType_SessionDiagnostics_MaxResponseMessageSize,12824,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ClientConnectionTime,12825,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ClientLastContactTime,12826,Variable SessionDiagnosticsArrayType_SessionDiagnostics_CurrentSubscriptionsCount,12827,Variable SessionDiagnosticsArrayType_SessionDiagnostics_CurrentMonitoredItemsCount,12828,Variable SessionDiagnosticsArrayType_SessionDiagnostics_CurrentPublishRequestsInQueue,12829,Variable SessionDiagnosticsArrayType_SessionDiagnostics_TotalRequestCount,12830,Variable SessionDiagnosticsArrayType_SessionDiagnostics_UnauthorizedRequestCount,12831,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ReadCount,12832,Variable SessionDiagnosticsArrayType_SessionDiagnostics_HistoryReadCount,12833,Variable SessionDiagnosticsArrayType_SessionDiagnostics_WriteCount,12834,Variable SessionDiagnosticsArrayType_SessionDiagnostics_HistoryUpdateCount,12835,Variable SessionDiagnosticsArrayType_SessionDiagnostics_CallCount,12836,Variable SessionDiagnosticsArrayType_SessionDiagnostics_CreateMonitoredItemsCount,12837,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ModifyMonitoredItemsCount,12838,Variable SessionDiagnosticsArrayType_SessionDiagnostics_SetMonitoringModeCount,12839,Variable SessionDiagnosticsArrayType_SessionDiagnostics_SetTriggeringCount,12840,Variable SessionDiagnosticsArrayType_SessionDiagnostics_DeleteMonitoredItemsCount,12841,Variable SessionDiagnosticsArrayType_SessionDiagnostics_CreateSubscriptionCount,12842,Variable SessionDiagnosticsArrayType_SessionDiagnostics_ModifySubscriptionCount,12843,Variable SessionDiagnosticsArrayType_SessionDiagnostics_SetPublishingModeCount,12844,Variable SessionDiagnosticsArrayType_SessionDiagnostics_PublishCount,12845,Variable SessionDiagnosticsArrayType_SessionDiagnostics_RepublishCount,12846,Variable SessionDiagnosticsArrayType_SessionDiagnostics_TransferSubscriptionsCount,12847,Variable SessionDiagnosticsArrayType_SessionDiagnostics_DeleteSubscriptionsCount,12848,Variable SessionDiagnosticsArrayType_SessionDiagnostics_AddNodesCount,12849,Variable SessionDiagnosticsArrayType_SessionDiagnostics_AddReferencesCount,12850,Variable SessionDiagnosticsArrayType_SessionDiagnostics_DeleteNodesCount,12851,Variable SessionDiagnosticsArrayType_SessionDiagnostics_DeleteReferencesCount,12852,Variable SessionDiagnosticsArrayType_SessionDiagnostics_BrowseCount,12853,Variable SessionDiagnosticsArrayType_SessionDiagnostics_BrowseNextCount,12854,Variable SessionDiagnosticsArrayType_SessionDiagnostics_TranslateBrowsePathsToNodeIdsCount,12855,Variable SessionDiagnosticsArrayType_SessionDiagnostics_QueryFirstCount,12856,Variable SessionDiagnosticsArrayType_SessionDiagnostics_QueryNextCount,12857,Variable SessionDiagnosticsArrayType_SessionDiagnostics_RegisterNodesCount,12858,Variable SessionDiagnosticsArrayType_SessionDiagnostics_UnregisterNodesCount,12859,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics,12860,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_SessionId,12861,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_ClientUserIdOfSession,12862,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_ClientUserIdHistory,12863,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_AuthenticationMechanism,12864,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_Encoding,12865,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_TransportProtocol,12866,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_SecurityMode,12867,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_SecurityPolicyUri,12868,Variable SessionSecurityDiagnosticsArrayType_SessionSecurityDiagnostics_ClientCertificate,12869,Variable ServerType_ResendData,12871,Method ServerType_ResendData_InputArguments,12872,Variable Server_ResendData,12873,Method Server_ResendData_InputArguments,12874,Variable ResendDataMethodType,12875,Method ResendDataMethodType_InputArguments,12876,Variable NormalizedString,12877,DataType DecimalString,12878,DataType DurationString,12879,DataType TimeString,12880,DataType DateString,12881,DataType ServerType_EstimatedReturnTime,12882,Variable ServerType_RequestServerStateChange,12883,Method ServerType_RequestServerStateChange_InputArguments,12884,Variable Server_EstimatedReturnTime,12885,Variable Server_RequestServerStateChange,12886,Method Server_RequestServerStateChange_InputArguments,12887,Variable RequestServerStateChangeMethodType,12888,Method RequestServerStateChangeMethodType_InputArguments,12889,Variable DiscoveryConfiguration,12890,DataType MdnsDiscoveryConfiguration,12891,DataType DiscoveryConfiguration_Encoding_DefaultXml,12892,Object MdnsDiscoveryConfiguration_Encoding_DefaultXml,12893,Object OpcUa_XmlSchema_DiscoveryConfiguration,12894,Variable OpcUa_XmlSchema_DiscoveryConfiguration_DataTypeVersion,12895,Variable OpcUa_XmlSchema_DiscoveryConfiguration_DictionaryFragment,12896,Variable OpcUa_XmlSchema_MdnsDiscoveryConfiguration,12897,Variable OpcUa_XmlSchema_MdnsDiscoveryConfiguration_DataTypeVersion,12898,Variable OpcUa_XmlSchema_MdnsDiscoveryConfiguration_DictionaryFragment,12899,Variable DiscoveryConfiguration_Encoding_DefaultBinary,12900,Object MdnsDiscoveryConfiguration_Encoding_DefaultBinary,12901,Object OpcUa_BinarySchema_DiscoveryConfiguration,12902,Variable OpcUa_BinarySchema_DiscoveryConfiguration_DataTypeVersion,12903,Variable OpcUa_BinarySchema_DiscoveryConfiguration_DictionaryFragment,12904,Variable OpcUa_BinarySchema_MdnsDiscoveryConfiguration,12905,Variable OpcUa_BinarySchema_MdnsDiscoveryConfiguration_DataTypeVersion,12906,Variable OpcUa_BinarySchema_MdnsDiscoveryConfiguration_DictionaryFragment,12907,Variable MaxByteStringLength,12908,Variable ServerType_ServerCapabilities_MaxByteStringLength,12909,Variable ServerCapabilitiesType_MaxByteStringLength,12910,Variable Server_ServerCapabilities_MaxByteStringLength,12911,Variable ConditionType_ConditionRefresh2,12912,Method ConditionType_ConditionRefresh2_InputArguments,12913,Variable ConditionRefresh2MethodType,12914,Method ConditionRefresh2MethodType_InputArguments,12915,Variable DialogConditionType_ConditionRefresh2,12916,Method DialogConditionType_ConditionRefresh2_InputArguments,12917,Variable AcknowledgeableConditionType_ConditionRefresh2,12918,Method AcknowledgeableConditionType_ConditionRefresh2_InputArguments,12919,Variable AlarmConditionType_ConditionRefresh2,12984,Method AlarmConditionType_ConditionRefresh2_InputArguments,12985,Variable LimitAlarmType_ConditionRefresh2,12986,Method LimitAlarmType_ConditionRefresh2_InputArguments,12987,Variable ExclusiveLimitAlarmType_ConditionRefresh2,12988,Method ExclusiveLimitAlarmType_ConditionRefresh2_InputArguments,12989,Variable NonExclusiveLimitAlarmType_ConditionRefresh2,12990,Method NonExclusiveLimitAlarmType_ConditionRefresh2_InputArguments,12991,Variable NonExclusiveLevelAlarmType_ConditionRefresh2,12992,Method NonExclusiveLevelAlarmType_ConditionRefresh2_InputArguments,12993,Variable ExclusiveLevelAlarmType_ConditionRefresh2,12994,Method ExclusiveLevelAlarmType_ConditionRefresh2_InputArguments,12995,Variable NonExclusiveDeviationAlarmType_ConditionRefresh2,12996,Method NonExclusiveDeviationAlarmType_ConditionRefresh2_InputArguments,12997,Variable ExclusiveDeviationAlarmType_ConditionRefresh2,12998,Method ExclusiveDeviationAlarmType_ConditionRefresh2_InputArguments,12999,Variable NonExclusiveRateOfChangeAlarmType_ConditionRefresh2,13000,Method NonExclusiveRateOfChangeAlarmType_ConditionRefresh2_InputArguments,13001,Variable ExclusiveRateOfChangeAlarmType_ConditionRefresh2,13002,Method ExclusiveRateOfChangeAlarmType_ConditionRefresh2_InputArguments,13003,Variable DiscreteAlarmType_ConditionRefresh2,13004,Method DiscreteAlarmType_ConditionRefresh2_InputArguments,13005,Variable OffNormalAlarmType_ConditionRefresh2,13006,Method OffNormalAlarmType_ConditionRefresh2_InputArguments,13007,Variable SystemOffNormalAlarmType_ConditionRefresh2,13008,Method SystemOffNormalAlarmType_ConditionRefresh2_InputArguments,13009,Variable TripAlarmType_ConditionRefresh2,13010,Method TripAlarmType_ConditionRefresh2_InputArguments,13011,Variable CertificateExpirationAlarmType,13225,ObjectType CertificateExpirationAlarmType_EventId,13226,Variable CertificateExpirationAlarmType_EventType,13227,Variable CertificateExpirationAlarmType_SourceNode,13228,Variable CertificateExpirationAlarmType_SourceName,13229,Variable CertificateExpirationAlarmType_Time,13230,Variable CertificateExpirationAlarmType_ReceiveTime,13231,Variable CertificateExpirationAlarmType_LocalTime,13232,Variable CertificateExpirationAlarmType_Message,13233,Variable CertificateExpirationAlarmType_Severity,13234,Variable CertificateExpirationAlarmType_ConditionClassId,13235,Variable CertificateExpirationAlarmType_ConditionClassName,13236,Variable CertificateExpirationAlarmType_ConditionName,13237,Variable CertificateExpirationAlarmType_BranchId,13238,Variable CertificateExpirationAlarmType_Retain,13239,Variable CertificateExpirationAlarmType_EnabledState,13240,Variable CertificateExpirationAlarmType_EnabledState_Id,13241,Variable CertificateExpirationAlarmType_EnabledState_Name,13242,Variable CertificateExpirationAlarmType_EnabledState_Number,13243,Variable CertificateExpirationAlarmType_EnabledState_EffectiveDisplayName,13244,Variable CertificateExpirationAlarmType_EnabledState_TransitionTime,13245,Variable CertificateExpirationAlarmType_EnabledState_EffectiveTransitionTime,13246,Variable CertificateExpirationAlarmType_EnabledState_TrueState,13247,Variable CertificateExpirationAlarmType_EnabledState_FalseState,13248,Variable CertificateExpirationAlarmType_Quality,13249,Variable CertificateExpirationAlarmType_Quality_SourceTimestamp,13250,Variable CertificateExpirationAlarmType_LastSeverity,13251,Variable CertificateExpirationAlarmType_LastSeverity_SourceTimestamp,13252,Variable CertificateExpirationAlarmType_Comment,13253,Variable CertificateExpirationAlarmType_Comment_SourceTimestamp,13254,Variable CertificateExpirationAlarmType_ClientUserId,13255,Variable CertificateExpirationAlarmType_Disable,13256,Method CertificateExpirationAlarmType_Enable,13257,Method CertificateExpirationAlarmType_AddComment,13258,Method CertificateExpirationAlarmType_AddComment_InputArguments,13259,Variable CertificateExpirationAlarmType_ConditionRefresh,13260,Method CertificateExpirationAlarmType_ConditionRefresh_InputArguments,13261,Variable CertificateExpirationAlarmType_ConditionRefresh2,13262,Method CertificateExpirationAlarmType_ConditionRefresh2_InputArguments,13263,Variable CertificateExpirationAlarmType_AckedState,13264,Variable CertificateExpirationAlarmType_AckedState_Id,13265,Variable CertificateExpirationAlarmType_AckedState_Name,13266,Variable CertificateExpirationAlarmType_AckedState_Number,13267,Variable CertificateExpirationAlarmType_AckedState_EffectiveDisplayName,13268,Variable CertificateExpirationAlarmType_AckedState_TransitionTime,13269,Variable CertificateExpirationAlarmType_AckedState_EffectiveTransitionTime,13270,Variable CertificateExpirationAlarmType_AckedState_TrueState,13271,Variable CertificateExpirationAlarmType_AckedState_FalseState,13272,Variable CertificateExpirationAlarmType_ConfirmedState,13273,Variable CertificateExpirationAlarmType_ConfirmedState_Id,13274,Variable CertificateExpirationAlarmType_ConfirmedState_Name,13275,Variable CertificateExpirationAlarmType_ConfirmedState_Number,13276,Variable CertificateExpirationAlarmType_ConfirmedState_EffectiveDisplayName,13277,Variable CertificateExpirationAlarmType_ConfirmedState_TransitionTime,13278,Variable CertificateExpirationAlarmType_ConfirmedState_EffectiveTransitionTime,13279,Variable CertificateExpirationAlarmType_ConfirmedState_TrueState,13280,Variable CertificateExpirationAlarmType_ConfirmedState_FalseState,13281,Variable CertificateExpirationAlarmType_Acknowledge,13282,Method CertificateExpirationAlarmType_Acknowledge_InputArguments,13283,Variable CertificateExpirationAlarmType_Confirm,13284,Method CertificateExpirationAlarmType_Confirm_InputArguments,13285,Variable CertificateExpirationAlarmType_ActiveState,13286,Variable CertificateExpirationAlarmType_ActiveState_Id,13287,Variable CertificateExpirationAlarmType_ActiveState_Name,13288,Variable CertificateExpirationAlarmType_ActiveState_Number,13289,Variable CertificateExpirationAlarmType_ActiveState_EffectiveDisplayName,13290,Variable CertificateExpirationAlarmType_ActiveState_TransitionTime,13291,Variable CertificateExpirationAlarmType_ActiveState_EffectiveTransitionTime,13292,Variable CertificateExpirationAlarmType_ActiveState_TrueState,13293,Variable CertificateExpirationAlarmType_ActiveState_FalseState,13294,Variable CertificateExpirationAlarmType_InputNode,13295,Variable CertificateExpirationAlarmType_SuppressedState,13296,Variable CertificateExpirationAlarmType_SuppressedState_Id,13297,Variable CertificateExpirationAlarmType_SuppressedState_Name,13298,Variable CertificateExpirationAlarmType_SuppressedState_Number,13299,Variable CertificateExpirationAlarmType_SuppressedState_EffectiveDisplayName,13300,Variable CertificateExpirationAlarmType_SuppressedState_TransitionTime,13301,Variable CertificateExpirationAlarmType_SuppressedState_EffectiveTransitionTime,13302,Variable CertificateExpirationAlarmType_SuppressedState_TrueState,13303,Variable CertificateExpirationAlarmType_SuppressedState_FalseState,13304,Variable CertificateExpirationAlarmType_ShelvingState,13305,Object CertificateExpirationAlarmType_ShelvingState_CurrentState,13306,Variable CertificateExpirationAlarmType_ShelvingState_CurrentState_Id,13307,Variable CertificateExpirationAlarmType_ShelvingState_CurrentState_Name,13308,Variable CertificateExpirationAlarmType_ShelvingState_CurrentState_Number,13309,Variable CertificateExpirationAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,13310,Variable CertificateExpirationAlarmType_ShelvingState_LastTransition,13311,Variable CertificateExpirationAlarmType_ShelvingState_LastTransition_Id,13312,Variable CertificateExpirationAlarmType_ShelvingState_LastTransition_Name,13313,Variable CertificateExpirationAlarmType_ShelvingState_LastTransition_Number,13314,Variable CertificateExpirationAlarmType_ShelvingState_LastTransition_TransitionTime,13315,Variable CertificateExpirationAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,13316,Variable CertificateExpirationAlarmType_ShelvingState_UnshelveTime,13317,Variable CertificateExpirationAlarmType_ShelvingState_Unshelve,13318,Method CertificateExpirationAlarmType_ShelvingState_OneShotShelve,13319,Method CertificateExpirationAlarmType_ShelvingState_TimedShelve,13320,Method CertificateExpirationAlarmType_ShelvingState_TimedShelve_InputArguments,13321,Variable CertificateExpirationAlarmType_SuppressedOrShelved,13322,Variable CertificateExpirationAlarmType_MaxTimeShelved,13323,Variable CertificateExpirationAlarmType_NormalState,13324,Variable CertificateExpirationAlarmType_ExpirationDate,13325,Variable CertificateExpirationAlarmType_CertificateType,13326,Variable CertificateExpirationAlarmType_Certificate,13327,Variable FileType_MimeType,13341,Variable CreateDirectoryMethodType,13342,Method CreateDirectoryMethodType_InputArguments,13343,Variable CreateDirectoryMethodType_OutputArguments,13344,Variable CreateFileMethodType,13345,Method CreateFileMethodType_InputArguments,13346,Variable CreateFileMethodType_OutputArguments,13347,Variable DeleteFileMethodType,13348,Method DeleteFileMethodType_InputArguments,13349,Variable MoveOrCopyMethodType,13350,Method MoveOrCopyMethodType_InputArguments,13351,Variable MoveOrCopyMethodType_OutputArguments,13352,Variable FileDirectoryType,13353,ObjectType FileDirectoryType_FileDirectoryName_Placeholder,13354,Object FileDirectoryType_FileDirectoryName_Placeholder_CreateDirectory,13355,Method FileDirectoryType_FileDirectoryName_Placeholder_CreateDirectory_InputArguments,13356,Variable FileDirectoryType_FileDirectoryName_Placeholder_CreateDirectory_OutputArguments,13357,Variable FileDirectoryType_FileDirectoryName_Placeholder_CreateFile,13358,Method FileDirectoryType_FileDirectoryName_Placeholder_CreateFile_InputArguments,13359,Variable FileDirectoryType_FileDirectoryName_Placeholder_CreateFile_OutputArguments,13360,Variable FileDirectoryType_FileDirectoryName_Placeholder_MoveOrCopy,13363,Method FileDirectoryType_FileDirectoryName_Placeholder_MoveOrCopy_InputArguments,13364,Variable FileDirectoryType_FileDirectoryName_Placeholder_MoveOrCopy_OutputArguments,13365,Variable FileDirectoryType_FileName_Placeholder,13366,Object FileDirectoryType_FileName_Placeholder_Size,13367,Variable FileDirectoryType_FileName_Placeholder_Writable,13368,Variable FileDirectoryType_FileName_Placeholder_UserWritable,13369,Variable FileDirectoryType_FileName_Placeholder_OpenCount,13370,Variable FileDirectoryType_FileName_Placeholder_MimeType,13371,Variable FileDirectoryType_FileName_Placeholder_Open,13372,Method FileDirectoryType_FileName_Placeholder_Open_InputArguments,13373,Variable FileDirectoryType_FileName_Placeholder_Open_OutputArguments,13374,Variable FileDirectoryType_FileName_Placeholder_Close,13375,Method FileDirectoryType_FileName_Placeholder_Close_InputArguments,13376,Variable FileDirectoryType_FileName_Placeholder_Read,13377,Method FileDirectoryType_FileName_Placeholder_Read_InputArguments,13378,Variable FileDirectoryType_FileName_Placeholder_Read_OutputArguments,13379,Variable FileDirectoryType_FileName_Placeholder_Write,13380,Method FileDirectoryType_FileName_Placeholder_Write_InputArguments,13381,Variable FileDirectoryType_FileName_Placeholder_GetPosition,13382,Method FileDirectoryType_FileName_Placeholder_GetPosition_InputArguments,13383,Variable FileDirectoryType_FileName_Placeholder_GetPosition_OutputArguments,13384,Variable FileDirectoryType_FileName_Placeholder_SetPosition,13385,Method FileDirectoryType_FileName_Placeholder_SetPosition_InputArguments,13386,Variable FileDirectoryType_CreateDirectory,13387,Method FileDirectoryType_CreateDirectory_InputArguments,13388,Variable FileDirectoryType_CreateDirectory_OutputArguments,13389,Variable FileDirectoryType_CreateFile,13390,Method FileDirectoryType_CreateFile_InputArguments,13391,Variable FileDirectoryType_CreateFile_OutputArguments,13392,Variable FileDirectoryType_DeleteFileSystemObject,13393,Method FileDirectoryType_DeleteFileSystemObject_InputArguments,13394,Variable FileDirectoryType_MoveOrCopy,13395,Method FileDirectoryType_MoveOrCopy_InputArguments,13396,Variable FileDirectoryType_MoveOrCopy_OutputArguments,13397,Variable AddressSpaceFileType_MimeType,13398,Variable NamespaceMetadataType_NamespaceFile_MimeType,13399,Variable NamespacesType_NamespaceIdentifier_Placeholder_NamespaceFile_MimeType,13400,Variable TrustListType_MimeType,13403,Variable CertificateGroupType_TrustList,13599,Object CertificateGroupType_TrustList_Size,13600,Variable CertificateGroupType_TrustList_Writable,13601,Variable CertificateGroupType_TrustList_UserWritable,13602,Variable CertificateGroupType_TrustList_OpenCount,13603,Variable CertificateGroupType_TrustList_MimeType,13604,Variable CertificateGroupType_TrustList_Open,13605,Method CertificateGroupType_TrustList_Open_InputArguments,13606,Variable CertificateGroupType_TrustList_Open_OutputArguments,13607,Variable CertificateGroupType_TrustList_Close,13608,Method CertificateGroupType_TrustList_Close_InputArguments,13609,Variable CertificateGroupType_TrustList_Read,13610,Method CertificateGroupType_TrustList_Read_InputArguments,13611,Variable CertificateGroupType_TrustList_Read_OutputArguments,13612,Variable CertificateGroupType_TrustList_Write,13613,Method CertificateGroupType_TrustList_Write_InputArguments,13614,Variable CertificateGroupType_TrustList_GetPosition,13615,Method CertificateGroupType_TrustList_GetPosition_InputArguments,13616,Variable CertificateGroupType_TrustList_GetPosition_OutputArguments,13617,Variable CertificateGroupType_TrustList_SetPosition,13618,Method CertificateGroupType_TrustList_SetPosition_InputArguments,13619,Variable CertificateGroupType_TrustList_LastUpdateTime,13620,Variable CertificateGroupType_TrustList_OpenWithMasks,13621,Method CertificateGroupType_TrustList_OpenWithMasks_InputArguments,13622,Variable CertificateGroupType_TrustList_OpenWithMasks_OutputArguments,13623,Variable CertificateGroupType_TrustList_CloseAndUpdate,13624,Method CertificateGroupType_TrustList_CloseAndUpdate_InputArguments,13625,Variable CertificateGroupType_TrustList_CloseAndUpdate_OutputArguments,13626,Variable CertificateGroupType_TrustList_AddCertificate,13627,Method CertificateGroupType_TrustList_AddCertificate_InputArguments,13628,Variable CertificateGroupType_TrustList_RemoveCertificate,13629,Method CertificateGroupType_TrustList_RemoveCertificate_InputArguments,13630,Variable CertificateGroupType_CertificateTypes,13631,Variable CertificateUpdatedAuditEventType_CertificateGroup,13735,Variable CertificateUpdatedAuditEventType_CertificateType,13736,Variable ServerConfiguration_UpdateCertificate,13737,Method ServerConfiguration_UpdateCertificate_InputArguments,13738,Variable ServerConfiguration_UpdateCertificate_OutputArguments,13739,Variable CertificateGroupFolderType,13813,ObjectType CertificateGroupFolderType_DefaultApplicationGroup,13814,Object CertificateGroupFolderType_DefaultApplicationGroup_TrustList,13815,Object CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Size,13816,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Writable,13817,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_UserWritable,13818,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_OpenCount,13819,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_MimeType,13820,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Open,13821,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Open_InputArguments,13822,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Open_OutputArguments,13823,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Close,13824,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Close_InputArguments,13825,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Read,13826,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Read_InputArguments,13827,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Read_OutputArguments,13828,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Write,13829,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_Write_InputArguments,13830,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_GetPosition,13831,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_GetPosition_InputArguments,13832,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_GetPosition_OutputArguments,13833,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_SetPosition,13834,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_SetPosition_InputArguments,13835,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_LastUpdateTime,13836,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_OpenWithMasks,13837,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_OpenWithMasks_InputArguments,13838,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_OpenWithMasks_OutputArguments,13839,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_CloseAndUpdate,13840,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_CloseAndUpdate_InputArguments,13841,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_CloseAndUpdate_OutputArguments,13842,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_AddCertificate,13843,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_AddCertificate_InputArguments,13844,Variable CertificateGroupFolderType_DefaultApplicationGroup_TrustList_RemoveCertificate,13845,Method CertificateGroupFolderType_DefaultApplicationGroup_TrustList_RemoveCertificate_InputArguments,13846,Variable CertificateGroupFolderType_DefaultApplicationGroup_CertificateTypes,13847,Variable CertificateGroupFolderType_DefaultHttpsGroup,13848,Object CertificateGroupFolderType_DefaultHttpsGroup_TrustList,13849,Object CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Size,13850,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Writable,13851,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_UserWritable,13852,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_OpenCount,13853,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_MimeType,13854,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Open,13855,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Open_InputArguments,13856,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Open_OutputArguments,13857,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Close,13858,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Close_InputArguments,13859,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Read,13860,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Read_InputArguments,13861,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Read_OutputArguments,13862,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Write,13863,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_Write_InputArguments,13864,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_GetPosition,13865,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_GetPosition_InputArguments,13866,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_GetPosition_OutputArguments,13867,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_SetPosition,13868,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_SetPosition_InputArguments,13869,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_LastUpdateTime,13870,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_OpenWithMasks,13871,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_OpenWithMasks_InputArguments,13872,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_OpenWithMasks_OutputArguments,13873,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_CloseAndUpdate,13874,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_CloseAndUpdate_InputArguments,13875,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_CloseAndUpdate_OutputArguments,13876,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_AddCertificate,13877,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_AddCertificate_InputArguments,13878,Variable CertificateGroupFolderType_DefaultHttpsGroup_TrustList_RemoveCertificate,13879,Method CertificateGroupFolderType_DefaultHttpsGroup_TrustList_RemoveCertificate_InputArguments,13880,Variable CertificateGroupFolderType_DefaultHttpsGroup_CertificateTypes,13881,Variable CertificateGroupFolderType_DefaultUserTokenGroup,13882,Object CertificateGroupFolderType_DefaultUserTokenGroup_TrustList,13883,Object CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Size,13884,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Writable,13885,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_UserWritable,13886,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_OpenCount,13887,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_MimeType,13888,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Open,13889,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Open_InputArguments,13890,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Open_OutputArguments,13891,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Close,13892,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Close_InputArguments,13893,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Read,13894,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Read_InputArguments,13895,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Read_OutputArguments,13896,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Write,13897,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_Write_InputArguments,13898,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_GetPosition,13899,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_GetPosition_InputArguments,13900,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_GetPosition_OutputArguments,13901,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_SetPosition,13902,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_SetPosition_InputArguments,13903,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_LastUpdateTime,13904,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_OpenWithMasks,13905,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_OpenWithMasks_InputArguments,13906,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_OpenWithMasks_OutputArguments,13907,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_CloseAndUpdate,13908,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_CloseAndUpdate_InputArguments,13909,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_CloseAndUpdate_OutputArguments,13910,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_AddCertificate,13911,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_AddCertificate_InputArguments,13912,Variable CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_RemoveCertificate,13913,Method CertificateGroupFolderType_DefaultUserTokenGroup_TrustList_RemoveCertificate_InputArguments,13914,Variable CertificateGroupFolderType_DefaultUserTokenGroup_CertificateTypes,13915,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder,13916,Object CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList,13917,Object CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Size,13918,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Writable,13919,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_UserWritable,13920,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_OpenCount,13921,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_MimeType,13922,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Open,13923,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Open_InputArguments,13924,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Open_OutputArguments,13925,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Close,13926,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Close_InputArguments,13927,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Read,13928,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Read_InputArguments,13929,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Read_OutputArguments,13930,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Write,13931,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_Write_InputArguments,13932,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_GetPosition,13933,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_GetPosition_InputArguments,13934,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_GetPosition_OutputArguments,13935,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_SetPosition,13936,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_SetPosition_InputArguments,13937,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_LastUpdateTime,13938,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_OpenWithMasks,13939,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_OpenWithMasks_InputArguments,13940,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_OpenWithMasks_OutputArguments,13941,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_CloseAndUpdate,13942,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_CloseAndUpdate_InputArguments,13943,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_CloseAndUpdate_OutputArguments,13944,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_AddCertificate,13945,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_AddCertificate_InputArguments,13946,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_RemoveCertificate,13947,Method CertificateGroupFolderType_AdditionalGroup_Placeholder_TrustList_RemoveCertificate_InputArguments,13948,Variable CertificateGroupFolderType_AdditionalGroup_Placeholder_CertificateTypes,13949,Variable ServerConfigurationType_CertificateGroups,13950,Object ServerConfigurationType_CertificateGroups_DefaultApplicationGroup,13951,Object ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList,13952,Object ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Size,13953,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Writable,13954,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_UserWritable,13955,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_OpenCount,13956,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_MimeType,13957,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Open,13958,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Open_InputArguments,13959,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Open_OutputArguments,13960,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Close,13961,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Close_InputArguments,13962,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Read,13963,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Read_InputArguments,13964,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Read_OutputArguments,13965,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Write,13966,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_Write_InputArguments,13967,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_GetPosition,13968,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_GetPosition_InputArguments,13969,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_GetPosition_OutputArguments,13970,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_SetPosition,13971,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_SetPosition_InputArguments,13972,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_LastUpdateTime,13973,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_OpenWithMasks,13974,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_OpenWithMasks_InputArguments,13975,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_OpenWithMasks_OutputArguments,13976,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_CloseAndUpdate,13977,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_CloseAndUpdate_InputArguments,13978,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_CloseAndUpdate_OutputArguments,13979,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_AddCertificate,13980,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_AddCertificate_InputArguments,13981,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_RemoveCertificate,13982,Method ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_TrustList_RemoveCertificate_InputArguments,13983,Variable ServerConfigurationType_CertificateGroups_DefaultApplicationGroup_CertificateTypes,13984,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup,13985,Object ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList,13986,Object ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Size,13987,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Writable,13988,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_UserWritable,13989,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_OpenCount,13990,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_MimeType,13991,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Open,13992,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Open_InputArguments,13993,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Open_OutputArguments,13994,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Close,13995,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Close_InputArguments,13996,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Read,13997,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Read_InputArguments,13998,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Read_OutputArguments,13999,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Write,14000,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_Write_InputArguments,14001,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_GetPosition,14002,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_GetPosition_InputArguments,14003,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_GetPosition_OutputArguments,14004,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_SetPosition,14005,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_SetPosition_InputArguments,14006,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_LastUpdateTime,14007,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_OpenWithMasks,14008,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_OpenWithMasks_InputArguments,14009,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_OpenWithMasks_OutputArguments,14010,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_CloseAndUpdate,14011,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_CloseAndUpdate_InputArguments,14012,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_CloseAndUpdate_OutputArguments,14013,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_AddCertificate,14014,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_AddCertificate_InputArguments,14015,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_RemoveCertificate,14016,Method ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_TrustList_RemoveCertificate_InputArguments,14017,Variable ServerConfigurationType_CertificateGroups_DefaultHttpsGroup_CertificateTypes,14018,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup,14019,Object ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList,14020,Object ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Size,14021,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Writable,14022,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_UserWritable,14023,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenCount,14024,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_MimeType,14025,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Open,14026,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Open_InputArguments,14027,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Open_OutputArguments,14028,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Close,14029,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Close_InputArguments,14030,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Read,14031,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Read_InputArguments,14032,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Read_OutputArguments,14033,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Write,14034,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_Write_InputArguments,14035,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_GetPosition,14036,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_GetPosition_InputArguments,14037,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_GetPosition_OutputArguments,14038,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_SetPosition,14039,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_SetPosition_InputArguments,14040,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_LastUpdateTime,14041,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenWithMasks,14042,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenWithMasks_InputArguments,14043,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenWithMasks_OutputArguments,14044,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_CloseAndUpdate,14045,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_CloseAndUpdate_InputArguments,14046,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_CloseAndUpdate_OutputArguments,14047,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_AddCertificate,14048,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_AddCertificate_InputArguments,14049,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_RemoveCertificate,14050,Method ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_TrustList_RemoveCertificate_InputArguments,14051,Variable ServerConfigurationType_CertificateGroups_DefaultUserTokenGroup_CertificateTypes,14052,Variable ServerConfiguration_CertificateGroups,14053,Object ServerConfiguration_CertificateGroups_DefaultHttpsGroup,14088,Object ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList,14089,Object ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Size,14090,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Writable,14091,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_UserWritable,14092,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_OpenCount,14093,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_MimeType,14094,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Open,14095,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Open_InputArguments,14096,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Open_OutputArguments,14097,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Close,14098,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Close_InputArguments,14099,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Read,14100,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Read_InputArguments,14101,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Read_OutputArguments,14102,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Write,14103,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_Write_InputArguments,14104,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_GetPosition,14105,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_GetPosition_InputArguments,14106,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_GetPosition_OutputArguments,14107,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_SetPosition,14108,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_SetPosition_InputArguments,14109,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_LastUpdateTime,14110,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_OpenWithMasks,14111,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_OpenWithMasks_InputArguments,14112,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_OpenWithMasks_OutputArguments,14113,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_CloseAndUpdate,14114,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_CloseAndUpdate_InputArguments,14115,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_CloseAndUpdate_OutputArguments,14116,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_AddCertificate,14117,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_AddCertificate_InputArguments,14118,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_RemoveCertificate,14119,Method ServerConfiguration_CertificateGroups_DefaultHttpsGroup_TrustList_RemoveCertificate_InputArguments,14120,Variable ServerConfiguration_CertificateGroups_DefaultHttpsGroup_CertificateTypes,14121,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup,14122,Object ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList,14123,Object ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Size,14124,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Writable,14125,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_UserWritable,14126,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenCount,14127,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_MimeType,14128,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Open,14129,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Open_InputArguments,14130,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Open_OutputArguments,14131,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Close,14132,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Close_InputArguments,14133,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Read,14134,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Read_InputArguments,14135,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Read_OutputArguments,14136,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Write,14137,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_Write_InputArguments,14138,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_GetPosition,14139,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_GetPosition_InputArguments,14140,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_GetPosition_OutputArguments,14141,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_SetPosition,14142,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_SetPosition_InputArguments,14143,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_LastUpdateTime,14144,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenWithMasks,14145,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenWithMasks_InputArguments,14146,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_OpenWithMasks_OutputArguments,14147,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_CloseAndUpdate,14148,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_CloseAndUpdate_InputArguments,14149,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_CloseAndUpdate_OutputArguments,14150,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_AddCertificate,14151,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_AddCertificate_InputArguments,14152,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_RemoveCertificate,14153,Method ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_TrustList_RemoveCertificate_InputArguments,14154,Variable ServerConfiguration_CertificateGroups_DefaultUserTokenGroup_CertificateTypes,14155,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup,14156,Object ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_Writable,14157,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_UserWritable,14158,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_MimeType,14159,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_TrustList_CloseAndUpdate_InputArguments,14160,Variable ServerConfiguration_CertificateGroups_DefaultApplicationGroup_CertificateTypes,14161,Variable RemoveConnectionMethodType,14183,Method RemoveConnectionMethodType_InputArguments,14184,Variable PubSubConnectionType,14209,ObjectType PubSubConnectionType_Address,14221,Object PubSubConnectionType_RemoveGroup,14225,Method PubSubConnectionType_RemoveGroup_InputArguments,14226,Variable PubSubGroupType,14232,ObjectType PublishedVariableDataType,14273,DataType PublishedVariableDataType_Encoding_DefaultXml,14319,Object OpcUa_XmlSchema_PublishedVariableDataType,14320,Variable OpcUa_XmlSchema_PublishedVariableDataType_DataTypeVersion,14321,Variable OpcUa_XmlSchema_PublishedVariableDataType_DictionaryFragment,14322,Variable PublishedVariableDataType_Encoding_DefaultBinary,14323,Object OpcUa_BinarySchema_PublishedVariableDataType,14324,Variable OpcUa_BinarySchema_PublishedVariableDataType_DataTypeVersion,14325,Variable OpcUa_BinarySchema_PublishedVariableDataType_DictionaryFragment,14326,Variable AuditCreateSessionEventType_SessionId,14413,Variable AuditUrlMismatchEventType_SessionId,14414,Variable Server_ServerRedundancy_ServerNetworkGroups,14415,Variable PublishSubscribeType,14416,ObjectType PublishSubscribeType_ConnectionName_Placeholder,14417,Object PublishSubscribeType_ConnectionName_Placeholder_PublisherId,14418,Variable PublishSubscribeType_ConnectionName_Placeholder_Status,14419,Object PublishSubscribeType_ConnectionName_Placeholder_Status_State,14420,Variable PublishSubscribeType_ConnectionName_Placeholder_Status_Enable,14421,Method PublishSubscribeType_ConnectionName_Placeholder_Status_Disable,14422,Method PublishSubscribeType_ConnectionName_Placeholder_Address,14423,Object PublishSubscribeType_ConnectionName_Placeholder_RemoveGroup,14424,Method PublishSubscribeType_ConnectionName_Placeholder_RemoveGroup_InputArguments,14425,Variable PublishSubscribeType_RemoveConnection,14432,Method PublishSubscribeType_RemoveConnection_InputArguments,14433,Variable PublishSubscribeType_PublishedDataSets,14434,Object PublishSubscribeType_PublishedDataSets_AddPublishedDataItems,14435,Method PublishSubscribeType_PublishedDataSets_AddPublishedDataItems_InputArguments,14436,Variable PublishSubscribeType_PublishedDataSets_AddPublishedDataItems_OutputArguments,14437,Variable PublishSubscribeType_PublishedDataSets_AddPublishedEvents,14438,Method PublishSubscribeType_PublishedDataSets_AddPublishedEvents_InputArguments,14439,Variable PublishSubscribeType_PublishedDataSets_AddPublishedEvents_OutputArguments,14440,Variable PublishSubscribeType_PublishedDataSets_RemovePublishedDataSet,14441,Method PublishSubscribeType_PublishedDataSets_RemovePublishedDataSet_InputArguments,14442,Variable PublishSubscribe,14443,Object HasPubSubConnection,14476,ReferenceType DataSetFolderType,14477,ObjectType DataSetFolderType_DataSetFolderName_Placeholder,14478,Object DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedDataItems,14479,Method DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedDataItems_InputArguments,14480,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedDataItems_OutputArguments,14481,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedEvents,14482,Method DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedEvents_InputArguments,14483,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedEvents_OutputArguments,14484,Variable DataSetFolderType_DataSetFolderName_Placeholder_RemovePublishedDataSet,14485,Method DataSetFolderType_DataSetFolderName_Placeholder_RemovePublishedDataSet_InputArguments,14486,Variable DataSetFolderType_PublishedDataSetName_Placeholder,14487,Object DataSetFolderType_PublishedDataSetName_Placeholder_ConfigurationVersion,14489,Variable DataSetFolderType_AddPublishedDataItems,14493,Method DataSetFolderType_AddPublishedDataItems_InputArguments,14494,Variable DataSetFolderType_AddPublishedDataItems_OutputArguments,14495,Variable DataSetFolderType_AddPublishedEvents,14496,Method DataSetFolderType_AddPublishedEvents_InputArguments,14497,Variable DataSetFolderType_AddPublishedEvents_OutputArguments,14498,Variable DataSetFolderType_RemovePublishedDataSet,14499,Method DataSetFolderType_RemovePublishedDataSet_InputArguments,14500,Variable AddPublishedDataItemsMethodType,14501,Method AddPublishedDataItemsMethodType_InputArguments,14502,Variable AddPublishedDataItemsMethodType_OutputArguments,14503,Variable AddPublishedEventsMethodType,14504,Method AddPublishedEventsMethodType_InputArguments,14505,Variable AddPublishedEventsMethodType_OutputArguments,14506,Variable RemovePublishedDataSetMethodType,14507,Method RemovePublishedDataSetMethodType_InputArguments,14508,Variable PublishedDataSetType,14509,ObjectType PublishedDataSetType_ConfigurationVersion,14519,Variable DataSetMetaDataType,14523,DataType FieldMetaData,14524,DataType DataTypeDescription,14525,DataType StructureType_EnumStrings,14528,Variable KeyValuePair,14533,DataType PublishedDataItemsType,14534,ObjectType PublishedDataItemsType_ConfigurationVersion,14544,Variable PublishedDataItemsType_PublishedData,14548,Variable PublishedDataItemsType_AddVariables,14555,Method PublishedDataItemsType_AddVariables_InputArguments,14556,Variable PublishedDataItemsType_AddVariables_OutputArguments,14557,Variable PublishedDataItemsType_RemoveVariables,14558,Method PublishedDataItemsType_RemoveVariables_InputArguments,14559,Variable PublishedDataItemsType_RemoveVariables_OutputArguments,14560,Variable PublishedDataItemsAddVariablesMethodType,14564,Method PublishedDataItemsAddVariablesMethodType_InputArguments,14565,Variable PublishedDataItemsAddVariablesMethodType_OutputArguments,14566,Variable PublishedDataItemsRemoveVariablesMethodType,14567,Method PublishedDataItemsRemoveVariablesMethodType_InputArguments,14568,Variable PublishedDataItemsRemoveVariablesMethodType_OutputArguments,14569,Variable PublishedEventsType,14572,ObjectType PublishedEventsType_ConfigurationVersion,14582,Variable PublishedEventsType_PubSubEventNotifier,14586,Variable PublishedEventsType_SelectedFields,14587,Variable PublishedEventsType_Filter,14588,Variable ConfigurationVersionDataType,14593,DataType PubSubConnectionType_PublisherId,14595,Variable PubSubConnectionType_Status,14600,Object PubSubConnectionType_Status_State,14601,Variable PubSubConnectionType_Status_Enable,14602,Method PubSubConnectionType_Status_Disable,14603,Method PubSubConnectionTypeRemoveGroupMethodType,14604,Method PubSubConnectionTypeRemoveGroupMethodType_InputArguments,14605,Variable PubSubGroupTypeRemoveWriterMethodType,14623,Method PubSubGroupTypeRemoveWriterMethodType_InputArguments,14624,Variable PubSubGroupTypeRemoveReaderMethodType,14625,Method PubSubGroupTypeRemoveReaderMethodType_InputArguments,14626,Variable PubSubStatusType,14643,ObjectType PubSubStatusType_State,14644,Variable PubSubStatusType_Enable,14645,Method PubSubStatusType_Disable,14646,Method PubSubState,14647,DataType PubSubState_EnumStrings,14648,Variable FieldTargetDataType,14744,DataType DataSetMetaDataType_Encoding_DefaultXml,14794,Object FieldMetaData_Encoding_DefaultXml,14795,Object DataTypeDescription_Encoding_DefaultXml,14796,Object DataTypeDefinition_Encoding_DefaultXml,14797,Object StructureDefinition_Encoding_DefaultXml,14798,Object EnumDefinition_Encoding_DefaultXml,14799,Object StructureField_Encoding_DefaultXml,14800,Object EnumField_Encoding_DefaultXml,14801,Object KeyValuePair_Encoding_DefaultXml,14802,Object ConfigurationVersionDataType_Encoding_DefaultXml,14803,Object FieldTargetDataType_Encoding_DefaultXml,14804,Object OpcUa_XmlSchema_DataSetMetaDataType,14805,Variable OpcUa_XmlSchema_DataSetMetaDataType_DataTypeVersion,14806,Variable OpcUa_XmlSchema_DataSetMetaDataType_DictionaryFragment,14807,Variable OpcUa_XmlSchema_FieldMetaData,14808,Variable OpcUa_XmlSchema_FieldMetaData_DataTypeVersion,14809,Variable OpcUa_XmlSchema_FieldMetaData_DictionaryFragment,14810,Variable OpcUa_XmlSchema_DataTypeDescription,14811,Variable OpcUa_XmlSchema_DataTypeDescription_DataTypeVersion,14812,Variable OpcUa_XmlSchema_DataTypeDescription_DictionaryFragment,14813,Variable OpcUa_XmlSchema_EnumField,14826,Variable OpcUa_XmlSchema_EnumField_DataTypeVersion,14827,Variable OpcUa_XmlSchema_EnumField_DictionaryFragment,14828,Variable OpcUa_XmlSchema_KeyValuePair,14829,Variable OpcUa_XmlSchema_KeyValuePair_DataTypeVersion,14830,Variable OpcUa_XmlSchema_KeyValuePair_DictionaryFragment,14831,Variable OpcUa_XmlSchema_ConfigurationVersionDataType,14832,Variable OpcUa_XmlSchema_ConfigurationVersionDataType_DataTypeVersion,14833,Variable OpcUa_XmlSchema_ConfigurationVersionDataType_DictionaryFragment,14834,Variable OpcUa_XmlSchema_FieldTargetDataType,14835,Variable OpcUa_XmlSchema_FieldTargetDataType_DataTypeVersion,14836,Variable OpcUa_XmlSchema_FieldTargetDataType_DictionaryFragment,14837,Variable FieldMetaData_Encoding_DefaultBinary,14839,Object StructureField_Encoding_DefaultBinary,14844,Object EnumField_Encoding_DefaultBinary,14845,Object KeyValuePair_Encoding_DefaultBinary,14846,Object ConfigurationVersionDataType_Encoding_DefaultBinary,14847,Object FieldTargetDataType_Encoding_DefaultBinary,14848,Object OpcUa_BinarySchema_DataSetMetaDataType,14849,Variable OpcUa_BinarySchema_DataSetMetaDataType_DataTypeVersion,14850,Variable OpcUa_BinarySchema_DataSetMetaDataType_DictionaryFragment,14851,Variable OpcUa_BinarySchema_FieldMetaData,14852,Variable OpcUa_BinarySchema_FieldMetaData_DataTypeVersion,14853,Variable OpcUa_BinarySchema_FieldMetaData_DictionaryFragment,14854,Variable OpcUa_BinarySchema_DataTypeDescription,14855,Variable OpcUa_BinarySchema_DataTypeDescription_DataTypeVersion,14856,Variable OpcUa_BinarySchema_DataTypeDescription_DictionaryFragment,14857,Variable OpcUa_BinarySchema_EnumField,14870,Variable OpcUa_BinarySchema_EnumField_DataTypeVersion,14871,Variable OpcUa_BinarySchema_EnumField_DictionaryFragment,14872,Variable OpcUa_BinarySchema_KeyValuePair,14873,Variable OpcUa_BinarySchema_KeyValuePair_DataTypeVersion,14874,Variable OpcUa_BinarySchema_KeyValuePair_DictionaryFragment,14875,Variable OpcUa_BinarySchema_ConfigurationVersionDataType,14876,Variable OpcUa_BinarySchema_ConfigurationVersionDataType_DataTypeVersion,14877,Variable OpcUa_BinarySchema_ConfigurationVersionDataType_DictionaryFragment,14878,Variable OpcUa_BinarySchema_FieldTargetDataType_DataTypeVersion,14880,Variable OpcUa_BinarySchema_FieldTargetDataType_DictionaryFragment,14881,Variable CertificateExpirationAlarmType_ExpirationLimit,14900,Variable DataSetToWriter,14936,ReferenceType DataTypeDictionaryType_Deprecated,15001,Variable MaxCharacters,15002,Variable ServerType_UrisVersion,15003,Variable Server_UrisVersion,15004,Variable SimpleTypeDescription,15005,DataType UABinaryFileDataType,15006,DataType BrokerConnectionTransportDataType,15007,DataType BrokerTransportQualityOfService,15008,DataType BrokerTransportQualityOfService_EnumStrings,15009,Variable SecurityGroupFolderType_SecurityGroupName_Placeholder_KeyLifetime,15010,Variable SecurityGroupFolderType_SecurityGroupName_Placeholder_SecurityPolicyUri,15011,Variable SecurityGroupFolderType_SecurityGroupName_Placeholder_MaxFutureKeyCount,15012,Variable AuditConditionResetEventType,15013,ObjectType AuditConditionResetEventType_EventId,15014,Variable AuditConditionResetEventType_EventType,15015,Variable AuditConditionResetEventType_SourceNode,15016,Variable AuditConditionResetEventType_SourceName,15017,Variable AuditConditionResetEventType_Time,15018,Variable AuditConditionResetEventType_ReceiveTime,15019,Variable AuditConditionResetEventType_LocalTime,15020,Variable AuditConditionResetEventType_Message,15021,Variable AuditConditionResetEventType_Severity,15022,Variable AuditConditionResetEventType_ActionTimeStamp,15023,Variable AuditConditionResetEventType_Status,15024,Variable AuditConditionResetEventType_ServerId,15025,Variable AuditConditionResetEventType_ClientAuditEntryId,15026,Variable AuditConditionResetEventType_ClientUserId,15027,Variable AuditConditionResetEventType_MethodId,15028,Variable AuditConditionResetEventType_InputArguments,15029,Variable PermissionType_OptionSetValues,15030,Variable AccessLevelType,15031,DataType AccessLevelType_OptionSetValues,15032,Variable EventNotifierType,15033,DataType EventNotifierType_OptionSetValues,15034,Variable AccessRestrictionType_OptionSetValues,15035,Variable AttributeWriteMask_OptionSetValues,15036,Variable OpcUa_BinarySchema_Deprecated,15037,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodInputValues,15038,Variable OpcUa_XmlSchema_Deprecated,15039,Variable ProgramStateMachineType_ProgramDiagnostics_LastMethodOutputValues,15040,Variable KeyValuePair_Encoding_DefaultJson,15041,Object IdentityMappingRuleType_Encoding_DefaultJson,15042,Object SecurityGroupFolderType_SecurityGroupName_Placeholder_MaxPastKeyCount,15043,Variable TrustListDataType_Encoding_DefaultJson,15044,Object DecimalDataType_Encoding_DefaultJson,15045,Object SecurityGroupType_KeyLifetime,15046,Variable SecurityGroupType_SecurityPolicyUri,15047,Variable SecurityGroupType_MaxFutureKeyCount,15048,Variable ConfigurationVersionDataType_Encoding_DefaultJson,15049,Object DataSetMetaDataType_Encoding_DefaultJson,15050,Object FieldMetaData_Encoding_DefaultJson,15051,Object PublishedEventsType_ModifyFieldSelection,15052,Method PublishedEventsType_ModifyFieldSelection_InputArguments,15053,Variable PublishedEventsTypeModifyFieldSelectionMethodType,15054,Method PublishedEventsTypeModifyFieldSelectionMethodType_InputArguments,15055,Variable SecurityGroupType_MaxPastKeyCount,15056,Variable DataTypeDescription_Encoding_DefaultJson,15057,Object StructureDescription_Encoding_DefaultJson,15058,Object EnumDescription_Encoding_DefaultJson,15059,Object PublishedVariableDataType_Encoding_DefaultJson,15060,Object FieldTargetDataType_Encoding_DefaultJson,15061,Object RolePermissionType_Encoding_DefaultJson,15062,Object DataTypeDefinition_Encoding_DefaultJson,15063,Object DatagramConnectionTransportType,15064,ObjectType StructureField_Encoding_DefaultJson,15065,Object StructureDefinition_Encoding_DefaultJson,15066,Object EnumDefinition_Encoding_DefaultJson,15067,Object Node_Encoding_DefaultJson,15068,Object InstanceNode_Encoding_DefaultJson,15069,Object TypeNode_Encoding_DefaultJson,15070,Object ObjectNode_Encoding_DefaultJson,15071,Object DatagramConnectionTransportType_DiscoveryAddress,15072,Object ObjectTypeNode_Encoding_DefaultJson,15073,Object VariableNode_Encoding_DefaultJson,15074,Object VariableTypeNode_Encoding_DefaultJson,15075,Object ReferenceTypeNode_Encoding_DefaultJson,15076,Object MethodNode_Encoding_DefaultJson,15077,Object ViewNode_Encoding_DefaultJson,15078,Object DataTypeNode_Encoding_DefaultJson,15079,Object ReferenceNode_Encoding_DefaultJson,15080,Object Argument_Encoding_DefaultJson,15081,Object EnumValueType_Encoding_DefaultJson,15082,Object EnumField_Encoding_DefaultJson,15083,Object OptionSet_Encoding_DefaultJson,15084,Object Union_Encoding_DefaultJson,15085,Object TimeZoneDataType_Encoding_DefaultJson,15086,Object ApplicationDescription_Encoding_DefaultJson,15087,Object RequestHeader_Encoding_DefaultJson,15088,Object ResponseHeader_Encoding_DefaultJson,15089,Object ServiceFault_Encoding_DefaultJson,15090,Object SessionlessInvokeRequestType_Encoding_DefaultJson,15091,Object SessionlessInvokeResponseType_Encoding_DefaultJson,15092,Object FindServersRequest_Encoding_DefaultJson,15093,Object FindServersResponse_Encoding_DefaultJson,15094,Object ServerOnNetwork_Encoding_DefaultJson,15095,Object FindServersOnNetworkRequest_Encoding_DefaultJson,15096,Object FindServersOnNetworkResponse_Encoding_DefaultJson,15097,Object UserTokenPolicy_Encoding_DefaultJson,15098,Object EndpointDescription_Encoding_DefaultJson,15099,Object GetEndpointsRequest_Encoding_DefaultJson,15100,Object GetEndpointsResponse_Encoding_DefaultJson,15101,Object RegisteredServer_Encoding_DefaultJson,15102,Object RegisterServerRequest_Encoding_DefaultJson,15103,Object RegisterServerResponse_Encoding_DefaultJson,15104,Object DiscoveryConfiguration_Encoding_DefaultJson,15105,Object MdnsDiscoveryConfiguration_Encoding_DefaultJson,15106,Object RegisterServer2Request_Encoding_DefaultJson,15107,Object SubscribedDataSetType,15108,ObjectType SubscribedDataSetType_DataSetMetaData,15109,Variable SubscribedDataSetType_MessageReceiveTimeout,15110,Variable TargetVariablesType,15111,ObjectType TargetVariablesType_DataSetMetaData,15112,Variable TargetVariablesType_MessageReceiveTimeout,15113,Variable TargetVariablesType_TargetVariables,15114,Variable TargetVariablesType_AddTargetVariables,15115,Method TargetVariablesType_AddTargetVariables_InputArguments,15116,Variable TargetVariablesType_AddTargetVariables_OutputArguments,15117,Variable TargetVariablesType_RemoveTargetVariables,15118,Method TargetVariablesType_RemoveTargetVariables_InputArguments,15119,Variable TargetVariablesType_RemoveTargetVariables_OutputArguments,15120,Variable TargetVariablesTypeAddTargetVariablesMethodType,15121,Method TargetVariablesTypeAddTargetVariablesMethodType_InputArguments,15122,Variable TargetVariablesTypeAddTargetVariablesMethodType_OutputArguments,15123,Variable TargetVariablesTypeRemoveTargetVariablesMethodType,15124,Method TargetVariablesTypeRemoveTargetVariablesMethodType_InputArguments,15125,Variable TargetVariablesTypeRemoveTargetVariablesMethodType_OutputArguments,15126,Variable SubscribedDataSetMirrorType,15127,ObjectType SubscribedDataSetMirrorType_DataSetMetaData,15128,Variable SubscribedDataSetMirrorType_MessageReceiveTimeout,15129,Variable RegisterServer2Response_Encoding_DefaultJson,15130,Object ChannelSecurityToken_Encoding_DefaultJson,15131,Object OpenSecureChannelRequest_Encoding_DefaultJson,15132,Object OpenSecureChannelResponse_Encoding_DefaultJson,15133,Object CloseSecureChannelRequest_Encoding_DefaultJson,15134,Object CloseSecureChannelResponse_Encoding_DefaultJson,15135,Object SignedSoftwareCertificate_Encoding_DefaultJson,15136,Object SignatureData_Encoding_DefaultJson,15137,Object CreateSessionRequest_Encoding_DefaultJson,15138,Object CreateSessionResponse_Encoding_DefaultJson,15139,Object UserIdentityToken_Encoding_DefaultJson,15140,Object AnonymousIdentityToken_Encoding_DefaultJson,15141,Object UserNameIdentityToken_Encoding_DefaultJson,15142,Object X509IdentityToken_Encoding_DefaultJson,15143,Object IssuedIdentityToken_Encoding_DefaultJson,15144,Object ActivateSessionRequest_Encoding_DefaultJson,15145,Object ActivateSessionResponse_Encoding_DefaultJson,15146,Object CloseSessionRequest_Encoding_DefaultJson,15147,Object CloseSessionResponse_Encoding_DefaultJson,15148,Object CancelRequest_Encoding_DefaultJson,15149,Object CancelResponse_Encoding_DefaultJson,15150,Object NodeAttributes_Encoding_DefaultJson,15151,Object ObjectAttributes_Encoding_DefaultJson,15152,Object VariableAttributes_Encoding_DefaultJson,15153,Object DatagramConnectionTransportType_DiscoveryAddress_NetworkInterface,15154,Variable BrokerConnectionTransportType,15155,ObjectType BrokerConnectionTransportType_ResourceUri,15156,Variable MethodAttributes_Encoding_DefaultJson,15157,Object ObjectTypeAttributes_Encoding_DefaultJson,15158,Object VariableTypeAttributes_Encoding_DefaultJson,15159,Object ReferenceTypeAttributes_Encoding_DefaultJson,15160,Object DataTypeAttributes_Encoding_DefaultJson,15161,Object ViewAttributes_Encoding_DefaultJson,15162,Object GenericAttributeValue_Encoding_DefaultJson,15163,Object GenericAttributes_Encoding_DefaultJson,15164,Object AddNodesItem_Encoding_DefaultJson,15165,Object AddNodesResult_Encoding_DefaultJson,15166,Object AddNodesRequest_Encoding_DefaultJson,15167,Object AddNodesResponse_Encoding_DefaultJson,15168,Object AddReferencesItem_Encoding_DefaultJson,15169,Object AddReferencesRequest_Encoding_DefaultJson,15170,Object AddReferencesResponse_Encoding_DefaultJson,15171,Object DeleteNodesItem_Encoding_DefaultJson,15172,Object DeleteNodesRequest_Encoding_DefaultJson,15173,Object DeleteNodesResponse_Encoding_DefaultJson,15174,Object DeleteReferencesItem_Encoding_DefaultJson,15175,Object DeleteReferencesRequest_Encoding_DefaultJson,15176,Object DeleteReferencesResponse_Encoding_DefaultJson,15177,Object BrokerConnectionTransportType_AuthenticationProfileUri,15178,Variable ViewDescription_Encoding_DefaultJson,15179,Object BrowseDescription_Encoding_DefaultJson,15180,Object ReferenceDescription_Encoding_DefaultJson,15182,Object BrowseResult_Encoding_DefaultJson,15183,Object BrowseRequest_Encoding_DefaultJson,15184,Object BrowseResponse_Encoding_DefaultJson,15185,Object BrowseNextRequest_Encoding_DefaultJson,15186,Object BrowseNextResponse_Encoding_DefaultJson,15187,Object RelativePathElement_Encoding_DefaultJson,15188,Object RelativePath_Encoding_DefaultJson,15189,Object BrowsePath_Encoding_DefaultJson,15190,Object BrowsePathTarget_Encoding_DefaultJson,15191,Object BrowsePathResult_Encoding_DefaultJson,15192,Object TranslateBrowsePathsToNodeIdsRequest_Encoding_DefaultJson,15193,Object TranslateBrowsePathsToNodeIdsResponse_Encoding_DefaultJson,15194,Object RegisterNodesRequest_Encoding_DefaultJson,15195,Object RegisterNodesResponse_Encoding_DefaultJson,15196,Object UnregisterNodesRequest_Encoding_DefaultJson,15197,Object UnregisterNodesResponse_Encoding_DefaultJson,15198,Object EndpointConfiguration_Encoding_DefaultJson,15199,Object QueryDataDescription_Encoding_DefaultJson,15200,Object NodeTypeDescription_Encoding_DefaultJson,15201,Object QueryDataSet_Encoding_DefaultJson,15202,Object NodeReference_Encoding_DefaultJson,15203,Object ContentFilterElement_Encoding_DefaultJson,15204,Object ContentFilter_Encoding_DefaultJson,15205,Object FilterOperand_Encoding_DefaultJson,15206,Object ElementOperand_Encoding_DefaultJson,15207,Object LiteralOperand_Encoding_DefaultJson,15208,Object AttributeOperand_Encoding_DefaultJson,15209,Object SimpleAttributeOperand_Encoding_DefaultJson,15210,Object ContentFilterElementResult_Encoding_DefaultJson,15211,Object PublishSubscribeType_GetSecurityKeys,15212,Method PublishSubscribeType_GetSecurityKeys_InputArguments,15213,Variable PublishSubscribeType_GetSecurityKeys_OutputArguments,15214,Variable PublishSubscribe_GetSecurityKeys,15215,Method PublishSubscribe_GetSecurityKeys_InputArguments,15216,Variable PublishSubscribe_GetSecurityKeys_OutputArguments,15217,Variable GetSecurityKeysMethodType,15218,Method GetSecurityKeysMethodType_InputArguments,15219,Variable GetSecurityKeysMethodType_OutputArguments,15220,Variable DataSetFolderType_PublishedDataSetName_Placeholder_DataSetMetaData,15221,Variable PublishedDataSetType_DataSetWriterName_Placeholder,15222,Object PublishedDataSetType_DataSetWriterName_Placeholder_Status,15223,Object PublishedDataSetType_DataSetWriterName_Placeholder_Status_State,15224,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Status_Enable,15225,Method PublishedDataSetType_DataSetWriterName_Placeholder_Status_Disable,15226,Method PublishedDataSetType_DataSetWriterName_Placeholder_TransportSettings,15227,Object ContentFilterResult_Encoding_DefaultJson,15228,Object PublishedDataSetType_DataSetMetaData,15229,Variable PublishedDataItemsType_DataSetWriterName_Placeholder,15230,Object PublishedDataItemsType_DataSetWriterName_Placeholder_Status,15231,Object PublishedDataItemsType_DataSetWriterName_Placeholder_Status_State,15232,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Status_Enable,15233,Method PublishedDataItemsType_DataSetWriterName_Placeholder_Status_Disable,15234,Method PublishedDataItemsType_DataSetWriterName_Placeholder_TransportSettings,15235,Object ParsingResult_Encoding_DefaultJson,15236,Object PublishedDataItemsType_DataSetMetaData,15237,Variable PublishedEventsType_DataSetWriterName_Placeholder,15238,Object PublishedEventsType_DataSetWriterName_Placeholder_Status,15239,Object PublishedEventsType_DataSetWriterName_Placeholder_Status_State,15240,Variable PublishedEventsType_DataSetWriterName_Placeholder_Status_Enable,15241,Method PublishedEventsType_DataSetWriterName_Placeholder_Status_Disable,15242,Method PublishedEventsType_DataSetWriterName_Placeholder_TransportSettings,15243,Object QueryFirstRequest_Encoding_DefaultJson,15244,Object PublishedEventsType_DataSetMetaData,15245,Variable BrokerWriterGroupTransportType_ResourceUri,15246,Variable BrokerWriterGroupTransportType_AuthenticationProfileUri,15247,Variable BrokerWriterGroupTransportType_RequestedDeliveryGuarantee,15249,Variable BrokerDataSetWriterTransportType_ResourceUri,15250,Variable BrokerDataSetWriterTransportType_AuthenticationProfileUri,15251,Variable QueryFirstResponse_Encoding_DefaultJson,15252,Object QueryNextRequest_Encoding_DefaultJson,15254,Object QueryNextResponse_Encoding_DefaultJson,15255,Object ReadValueId_Encoding_DefaultJson,15256,Object ReadRequest_Encoding_DefaultJson,15257,Object ReadResponse_Encoding_DefaultJson,15258,Object HistoryReadValueId_Encoding_DefaultJson,15259,Object HistoryReadResult_Encoding_DefaultJson,15260,Object HistoryReadDetails_Encoding_DefaultJson,15261,Object ReadEventDetails_Encoding_DefaultJson,15262,Object ReadRawModifiedDetails_Encoding_DefaultJson,15263,Object ReadProcessedDetails_Encoding_DefaultJson,15264,Object PubSubGroupType_Status,15265,Object PubSubGroupType_Status_State,15266,Variable PubSubGroupType_Status_Enable,15267,Method PubSubGroupType_Status_Disable,15268,Method ReadAtTimeDetails_Encoding_DefaultJson,15269,Object HistoryData_Encoding_DefaultJson,15270,Object ModificationInfo_Encoding_DefaultJson,15271,Object HistoryModifiedData_Encoding_DefaultJson,15272,Object HistoryEvent_Encoding_DefaultJson,15273,Object HistoryReadRequest_Encoding_DefaultJson,15274,Object HistoryReadResponse_Encoding_DefaultJson,15275,Object WriteValue_Encoding_DefaultJson,15276,Object WriteRequest_Encoding_DefaultJson,15277,Object WriteResponse_Encoding_DefaultJson,15278,Object HistoryUpdateDetails_Encoding_DefaultJson,15279,Object UpdateDataDetails_Encoding_DefaultJson,15280,Object UpdateStructureDataDetails_Encoding_DefaultJson,15281,Object UpdateEventDetails_Encoding_DefaultJson,15282,Object DeleteRawModifiedDetails_Encoding_DefaultJson,15283,Object DeleteAtTimeDetails_Encoding_DefaultJson,15284,Object DeleteEventDetails_Encoding_DefaultJson,15285,Object HistoryUpdateResult_Encoding_DefaultJson,15286,Object HistoryUpdateRequest_Encoding_DefaultJson,15287,Object HistoryUpdateResponse_Encoding_DefaultJson,15288,Object CallMethodRequest_Encoding_DefaultJson,15289,Object CallMethodResult_Encoding_DefaultJson,15290,Object CallRequest_Encoding_DefaultJson,15291,Object CallResponse_Encoding_DefaultJson,15292,Object MonitoringFilter_Encoding_DefaultJson,15293,Object DataChangeFilter_Encoding_DefaultJson,15294,Object EventFilter_Encoding_DefaultJson,15295,Object HasDataSetWriter,15296,ReferenceType HasDataSetReader,15297,ReferenceType DataSetWriterType,15298,ObjectType DataSetWriterType_Status,15299,Object DataSetWriterType_Status_State,15300,Variable DataSetWriterType_Status_Enable,15301,Method DataSetWriterType_Status_Disable,15302,Method DataSetWriterType_TransportSettings,15303,Object AggregateConfiguration_Encoding_DefaultJson,15304,Object DataSetWriterTransportType,15305,ObjectType DataSetReaderType,15306,ObjectType DataSetReaderType_Status,15307,Object DataSetReaderType_Status_State,15308,Variable DataSetReaderType_Status_Enable,15309,Method DataSetReaderType_Status_Disable,15310,Method DataSetReaderType_TransportSettings,15311,Object AggregateFilter_Encoding_DefaultJson,15312,Object MonitoringFilterResult_Encoding_DefaultJson,15313,Object EventFilterResult_Encoding_DefaultJson,15314,Object AggregateFilterResult_Encoding_DefaultJson,15315,Object DataSetReaderType_SubscribedDataSet,15316,Object DataSetReaderType_SubscribedDataSet_DataSetMetaData,15317,Variable DataSetReaderType_SubscribedDataSet_MessageReceiveTimeout,15318,Variable DataSetReaderTransportType,15319,ObjectType MonitoringParameters_Encoding_DefaultJson,15320,Object MonitoredItemCreateRequest_Encoding_DefaultJson,15321,Object MonitoredItemCreateResult_Encoding_DefaultJson,15322,Object CreateMonitoredItemsRequest_Encoding_DefaultJson,15323,Object CreateMonitoredItemsResponse_Encoding_DefaultJson,15324,Object MonitoredItemModifyRequest_Encoding_DefaultJson,15325,Object MonitoredItemModifyResult_Encoding_DefaultJson,15326,Object ModifyMonitoredItemsRequest_Encoding_DefaultJson,15327,Object ModifyMonitoredItemsResponse_Encoding_DefaultJson,15328,Object SetMonitoringModeRequest_Encoding_DefaultJson,15329,Object BrokerDataSetWriterTransportType_RequestedDeliveryGuarantee,15330,Variable SetMonitoringModeResponse_Encoding_DefaultJson,15331,Object SetTriggeringRequest_Encoding_DefaultJson,15332,Object SetTriggeringResponse_Encoding_DefaultJson,15333,Object BrokerDataSetReaderTransportType_ResourceUri,15334,Variable DeleteMonitoredItemsRequest_Encoding_DefaultJson,15335,Object DeleteMonitoredItemsResponse_Encoding_DefaultJson,15336,Object CreateSubscriptionRequest_Encoding_DefaultJson,15337,Object CreateSubscriptionResponse_Encoding_DefaultJson,15338,Object ModifySubscriptionRequest_Encoding_DefaultJson,15339,Object ModifySubscriptionResponse_Encoding_DefaultJson,15340,Object SetPublishingModeRequest_Encoding_DefaultJson,15341,Object SetPublishingModeResponse_Encoding_DefaultJson,15342,Object NotificationMessage_Encoding_DefaultJson,15343,Object NotificationData_Encoding_DefaultJson,15344,Object DataChangeNotification_Encoding_DefaultJson,15345,Object MonitoredItemNotification_Encoding_DefaultJson,15346,Object EventNotificationList_Encoding_DefaultJson,15347,Object EventFieldList_Encoding_DefaultJson,15348,Object HistoryEventFieldList_Encoding_DefaultJson,15349,Object StatusChangeNotification_Encoding_DefaultJson,15350,Object SubscriptionAcknowledgement_Encoding_DefaultJson,15351,Object PublishRequest_Encoding_DefaultJson,15352,Object PublishResponse_Encoding_DefaultJson,15353,Object RepublishRequest_Encoding_DefaultJson,15354,Object RepublishResponse_Encoding_DefaultJson,15355,Object TransferResult_Encoding_DefaultJson,15356,Object TransferSubscriptionsRequest_Encoding_DefaultJson,15357,Object TransferSubscriptionsResponse_Encoding_DefaultJson,15358,Object DeleteSubscriptionsRequest_Encoding_DefaultJson,15359,Object DeleteSubscriptionsResponse_Encoding_DefaultJson,15360,Object BuildInfo_Encoding_DefaultJson,15361,Object RedundantServerDataType_Encoding_DefaultJson,15362,Object EndpointUrlListDataType_Encoding_DefaultJson,15363,Object NetworkGroupDataType_Encoding_DefaultJson,15364,Object SamplingIntervalDiagnosticsDataType_Encoding_DefaultJson,15365,Object ServerDiagnosticsSummaryDataType_Encoding_DefaultJson,15366,Object ServerStatusDataType_Encoding_DefaultJson,15367,Object SessionDiagnosticsDataType_Encoding_DefaultJson,15368,Object SessionSecurityDiagnosticsDataType_Encoding_DefaultJson,15369,Object ServiceCounterDataType_Encoding_DefaultJson,15370,Object StatusResult_Encoding_DefaultJson,15371,Object SubscriptionDiagnosticsDataType_Encoding_DefaultJson,15372,Object ModelChangeStructureDataType_Encoding_DefaultJson,15373,Object SemanticChangeStructureDataType_Encoding_DefaultJson,15374,Object Range_Encoding_DefaultJson,15375,Object EUInformation_Encoding_DefaultJson,15376,Object ComplexNumberType_Encoding_DefaultJson,15377,Object DoubleComplexNumberType_Encoding_DefaultJson,15378,Object AxisInformation_Encoding_DefaultJson,15379,Object XVType_Encoding_DefaultJson,15380,Object ProgramDiagnosticDataType_Encoding_DefaultJson,15381,Object Annotation_Encoding_DefaultJson,15382,Object ProgramDiagnostic2Type,15383,VariableType ProgramDiagnostic2Type_CreateSessionId,15384,Variable ProgramDiagnostic2Type_CreateClientName,15385,Variable ProgramDiagnostic2Type_InvocationCreationTime,15386,Variable ProgramDiagnostic2Type_LastTransitionTime,15387,Variable ProgramDiagnostic2Type_LastMethodCall,15388,Variable ProgramDiagnostic2Type_LastMethodSessionId,15389,Variable ProgramDiagnostic2Type_LastMethodInputArguments,15390,Variable ProgramDiagnostic2Type_LastMethodOutputArguments,15391,Variable ProgramDiagnostic2Type_LastMethodInputValues,15392,Variable ProgramDiagnostic2Type_LastMethodOutputValues,15393,Variable ProgramDiagnostic2Type_LastMethodCallTime,15394,Variable ProgramDiagnostic2Type_LastMethodReturnStatus,15395,Variable ProgramDiagnostic2DataType,15396,DataType ProgramDiagnostic2DataType_Encoding_DefaultBinary,15397,Object OpcUa_BinarySchema_ProgramDiagnostic2DataType,15398,Variable OpcUa_BinarySchema_ProgramDiagnostic2DataType_DataTypeVersion,15399,Variable OpcUa_BinarySchema_ProgramDiagnostic2DataType_DictionaryFragment,15400,Variable ProgramDiagnostic2DataType_Encoding_DefaultXml,15401,Object OpcUa_XmlSchema_ProgramDiagnostic2DataType,15402,Variable OpcUa_XmlSchema_ProgramDiagnostic2DataType_DataTypeVersion,15403,Variable OpcUa_XmlSchema_ProgramDiagnostic2DataType_DictionaryFragment,15404,Variable ProgramDiagnostic2DataType_Encoding_DefaultJson,15405,Object AccessLevelExType,15406,DataType AccessLevelExType_OptionSetValues,15407,Variable RoleSetType_RoleName_Placeholder_ApplicationsExclude,15408,Variable RoleSetType_RoleName_Placeholder_EndpointsExclude,15409,Variable RoleType_ApplicationsExclude,15410,Variable RoleType_EndpointsExclude,15411,Variable WellKnownRole_Anonymous_ApplicationsExclude,15412,Variable WellKnownRole_Anonymous_EndpointsExclude,15413,Variable WellKnownRole_AuthenticatedUser_ApplicationsExclude,15414,Variable WellKnownRole_AuthenticatedUser_EndpointsExclude,15415,Variable WellKnownRole_Observer_ApplicationsExclude,15416,Variable WellKnownRole_Observer_EndpointsExclude,15417,Variable WellKnownRole_Operator_ApplicationsExclude,15418,Variable BrokerDataSetReaderTransportType_AuthenticationProfileUri,15419,Variable BrokerDataSetReaderTransportType_RequestedDeliveryGuarantee,15420,Variable SimpleTypeDescription_Encoding_DefaultBinary,15421,Object UABinaryFileDataType_Encoding_DefaultBinary,15422,Object WellKnownRole_Operator_EndpointsExclude,15423,Variable WellKnownRole_Engineer_ApplicationsExclude,15424,Variable WellKnownRole_Engineer_EndpointsExclude,15425,Variable WellKnownRole_Supervisor_ApplicationsExclude,15426,Variable WellKnownRole_Supervisor_EndpointsExclude,15427,Variable WellKnownRole_ConfigureAdmin_ApplicationsExclude,15428,Variable WellKnownRole_ConfigureAdmin_EndpointsExclude,15429,Variable WellKnownRole_SecurityAdmin_ApplicationsExclude,15430,Variable PublishSubscribeType_GetSecurityGroup,15431,Method PublishSubscribeType_GetSecurityGroup_InputArguments,15432,Variable PublishSubscribeType_GetSecurityGroup_OutputArguments,15433,Variable PublishSubscribeType_SecurityGroups,15434,Object PublishSubscribeType_SecurityGroups_AddSecurityGroup,15435,Method PublishSubscribeType_SecurityGroups_AddSecurityGroup_InputArguments,15436,Variable PublishSubscribeType_SecurityGroups_AddSecurityGroup_OutputArguments,15437,Variable PublishSubscribeType_SecurityGroups_RemoveSecurityGroup,15438,Method PublishSubscribeType_SecurityGroups_RemoveSecurityGroup_InputArguments,15439,Variable PublishSubscribe_GetSecurityGroup,15440,Method PublishSubscribe_GetSecurityGroup_InputArguments,15441,Variable PublishSubscribe_GetSecurityGroup_OutputArguments,15442,Variable PublishSubscribe_SecurityGroups,15443,Object PublishSubscribe_SecurityGroups_AddSecurityGroup,15444,Method PublishSubscribe_SecurityGroups_AddSecurityGroup_InputArguments,15445,Variable PublishSubscribe_SecurityGroups_AddSecurityGroup_OutputArguments,15446,Variable PublishSubscribe_SecurityGroups_RemoveSecurityGroup,15447,Method PublishSubscribe_SecurityGroups_RemoveSecurityGroup_InputArguments,15448,Variable GetSecurityGroupMethodType,15449,Method GetSecurityGroupMethodType_InputArguments,15450,Variable GetSecurityGroupMethodType_OutputArguments,15451,Variable SecurityGroupFolderType,15452,ObjectType SecurityGroupFolderType_SecurityGroupFolderName_Placeholder,15453,Object SecurityGroupFolderType_SecurityGroupFolderName_Placeholder_AddSecurityGroup,15454,Method SecurityGroupFolderType_SecurityGroupFolderName_Placeholder_AddSecurityGroup_InputArguments,15455,Variable SecurityGroupFolderType_SecurityGroupFolderName_Placeholder_AddSecurityGroup_OutputArguments,15456,Variable SecurityGroupFolderType_SecurityGroupFolderName_Placeholder_RemoveSecurityGroup,15457,Method SecurityGroupFolderType_SecurityGroupFolderName_Placeholder_RemoveSecurityGroup_InputArguments,15458,Variable SecurityGroupFolderType_SecurityGroupName_Placeholder,15459,Object SecurityGroupFolderType_SecurityGroupName_Placeholder_SecurityGroupId,15460,Variable SecurityGroupFolderType_AddSecurityGroup,15461,Method SecurityGroupFolderType_AddSecurityGroup_InputArguments,15462,Variable SecurityGroupFolderType_AddSecurityGroup_OutputArguments,15463,Variable SecurityGroupFolderType_RemoveSecurityGroup,15464,Method SecurityGroupFolderType_RemoveSecurityGroup_InputArguments,15465,Variable AddSecurityGroupMethodType,15466,Method AddSecurityGroupMethodType_InputArguments,15467,Variable AddSecurityGroupMethodType_OutputArguments,15468,Variable RemoveSecurityGroupMethodType,15469,Method RemoveSecurityGroupMethodType_InputArguments,15470,Variable SecurityGroupType,15471,ObjectType SecurityGroupType_SecurityGroupId,15472,Variable DataSetFolderType_PublishedDataSetName_Placeholder_ExtensionFields,15473,Object DataSetFolderType_PublishedDataSetName_Placeholder_ExtensionFields_AddExtensionField,15474,Method DataSetFolderType_PublishedDataSetName_Placeholder_ExtensionFields_AddExtensionField_InputArguments,15475,Variable DataSetFolderType_PublishedDataSetName_Placeholder_ExtensionFields_AddExtensionField_OutputArguments,15476,Variable DataSetFolderType_PublishedDataSetName_Placeholder_ExtensionFields_RemoveExtensionField,15477,Method DataSetFolderType_PublishedDataSetName_Placeholder_ExtensionFields_RemoveExtensionField_InputArguments,15478,Variable BrokerConnectionTransportDataType_Encoding_DefaultBinary,15479,Object WriterGroupDataType,15480,DataType PublishedDataSetType_ExtensionFields,15481,Object PublishedDataSetType_ExtensionFields_AddExtensionField,15482,Method PublishedDataSetType_ExtensionFields_AddExtensionField_InputArguments,15483,Variable PublishedDataSetType_ExtensionFields_AddExtensionField_OutputArguments,15484,Variable PublishedDataSetType_ExtensionFields_RemoveExtensionField,15485,Method PublishedDataSetType_ExtensionFields_RemoveExtensionField_InputArguments,15486,Variable StructureDescription,15487,DataType EnumDescription,15488,DataType ExtensionFieldsType,15489,ObjectType ExtensionFieldsType_ExtensionFieldName_Placeholder,15490,Variable ExtensionFieldsType_AddExtensionField,15491,Method ExtensionFieldsType_AddExtensionField_InputArguments,15492,Variable ExtensionFieldsType_AddExtensionField_OutputArguments,15493,Variable ExtensionFieldsType_RemoveExtensionField,15494,Method ExtensionFieldsType_RemoveExtensionField_InputArguments,15495,Variable AddExtensionFieldMethodType,15496,Method AddExtensionFieldMethodType_InputArguments,15497,Variable AddExtensionFieldMethodType_OutputArguments,15498,Variable RemoveExtensionFieldMethodType,15499,Method RemoveExtensionFieldMethodType_InputArguments,15500,Variable OpcUa_BinarySchema_SimpleTypeDescription,15501,Variable NetworkAddressDataType,15502,DataType PublishedDataItemsType_ExtensionFields,15503,Object PublishedDataItemsType_ExtensionFields_AddExtensionField,15504,Method PublishedDataItemsType_ExtensionFields_AddExtensionField_InputArguments,15505,Variable PublishedDataItemsType_ExtensionFields_AddExtensionField_OutputArguments,15506,Variable PublishedDataItemsType_ExtensionFields_RemoveExtensionField,15507,Method PublishedDataItemsType_ExtensionFields_RemoveExtensionField_InputArguments,15508,Variable OpcUa_BinarySchema_SimpleTypeDescription_DataTypeVersion,15509,Variable NetworkAddressUrlDataType,15510,DataType PublishedEventsType_ExtensionFields,15511,Object PublishedEventsType_ExtensionFields_AddExtensionField,15512,Method PublishedEventsType_ExtensionFields_AddExtensionField_InputArguments,15513,Variable PublishedEventsType_ExtensionFields_AddExtensionField_OutputArguments,15514,Variable PublishedEventsType_ExtensionFields_RemoveExtensionField,15515,Method PublishedEventsType_ExtensionFields_RemoveExtensionField_InputArguments,15516,Variable PublishedEventsType_ModifyFieldSelection_OutputArguments,15517,Variable PublishedEventsTypeModifyFieldSelectionMethodType_OutputArguments,15518,Variable OpcUa_BinarySchema_SimpleTypeDescription_DictionaryFragment,15519,Variable ReaderGroupDataType,15520,DataType OpcUa_BinarySchema_UABinaryFileDataType,15521,Variable OpcUa_BinarySchema_UABinaryFileDataType_DataTypeVersion,15522,Variable OpcUa_BinarySchema_UABinaryFileDataType_DictionaryFragment,15523,Variable OpcUa_BinarySchema_BrokerConnectionTransportDataType,15524,Variable OpcUa_BinarySchema_BrokerConnectionTransportDataType_DataTypeVersion,15525,Variable OpcUa_BinarySchema_BrokerConnectionTransportDataType_DictionaryFragment,15526,Variable WellKnownRole_SecurityAdmin_EndpointsExclude,15527,Variable EndpointType,15528,DataType SimpleTypeDescription_Encoding_DefaultXml,15529,Object PubSubConfigurationDataType,15530,DataType UABinaryFileDataType_Encoding_DefaultXml,15531,Object DatagramWriterGroupTransportDataType,15532,DataType PublishSubscribeType_ConnectionName_Placeholder_Address_NetworkInterface,15533,Variable DataTypeSchemaHeader,15534,DataType PubSubStatusEventType,15535,ObjectType PubSubStatusEventType_EventId,15536,Variable PubSubStatusEventType_EventType,15537,Variable PubSubStatusEventType_SourceNode,15538,Variable PubSubStatusEventType_SourceName,15539,Variable PubSubStatusEventType_Time,15540,Variable PubSubStatusEventType_ReceiveTime,15541,Variable PubSubStatusEventType_LocalTime,15542,Variable PubSubStatusEventType_Message,15543,Variable PubSubStatusEventType_Severity,15544,Variable PubSubStatusEventType_ConnectionId,15545,Variable PubSubStatusEventType_GroupId,15546,Variable PubSubStatusEventType_State,15547,Variable PubSubTransportLimitsExceedEventType,15548,ObjectType PubSubTransportLimitsExceedEventType_EventId,15549,Variable PubSubTransportLimitsExceedEventType_EventType,15550,Variable PubSubTransportLimitsExceedEventType_SourceNode,15551,Variable PubSubTransportLimitsExceedEventType_SourceName,15552,Variable PubSubTransportLimitsExceedEventType_Time,15553,Variable PubSubTransportLimitsExceedEventType_ReceiveTime,15554,Variable PubSubTransportLimitsExceedEventType_LocalTime,15555,Variable PubSubTransportLimitsExceedEventType_Message,15556,Variable PubSubTransportLimitsExceedEventType_Severity,15557,Variable PubSubTransportLimitsExceedEventType_ConnectionId,15558,Variable PubSubTransportLimitsExceedEventType_GroupId,15559,Variable PubSubTransportLimitsExceedEventType_State,15560,Variable PubSubTransportLimitsExceedEventType_Actual,15561,Variable PubSubTransportLimitsExceedEventType_Maximum,15562,Variable PubSubCommunicationFailureEventType,15563,ObjectType PubSubCommunicationFailureEventType_EventId,15564,Variable PubSubCommunicationFailureEventType_EventType,15565,Variable PubSubCommunicationFailureEventType_SourceNode,15566,Variable PubSubCommunicationFailureEventType_SourceName,15567,Variable PubSubCommunicationFailureEventType_Time,15568,Variable PubSubCommunicationFailureEventType_ReceiveTime,15569,Variable PubSubCommunicationFailureEventType_LocalTime,15570,Variable PubSubCommunicationFailureEventType_Message,15571,Variable PubSubCommunicationFailureEventType_Severity,15572,Variable PubSubCommunicationFailureEventType_ConnectionId,15573,Variable PubSubCommunicationFailureEventType_GroupId,15574,Variable PubSubCommunicationFailureEventType_State,15575,Variable PubSubCommunicationFailureEventType_Error,15576,Variable DataSetFieldFlags_OptionSetValues,15577,Variable PublishedDataSetDataType,15578,DataType BrokerConnectionTransportDataType_Encoding_DefaultXml,15579,Object PublishedDataSetSourceDataType,15580,DataType PublishedDataItemsDataType,15581,DataType PublishedEventsDataType,15582,DataType DataSetFieldContentMask,15583,DataType DataSetFieldContentMask_OptionSetValues,15584,Variable OpcUa_XmlSchema_SimpleTypeDescription,15585,Variable OpcUa_XmlSchema_SimpleTypeDescription_DataTypeVersion,15586,Variable OpcUa_XmlSchema_SimpleTypeDescription_DictionaryFragment,15587,Variable OpcUa_XmlSchema_UABinaryFileDataType,15588,Variable StructureDescription_Encoding_DefaultXml,15589,Object EnumDescription_Encoding_DefaultXml,15590,Object OpcUa_XmlSchema_StructureDescription,15591,Variable OpcUa_XmlSchema_StructureDescription_DataTypeVersion,15592,Variable OpcUa_XmlSchema_StructureDescription_DictionaryFragment,15593,Variable OpcUa_XmlSchema_EnumDescription,15594,Variable OpcUa_XmlSchema_EnumDescription_DataTypeVersion,15595,Variable OpcUa_XmlSchema_EnumDescription_DictionaryFragment,15596,Variable DataSetWriterDataType,15597,DataType DataSetWriterTransportDataType,15598,DataType OpcUa_BinarySchema_StructureDescription,15599,Variable OpcUa_BinarySchema_StructureDescription_DataTypeVersion,15600,Variable OpcUa_BinarySchema_StructureDescription_DictionaryFragment,15601,Variable OpcUa_BinarySchema_EnumDescription,15602,Variable OpcUa_BinarySchema_EnumDescription_DataTypeVersion,15603,Variable OpcUa_BinarySchema_EnumDescription_DictionaryFragment,15604,Variable DataSetWriterMessageDataType,15605,DataType Server_ServerCapabilities_Roles,15606,Object RoleSetType,15607,ObjectType RoleSetType_RoleName_Placeholder,15608,Object PubSubGroupDataType,15609,DataType OpcUa_XmlSchema_UABinaryFileDataType_DataTypeVersion,15610,Variable WriterGroupTransportDataType,15611,DataType RoleSetType_RoleName_Placeholder_AddIdentity,15612,Method RoleSetType_RoleName_Placeholder_AddIdentity_InputArguments,15613,Variable RoleSetType_RoleName_Placeholder_RemoveIdentity,15614,Method RoleSetType_RoleName_Placeholder_RemoveIdentity_InputArguments,15615,Variable WriterGroupMessageDataType,15616,DataType PubSubConnectionDataType,15617,DataType ConnectionTransportDataType,15618,DataType OpcUa_XmlSchema_UABinaryFileDataType_DictionaryFragment,15619,Variable RoleType,15620,ObjectType ReaderGroupTransportDataType,15621,DataType ReaderGroupMessageDataType,15622,DataType DataSetReaderDataType,15623,DataType RoleType_AddIdentity,15624,Method RoleType_AddIdentity_InputArguments,15625,Variable RoleType_RemoveIdentity,15626,Method RoleType_RemoveIdentity_InputArguments,15627,Variable DataSetReaderTransportDataType,15628,DataType DataSetReaderMessageDataType,15629,DataType SubscribedDataSetDataType,15630,DataType TargetVariablesDataType,15631,DataType IdentityCriteriaType,15632,DataType IdentityCriteriaType_EnumValues,15633,Variable IdentityMappingRuleType,15634,DataType SubscribedDataSetMirrorDataType,15635,DataType AddIdentityMethodType,15636,Method AddIdentityMethodType_InputArguments,15637,Variable RemoveIdentityMethodType,15638,Method RemoveIdentityMethodType_InputArguments,15639,Variable OpcUa_XmlSchema_BrokerConnectionTransportDataType,15640,Variable DataSetOrderingType_EnumStrings,15641,Variable UadpNetworkMessageContentMask,15642,DataType UadpNetworkMessageContentMask_OptionSetValues,15643,Variable WellKnownRole_Anonymous,15644,Object UadpWriterGroupMessageDataType,15645,DataType UadpDataSetMessageContentMask,15646,DataType UadpDataSetMessageContentMask_OptionSetValues,15647,Variable WellKnownRole_Anonymous_AddIdentity,15648,Method WellKnownRole_Anonymous_AddIdentity_InputArguments,15649,Variable WellKnownRole_Anonymous_RemoveIdentity,15650,Method WellKnownRole_Anonymous_RemoveIdentity_InputArguments,15651,Variable UadpDataSetWriterMessageDataType,15652,DataType UadpDataSetReaderMessageDataType,15653,DataType JsonNetworkMessageContentMask,15654,DataType JsonNetworkMessageContentMask_OptionSetValues,15655,Variable WellKnownRole_AuthenticatedUser,15656,Object JsonWriterGroupMessageDataType,15657,DataType JsonDataSetMessageContentMask,15658,DataType JsonDataSetMessageContentMask_OptionSetValues,15659,Variable WellKnownRole_AuthenticatedUser_AddIdentity,15660,Method WellKnownRole_AuthenticatedUser_AddIdentity_InputArguments,15661,Variable WellKnownRole_AuthenticatedUser_RemoveIdentity,15662,Method WellKnownRole_AuthenticatedUser_RemoveIdentity_InputArguments,15663,Variable JsonDataSetWriterMessageDataType,15664,DataType JsonDataSetReaderMessageDataType,15665,DataType OpcUa_XmlSchema_BrokerConnectionTransportDataType_DataTypeVersion,15666,Variable BrokerWriterGroupTransportDataType,15667,DataType WellKnownRole_Observer,15668,Object BrokerDataSetWriterTransportDataType,15669,DataType BrokerDataSetReaderTransportDataType,15670,DataType EndpointType_Encoding_DefaultBinary,15671,Object WellKnownRole_Observer_AddIdentity,15672,Method WellKnownRole_Observer_AddIdentity_InputArguments,15673,Variable WellKnownRole_Observer_RemoveIdentity,15674,Method WellKnownRole_Observer_RemoveIdentity_InputArguments,15675,Variable DataTypeSchemaHeader_Encoding_DefaultBinary,15676,Object PublishedDataSetDataType_Encoding_DefaultBinary,15677,Object PublishedDataSetSourceDataType_Encoding_DefaultBinary,15678,Object PublishedDataItemsDataType_Encoding_DefaultBinary,15679,Object WellKnownRole_Operator,15680,Object PublishedEventsDataType_Encoding_DefaultBinary,15681,Object DataSetWriterDataType_Encoding_DefaultBinary,15682,Object DataSetWriterTransportDataType_Encoding_DefaultBinary,15683,Object WellKnownRole_Operator_AddIdentity,15684,Method WellKnownRole_Operator_AddIdentity_InputArguments,15685,Variable WellKnownRole_Operator_RemoveIdentity,15686,Method WellKnownRole_Operator_RemoveIdentity_InputArguments,15687,Variable DataSetWriterMessageDataType_Encoding_DefaultBinary,15688,Object PubSubGroupDataType_Encoding_DefaultBinary,15689,Object OpcUa_XmlSchema_BrokerConnectionTransportDataType_DictionaryFragment,15690,Variable WriterGroupTransportDataType_Encoding_DefaultBinary,15691,Object WellKnownRole_Supervisor,15692,Object WriterGroupMessageDataType_Encoding_DefaultBinary,15693,Object PubSubConnectionDataType_Encoding_DefaultBinary,15694,Object ConnectionTransportDataType_Encoding_DefaultBinary,15695,Object WellKnownRole_Supervisor_AddIdentity,15696,Method WellKnownRole_Supervisor_AddIdentity_InputArguments,15697,Variable WellKnownRole_Supervisor_RemoveIdentity,15698,Method WellKnownRole_Supervisor_RemoveIdentity_InputArguments,15699,Variable SimpleTypeDescription_Encoding_DefaultJson,15700,Object ReaderGroupTransportDataType_Encoding_DefaultBinary,15701,Object ReaderGroupMessageDataType_Encoding_DefaultBinary,15702,Object DataSetReaderDataType_Encoding_DefaultBinary,15703,Object WellKnownRole_SecurityAdmin,15704,Object DataSetReaderTransportDataType_Encoding_DefaultBinary,15705,Object DataSetReaderMessageDataType_Encoding_DefaultBinary,15706,Object SubscribedDataSetDataType_Encoding_DefaultBinary,15707,Object WellKnownRole_SecurityAdmin_AddIdentity,15708,Method WellKnownRole_SecurityAdmin_AddIdentity_InputArguments,15709,Variable WellKnownRole_SecurityAdmin_RemoveIdentity,15710,Method WellKnownRole_SecurityAdmin_RemoveIdentity_InputArguments,15711,Variable TargetVariablesDataType_Encoding_DefaultBinary,15712,Object SubscribedDataSetMirrorDataType_Encoding_DefaultBinary,15713,Object UABinaryFileDataType_Encoding_DefaultJson,15714,Object UadpWriterGroupMessageDataType_Encoding_DefaultBinary,15715,Object WellKnownRole_ConfigureAdmin,15716,Object UadpDataSetWriterMessageDataType_Encoding_DefaultBinary,15717,Object UadpDataSetReaderMessageDataType_Encoding_DefaultBinary,15718,Object JsonWriterGroupMessageDataType_Encoding_DefaultBinary,15719,Object WellKnownRole_ConfigureAdmin_AddIdentity,15720,Method WellKnownRole_ConfigureAdmin_AddIdentity_InputArguments,15721,Variable WellKnownRole_ConfigureAdmin_RemoveIdentity,15722,Method WellKnownRole_ConfigureAdmin_RemoveIdentity_InputArguments,15723,Variable JsonDataSetWriterMessageDataType_Encoding_DefaultBinary,15724,Object JsonDataSetReaderMessageDataType_Encoding_DefaultBinary,15725,Object BrokerConnectionTransportDataType_Encoding_DefaultJson,15726,Object BrokerWriterGroupTransportDataType_Encoding_DefaultBinary,15727,Object IdentityMappingRuleType_Encoding_DefaultXml,15728,Object BrokerDataSetWriterTransportDataType_Encoding_DefaultBinary,15729,Object OpcUa_XmlSchema_IdentityMappingRuleType,15730,Variable OpcUa_XmlSchema_IdentityMappingRuleType_DataTypeVersion,15731,Variable OpcUa_XmlSchema_IdentityMappingRuleType_DictionaryFragment,15732,Variable BrokerDataSetReaderTransportDataType_Encoding_DefaultBinary,15733,Object OpcUa_BinarySchema_EndpointType,15734,Variable OpcUa_BinarySchema_EndpointType_DataTypeVersion,15735,Variable IdentityMappingRuleType_Encoding_DefaultBinary,15736,Object OpcUa_BinarySchema_EndpointType_DictionaryFragment,15737,Variable OpcUa_BinarySchema_IdentityMappingRuleType,15738,Variable OpcUa_BinarySchema_IdentityMappingRuleType_DataTypeVersion,15739,Variable OpcUa_BinarySchema_IdentityMappingRuleType_DictionaryFragment,15740,Variable OpcUa_BinarySchema_DataTypeSchemaHeader,15741,Variable OpcUa_BinarySchema_DataTypeSchemaHeader_DataTypeVersion,15742,Variable OpcUa_BinarySchema_DataTypeSchemaHeader_DictionaryFragment,15743,Variable TemporaryFileTransferType,15744,ObjectType TemporaryFileTransferType_ClientProcessingTimeout,15745,Variable TemporaryFileTransferType_GenerateFileForRead,15746,Method TemporaryFileTransferType_GenerateFileForRead_InputArguments,15747,Variable TemporaryFileTransferType_GenerateFileForRead_OutputArguments,15748,Variable TemporaryFileTransferType_GenerateFileForWrite,15749,Method TemporaryFileTransferType_GenerateFileForWrite_OutputArguments,15750,Variable TemporaryFileTransferType_CloseAndCommit,15751,Method TemporaryFileTransferType_CloseAndCommit_InputArguments,15752,Variable TemporaryFileTransferType_CloseAndCommit_OutputArguments,15753,Variable TemporaryFileTransferType_TransferState_Placeholder,15754,Object TemporaryFileTransferType_TransferState_Placeholder_CurrentState,15755,Variable TemporaryFileTransferType_TransferState_Placeholder_CurrentState_Id,15756,Variable TemporaryFileTransferType_TransferState_Placeholder_CurrentState_Name,15757,Variable TemporaryFileTransferType_TransferState_Placeholder_CurrentState_Number,15758,Variable TemporaryFileTransferType_TransferState_Placeholder_CurrentState_EffectiveDisplayName,15759,Variable TemporaryFileTransferType_TransferState_Placeholder_LastTransition,15760,Variable TemporaryFileTransferType_TransferState_Placeholder_LastTransition_Id,15761,Variable TemporaryFileTransferType_TransferState_Placeholder_LastTransition_Name,15762,Variable TemporaryFileTransferType_TransferState_Placeholder_LastTransition_Number,15763,Variable TemporaryFileTransferType_TransferState_Placeholder_LastTransition_TransitionTime,15764,Variable TemporaryFileTransferType_TransferState_Placeholder_LastTransition_EffectiveTransitionTime,15765,Variable OpcUa_BinarySchema_PublishedDataSetDataType,15766,Variable OpcUa_BinarySchema_PublishedDataSetDataType_DataTypeVersion,15767,Variable OpcUa_BinarySchema_PublishedDataSetDataType_DictionaryFragment,15768,Variable OpcUa_BinarySchema_PublishedDataSetSourceDataType,15769,Variable OpcUa_BinarySchema_PublishedDataSetSourceDataType_DataTypeVersion,15770,Variable OpcUa_BinarySchema_PublishedDataSetSourceDataType_DictionaryFragment,15771,Variable OpcUa_BinarySchema_PublishedDataItemsDataType,15772,Variable OpcUa_BinarySchema_PublishedDataItemsDataType_DataTypeVersion,15773,Variable OpcUa_BinarySchema_PublishedDataItemsDataType_DictionaryFragment,15774,Variable OpcUa_BinarySchema_PublishedEventsDataType,15775,Variable OpcUa_BinarySchema_PublishedEventsDataType_DataTypeVersion,15776,Variable OpcUa_BinarySchema_PublishedEventsDataType_DictionaryFragment,15777,Variable OpcUa_BinarySchema_DataSetWriterDataType,15778,Variable OpcUa_BinarySchema_DataSetWriterDataType_DataTypeVersion,15779,Variable OpcUa_BinarySchema_DataSetWriterDataType_DictionaryFragment,15780,Variable OpcUa_BinarySchema_DataSetWriterTransportDataType,15781,Variable OpcUa_BinarySchema_DataSetWriterTransportDataType_DataTypeVersion,15782,Variable OpcUa_BinarySchema_DataSetWriterTransportDataType_DictionaryFragment,15783,Variable OpcUa_BinarySchema_DataSetWriterMessageDataType,15784,Variable OpcUa_BinarySchema_DataSetWriterMessageDataType_DataTypeVersion,15785,Variable OpcUa_BinarySchema_DataSetWriterMessageDataType_DictionaryFragment,15786,Variable OpcUa_BinarySchema_PubSubGroupDataType,15787,Variable OpcUa_BinarySchema_PubSubGroupDataType_DataTypeVersion,15788,Variable OpcUa_BinarySchema_PubSubGroupDataType_DictionaryFragment,15789,Variable PublishSubscribe_ConnectionName_Placeholder,15790,Object PublishSubscribe_ConnectionName_Placeholder_PublisherId,15791,Variable PublishSubscribe_ConnectionName_Placeholder_TransportProfileUri,15792,Variable OpcUa_BinarySchema_WriterGroupTransportDataType,15793,Variable TemporaryFileTransferType_TransferState_Placeholder_Reset,15794,Method GenerateFileForReadMethodType,15795,Method GenerateFileForReadMethodType_InputArguments,15796,Variable GenerateFileForReadMethodType_OutputArguments,15797,Variable GenerateFileForWriteMethodType,15798,Method GenerateFileForWriteMethodType_OutputArguments,15799,Variable CloseAndCommitMethodType,15800,Method CloseAndCommitMethodType_InputArguments,15801,Variable CloseAndCommitMethodType_OutputArguments,15802,Variable FileTransferStateMachineType,15803,ObjectType FileTransferStateMachineType_CurrentState,15804,Variable FileTransferStateMachineType_CurrentState_Id,15805,Variable FileTransferStateMachineType_CurrentState_Name,15806,Variable FileTransferStateMachineType_CurrentState_Number,15807,Variable FileTransferStateMachineType_CurrentState_EffectiveDisplayName,15808,Variable FileTransferStateMachineType_LastTransition,15809,Variable FileTransferStateMachineType_LastTransition_Id,15810,Variable FileTransferStateMachineType_LastTransition_Name,15811,Variable FileTransferStateMachineType_LastTransition_Number,15812,Variable FileTransferStateMachineType_LastTransition_TransitionTime,15813,Variable FileTransferStateMachineType_LastTransition_EffectiveTransitionTime,15814,Variable FileTransferStateMachineType_Idle,15815,Object FileTransferStateMachineType_Idle_StateNumber,15816,Variable FileTransferStateMachineType_ReadPrepare,15817,Object FileTransferStateMachineType_ReadPrepare_StateNumber,15818,Variable FileTransferStateMachineType_ReadTransfer,15819,Object FileTransferStateMachineType_ReadTransfer_StateNumber,15820,Variable FileTransferStateMachineType_ApplyWrite,15821,Object FileTransferStateMachineType_ApplyWrite_StateNumber,15822,Variable FileTransferStateMachineType_Error,15823,Object FileTransferStateMachineType_Error_StateNumber,15824,Variable FileTransferStateMachineType_IdleToReadPrepare,15825,Object FileTransferStateMachineType_IdleToReadPrepare_TransitionNumber,15826,Variable FileTransferStateMachineType_ReadPrepareToReadTransfer,15827,Object FileTransferStateMachineType_ReadPrepareToReadTransfer_TransitionNumber,15828,Variable FileTransferStateMachineType_ReadTransferToIdle,15829,Object FileTransferStateMachineType_ReadTransferToIdle_TransitionNumber,15830,Variable FileTransferStateMachineType_IdleToApplyWrite,15831,Object FileTransferStateMachineType_IdleToApplyWrite_TransitionNumber,15832,Variable FileTransferStateMachineType_ApplyWriteToIdle,15833,Object FileTransferStateMachineType_ApplyWriteToIdle_TransitionNumber,15834,Variable FileTransferStateMachineType_ReadPrepareToError,15835,Object FileTransferStateMachineType_ReadPrepareToError_TransitionNumber,15836,Variable FileTransferStateMachineType_ReadTransferToError,15837,Object FileTransferStateMachineType_ReadTransferToError_TransitionNumber,15838,Variable FileTransferStateMachineType_ApplyWriteToError,15839,Object FileTransferStateMachineType_ApplyWriteToError_TransitionNumber,15840,Variable FileTransferStateMachineType_ErrorToIdle,15841,Object FileTransferStateMachineType_ErrorToIdle_TransitionNumber,15842,Variable FileTransferStateMachineType_Reset,15843,Method PublishSubscribeType_Status,15844,Object PublishSubscribeType_Status_State,15845,Variable PublishSubscribeType_Status_Enable,15846,Method PublishSubscribeType_Status_Disable,15847,Method PublishSubscribe_ConnectionName_Placeholder_TransportProfileUri_Selections,15848,Variable PublishSubscribe_ConnectionName_Placeholder_TransportProfileUri_SelectionDescriptions,15849,Variable PublishSubscribe_ConnectionName_Placeholder_TransportProfileUri_RestrictToList,15850,Variable PublishSubscribe_ConnectionName_Placeholder_Address,15851,Object OpcUa_BinarySchema_WriterGroupTransportDataType_DataTypeVersion,15852,Variable OpcUa_BinarySchema_WriterGroupTransportDataType_DictionaryFragment,15853,Variable OpcUa_BinarySchema_WriterGroupMessageDataType,15854,Variable OpcUa_BinarySchema_WriterGroupMessageDataType_DataTypeVersion,15855,Variable OpcUa_BinarySchema_WriterGroupMessageDataType_DictionaryFragment,15856,Variable OpcUa_BinarySchema_PubSubConnectionDataType,15857,Variable OpcUa_BinarySchema_PubSubConnectionDataType_DataTypeVersion,15858,Variable OpcUa_BinarySchema_PubSubConnectionDataType_DictionaryFragment,15859,Variable OpcUa_BinarySchema_ConnectionTransportDataType,15860,Variable OpcUa_BinarySchema_ConnectionTransportDataType_DataTypeVersion,15861,Variable OpcUa_BinarySchema_ConnectionTransportDataType_DictionaryFragment,15862,Variable PublishSubscribe_ConnectionName_Placeholder_Address_NetworkInterface,15863,Variable PublishSubscribe_ConnectionName_Placeholder_TransportSettings,15864,Object PublishSubscribe_ConnectionName_Placeholder_Status,15865,Object OpcUa_BinarySchema_ReaderGroupTransportDataType,15866,Variable OpcUa_BinarySchema_ReaderGroupTransportDataType_DataTypeVersion,15867,Variable OpcUa_BinarySchema_ReaderGroupTransportDataType_DictionaryFragment,15868,Variable OpcUa_BinarySchema_ReaderGroupMessageDataType,15869,Variable OpcUa_BinarySchema_ReaderGroupMessageDataType_DataTypeVersion,15870,Variable OpcUa_BinarySchema_ReaderGroupMessageDataType_DictionaryFragment,15871,Variable OpcUa_BinarySchema_DataSetReaderDataType,15872,Variable OpcUa_BinarySchema_DataSetReaderDataType_DataTypeVersion,15873,Variable OverrideValueHandling,15874,DataType OverrideValueHandling_EnumStrings,15875,Variable OpcUa_BinarySchema_DataSetReaderDataType_DictionaryFragment,15876,Variable OpcUa_BinarySchema_DataSetReaderTransportDataType,15877,Variable OpcUa_BinarySchema_DataSetReaderTransportDataType_DataTypeVersion,15878,Variable OpcUa_BinarySchema_DataSetReaderTransportDataType_DictionaryFragment,15879,Variable OpcUa_BinarySchema_DataSetReaderMessageDataType,15880,Variable OpcUa_BinarySchema_DataSetReaderMessageDataType_DataTypeVersion,15881,Variable OpcUa_BinarySchema_DataSetReaderMessageDataType_DictionaryFragment,15882,Variable OpcUa_BinarySchema_SubscribedDataSetDataType,15883,Variable OpcUa_BinarySchema_SubscribedDataSetDataType_DataTypeVersion,15884,Variable OpcUa_BinarySchema_SubscribedDataSetDataType_DictionaryFragment,15885,Variable OpcUa_BinarySchema_TargetVariablesDataType,15886,Variable OpcUa_BinarySchema_TargetVariablesDataType_DataTypeVersion,15887,Variable OpcUa_BinarySchema_TargetVariablesDataType_DictionaryFragment,15888,Variable OpcUa_BinarySchema_SubscribedDataSetMirrorDataType,15889,Variable OpcUa_BinarySchema_SubscribedDataSetMirrorDataType_DataTypeVersion,15890,Variable OpcUa_BinarySchema_SubscribedDataSetMirrorDataType_DictionaryFragment,15891,Variable PublishSubscribe_ConnectionName_Placeholder_Status_State,15892,Variable PublishSubscribe_ConnectionName_Placeholder_Status_Enable,15893,Method PublishSubscribe_ConnectionName_Placeholder_Status_Disable,15894,Method OpcUa_BinarySchema_UadpWriterGroupMessageDataType,15895,Variable OpcUa_BinarySchema_UadpWriterGroupMessageDataType_DataTypeVersion,15896,Variable OpcUa_BinarySchema_UadpWriterGroupMessageDataType_DictionaryFragment,15897,Variable OpcUa_BinarySchema_UadpDataSetWriterMessageDataType,15898,Variable OpcUa_BinarySchema_UadpDataSetWriterMessageDataType_DataTypeVersion,15899,Variable OpcUa_BinarySchema_UadpDataSetWriterMessageDataType_DictionaryFragment,15900,Variable SessionlessInvokeRequestType,15901,DataType SessionlessInvokeRequestType_Encoding_DefaultXml,15902,Object SessionlessInvokeRequestType_Encoding_DefaultBinary,15903,Object DataSetFieldFlags,15904,DataType PublishSubscribeType_ConnectionName_Placeholder_TransportSettings,15905,Object PubSubKeyServiceType,15906,ObjectType PubSubKeyServiceType_GetSecurityKeys,15907,Method PubSubKeyServiceType_GetSecurityKeys_InputArguments,15908,Variable PubSubKeyServiceType_GetSecurityKeys_OutputArguments,15909,Variable PubSubKeyServiceType_GetSecurityGroup,15910,Method PubSubKeyServiceType_GetSecurityGroup_InputArguments,15911,Variable PubSubKeyServiceType_GetSecurityGroup_OutputArguments,15912,Variable PubSubKeyServiceType_SecurityGroups,15913,Object PubSubKeyServiceType_SecurityGroups_AddSecurityGroup,15914,Method PubSubKeyServiceType_SecurityGroups_AddSecurityGroup_InputArguments,15915,Variable PubSubKeyServiceType_SecurityGroups_AddSecurityGroup_OutputArguments,15916,Variable PubSubKeyServiceType_SecurityGroups_RemoveSecurityGroup,15917,Method PubSubKeyServiceType_SecurityGroups_RemoveSecurityGroup_InputArguments,15918,Variable OpcUa_BinarySchema_UadpDataSetReaderMessageDataType,15919,Variable OpcUa_BinarySchema_UadpDataSetReaderMessageDataType_DataTypeVersion,15920,Variable OpcUa_BinarySchema_UadpDataSetReaderMessageDataType_DictionaryFragment,15921,Variable OpcUa_BinarySchema_JsonWriterGroupMessageDataType,15922,Variable OpcUa_BinarySchema_JsonWriterGroupMessageDataType_DataTypeVersion,15923,Variable OpcUa_BinarySchema_JsonWriterGroupMessageDataType_DictionaryFragment,15924,Variable OpcUa_BinarySchema_JsonDataSetWriterMessageDataType,15925,Variable PubSubGroupType_SecurityMode,15926,Variable PubSubGroupType_SecurityGroupId,15927,Variable PubSubGroupType_SecurityKeyServices,15928,Variable OpcUa_BinarySchema_JsonDataSetWriterMessageDataType_DataTypeVersion,15929,Variable OpcUa_BinarySchema_JsonDataSetWriterMessageDataType_DictionaryFragment,15930,Variable OpcUa_BinarySchema_JsonDataSetReaderMessageDataType,15931,Variable DataSetReaderType_SecurityMode,15932,Variable DataSetReaderType_SecurityGroupId,15933,Variable DataSetReaderType_SecurityKeyServices,15934,Variable OpcUa_BinarySchema_JsonDataSetReaderMessageDataType_DataTypeVersion,15935,Variable OpcUa_BinarySchema_JsonDataSetReaderMessageDataType_DictionaryFragment,15936,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics,15937,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_DiagnosticsLevel,15938,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalInformation,15939,Variable OpcUa_BinarySchema_BrokerWriterGroupTransportDataType,15940,Variable OpcUa_BinarySchema_BrokerWriterGroupTransportDataType_DataTypeVersion,15941,Variable OpcUa_BinarySchema_BrokerWriterGroupTransportDataType_DictionaryFragment,15942,Variable OpcUa_BinarySchema_BrokerDataSetWriterTransportDataType,15943,Variable OpcUa_BinarySchema_BrokerDataSetWriterTransportDataType_DataTypeVersion,15944,Variable OpcUa_BinarySchema_BrokerDataSetWriterTransportDataType_DictionaryFragment,15945,Variable OpcUa_BinarySchema_BrokerDataSetReaderTransportDataType,15946,Variable OpcUa_BinarySchema_BrokerDataSetReaderTransportDataType_DataTypeVersion,15947,Variable OpcUa_BinarySchema_BrokerDataSetReaderTransportDataType_DictionaryFragment,15948,Variable EndpointType_Encoding_DefaultXml,15949,Object DataTypeSchemaHeader_Encoding_DefaultXml,15950,Object PublishedDataSetDataType_Encoding_DefaultXml,15951,Object PublishedDataSetSourceDataType_Encoding_DefaultXml,15952,Object PublishedDataItemsDataType_Encoding_DefaultXml,15953,Object PublishedEventsDataType_Encoding_DefaultXml,15954,Object DataSetWriterDataType_Encoding_DefaultXml,15955,Object DataSetWriterTransportDataType_Encoding_DefaultXml,15956,Object OPCUANamespaceMetadata,15957,Object OPCUANamespaceMetadata_NamespaceUri,15958,Variable OPCUANamespaceMetadata_NamespaceVersion,15959,Variable OPCUANamespaceMetadata_NamespacePublicationDate,15960,Variable OPCUANamespaceMetadata_IsNamespaceSubset,15961,Variable OPCUANamespaceMetadata_StaticNodeIdTypes,15962,Variable OPCUANamespaceMetadata_StaticNumericNodeIdRange,15963,Variable OPCUANamespaceMetadata_StaticStringNodeIdPattern,15964,Variable OPCUANamespaceMetadata_NamespaceFile,15965,Object OPCUANamespaceMetadata_NamespaceFile_Size,15966,Variable OPCUANamespaceMetadata_NamespaceFile_Writable,15967,Variable OPCUANamespaceMetadata_NamespaceFile_UserWritable,15968,Variable OPCUANamespaceMetadata_NamespaceFile_OpenCount,15969,Variable OPCUANamespaceMetadata_NamespaceFile_MimeType,15970,Variable OPCUANamespaceMetadata_NamespaceFile_Open,15971,Method OPCUANamespaceMetadata_NamespaceFile_Open_InputArguments,15972,Variable OPCUANamespaceMetadata_NamespaceFile_Open_OutputArguments,15973,Variable OPCUANamespaceMetadata_NamespaceFile_Close,15974,Method OPCUANamespaceMetadata_NamespaceFile_Close_InputArguments,15975,Variable OPCUANamespaceMetadata_NamespaceFile_Read,15976,Method OPCUANamespaceMetadata_NamespaceFile_Read_InputArguments,15977,Variable OPCUANamespaceMetadata_NamespaceFile_Read_OutputArguments,15978,Variable OPCUANamespaceMetadata_NamespaceFile_Write,15979,Method OPCUANamespaceMetadata_NamespaceFile_Write_InputArguments,15980,Variable OPCUANamespaceMetadata_NamespaceFile_GetPosition,15981,Method OPCUANamespaceMetadata_NamespaceFile_GetPosition_InputArguments,15982,Variable OPCUANamespaceMetadata_NamespaceFile_GetPosition_OutputArguments,15983,Variable OPCUANamespaceMetadata_NamespaceFile_SetPosition,15984,Method OPCUANamespaceMetadata_NamespaceFile_SetPosition_InputArguments,15985,Variable OPCUANamespaceMetadata_NamespaceFile_ExportNamespace,15986,Method DataSetWriterMessageDataType_Encoding_DefaultXml,15987,Object PubSubGroupDataType_Encoding_DefaultXml,15988,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalInformation_Active,15989,Variable WriterGroupTransportDataType_Encoding_DefaultXml,15990,Object WriterGroupMessageDataType_Encoding_DefaultXml,15991,Object PubSubConnectionDataType_Encoding_DefaultXml,15992,Object ConnectionTransportDataType_Encoding_DefaultXml,15993,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalInformation_Classification,15994,Variable ReaderGroupTransportDataType_Encoding_DefaultXml,15995,Object ReaderGroupMessageDataType_Encoding_DefaultXml,15996,Object RoleSetType_AddRole,15997,Method RoleSetType_AddRole_InputArguments,15998,Variable RoleSetType_AddRole_OutputArguments,15999,Variable RoleSetType_RemoveRole,16000,Method RoleSetType_RemoveRole_InputArguments,16001,Variable AddRoleMethodType,16002,Method AddRoleMethodType_InputArguments,16003,Variable AddRoleMethodType_OutputArguments,16004,Variable RemoveRoleMethodType,16005,Method RemoveRoleMethodType_InputArguments,16006,Variable DataSetReaderDataType_Encoding_DefaultXml,16007,Object DataSetReaderTransportDataType_Encoding_DefaultXml,16008,Object DataSetReaderMessageDataType_Encoding_DefaultXml,16009,Object SubscribedDataSetDataType_Encoding_DefaultXml,16010,Object TargetVariablesDataType_Encoding_DefaultXml,16011,Object SubscribedDataSetMirrorDataType_Encoding_DefaultXml,16012,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,16013,Variable UadpWriterGroupMessageDataType_Encoding_DefaultXml,16014,Object UadpDataSetWriterMessageDataType_Encoding_DefaultXml,16015,Object UadpDataSetReaderMessageDataType_Encoding_DefaultXml,16016,Object JsonWriterGroupMessageDataType_Encoding_DefaultXml,16017,Object JsonDataSetWriterMessageDataType_Encoding_DefaultXml,16018,Object JsonDataSetReaderMessageDataType_Encoding_DefaultXml,16019,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,16020,Variable BrokerWriterGroupTransportDataType_Encoding_DefaultXml,16021,Object BrokerDataSetWriterTransportDataType_Encoding_DefaultXml,16022,Object BrokerDataSetReaderTransportDataType_Encoding_DefaultXml,16023,Object OpcUa_XmlSchema_EndpointType,16024,Variable OpcUa_XmlSchema_EndpointType_DataTypeVersion,16025,Variable OpcUa_XmlSchema_EndpointType_DictionaryFragment,16026,Variable OpcUa_XmlSchema_DataTypeSchemaHeader,16027,Variable OpcUa_XmlSchema_DataTypeSchemaHeader_DataTypeVersion,16028,Variable OpcUa_XmlSchema_DataTypeSchemaHeader_DictionaryFragment,16029,Variable OpcUa_XmlSchema_PublishedDataSetDataType,16030,Variable OpcUa_XmlSchema_PublishedDataSetDataType_DataTypeVersion,16031,Variable OpcUa_XmlSchema_PublishedDataSetDataType_DictionaryFragment,16032,Variable OpcUa_XmlSchema_PublishedDataSetSourceDataType,16033,Variable OpcUa_XmlSchema_PublishedDataSetSourceDataType_DataTypeVersion,16034,Variable OpcUa_XmlSchema_PublishedDataSetSourceDataType_DictionaryFragment,16035,Variable WellKnownRole_Engineer,16036,Object OpcUa_XmlSchema_PublishedDataItemsDataType,16037,Variable OpcUa_XmlSchema_PublishedDataItemsDataType_DataTypeVersion,16038,Variable OpcUa_XmlSchema_PublishedDataItemsDataType_DictionaryFragment,16039,Variable OpcUa_XmlSchema_PublishedEventsDataType,16040,Variable WellKnownRole_Engineer_AddIdentity,16041,Method WellKnownRole_Engineer_AddIdentity_InputArguments,16042,Variable WellKnownRole_Engineer_RemoveIdentity,16043,Method WellKnownRole_Engineer_RemoveIdentity_InputArguments,16044,Variable OpcUa_XmlSchema_PublishedEventsDataType_DataTypeVersion,16045,Variable OpcUa_XmlSchema_PublishedEventsDataType_DictionaryFragment,16046,Variable OpcUa_XmlSchema_DataSetWriterDataType,16047,Variable OpcUa_XmlSchema_DataSetWriterDataType_DataTypeVersion,16048,Variable OpcUa_XmlSchema_DataSetWriterDataType_DictionaryFragment,16049,Variable OpcUa_XmlSchema_DataSetWriterTransportDataType,16050,Variable OpcUa_XmlSchema_DataSetWriterTransportDataType_DataTypeVersion,16051,Variable OpcUa_XmlSchema_DataSetWriterTransportDataType_DictionaryFragment,16052,Variable OpcUa_XmlSchema_DataSetWriterMessageDataType,16053,Variable OpcUa_XmlSchema_DataSetWriterMessageDataType_DataTypeVersion,16054,Variable OpcUa_XmlSchema_DataSetWriterMessageDataType_DictionaryFragment,16055,Variable OpcUa_XmlSchema_PubSubGroupDataType,16056,Variable OpcUa_XmlSchema_PubSubGroupDataType_DataTypeVersion,16057,Variable OpcUa_XmlSchema_PubSubGroupDataType_DictionaryFragment,16058,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalError,16059,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalError_Active,16060,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalError_Classification,16061,Variable OpcUa_XmlSchema_WriterGroupTransportDataType,16062,Variable OpcUa_XmlSchema_WriterGroupTransportDataType_DataTypeVersion,16063,Variable OpcUa_XmlSchema_WriterGroupTransportDataType_DictionaryFragment,16064,Variable OpcUa_XmlSchema_WriterGroupMessageDataType,16065,Variable OpcUa_XmlSchema_WriterGroupMessageDataType_DataTypeVersion,16066,Variable OpcUa_XmlSchema_WriterGroupMessageDataType_DictionaryFragment,16067,Variable OpcUa_XmlSchema_PubSubConnectionDataType,16068,Variable OpcUa_XmlSchema_PubSubConnectionDataType_DataTypeVersion,16069,Variable OpcUa_XmlSchema_PubSubConnectionDataType_DictionaryFragment,16070,Variable OpcUa_XmlSchema_ConnectionTransportDataType,16071,Variable OpcUa_XmlSchema_ConnectionTransportDataType_DataTypeVersion,16072,Variable OpcUa_XmlSchema_ConnectionTransportDataType_DictionaryFragment,16073,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,16074,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_TotalError_TimeFirstChange,16075,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Reset,16076,Method OpcUa_XmlSchema_ReaderGroupTransportDataType,16077,Variable OpcUa_XmlSchema_ReaderGroupTransportDataType_DataTypeVersion,16078,Variable OpcUa_XmlSchema_ReaderGroupTransportDataType_DictionaryFragment,16079,Variable OpcUa_XmlSchema_ReaderGroupMessageDataType,16080,Variable OpcUa_XmlSchema_ReaderGroupMessageDataType_DataTypeVersion,16081,Variable OpcUa_XmlSchema_ReaderGroupMessageDataType_DictionaryFragment,16082,Variable OpcUa_XmlSchema_DataSetReaderDataType,16083,Variable OpcUa_XmlSchema_DataSetReaderDataType_DataTypeVersion,16084,Variable OpcUa_XmlSchema_DataSetReaderDataType_DictionaryFragment,16085,Variable OpcUa_XmlSchema_DataSetReaderTransportDataType,16086,Variable OpcUa_XmlSchema_DataSetReaderTransportDataType_DataTypeVersion,16087,Variable OpcUa_XmlSchema_DataSetReaderTransportDataType_DictionaryFragment,16088,Variable OpcUa_XmlSchema_DataSetReaderMessageDataType,16089,Variable OpcUa_XmlSchema_DataSetReaderMessageDataType_DataTypeVersion,16090,Variable OpcUa_XmlSchema_DataSetReaderMessageDataType_DictionaryFragment,16091,Variable OpcUa_XmlSchema_SubscribedDataSetDataType,16092,Variable OpcUa_XmlSchema_SubscribedDataSetDataType_DataTypeVersion,16093,Variable OpcUa_XmlSchema_SubscribedDataSetDataType_DictionaryFragment,16094,Variable OpcUa_XmlSchema_TargetVariablesDataType,16095,Variable OpcUa_XmlSchema_TargetVariablesDataType_DataTypeVersion,16096,Variable OpcUa_XmlSchema_TargetVariablesDataType_DictionaryFragment,16097,Variable OpcUa_XmlSchema_SubscribedDataSetMirrorDataType,16098,Variable OpcUa_XmlSchema_SubscribedDataSetMirrorDataType_DataTypeVersion,16099,Variable OpcUa_XmlSchema_SubscribedDataSetMirrorDataType_DictionaryFragment,16100,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_SubError,16101,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters,16102,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateError,16103,Variable OpcUa_XmlSchema_UadpWriterGroupMessageDataType,16104,Variable OpcUa_XmlSchema_UadpWriterGroupMessageDataType_DataTypeVersion,16105,Variable OpcUa_XmlSchema_UadpWriterGroupMessageDataType_DictionaryFragment,16106,Variable OpcUa_XmlSchema_UadpDataSetWriterMessageDataType,16107,Variable OpcUa_XmlSchema_UadpDataSetWriterMessageDataType_DataTypeVersion,16108,Variable OpcUa_XmlSchema_UadpDataSetWriterMessageDataType_DictionaryFragment,16109,Variable OpcUa_XmlSchema_UadpDataSetReaderMessageDataType,16110,Variable OpcUa_XmlSchema_UadpDataSetReaderMessageDataType_DataTypeVersion,16111,Variable OpcUa_XmlSchema_UadpDataSetReaderMessageDataType_DictionaryFragment,16112,Variable OpcUa_XmlSchema_JsonWriterGroupMessageDataType,16113,Variable OpcUa_XmlSchema_JsonWriterGroupMessageDataType_DataTypeVersion,16114,Variable OpcUa_XmlSchema_JsonWriterGroupMessageDataType_DictionaryFragment,16115,Variable OpcUa_XmlSchema_JsonDataSetWriterMessageDataType,16116,Variable OpcUa_XmlSchema_JsonDataSetWriterMessageDataType_DataTypeVersion,16117,Variable OpcUa_XmlSchema_JsonDataSetWriterMessageDataType_DictionaryFragment,16118,Variable OpcUa_XmlSchema_JsonDataSetReaderMessageDataType,16119,Variable OpcUa_XmlSchema_JsonDataSetReaderMessageDataType_DataTypeVersion,16120,Variable OpcUa_XmlSchema_JsonDataSetReaderMessageDataType_DictionaryFragment,16121,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateError_Active,16122,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateError_Classification,16123,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,16124,Variable OpcUa_XmlSchema_BrokerWriterGroupTransportDataType,16125,Variable RolePermissionType_Encoding_DefaultXml,16126,Object OpcUa_XmlSchema_RolePermissionType,16127,Variable OpcUa_XmlSchema_RolePermissionType_DataTypeVersion,16128,Variable OpcUa_XmlSchema_RolePermissionType_DictionaryFragment,16129,Variable OpcUa_XmlSchema_BrokerWriterGroupTransportDataType_DataTypeVersion,16130,Variable OpcUa_BinarySchema_RolePermissionType,16131,Variable OpcUa_BinarySchema_RolePermissionType_DataTypeVersion,16132,Variable OpcUa_BinarySchema_RolePermissionType_DictionaryFragment,16133,Variable OPCUANamespaceMetadata_DefaultRolePermissions,16134,Variable OPCUANamespaceMetadata_DefaultUserRolePermissions,16135,Variable OPCUANamespaceMetadata_DefaultAccessRestrictions,16136,Variable NamespaceMetadataType_DefaultRolePermissions,16137,Variable NamespaceMetadataType_DefaultUserRolePermissions,16138,Variable NamespaceMetadataType_DefaultAccessRestrictions,16139,Variable NamespacesType_NamespaceIdentifier_Placeholder_DefaultRolePermissions,16140,Variable NamespacesType_NamespaceIdentifier_Placeholder_DefaultUserRolePermissions,16141,Variable NamespacesType_NamespaceIdentifier_Placeholder_DefaultAccessRestrictions,16142,Variable OpcUa_XmlSchema_BrokerWriterGroupTransportDataType_DictionaryFragment,16143,Variable OpcUa_XmlSchema_BrokerDataSetWriterTransportDataType,16144,Variable OpcUa_XmlSchema_BrokerDataSetWriterTransportDataType_DataTypeVersion,16145,Variable OpcUa_XmlSchema_BrokerDataSetWriterTransportDataType_DictionaryFragment,16146,Variable OpcUa_XmlSchema_BrokerDataSetReaderTransportDataType,16147,Variable OpcUa_XmlSchema_BrokerDataSetReaderTransportDataType_DataTypeVersion,16148,Variable OpcUa_XmlSchema_BrokerDataSetReaderTransportDataType_DictionaryFragment,16149,Variable EndpointType_Encoding_DefaultJson,16150,Object DataTypeSchemaHeader_Encoding_DefaultJson,16151,Object PublishedDataSetDataType_Encoding_DefaultJson,16152,Object PublishedDataSetSourceDataType_Encoding_DefaultJson,16153,Object PublishedDataItemsDataType_Encoding_DefaultJson,16154,Object PublishedEventsDataType_Encoding_DefaultJson,16155,Object DataSetWriterDataType_Encoding_DefaultJson,16156,Object DataSetWriterTransportDataType_Encoding_DefaultJson,16157,Object DataSetWriterMessageDataType_Encoding_DefaultJson,16158,Object PubSubGroupDataType_Encoding_DefaultJson,16159,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,16160,Variable WriterGroupTransportDataType_Encoding_DefaultJson,16161,Object RoleSetType_RoleName_Placeholder_Identities,16162,Variable RoleSetType_RoleName_Placeholder_Applications,16163,Variable RoleSetType_RoleName_Placeholder_Endpoints,16164,Variable RoleSetType_RoleName_Placeholder_AddApplication,16165,Method RoleSetType_RoleName_Placeholder_AddApplication_InputArguments,16166,Variable RoleSetType_RoleName_Placeholder_RemoveApplication,16167,Method RoleSetType_RoleName_Placeholder_RemoveApplication_InputArguments,16168,Variable RoleSetType_RoleName_Placeholder_AddEndpoint,16169,Method RoleSetType_RoleName_Placeholder_AddEndpoint_InputArguments,16170,Variable RoleSetType_RoleName_Placeholder_RemoveEndpoint,16171,Method RoleSetType_RoleName_Placeholder_RemoveEndpoint_InputArguments,16172,Variable RoleType_Identities,16173,Variable RoleType_Applications,16174,Variable RoleType_Endpoints,16175,Variable RoleType_AddApplication,16176,Method RoleType_AddApplication_InputArguments,16177,Variable RoleType_RemoveApplication,16178,Method RoleType_RemoveApplication_InputArguments,16179,Variable RoleType_AddEndpoint,16180,Method RoleType_AddEndpoint_InputArguments,16181,Variable RoleType_RemoveEndpoint,16182,Method RoleType_RemoveEndpoint_InputArguments,16183,Variable AddApplicationMethodType,16184,Method AddApplicationMethodType_InputArguments,16185,Variable RemoveApplicationMethodType,16186,Method RemoveApplicationMethodType_InputArguments,16187,Variable AddEndpointMethodType,16188,Method AddEndpointMethodType_InputArguments,16189,Variable RemoveEndpointMethodType,16190,Method RemoveEndpointMethodType_InputArguments,16191,Variable WellKnownRole_Anonymous_Identities,16192,Variable WellKnownRole_Anonymous_Applications,16193,Variable WellKnownRole_Anonymous_Endpoints,16194,Variable WellKnownRole_Anonymous_AddApplication,16195,Method WellKnownRole_Anonymous_AddApplication_InputArguments,16196,Variable WellKnownRole_Anonymous_RemoveApplication,16197,Method WellKnownRole_Anonymous_RemoveApplication_InputArguments,16198,Variable WellKnownRole_Anonymous_AddEndpoint,16199,Method WellKnownRole_Anonymous_AddEndpoint_InputArguments,16200,Variable WellKnownRole_Anonymous_RemoveEndpoint,16201,Method WellKnownRole_Anonymous_RemoveEndpoint_InputArguments,16202,Variable WellKnownRole_AuthenticatedUser_Identities,16203,Variable WellKnownRole_AuthenticatedUser_Applications,16204,Variable WellKnownRole_AuthenticatedUser_Endpoints,16205,Variable WellKnownRole_AuthenticatedUser_AddApplication,16206,Method WellKnownRole_AuthenticatedUser_AddApplication_InputArguments,16207,Variable WellKnownRole_AuthenticatedUser_RemoveApplication,16208,Method WellKnownRole_AuthenticatedUser_RemoveApplication_InputArguments,16209,Variable WellKnownRole_AuthenticatedUser_AddEndpoint,16210,Method WellKnownRole_AuthenticatedUser_AddEndpoint_InputArguments,16211,Variable WellKnownRole_AuthenticatedUser_RemoveEndpoint,16212,Method WellKnownRole_AuthenticatedUser_RemoveEndpoint_InputArguments,16213,Variable WellKnownRole_Observer_Identities,16214,Variable WellKnownRole_Observer_Applications,16215,Variable WellKnownRole_Observer_Endpoints,16216,Variable WellKnownRole_Observer_AddApplication,16217,Method WellKnownRole_Observer_AddApplication_InputArguments,16218,Variable WellKnownRole_Observer_RemoveApplication,16219,Method WellKnownRole_Observer_RemoveApplication_InputArguments,16220,Variable WellKnownRole_Observer_AddEndpoint,16221,Method WellKnownRole_Observer_AddEndpoint_InputArguments,16222,Variable WellKnownRole_Observer_RemoveEndpoint,16223,Method WellKnownRole_Observer_RemoveEndpoint_InputArguments,16224,Variable WellKnownRole_Operator_Identities,16225,Variable WellKnownRole_Operator_Applications,16226,Variable WellKnownRole_Operator_Endpoints,16227,Variable WellKnownRole_Operator_AddApplication,16228,Method WellKnownRole_Operator_AddApplication_InputArguments,16229,Variable WellKnownRole_Operator_RemoveApplication,16230,Method WellKnownRole_Operator_RemoveApplication_InputArguments,16231,Variable WellKnownRole_Operator_AddEndpoint,16232,Method WellKnownRole_Operator_AddEndpoint_InputArguments,16233,Variable WellKnownRole_Operator_RemoveEndpoint,16234,Method WellKnownRole_Operator_RemoveEndpoint_InputArguments,16235,Variable WellKnownRole_Engineer_Identities,16236,Variable WellKnownRole_Engineer_Applications,16237,Variable WellKnownRole_Engineer_Endpoints,16238,Variable WellKnownRole_Engineer_AddApplication,16239,Method WellKnownRole_Engineer_AddApplication_InputArguments,16240,Variable WellKnownRole_Engineer_RemoveApplication,16241,Method WellKnownRole_Engineer_RemoveApplication_InputArguments,16242,Variable WellKnownRole_Engineer_AddEndpoint,16243,Method WellKnownRole_Engineer_AddEndpoint_InputArguments,16244,Variable WellKnownRole_Engineer_RemoveEndpoint,16245,Method WellKnownRole_Engineer_RemoveEndpoint_InputArguments,16246,Variable WellKnownRole_Supervisor_Identities,16247,Variable WellKnownRole_Supervisor_Applications,16248,Variable WellKnownRole_Supervisor_Endpoints,16249,Variable WellKnownRole_Supervisor_AddApplication,16250,Method WellKnownRole_Supervisor_AddApplication_InputArguments,16251,Variable WellKnownRole_Supervisor_RemoveApplication,16252,Method WellKnownRole_Supervisor_RemoveApplication_InputArguments,16253,Variable WellKnownRole_Supervisor_AddEndpoint,16254,Method WellKnownRole_Supervisor_AddEndpoint_InputArguments,16255,Variable WellKnownRole_Supervisor_RemoveEndpoint,16256,Method WellKnownRole_Supervisor_RemoveEndpoint_InputArguments,16257,Variable WellKnownRole_SecurityAdmin_Identities,16258,Variable WellKnownRole_SecurityAdmin_Applications,16259,Variable WellKnownRole_SecurityAdmin_Endpoints,16260,Variable WellKnownRole_SecurityAdmin_AddApplication,16261,Method WellKnownRole_SecurityAdmin_AddApplication_InputArguments,16262,Variable WellKnownRole_SecurityAdmin_RemoveApplication,16263,Method WellKnownRole_SecurityAdmin_RemoveApplication_InputArguments,16264,Variable WellKnownRole_SecurityAdmin_AddEndpoint,16265,Method WellKnownRole_SecurityAdmin_AddEndpoint_InputArguments,16266,Variable WellKnownRole_SecurityAdmin_RemoveEndpoint,16267,Method WellKnownRole_SecurityAdmin_RemoveEndpoint_InputArguments,16268,Variable WellKnownRole_ConfigureAdmin_Identities,16269,Variable WellKnownRole_ConfigureAdmin_Applications,16270,Variable WellKnownRole_ConfigureAdmin_Endpoints,16271,Variable WellKnownRole_ConfigureAdmin_AddApplication,16272,Method WellKnownRole_ConfigureAdmin_AddApplication_InputArguments,16273,Variable WellKnownRole_ConfigureAdmin_RemoveApplication,16274,Method WellKnownRole_ConfigureAdmin_RemoveApplication_InputArguments,16275,Variable WellKnownRole_ConfigureAdmin_AddEndpoint,16276,Method WellKnownRole_ConfigureAdmin_AddEndpoint_InputArguments,16277,Variable WellKnownRole_ConfigureAdmin_RemoveEndpoint,16278,Method WellKnownRole_ConfigureAdmin_RemoveEndpoint_InputArguments,16279,Variable WriterGroupMessageDataType_Encoding_DefaultJson,16280,Object PubSubConnectionDataType_Encoding_DefaultJson,16281,Object ConnectionTransportDataType_Encoding_DefaultJson,16282,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,16283,Variable ReaderGroupTransportDataType_Encoding_DefaultJson,16284,Object ReaderGroupMessageDataType_Encoding_DefaultJson,16285,Object DataSetReaderDataType_Encoding_DefaultJson,16286,Object DataSetReaderTransportDataType_Encoding_DefaultJson,16287,Object DataSetReaderMessageDataType_Encoding_DefaultJson,16288,Object ServerType_ServerCapabilities_Roles,16289,Object ServerType_ServerCapabilities_Roles_AddRole,16290,Method ServerType_ServerCapabilities_Roles_AddRole_InputArguments,16291,Variable ServerType_ServerCapabilities_Roles_AddRole_OutputArguments,16292,Variable ServerType_ServerCapabilities_Roles_RemoveRole,16293,Method ServerType_ServerCapabilities_Roles_RemoveRole_InputArguments,16294,Variable ServerCapabilitiesType_Roles,16295,Object ServerCapabilitiesType_Roles_AddRole,16296,Method ServerCapabilitiesType_Roles_AddRole_InputArguments,16297,Variable ServerCapabilitiesType_Roles_AddRole_OutputArguments,16298,Variable ServerCapabilitiesType_Roles_RemoveRole,16299,Method ServerCapabilitiesType_Roles_RemoveRole_InputArguments,16300,Variable Server_ServerCapabilities_Roles_AddRole,16301,Method Server_ServerCapabilities_Roles_AddRole_InputArguments,16302,Variable Server_ServerCapabilities_Roles_AddRole_OutputArguments,16303,Variable Server_ServerCapabilities_Roles_RemoveRole,16304,Method Server_ServerCapabilities_Roles_RemoveRole_InputArguments,16305,Variable DefaultInputValues,16306,Variable AudioDataType,16307,DataType SubscribedDataSetDataType_Encoding_DefaultJson,16308,Object SelectionListType,16309,VariableType TargetVariablesDataType_Encoding_DefaultJson,16310,Object SubscribedDataSetMirrorDataType_Encoding_DefaultJson,16311,Object SelectionListType_RestrictToList,16312,Variable Server_CurrentTimeZone,16313,Variable FileSystem,16314,Object FileSystem_FileDirectoryName_Placeholder,16315,Object FileSystem_FileDirectoryName_Placeholder_CreateDirectory,16316,Method FileSystem_FileDirectoryName_Placeholder_CreateDirectory_InputArguments,16317,Variable FileSystem_FileDirectoryName_Placeholder_CreateDirectory_OutputArguments,16318,Variable FileSystem_FileDirectoryName_Placeholder_CreateFile,16319,Method FileSystem_FileDirectoryName_Placeholder_CreateFile_InputArguments,16320,Variable FileSystem_FileDirectoryName_Placeholder_CreateFile_OutputArguments,16321,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,16322,Variable UadpWriterGroupMessageDataType_Encoding_DefaultJson,16323,Object FileSystem_FileDirectoryName_Placeholder_MoveOrCopy,16324,Method FileSystem_FileDirectoryName_Placeholder_MoveOrCopy_InputArguments,16325,Variable FileSystem_FileDirectoryName_Placeholder_MoveOrCopy_OutputArguments,16326,Variable FileSystem_FileName_Placeholder,16327,Object FileSystem_FileName_Placeholder_Size,16328,Variable FileSystem_FileName_Placeholder_Writable,16329,Variable FileSystem_FileName_Placeholder_UserWritable,16330,Variable FileSystem_FileName_Placeholder_OpenCount,16331,Variable FileSystem_FileName_Placeholder_MimeType,16332,Variable FileSystem_FileName_Placeholder_Open,16333,Method FileSystem_FileName_Placeholder_Open_InputArguments,16334,Variable FileSystem_FileName_Placeholder_Open_OutputArguments,16335,Variable FileSystem_FileName_Placeholder_Close,16336,Method FileSystem_FileName_Placeholder_Close_InputArguments,16337,Variable FileSystem_FileName_Placeholder_Read,16338,Method FileSystem_FileName_Placeholder_Read_InputArguments,16339,Variable FileSystem_FileName_Placeholder_Read_OutputArguments,16340,Variable FileSystem_FileName_Placeholder_Write,16341,Method FileSystem_FileName_Placeholder_Write_InputArguments,16342,Variable FileSystem_FileName_Placeholder_GetPosition,16343,Method FileSystem_FileName_Placeholder_GetPosition_InputArguments,16344,Variable FileSystem_FileName_Placeholder_GetPosition_OutputArguments,16345,Variable FileSystem_FileName_Placeholder_SetPosition,16346,Method FileSystem_FileName_Placeholder_SetPosition_InputArguments,16347,Variable FileSystem_CreateDirectory,16348,Method FileSystem_CreateDirectory_InputArguments,16349,Variable FileSystem_CreateDirectory_OutputArguments,16350,Variable FileSystem_CreateFile,16351,Method FileSystem_CreateFile_InputArguments,16352,Variable FileSystem_CreateFile_OutputArguments,16353,Variable FileSystem_DeleteFileSystemObject,16354,Method FileSystem_DeleteFileSystemObject_InputArguments,16355,Variable FileSystem_MoveOrCopy,16356,Method FileSystem_MoveOrCopy_InputArguments,16357,Variable FileSystem_MoveOrCopy_OutputArguments,16358,Variable TemporaryFileTransferType_GenerateFileForWrite_InputArguments,16359,Variable GenerateFileForWriteMethodType_InputArguments,16360,Variable HasAlarmSuppressionGroup,16361,ReferenceType AlarmGroupMember,16362,ReferenceType ConditionType_ConditionSubClassId,16363,Variable ConditionType_ConditionSubClassName,16364,Variable DialogConditionType_ConditionSubClassId,16365,Variable DialogConditionType_ConditionSubClassName,16366,Variable AcknowledgeableConditionType_ConditionSubClassId,16367,Variable AcknowledgeableConditionType_ConditionSubClassName,16368,Variable AlarmConditionType_ConditionSubClassId,16369,Variable AlarmConditionType_ConditionSubClassName,16370,Variable AlarmConditionType_OutOfServiceState,16371,Variable AlarmConditionType_OutOfServiceState_Id,16372,Variable AlarmConditionType_OutOfServiceState_Name,16373,Variable AlarmConditionType_OutOfServiceState_Number,16374,Variable AlarmConditionType_OutOfServiceState_EffectiveDisplayName,16375,Variable AlarmConditionType_OutOfServiceState_TransitionTime,16376,Variable AlarmConditionType_OutOfServiceState_EffectiveTransitionTime,16377,Variable AlarmConditionType_OutOfServiceState_TrueState,16378,Variable AlarmConditionType_OutOfServiceState_FalseState,16379,Variable AlarmConditionType_SilenceState,16380,Variable AlarmConditionType_SilenceState_Id,16381,Variable AlarmConditionType_SilenceState_Name,16382,Variable AlarmConditionType_SilenceState_Number,16383,Variable AlarmConditionType_SilenceState_EffectiveDisplayName,16384,Variable AlarmConditionType_SilenceState_TransitionTime,16385,Variable AlarmConditionType_SilenceState_EffectiveTransitionTime,16386,Variable AlarmConditionType_SilenceState_TrueState,16387,Variable AlarmConditionType_SilenceState_FalseState,16388,Variable AlarmConditionType_AudibleEnabled,16389,Variable AlarmConditionType_AudibleSound,16390,Variable UadpDataSetWriterMessageDataType_Encoding_DefaultJson,16391,Object UadpDataSetReaderMessageDataType_Encoding_DefaultJson,16392,Object JsonWriterGroupMessageDataType_Encoding_DefaultJson,16393,Object JsonDataSetWriterMessageDataType_Encoding_DefaultJson,16394,Object AlarmConditionType_OnDelay,16395,Variable AlarmConditionType_OffDelay,16396,Variable AlarmConditionType_FirstInGroupFlag,16397,Variable AlarmConditionType_FirstInGroup,16398,Object AlarmConditionType_AlarmGroup_Placeholder,16399,Object AlarmConditionType_ReAlarmTime,16400,Variable AlarmConditionType_ReAlarmRepeatCount,16401,Variable AlarmConditionType_Silence,16402,Method AlarmConditionType_Suppress,16403,Method JsonDataSetReaderMessageDataType_Encoding_DefaultJson,16404,Object AlarmGroupType,16405,ObjectType AlarmGroupType_AlarmConditionInstance_Placeholder,16406,Object AlarmGroupType_AlarmConditionInstance_Placeholder_EventId,16407,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EventType,16408,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SourceNode,16409,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SourceName,16410,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Time,16411,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ReceiveTime,16412,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LocalTime,16413,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Message,16414,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Severity,16415,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConditionClassId,16416,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConditionClassName,16417,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConditionSubClassId,16418,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConditionSubClassName,16419,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConditionName,16420,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_BranchId,16421,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Retain,16422,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState,16423,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_Id,16424,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_Name,16425,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_Number,16426,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_EffectiveDisplayName,16427,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_TransitionTime,16428,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_EffectiveTransitionTime,16429,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_TrueState,16430,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_EnabledState_FalseState,16431,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Quality,16432,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Quality_SourceTimestamp,16433,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LastSeverity,16434,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LastSeverity_SourceTimestamp,16435,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Comment,16436,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Comment_SourceTimestamp,16437,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ClientUserId,16438,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Disable,16439,Method AlarmGroupType_AlarmConditionInstance_Placeholder_Enable,16440,Method AlarmGroupType_AlarmConditionInstance_Placeholder_AddComment,16441,Method AlarmGroupType_AlarmConditionInstance_Placeholder_AddComment_InputArguments,16442,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState,16443,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_Id,16444,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_Name,16445,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_Number,16446,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_EffectiveDisplayName,16447,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_TransitionTime,16448,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_EffectiveTransitionTime,16449,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_TrueState,16450,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AckedState_FalseState,16451,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState,16452,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_Id,16453,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_Name,16454,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_Number,16455,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_EffectiveDisplayName,16456,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_TransitionTime,16457,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_EffectiveTransitionTime,16458,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_TrueState,16459,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ConfirmedState_FalseState,16460,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Acknowledge,16461,Method AlarmGroupType_AlarmConditionInstance_Placeholder_Acknowledge_InputArguments,16462,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Confirm,16463,Method AlarmGroupType_AlarmConditionInstance_Placeholder_Confirm_InputArguments,16464,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState,16465,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_Id,16466,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_Name,16467,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_Number,16468,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_EffectiveDisplayName,16469,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_TransitionTime,16470,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_EffectiveTransitionTime,16471,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_TrueState,16472,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ActiveState_FalseState,16473,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_InputNode,16474,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState,16475,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_Id,16476,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_Name,16477,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_Number,16478,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_EffectiveDisplayName,16479,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_TransitionTime,16480,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_EffectiveTransitionTime,16481,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_TrueState,16482,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedState_FalseState,16483,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState,16484,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_Id,16485,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_Name,16486,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_Number,16487,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_EffectiveDisplayName,16488,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_TransitionTime,16489,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_EffectiveTransitionTime,16490,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_TrueState,16491,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OutOfServiceState_FalseState,16492,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState,16493,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_Id,16494,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_Name,16495,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_Number,16496,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_EffectiveDisplayName,16497,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_TransitionTime,16498,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_EffectiveTransitionTime,16499,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_TrueState,16500,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SilenceState_FalseState,16501,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState,16502,Object AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_CurrentState,16503,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_CurrentState_Id,16504,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_CurrentState_Name,16505,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_CurrentState_Number,16506,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_CurrentState_EffectiveDisplayName,16507,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_LastTransition,16508,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_LastTransition_Id,16509,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_LastTransition_Name,16510,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_LastTransition_Number,16511,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_LastTransition_TransitionTime,16512,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_LastTransition_EffectiveTransitionTime,16513,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_UnshelveTime,16514,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_Unshelve,16515,Method AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_OneShotShelve,16516,Method AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_TimedShelve,16517,Method AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_TimedShelve_InputArguments,16518,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_SuppressedOrShelved,16519,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_MaxTimeShelved,16520,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AudibleEnabled,16521,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AudibleSound,16522,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,16523,Variable BrokerWriterGroupTransportDataType_Encoding_DefaultJson,16524,Object BrokerDataSetWriterTransportDataType_Encoding_DefaultJson,16525,Object BrokerDataSetReaderTransportDataType_Encoding_DefaultJson,16526,Object AlarmGroupType_AlarmConditionInstance_Placeholder_OnDelay,16527,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_OffDelay,16528,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_FirstInGroupFlag,16529,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_FirstInGroup,16530,Object AlarmGroupType_AlarmConditionInstance_Placeholder_ReAlarmTime,16531,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ReAlarmRepeatCount,16532,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Silence,16533,Method AlarmGroupType_AlarmConditionInstance_Placeholder_Suppress,16534,Method PublishSubscribeType_ConnectionName_Placeholder_AddWriterGroup,16535,Method LimitAlarmType_ConditionSubClassId,16536,Variable LimitAlarmType_ConditionSubClassName,16537,Variable LimitAlarmType_OutOfServiceState,16538,Variable LimitAlarmType_OutOfServiceState_Id,16539,Variable LimitAlarmType_OutOfServiceState_Name,16540,Variable LimitAlarmType_OutOfServiceState_Number,16541,Variable LimitAlarmType_OutOfServiceState_EffectiveDisplayName,16542,Variable LimitAlarmType_OutOfServiceState_TransitionTime,16543,Variable LimitAlarmType_OutOfServiceState_EffectiveTransitionTime,16544,Variable LimitAlarmType_OutOfServiceState_TrueState,16545,Variable LimitAlarmType_OutOfServiceState_FalseState,16546,Variable LimitAlarmType_SilenceState,16547,Variable LimitAlarmType_SilenceState_Id,16548,Variable LimitAlarmType_SilenceState_Name,16549,Variable LimitAlarmType_SilenceState_Number,16550,Variable LimitAlarmType_SilenceState_EffectiveDisplayName,16551,Variable LimitAlarmType_SilenceState_TransitionTime,16552,Variable LimitAlarmType_SilenceState_EffectiveTransitionTime,16553,Variable LimitAlarmType_SilenceState_TrueState,16554,Variable LimitAlarmType_SilenceState_FalseState,16555,Variable LimitAlarmType_AudibleEnabled,16556,Variable LimitAlarmType_AudibleSound,16557,Variable PublishSubscribeType_ConnectionName_Placeholder_AddWriterGroup_InputArguments,16558,Variable PublishSubscribeType_ConnectionName_Placeholder_AddWriterGroup_OutputArguments,16559,Variable PublishSubscribeType_ConnectionName_Placeholder_AddReaderGroup,16560,Method PublishSubscribeType_ConnectionName_Placeholder_AddReaderGroup_InputArguments,16561,Variable LimitAlarmType_OnDelay,16562,Variable LimitAlarmType_OffDelay,16563,Variable LimitAlarmType_FirstInGroupFlag,16564,Variable LimitAlarmType_FirstInGroup,16565,Object LimitAlarmType_AlarmGroup_Placeholder,16566,Object LimitAlarmType_ReAlarmTime,16567,Variable LimitAlarmType_ReAlarmRepeatCount,16568,Variable LimitAlarmType_Silence,16569,Method LimitAlarmType_Suppress,16570,Method PublishSubscribeType_ConnectionName_Placeholder_AddReaderGroup_OutputArguments,16571,Variable LimitAlarmType_BaseHighHighLimit,16572,Variable LimitAlarmType_BaseHighLimit,16573,Variable LimitAlarmType_BaseLowLimit,16574,Variable LimitAlarmType_BaseLowLowLimit,16575,Variable ExclusiveLimitAlarmType_ConditionSubClassId,16576,Variable ExclusiveLimitAlarmType_ConditionSubClassName,16577,Variable ExclusiveLimitAlarmType_OutOfServiceState,16578,Variable ExclusiveLimitAlarmType_OutOfServiceState_Id,16579,Variable ExclusiveLimitAlarmType_OutOfServiceState_Name,16580,Variable ExclusiveLimitAlarmType_OutOfServiceState_Number,16581,Variable ExclusiveLimitAlarmType_OutOfServiceState_EffectiveDisplayName,16582,Variable ExclusiveLimitAlarmType_OutOfServiceState_TransitionTime,16583,Variable ExclusiveLimitAlarmType_OutOfServiceState_EffectiveTransitionTime,16584,Variable ExclusiveLimitAlarmType_OutOfServiceState_TrueState,16585,Variable ExclusiveLimitAlarmType_OutOfServiceState_FalseState,16586,Variable ExclusiveLimitAlarmType_SilenceState,16587,Variable ExclusiveLimitAlarmType_SilenceState_Id,16588,Variable ExclusiveLimitAlarmType_SilenceState_Name,16589,Variable ExclusiveLimitAlarmType_SilenceState_Number,16590,Variable ExclusiveLimitAlarmType_SilenceState_EffectiveDisplayName,16591,Variable ExclusiveLimitAlarmType_SilenceState_TransitionTime,16592,Variable ExclusiveLimitAlarmType_SilenceState_EffectiveTransitionTime,16593,Variable ExclusiveLimitAlarmType_SilenceState_TrueState,16594,Variable ExclusiveLimitAlarmType_SilenceState_FalseState,16595,Variable ExclusiveLimitAlarmType_AudibleEnabled,16596,Variable ExclusiveLimitAlarmType_AudibleSound,16597,Variable PublishSubscribeType_AddConnection,16598,Method PublishSubscribeType_AddConnection_InputArguments,16599,Variable PublishSubscribeType_AddConnection_OutputArguments,16600,Variable PublishSubscribeType_PublishedDataSets_AddPublishedDataItemsTemplate,16601,Method ExclusiveLimitAlarmType_OnDelay,16602,Variable ExclusiveLimitAlarmType_OffDelay,16603,Variable ExclusiveLimitAlarmType_FirstInGroupFlag,16604,Variable ExclusiveLimitAlarmType_FirstInGroup,16605,Object ExclusiveLimitAlarmType_AlarmGroup_Placeholder,16606,Object ExclusiveLimitAlarmType_ReAlarmTime,16607,Variable ExclusiveLimitAlarmType_ReAlarmRepeatCount,16608,Variable ExclusiveLimitAlarmType_Silence,16609,Method ExclusiveLimitAlarmType_Suppress,16610,Method PublishSubscribeType_PublishedDataSets_AddPublishedDataItemsTemplate_InputArguments,16611,Variable ExclusiveLimitAlarmType_BaseHighHighLimit,16612,Variable ExclusiveLimitAlarmType_BaseHighLimit,16613,Variable ExclusiveLimitAlarmType_BaseLowLimit,16614,Variable ExclusiveLimitAlarmType_BaseLowLowLimit,16615,Variable NonExclusiveLimitAlarmType_ConditionSubClassId,16616,Variable NonExclusiveLimitAlarmType_ConditionSubClassName,16617,Variable NonExclusiveLimitAlarmType_OutOfServiceState,16618,Variable NonExclusiveLimitAlarmType_OutOfServiceState_Id,16619,Variable NonExclusiveLimitAlarmType_OutOfServiceState_Name,16620,Variable NonExclusiveLimitAlarmType_OutOfServiceState_Number,16621,Variable NonExclusiveLimitAlarmType_OutOfServiceState_EffectiveDisplayName,16622,Variable NonExclusiveLimitAlarmType_OutOfServiceState_TransitionTime,16623,Variable NonExclusiveLimitAlarmType_OutOfServiceState_EffectiveTransitionTime,16624,Variable NonExclusiveLimitAlarmType_OutOfServiceState_TrueState,16625,Variable NonExclusiveLimitAlarmType_OutOfServiceState_FalseState,16626,Variable NonExclusiveLimitAlarmType_SilenceState,16627,Variable NonExclusiveLimitAlarmType_SilenceState_Id,16628,Variable NonExclusiveLimitAlarmType_SilenceState_Name,16629,Variable NonExclusiveLimitAlarmType_SilenceState_Number,16630,Variable NonExclusiveLimitAlarmType_SilenceState_EffectiveDisplayName,16631,Variable NonExclusiveLimitAlarmType_SilenceState_TransitionTime,16632,Variable NonExclusiveLimitAlarmType_SilenceState_EffectiveTransitionTime,16633,Variable NonExclusiveLimitAlarmType_SilenceState_TrueState,16634,Variable NonExclusiveLimitAlarmType_SilenceState_FalseState,16635,Variable NonExclusiveLimitAlarmType_AudibleEnabled,16636,Variable NonExclusiveLimitAlarmType_AudibleSound,16637,Variable PublishSubscribeType_PublishedDataSets_AddPublishedDataItemsTemplate_OutputArguments,16638,Variable PublishSubscribeType_PublishedDataSets_AddPublishedEventsTemplate,16639,Method PublishSubscribeType_PublishedDataSets_AddPublishedEventsTemplate_InputArguments,16640,Variable PublishSubscribeType_PublishedDataSets_AddPublishedEventsTemplate_OutputArguments,16641,Variable NonExclusiveLimitAlarmType_OnDelay,16642,Variable NonExclusiveLimitAlarmType_OffDelay,16643,Variable NonExclusiveLimitAlarmType_FirstInGroupFlag,16644,Variable NonExclusiveLimitAlarmType_FirstInGroup,16645,Object NonExclusiveLimitAlarmType_AlarmGroup_Placeholder,16646,Object NonExclusiveLimitAlarmType_ReAlarmTime,16647,Variable NonExclusiveLimitAlarmType_ReAlarmRepeatCount,16648,Variable NonExclusiveLimitAlarmType_Silence,16649,Method NonExclusiveLimitAlarmType_Suppress,16650,Method PublishSubscribeType_PublishedDataSets_AddDataSetFolder,16651,Method NonExclusiveLimitAlarmType_BaseHighHighLimit,16652,Variable NonExclusiveLimitAlarmType_BaseHighLimit,16653,Variable NonExclusiveLimitAlarmType_BaseLowLimit,16654,Variable NonExclusiveLimitAlarmType_BaseLowLowLimit,16655,Variable NonExclusiveLevelAlarmType_ConditionSubClassId,16656,Variable NonExclusiveLevelAlarmType_ConditionSubClassName,16657,Variable NonExclusiveLevelAlarmType_OutOfServiceState,16658,Variable NonExclusiveLevelAlarmType_OutOfServiceState_Id,16659,Variable NonExclusiveLevelAlarmType_OutOfServiceState_Name,16660,Variable NonExclusiveLevelAlarmType_OutOfServiceState_Number,16661,Variable NonExclusiveLevelAlarmType_OutOfServiceState_EffectiveDisplayName,16662,Variable NonExclusiveLevelAlarmType_OutOfServiceState_TransitionTime,16663,Variable NonExclusiveLevelAlarmType_OutOfServiceState_EffectiveTransitionTime,16664,Variable NonExclusiveLevelAlarmType_OutOfServiceState_TrueState,16665,Variable NonExclusiveLevelAlarmType_OutOfServiceState_FalseState,16666,Variable NonExclusiveLevelAlarmType_SilenceState,16667,Variable NonExclusiveLevelAlarmType_SilenceState_Id,16668,Variable NonExclusiveLevelAlarmType_SilenceState_Name,16669,Variable NonExclusiveLevelAlarmType_SilenceState_Number,16670,Variable NonExclusiveLevelAlarmType_SilenceState_EffectiveDisplayName,16671,Variable NonExclusiveLevelAlarmType_SilenceState_TransitionTime,16672,Variable NonExclusiveLevelAlarmType_SilenceState_EffectiveTransitionTime,16673,Variable NonExclusiveLevelAlarmType_SilenceState_TrueState,16674,Variable NonExclusiveLevelAlarmType_SilenceState_FalseState,16675,Variable NonExclusiveLevelAlarmType_AudibleEnabled,16676,Variable NonExclusiveLevelAlarmType_AudibleSound,16677,Variable PublishSubscribeType_PublishedDataSets_AddDataSetFolder_InputArguments,16678,Variable PublishSubscribeType_PublishedDataSets_AddDataSetFolder_OutputArguments,16679,Variable PublishSubscribeType_PublishedDataSets_RemoveDataSetFolder,16680,Method PublishSubscribeType_PublishedDataSets_RemoveDataSetFolder_InputArguments,16681,Variable NonExclusiveLevelAlarmType_OnDelay,16682,Variable NonExclusiveLevelAlarmType_OffDelay,16683,Variable NonExclusiveLevelAlarmType_FirstInGroupFlag,16684,Variable NonExclusiveLevelAlarmType_FirstInGroup,16685,Object NonExclusiveLevelAlarmType_AlarmGroup_Placeholder,16686,Object NonExclusiveLevelAlarmType_ReAlarmTime,16687,Variable NonExclusiveLevelAlarmType_ReAlarmRepeatCount,16688,Variable NonExclusiveLevelAlarmType_Silence,16689,Method NonExclusiveLevelAlarmType_Suppress,16690,Method AddConnectionMethodType,16691,Method NonExclusiveLevelAlarmType_BaseHighHighLimit,16692,Variable NonExclusiveLevelAlarmType_BaseHighLimit,16693,Variable NonExclusiveLevelAlarmType_BaseLowLimit,16694,Variable NonExclusiveLevelAlarmType_BaseLowLowLimit,16695,Variable ExclusiveLevelAlarmType_ConditionSubClassId,16696,Variable ExclusiveLevelAlarmType_ConditionSubClassName,16697,Variable ExclusiveLevelAlarmType_OutOfServiceState,16698,Variable ExclusiveLevelAlarmType_OutOfServiceState_Id,16699,Variable ExclusiveLevelAlarmType_OutOfServiceState_Name,16700,Variable ExclusiveLevelAlarmType_OutOfServiceState_Number,16701,Variable ExclusiveLevelAlarmType_OutOfServiceState_EffectiveDisplayName,16702,Variable ExclusiveLevelAlarmType_OutOfServiceState_TransitionTime,16703,Variable ExclusiveLevelAlarmType_OutOfServiceState_EffectiveTransitionTime,16704,Variable ExclusiveLevelAlarmType_OutOfServiceState_TrueState,16705,Variable ExclusiveLevelAlarmType_OutOfServiceState_FalseState,16706,Variable ExclusiveLevelAlarmType_SilenceState,16707,Variable ExclusiveLevelAlarmType_SilenceState_Id,16708,Variable ExclusiveLevelAlarmType_SilenceState_Name,16709,Variable ExclusiveLevelAlarmType_SilenceState_Number,16710,Variable ExclusiveLevelAlarmType_SilenceState_EffectiveDisplayName,16711,Variable ExclusiveLevelAlarmType_SilenceState_TransitionTime,16712,Variable ExclusiveLevelAlarmType_SilenceState_EffectiveTransitionTime,16713,Variable ExclusiveLevelAlarmType_SilenceState_TrueState,16714,Variable ExclusiveLevelAlarmType_SilenceState_FalseState,16715,Variable ExclusiveLevelAlarmType_AudibleEnabled,16716,Variable ExclusiveLevelAlarmType_AudibleSound,16717,Variable AddConnectionMethodType_InputArguments,16718,Variable AddConnectionMethodType_OutputArguments,16719,Variable PublishedDataSetType_DataSetWriterName_Placeholder_DataSetWriterId,16720,Variable PublishedDataSetType_DataSetWriterName_Placeholder_DataSetFieldContentMask,16721,Variable ExclusiveLevelAlarmType_OnDelay,16722,Variable ExclusiveLevelAlarmType_OffDelay,16723,Variable ExclusiveLevelAlarmType_FirstInGroupFlag,16724,Variable ExclusiveLevelAlarmType_FirstInGroup,16725,Object ExclusiveLevelAlarmType_AlarmGroup_Placeholder,16726,Object ExclusiveLevelAlarmType_ReAlarmTime,16727,Variable ExclusiveLevelAlarmType_ReAlarmRepeatCount,16728,Variable ExclusiveLevelAlarmType_Silence,16729,Method ExclusiveLevelAlarmType_Suppress,16730,Method PublishedDataSetType_DataSetWriterName_Placeholder_KeyFrameCount,16731,Variable ExclusiveLevelAlarmType_BaseHighHighLimit,16732,Variable ExclusiveLevelAlarmType_BaseHighLimit,16733,Variable ExclusiveLevelAlarmType_BaseLowLimit,16734,Variable ExclusiveLevelAlarmType_BaseLowLowLimit,16735,Variable NonExclusiveDeviationAlarmType_ConditionSubClassId,16736,Variable NonExclusiveDeviationAlarmType_ConditionSubClassName,16737,Variable NonExclusiveDeviationAlarmType_OutOfServiceState,16738,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_Id,16739,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_Name,16740,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_Number,16741,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_EffectiveDisplayName,16742,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_TransitionTime,16743,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_EffectiveTransitionTime,16744,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_TrueState,16745,Variable NonExclusiveDeviationAlarmType_OutOfServiceState_FalseState,16746,Variable NonExclusiveDeviationAlarmType_SilenceState,16747,Variable NonExclusiveDeviationAlarmType_SilenceState_Id,16748,Variable NonExclusiveDeviationAlarmType_SilenceState_Name,16749,Variable NonExclusiveDeviationAlarmType_SilenceState_Number,16750,Variable NonExclusiveDeviationAlarmType_SilenceState_EffectiveDisplayName,16751,Variable NonExclusiveDeviationAlarmType_SilenceState_TransitionTime,16752,Variable NonExclusiveDeviationAlarmType_SilenceState_EffectiveTransitionTime,16753,Variable NonExclusiveDeviationAlarmType_SilenceState_TrueState,16754,Variable NonExclusiveDeviationAlarmType_SilenceState_FalseState,16755,Variable NonExclusiveDeviationAlarmType_AudibleEnabled,16756,Variable NonExclusiveDeviationAlarmType_AudibleSound,16757,Variable PublishedDataSetType_DataSetWriterName_Placeholder_MessageSettings,16758,Object PublishedDataSetType_DataSetClassId,16759,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_DataSetWriterId,16760,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_DataSetFieldContentMask,16761,Variable NonExclusiveDeviationAlarmType_OnDelay,16762,Variable NonExclusiveDeviationAlarmType_OffDelay,16763,Variable NonExclusiveDeviationAlarmType_FirstInGroupFlag,16764,Variable NonExclusiveDeviationAlarmType_FirstInGroup,16765,Object NonExclusiveDeviationAlarmType_AlarmGroup_Placeholder,16766,Object NonExclusiveDeviationAlarmType_ReAlarmTime,16767,Variable NonExclusiveDeviationAlarmType_ReAlarmRepeatCount,16768,Variable NonExclusiveDeviationAlarmType_Silence,16769,Method NonExclusiveDeviationAlarmType_Suppress,16770,Method PublishedDataItemsType_DataSetWriterName_Placeholder_KeyFrameCount,16771,Variable NonExclusiveDeviationAlarmType_BaseHighHighLimit,16772,Variable NonExclusiveDeviationAlarmType_BaseHighLimit,16773,Variable NonExclusiveDeviationAlarmType_BaseLowLimit,16774,Variable NonExclusiveDeviationAlarmType_BaseLowLowLimit,16775,Variable NonExclusiveDeviationAlarmType_BaseSetpointNode,16776,Variable ExclusiveDeviationAlarmType_ConditionSubClassId,16777,Variable ExclusiveDeviationAlarmType_ConditionSubClassName,16778,Variable ExclusiveDeviationAlarmType_OutOfServiceState,16779,Variable ExclusiveDeviationAlarmType_OutOfServiceState_Id,16780,Variable ExclusiveDeviationAlarmType_OutOfServiceState_Name,16781,Variable ExclusiveDeviationAlarmType_OutOfServiceState_Number,16782,Variable ExclusiveDeviationAlarmType_OutOfServiceState_EffectiveDisplayName,16783,Variable ExclusiveDeviationAlarmType_OutOfServiceState_TransitionTime,16784,Variable ExclusiveDeviationAlarmType_OutOfServiceState_EffectiveTransitionTime,16785,Variable ExclusiveDeviationAlarmType_OutOfServiceState_TrueState,16786,Variable ExclusiveDeviationAlarmType_OutOfServiceState_FalseState,16787,Variable ExclusiveDeviationAlarmType_SilenceState,16788,Variable ExclusiveDeviationAlarmType_SilenceState_Id,16789,Variable ExclusiveDeviationAlarmType_SilenceState_Name,16790,Variable ExclusiveDeviationAlarmType_SilenceState_Number,16791,Variable ExclusiveDeviationAlarmType_SilenceState_EffectiveDisplayName,16792,Variable ExclusiveDeviationAlarmType_SilenceState_TransitionTime,16793,Variable ExclusiveDeviationAlarmType_SilenceState_EffectiveTransitionTime,16794,Variable ExclusiveDeviationAlarmType_SilenceState_TrueState,16795,Variable ExclusiveDeviationAlarmType_SilenceState_FalseState,16796,Variable ExclusiveDeviationAlarmType_AudibleEnabled,16797,Variable ExclusiveDeviationAlarmType_AudibleSound,16798,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_MessageSettings,16799,Object PublishedDataItemsType_DataSetClassId,16800,Variable PublishedEventsType_DataSetWriterName_Placeholder_DataSetWriterId,16801,Variable PublishedEventsType_DataSetWriterName_Placeholder_DataSetFieldContentMask,16802,Variable ExclusiveDeviationAlarmType_OnDelay,16803,Variable ExclusiveDeviationAlarmType_OffDelay,16804,Variable ExclusiveDeviationAlarmType_FirstInGroupFlag,16805,Variable ExclusiveDeviationAlarmType_FirstInGroup,16806,Object ExclusiveDeviationAlarmType_AlarmGroup_Placeholder,16807,Object ExclusiveDeviationAlarmType_ReAlarmTime,16808,Variable ExclusiveDeviationAlarmType_ReAlarmRepeatCount,16809,Variable ExclusiveDeviationAlarmType_Silence,16810,Method ExclusiveDeviationAlarmType_Suppress,16811,Method PublishedEventsType_DataSetWriterName_Placeholder_KeyFrameCount,16812,Variable ExclusiveDeviationAlarmType_BaseHighHighLimit,16813,Variable ExclusiveDeviationAlarmType_BaseHighLimit,16814,Variable ExclusiveDeviationAlarmType_BaseLowLimit,16815,Variable ExclusiveDeviationAlarmType_BaseLowLowLimit,16816,Variable ExclusiveDeviationAlarmType_BaseSetpointNode,16817,Variable NonExclusiveRateOfChangeAlarmType_ConditionSubClassId,16818,Variable NonExclusiveRateOfChangeAlarmType_ConditionSubClassName,16819,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState,16820,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_Id,16821,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_Name,16822,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_Number,16823,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_EffectiveDisplayName,16824,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_TransitionTime,16825,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_EffectiveTransitionTime,16826,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_TrueState,16827,Variable NonExclusiveRateOfChangeAlarmType_OutOfServiceState_FalseState,16828,Variable NonExclusiveRateOfChangeAlarmType_SilenceState,16829,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_Id,16830,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_Name,16831,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_Number,16832,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_EffectiveDisplayName,16833,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_TransitionTime,16834,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_EffectiveTransitionTime,16835,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_TrueState,16836,Variable NonExclusiveRateOfChangeAlarmType_SilenceState_FalseState,16837,Variable NonExclusiveRateOfChangeAlarmType_AudibleEnabled,16838,Variable NonExclusiveRateOfChangeAlarmType_AudibleSound,16839,Variable PublishedEventsType_DataSetWriterName_Placeholder_MessageSettings,16840,Object PublishedEventsType_DataSetClassId,16841,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedDataItemsTemplate,16842,Method DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedDataItemsTemplate_InputArguments,16843,Variable NonExclusiveRateOfChangeAlarmType_OnDelay,16844,Variable NonExclusiveRateOfChangeAlarmType_OffDelay,16845,Variable NonExclusiveRateOfChangeAlarmType_FirstInGroupFlag,16846,Variable NonExclusiveRateOfChangeAlarmType_FirstInGroup,16847,Object NonExclusiveRateOfChangeAlarmType_AlarmGroup_Placeholder,16848,Object NonExclusiveRateOfChangeAlarmType_ReAlarmTime,16849,Variable NonExclusiveRateOfChangeAlarmType_ReAlarmRepeatCount,16850,Variable NonExclusiveRateOfChangeAlarmType_Silence,16851,Method NonExclusiveRateOfChangeAlarmType_Suppress,16852,Method DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedDataItemsTemplate_OutputArguments,16853,Variable NonExclusiveRateOfChangeAlarmType_BaseHighHighLimit,16854,Variable NonExclusiveRateOfChangeAlarmType_BaseHighLimit,16855,Variable NonExclusiveRateOfChangeAlarmType_BaseLowLimit,16856,Variable NonExclusiveRateOfChangeAlarmType_BaseLowLowLimit,16857,Variable NonExclusiveRateOfChangeAlarmType_EngineeringUnits,16858,Variable ExclusiveRateOfChangeAlarmType_ConditionSubClassId,16859,Variable ExclusiveRateOfChangeAlarmType_ConditionSubClassName,16860,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState,16861,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_Id,16862,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_Name,16863,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_Number,16864,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_EffectiveDisplayName,16865,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_TransitionTime,16866,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_EffectiveTransitionTime,16867,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_TrueState,16868,Variable ExclusiveRateOfChangeAlarmType_OutOfServiceState_FalseState,16869,Variable ExclusiveRateOfChangeAlarmType_SilenceState,16870,Variable ExclusiveRateOfChangeAlarmType_SilenceState_Id,16871,Variable ExclusiveRateOfChangeAlarmType_SilenceState_Name,16872,Variable ExclusiveRateOfChangeAlarmType_SilenceState_Number,16873,Variable ExclusiveRateOfChangeAlarmType_SilenceState_EffectiveDisplayName,16874,Variable ExclusiveRateOfChangeAlarmType_SilenceState_TransitionTime,16875,Variable ExclusiveRateOfChangeAlarmType_SilenceState_EffectiveTransitionTime,16876,Variable ExclusiveRateOfChangeAlarmType_SilenceState_TrueState,16877,Variable ExclusiveRateOfChangeAlarmType_SilenceState_FalseState,16878,Variable ExclusiveRateOfChangeAlarmType_AudibleEnabled,16879,Variable ExclusiveRateOfChangeAlarmType_AudibleSound,16880,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedEventsTemplate,16881,Method DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedEventsTemplate_InputArguments,16882,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddPublishedEventsTemplate_OutputArguments,16883,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddDataSetFolder,16884,Method ExclusiveRateOfChangeAlarmType_OnDelay,16885,Variable ExclusiveRateOfChangeAlarmType_OffDelay,16886,Variable ExclusiveRateOfChangeAlarmType_FirstInGroupFlag,16887,Variable ExclusiveRateOfChangeAlarmType_FirstInGroup,16888,Object ExclusiveRateOfChangeAlarmType_AlarmGroup_Placeholder,16889,Object ExclusiveRateOfChangeAlarmType_ReAlarmTime,16890,Variable ExclusiveRateOfChangeAlarmType_ReAlarmRepeatCount,16891,Variable ExclusiveRateOfChangeAlarmType_Silence,16892,Method ExclusiveRateOfChangeAlarmType_Suppress,16893,Method DataSetFolderType_DataSetFolderName_Placeholder_AddDataSetFolder_InputArguments,16894,Variable ExclusiveRateOfChangeAlarmType_BaseHighHighLimit,16895,Variable ExclusiveRateOfChangeAlarmType_BaseHighLimit,16896,Variable ExclusiveRateOfChangeAlarmType_BaseLowLimit,16897,Variable ExclusiveRateOfChangeAlarmType_BaseLowLowLimit,16898,Variable ExclusiveRateOfChangeAlarmType_EngineeringUnits,16899,Variable DiscreteAlarmType_ConditionSubClassId,16900,Variable DiscreteAlarmType_ConditionSubClassName,16901,Variable DiscreteAlarmType_OutOfServiceState,16902,Variable DiscreteAlarmType_OutOfServiceState_Id,16903,Variable DiscreteAlarmType_OutOfServiceState_Name,16904,Variable DiscreteAlarmType_OutOfServiceState_Number,16905,Variable DiscreteAlarmType_OutOfServiceState_EffectiveDisplayName,16906,Variable DiscreteAlarmType_OutOfServiceState_TransitionTime,16907,Variable DiscreteAlarmType_OutOfServiceState_EffectiveTransitionTime,16908,Variable DiscreteAlarmType_OutOfServiceState_TrueState,16909,Variable DiscreteAlarmType_OutOfServiceState_FalseState,16910,Variable DiscreteAlarmType_SilenceState,16911,Variable DiscreteAlarmType_SilenceState_Id,16912,Variable DiscreteAlarmType_SilenceState_Name,16913,Variable DiscreteAlarmType_SilenceState_Number,16914,Variable DiscreteAlarmType_SilenceState_EffectiveDisplayName,16915,Variable DiscreteAlarmType_SilenceState_TransitionTime,16916,Variable DiscreteAlarmType_SilenceState_EffectiveTransitionTime,16917,Variable DiscreteAlarmType_SilenceState_TrueState,16918,Variable DiscreteAlarmType_SilenceState_FalseState,16919,Variable DiscreteAlarmType_AudibleEnabled,16920,Variable DiscreteAlarmType_AudibleSound,16921,Variable DataSetFolderType_DataSetFolderName_Placeholder_AddDataSetFolder_OutputArguments,16922,Variable DataSetFolderType_DataSetFolderName_Placeholder_RemoveDataSetFolder,16923,Method DataSetFolderType_DataSetFolderName_Placeholder_RemoveDataSetFolder_InputArguments,16924,Variable DataSetFolderType_PublishedDataSetName_Placeholder_DataSetClassId,16925,Variable DiscreteAlarmType_OnDelay,16926,Variable DiscreteAlarmType_OffDelay,16927,Variable DiscreteAlarmType_FirstInGroupFlag,16928,Variable DiscreteAlarmType_FirstInGroup,16929,Object DiscreteAlarmType_AlarmGroup_Placeholder,16930,Object DiscreteAlarmType_ReAlarmTime,16931,Variable DiscreteAlarmType_ReAlarmRepeatCount,16932,Variable DiscreteAlarmType_Silence,16933,Method DiscreteAlarmType_Suppress,16934,Method DataSetFolderType_AddPublishedDataItemsTemplate,16935,Method OffNormalAlarmType_ConditionSubClassId,16936,Variable OffNormalAlarmType_ConditionSubClassName,16937,Variable OffNormalAlarmType_OutOfServiceState,16938,Variable OffNormalAlarmType_OutOfServiceState_Id,16939,Variable OffNormalAlarmType_OutOfServiceState_Name,16940,Variable OffNormalAlarmType_OutOfServiceState_Number,16941,Variable OffNormalAlarmType_OutOfServiceState_EffectiveDisplayName,16942,Variable OffNormalAlarmType_OutOfServiceState_TransitionTime,16943,Variable OffNormalAlarmType_OutOfServiceState_EffectiveTransitionTime,16944,Variable OffNormalAlarmType_OutOfServiceState_TrueState,16945,Variable OffNormalAlarmType_OutOfServiceState_FalseState,16946,Variable OffNormalAlarmType_SilenceState,16947,Variable OffNormalAlarmType_SilenceState_Id,16948,Variable OffNormalAlarmType_SilenceState_Name,16949,Variable OffNormalAlarmType_SilenceState_Number,16950,Variable OffNormalAlarmType_SilenceState_EffectiveDisplayName,16951,Variable OffNormalAlarmType_SilenceState_TransitionTime,16952,Variable OffNormalAlarmType_SilenceState_EffectiveTransitionTime,16953,Variable OffNormalAlarmType_SilenceState_TrueState,16954,Variable OffNormalAlarmType_SilenceState_FalseState,16955,Variable OffNormalAlarmType_AudibleEnabled,16956,Variable OffNormalAlarmType_AudibleSound,16957,Variable DataSetFolderType_AddPublishedDataItemsTemplate_InputArguments,16958,Variable DataSetFolderType_AddPublishedDataItemsTemplate_OutputArguments,16959,Variable DataSetFolderType_AddPublishedEventsTemplate,16960,Method DataSetFolderType_AddPublishedEventsTemplate_InputArguments,16961,Variable OffNormalAlarmType_OnDelay,16962,Variable OffNormalAlarmType_OffDelay,16963,Variable OffNormalAlarmType_FirstInGroupFlag,16964,Variable OffNormalAlarmType_FirstInGroup,16965,Object OffNormalAlarmType_AlarmGroup_Placeholder,16966,Object OffNormalAlarmType_ReAlarmTime,16967,Variable OffNormalAlarmType_ReAlarmRepeatCount,16968,Variable OffNormalAlarmType_Silence,16969,Method OffNormalAlarmType_Suppress,16970,Method DataSetFolderType_AddPublishedEventsTemplate_OutputArguments,16971,Variable SystemOffNormalAlarmType_ConditionSubClassId,16972,Variable SystemOffNormalAlarmType_ConditionSubClassName,16973,Variable SystemOffNormalAlarmType_OutOfServiceState,16974,Variable SystemOffNormalAlarmType_OutOfServiceState_Id,16975,Variable SystemOffNormalAlarmType_OutOfServiceState_Name,16976,Variable SystemOffNormalAlarmType_OutOfServiceState_Number,16977,Variable SystemOffNormalAlarmType_OutOfServiceState_EffectiveDisplayName,16978,Variable SystemOffNormalAlarmType_OutOfServiceState_TransitionTime,16979,Variable SystemOffNormalAlarmType_OutOfServiceState_EffectiveTransitionTime,16980,Variable SystemOffNormalAlarmType_OutOfServiceState_TrueState,16981,Variable SystemOffNormalAlarmType_OutOfServiceState_FalseState,16982,Variable SystemOffNormalAlarmType_SilenceState,16983,Variable SystemOffNormalAlarmType_SilenceState_Id,16984,Variable SystemOffNormalAlarmType_SilenceState_Name,16985,Variable SystemOffNormalAlarmType_SilenceState_Number,16986,Variable SystemOffNormalAlarmType_SilenceState_EffectiveDisplayName,16987,Variable SystemOffNormalAlarmType_SilenceState_TransitionTime,16988,Variable SystemOffNormalAlarmType_SilenceState_EffectiveTransitionTime,16989,Variable SystemOffNormalAlarmType_SilenceState_TrueState,16990,Variable SystemOffNormalAlarmType_SilenceState_FalseState,16991,Variable SystemOffNormalAlarmType_AudibleEnabled,16992,Variable SystemOffNormalAlarmType_AudibleSound,16993,Variable DataSetFolderType_AddDataSetFolder,16994,Method DataSetFolderType_AddDataSetFolder_InputArguments,16995,Variable DataSetFolderType_AddDataSetFolder_OutputArguments,16996,Variable DataSetFolderType_RemoveDataSetFolder,16997,Method SystemOffNormalAlarmType_OnDelay,16998,Variable SystemOffNormalAlarmType_OffDelay,16999,Variable SystemOffNormalAlarmType_FirstInGroupFlag,17000,Variable SystemOffNormalAlarmType_FirstInGroup,17001,Object SystemOffNormalAlarmType_AlarmGroup_Placeholder,17002,Object SystemOffNormalAlarmType_ReAlarmTime,17003,Variable SystemOffNormalAlarmType_ReAlarmRepeatCount,17004,Variable SystemOffNormalAlarmType_Silence,17005,Method SystemOffNormalAlarmType_Suppress,17006,Method DataSetFolderType_RemoveDataSetFolder_InputArguments,17007,Variable TripAlarmType_ConditionSubClassId,17008,Variable TripAlarmType_ConditionSubClassName,17009,Variable TripAlarmType_OutOfServiceState,17010,Variable TripAlarmType_OutOfServiceState_Id,17011,Variable TripAlarmType_OutOfServiceState_Name,17012,Variable TripAlarmType_OutOfServiceState_Number,17013,Variable TripAlarmType_OutOfServiceState_EffectiveDisplayName,17014,Variable TripAlarmType_OutOfServiceState_TransitionTime,17015,Variable TripAlarmType_OutOfServiceState_EffectiveTransitionTime,17016,Variable TripAlarmType_OutOfServiceState_TrueState,17017,Variable TripAlarmType_OutOfServiceState_FalseState,17018,Variable TripAlarmType_SilenceState,17019,Variable TripAlarmType_SilenceState_Id,17020,Variable TripAlarmType_SilenceState_Name,17021,Variable TripAlarmType_SilenceState_Number,17022,Variable TripAlarmType_SilenceState_EffectiveDisplayName,17023,Variable TripAlarmType_SilenceState_TransitionTime,17024,Variable TripAlarmType_SilenceState_EffectiveTransitionTime,17025,Variable TripAlarmType_SilenceState_TrueState,17026,Variable TripAlarmType_SilenceState_FalseState,17027,Variable TripAlarmType_AudibleEnabled,17028,Variable TripAlarmType_AudibleSound,17029,Variable AddPublishedDataItemsTemplateMethodType,17030,Method AddPublishedDataItemsTemplateMethodType_InputArguments,17031,Variable AddPublishedDataItemsTemplateMethodType_OutputArguments,17032,Variable AddPublishedEventsTemplateMethodType,17033,Method TripAlarmType_OnDelay,17034,Variable TripAlarmType_OffDelay,17035,Variable TripAlarmType_FirstInGroupFlag,17036,Variable TripAlarmType_FirstInGroup,17037,Object TripAlarmType_AlarmGroup_Placeholder,17038,Object TripAlarmType_ReAlarmTime,17039,Variable TripAlarmType_ReAlarmRepeatCount,17040,Variable TripAlarmType_Silence,17041,Method TripAlarmType_Suppress,17042,Method AddPublishedEventsTemplateMethodType_InputArguments,17043,Variable CertificateExpirationAlarmType_ConditionSubClassId,17044,Variable CertificateExpirationAlarmType_ConditionSubClassName,17045,Variable CertificateExpirationAlarmType_OutOfServiceState,17046,Variable CertificateExpirationAlarmType_OutOfServiceState_Id,17047,Variable CertificateExpirationAlarmType_OutOfServiceState_Name,17048,Variable CertificateExpirationAlarmType_OutOfServiceState_Number,17049,Variable CertificateExpirationAlarmType_OutOfServiceState_EffectiveDisplayName,17050,Variable CertificateExpirationAlarmType_OutOfServiceState_TransitionTime,17051,Variable CertificateExpirationAlarmType_OutOfServiceState_EffectiveTransitionTime,17052,Variable CertificateExpirationAlarmType_OutOfServiceState_TrueState,17053,Variable CertificateExpirationAlarmType_OutOfServiceState_FalseState,17054,Variable CertificateExpirationAlarmType_SilenceState,17055,Variable CertificateExpirationAlarmType_SilenceState_Id,17056,Variable CertificateExpirationAlarmType_SilenceState_Name,17057,Variable CertificateExpirationAlarmType_SilenceState_Number,17058,Variable CertificateExpirationAlarmType_SilenceState_EffectiveDisplayName,17059,Variable CertificateExpirationAlarmType_SilenceState_TransitionTime,17060,Variable CertificateExpirationAlarmType_SilenceState_EffectiveTransitionTime,17061,Variable CertificateExpirationAlarmType_SilenceState_TrueState,17062,Variable CertificateExpirationAlarmType_SilenceState_FalseState,17063,Variable CertificateExpirationAlarmType_AudibleEnabled,17064,Variable CertificateExpirationAlarmType_AudibleSound,17065,Variable AddPublishedEventsTemplateMethodType_OutputArguments,17066,Variable AddDataSetFolderMethodType,17067,Method AddDataSetFolderMethodType_InputArguments,17068,Variable AddDataSetFolderMethodType_OutputArguments,17069,Variable CertificateExpirationAlarmType_OnDelay,17070,Variable CertificateExpirationAlarmType_OffDelay,17071,Variable CertificateExpirationAlarmType_FirstInGroupFlag,17072,Variable CertificateExpirationAlarmType_FirstInGroup,17073,Object CertificateExpirationAlarmType_AlarmGroup_Placeholder,17074,Object CertificateExpirationAlarmType_ReAlarmTime,17075,Variable CertificateExpirationAlarmType_ReAlarmRepeatCount,17076,Variable CertificateExpirationAlarmType_Silence,17077,Method CertificateExpirationAlarmType_Suppress,17078,Method RemoveDataSetFolderMethodType,17079,Method DiscrepancyAlarmType,17080,ObjectType DiscrepancyAlarmType_EventId,17081,Variable DiscrepancyAlarmType_EventType,17082,Variable DiscrepancyAlarmType_SourceNode,17083,Variable DiscrepancyAlarmType_SourceName,17084,Variable DiscrepancyAlarmType_Time,17085,Variable DiscrepancyAlarmType_ReceiveTime,17086,Variable DiscrepancyAlarmType_LocalTime,17087,Variable DiscrepancyAlarmType_Message,17088,Variable DiscrepancyAlarmType_Severity,17089,Variable DiscrepancyAlarmType_ConditionClassId,17090,Variable DiscrepancyAlarmType_ConditionClassName,17091,Variable DiscrepancyAlarmType_ConditionSubClassId,17092,Variable DiscrepancyAlarmType_ConditionSubClassName,17093,Variable DiscrepancyAlarmType_ConditionName,17094,Variable DiscrepancyAlarmType_BranchId,17095,Variable DiscrepancyAlarmType_Retain,17096,Variable DiscrepancyAlarmType_EnabledState,17097,Variable DiscrepancyAlarmType_EnabledState_Id,17098,Variable DiscrepancyAlarmType_EnabledState_Name,17099,Variable DiscrepancyAlarmType_EnabledState_Number,17100,Variable DiscrepancyAlarmType_EnabledState_EffectiveDisplayName,17101,Variable DiscrepancyAlarmType_EnabledState_TransitionTime,17102,Variable DiscrepancyAlarmType_EnabledState_EffectiveTransitionTime,17103,Variable DiscrepancyAlarmType_EnabledState_TrueState,17104,Variable DiscrepancyAlarmType_EnabledState_FalseState,17105,Variable DiscrepancyAlarmType_Quality,17106,Variable DiscrepancyAlarmType_Quality_SourceTimestamp,17107,Variable DiscrepancyAlarmType_LastSeverity,17108,Variable DiscrepancyAlarmType_LastSeverity_SourceTimestamp,17109,Variable DiscrepancyAlarmType_Comment,17110,Variable DiscrepancyAlarmType_Comment_SourceTimestamp,17111,Variable DiscrepancyAlarmType_ClientUserId,17112,Variable DiscrepancyAlarmType_Disable,17113,Method DiscrepancyAlarmType_Enable,17114,Method DiscrepancyAlarmType_AddComment,17115,Method DiscrepancyAlarmType_AddComment_InputArguments,17116,Variable DiscrepancyAlarmType_ConditionRefresh,17117,Method DiscrepancyAlarmType_ConditionRefresh_InputArguments,17118,Variable DiscrepancyAlarmType_ConditionRefresh2,17119,Method DiscrepancyAlarmType_ConditionRefresh2_InputArguments,17120,Variable DiscrepancyAlarmType_AckedState,17121,Variable DiscrepancyAlarmType_AckedState_Id,17122,Variable DiscrepancyAlarmType_AckedState_Name,17123,Variable DiscrepancyAlarmType_AckedState_Number,17124,Variable DiscrepancyAlarmType_AckedState_EffectiveDisplayName,17125,Variable DiscrepancyAlarmType_AckedState_TransitionTime,17126,Variable DiscrepancyAlarmType_AckedState_EffectiveTransitionTime,17127,Variable DiscrepancyAlarmType_AckedState_TrueState,17128,Variable DiscrepancyAlarmType_AckedState_FalseState,17129,Variable DiscrepancyAlarmType_ConfirmedState,17130,Variable DiscrepancyAlarmType_ConfirmedState_Id,17131,Variable DiscrepancyAlarmType_ConfirmedState_Name,17132,Variable DiscrepancyAlarmType_ConfirmedState_Number,17133,Variable DiscrepancyAlarmType_ConfirmedState_EffectiveDisplayName,17134,Variable DiscrepancyAlarmType_ConfirmedState_TransitionTime,17135,Variable DiscrepancyAlarmType_ConfirmedState_EffectiveTransitionTime,17136,Variable DiscrepancyAlarmType_ConfirmedState_TrueState,17137,Variable DiscrepancyAlarmType_ConfirmedState_FalseState,17138,Variable DiscrepancyAlarmType_Acknowledge,17139,Method DiscrepancyAlarmType_Acknowledge_InputArguments,17140,Variable DiscrepancyAlarmType_Confirm,17141,Method DiscrepancyAlarmType_Confirm_InputArguments,17142,Variable DiscrepancyAlarmType_ActiveState,17143,Variable DiscrepancyAlarmType_ActiveState_Id,17144,Variable DiscrepancyAlarmType_ActiveState_Name,17145,Variable DiscrepancyAlarmType_ActiveState_Number,17146,Variable DiscrepancyAlarmType_ActiveState_EffectiveDisplayName,17147,Variable DiscrepancyAlarmType_ActiveState_TransitionTime,17148,Variable DiscrepancyAlarmType_ActiveState_EffectiveTransitionTime,17149,Variable DiscrepancyAlarmType_ActiveState_TrueState,17150,Variable DiscrepancyAlarmType_ActiveState_FalseState,17151,Variable DiscrepancyAlarmType_InputNode,17152,Variable DiscrepancyAlarmType_SuppressedState,17153,Variable DiscrepancyAlarmType_SuppressedState_Id,17154,Variable DiscrepancyAlarmType_SuppressedState_Name,17155,Variable DiscrepancyAlarmType_SuppressedState_Number,17156,Variable DiscrepancyAlarmType_SuppressedState_EffectiveDisplayName,17157,Variable DiscrepancyAlarmType_SuppressedState_TransitionTime,17158,Variable DiscrepancyAlarmType_SuppressedState_EffectiveTransitionTime,17159,Variable DiscrepancyAlarmType_SuppressedState_TrueState,17160,Variable DiscrepancyAlarmType_SuppressedState_FalseState,17161,Variable DiscrepancyAlarmType_OutOfServiceState,17162,Variable DiscrepancyAlarmType_OutOfServiceState_Id,17163,Variable DiscrepancyAlarmType_OutOfServiceState_Name,17164,Variable DiscrepancyAlarmType_OutOfServiceState_Number,17165,Variable DiscrepancyAlarmType_OutOfServiceState_EffectiveDisplayName,17166,Variable DiscrepancyAlarmType_OutOfServiceState_TransitionTime,17167,Variable DiscrepancyAlarmType_OutOfServiceState_EffectiveTransitionTime,17168,Variable DiscrepancyAlarmType_OutOfServiceState_TrueState,17169,Variable DiscrepancyAlarmType_OutOfServiceState_FalseState,17170,Variable DiscrepancyAlarmType_SilenceState,17171,Variable DiscrepancyAlarmType_SilenceState_Id,17172,Variable DiscrepancyAlarmType_SilenceState_Name,17173,Variable DiscrepancyAlarmType_SilenceState_Number,17174,Variable DiscrepancyAlarmType_SilenceState_EffectiveDisplayName,17175,Variable DiscrepancyAlarmType_SilenceState_TransitionTime,17176,Variable DiscrepancyAlarmType_SilenceState_EffectiveTransitionTime,17177,Variable DiscrepancyAlarmType_SilenceState_TrueState,17178,Variable DiscrepancyAlarmType_SilenceState_FalseState,17179,Variable DiscrepancyAlarmType_ShelvingState,17180,Object DiscrepancyAlarmType_ShelvingState_CurrentState,17181,Variable DiscrepancyAlarmType_ShelvingState_CurrentState_Id,17182,Variable DiscrepancyAlarmType_ShelvingState_CurrentState_Name,17183,Variable DiscrepancyAlarmType_ShelvingState_CurrentState_Number,17184,Variable DiscrepancyAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,17185,Variable DiscrepancyAlarmType_ShelvingState_LastTransition,17186,Variable DiscrepancyAlarmType_ShelvingState_LastTransition_Id,17187,Variable DiscrepancyAlarmType_ShelvingState_LastTransition_Name,17188,Variable DiscrepancyAlarmType_ShelvingState_LastTransition_Number,17189,Variable DiscrepancyAlarmType_ShelvingState_LastTransition_TransitionTime,17190,Variable DiscrepancyAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,17191,Variable DiscrepancyAlarmType_ShelvingState_UnshelveTime,17192,Variable DiscrepancyAlarmType_ShelvingState_Unshelve,17193,Method DiscrepancyAlarmType_ShelvingState_OneShotShelve,17194,Method DiscrepancyAlarmType_ShelvingState_TimedShelve,17195,Method DiscrepancyAlarmType_ShelvingState_TimedShelve_InputArguments,17196,Variable DiscrepancyAlarmType_SuppressedOrShelved,17197,Variable DiscrepancyAlarmType_MaxTimeShelved,17198,Variable DiscrepancyAlarmType_AudibleEnabled,17199,Variable DiscrepancyAlarmType_AudibleSound,17200,Variable RemoveDataSetFolderMethodType_InputArguments,17201,Variable PubSubConnectionType_Address_NetworkInterface,17202,Variable PubSubConnectionType_TransportSettings,17203,Object PubSubConnectionType_WriterGroupName_Placeholder_MaxNetworkMessageSize,17204,Variable DiscrepancyAlarmType_OnDelay,17205,Variable DiscrepancyAlarmType_OffDelay,17206,Variable DiscrepancyAlarmType_FirstInGroupFlag,17207,Variable DiscrepancyAlarmType_FirstInGroup,17208,Object DiscrepancyAlarmType_AlarmGroup_Placeholder,17209,Object DiscrepancyAlarmType_ReAlarmTime,17210,Variable DiscrepancyAlarmType_ReAlarmRepeatCount,17211,Variable DiscrepancyAlarmType_Silence,17212,Method DiscrepancyAlarmType_Suppress,17213,Method PubSubConnectionType_WriterGroupName_Placeholder_WriterGroupId,17214,Variable DiscrepancyAlarmType_TargetValueNode,17215,Variable DiscrepancyAlarmType_ExpectedTime,17216,Variable DiscrepancyAlarmType_Tolerance,17217,Variable SafetyConditionClassType,17218,ObjectType HighlyManagedAlarmConditionClassType,17219,ObjectType TrainingConditionClassType,17220,ObjectType TestingConditionClassType,17221,ObjectType AuditConditionCommentEventType_ConditionEventId,17222,Variable AuditConditionAcknowledgeEventType_ConditionEventId,17223,Variable AuditConditionConfirmEventType_ConditionEventId,17224,Variable AuditConditionSuppressEventType,17225,ObjectType AuditConditionSuppressEventType_EventId,17226,Variable AuditConditionSuppressEventType_EventType,17227,Variable AuditConditionSuppressEventType_SourceNode,17228,Variable AuditConditionSuppressEventType_SourceName,17229,Variable AuditConditionSuppressEventType_Time,17230,Variable AuditConditionSuppressEventType_ReceiveTime,17231,Variable AuditConditionSuppressEventType_LocalTime,17232,Variable AuditConditionSuppressEventType_Message,17233,Variable AuditConditionSuppressEventType_Severity,17234,Variable AuditConditionSuppressEventType_ActionTimeStamp,17235,Variable AuditConditionSuppressEventType_Status,17236,Variable AuditConditionSuppressEventType_ServerId,17237,Variable AuditConditionSuppressEventType_ClientAuditEntryId,17238,Variable AuditConditionSuppressEventType_ClientUserId,17239,Variable AuditConditionSuppressEventType_MethodId,17240,Variable AuditConditionSuppressEventType_InputArguments,17241,Variable AuditConditionSilenceEventType,17242,ObjectType AuditConditionSilenceEventType_EventId,17243,Variable AuditConditionSilenceEventType_EventType,17244,Variable AuditConditionSilenceEventType_SourceNode,17245,Variable AuditConditionSilenceEventType_SourceName,17246,Variable AuditConditionSilenceEventType_Time,17247,Variable AuditConditionSilenceEventType_ReceiveTime,17248,Variable AuditConditionSilenceEventType_LocalTime,17249,Variable AuditConditionSilenceEventType_Message,17250,Variable AuditConditionSilenceEventType_Severity,17251,Variable AuditConditionSilenceEventType_ActionTimeStamp,17252,Variable AuditConditionSilenceEventType_Status,17253,Variable AuditConditionSilenceEventType_ServerId,17254,Variable AuditConditionSilenceEventType_ClientAuditEntryId,17255,Variable AuditConditionSilenceEventType_ClientUserId,17256,Variable AuditConditionSilenceEventType_MethodId,17257,Variable AuditConditionSilenceEventType_InputArguments,17258,Variable AuditConditionOutOfServiceEventType,17259,ObjectType AuditConditionOutOfServiceEventType_EventId,17260,Variable AuditConditionOutOfServiceEventType_EventType,17261,Variable AuditConditionOutOfServiceEventType_SourceNode,17262,Variable AuditConditionOutOfServiceEventType_SourceName,17263,Variable AuditConditionOutOfServiceEventType_Time,17264,Variable AuditConditionOutOfServiceEventType_ReceiveTime,17265,Variable AuditConditionOutOfServiceEventType_LocalTime,17266,Variable AuditConditionOutOfServiceEventType_Message,17267,Variable AuditConditionOutOfServiceEventType_Severity,17268,Variable AuditConditionOutOfServiceEventType_ActionTimeStamp,17269,Variable AuditConditionOutOfServiceEventType_Status,17270,Variable AuditConditionOutOfServiceEventType_ServerId,17271,Variable AuditConditionOutOfServiceEventType_ClientAuditEntryId,17272,Variable AuditConditionOutOfServiceEventType_ClientUserId,17273,Variable AuditConditionOutOfServiceEventType_MethodId,17274,Variable AuditConditionOutOfServiceEventType_InputArguments,17275,Variable HasEffectDisable,17276,ReferenceType AlarmRateVariableType,17277,VariableType AlarmRateVariableType_Rate,17278,Variable AlarmMetricsType,17279,ObjectType AlarmMetricsType_AlarmCount,17280,Variable AlarmMetricsType_MaximumActiveState,17281,Variable AlarmMetricsType_MaximumUnAck,17282,Variable AlarmMetricsType_MaximumReAlarmCount,17283,Variable AlarmMetricsType_CurrentAlarmRate,17284,Variable AlarmMetricsType_CurrentAlarmRate_Rate,17285,Variable AlarmMetricsType_MaximumAlarmRate,17286,Variable AlarmMetricsType_MaximumAlarmRate_Rate,17287,Variable AlarmMetricsType_AverageAlarmRate,17288,Variable AlarmMetricsType_AverageAlarmRate_Rate,17289,Variable PubSubConnectionType_WriterGroupName_Placeholder_TransportSettings,17290,Object PubSubConnectionType_WriterGroupName_Placeholder_MessageSettings,17291,Object PublishSubscribeType_ConnectionName_Placeholder_TransportProfileUri,17292,Variable PubSubConnectionType_WriterGroupName_Placeholder_AddDataSetWriter,17293,Method PubSubConnectionType_WriterGroupName_Placeholder_AddDataSetWriter_InputArguments,17294,Variable PublishSubscribeType_ConnectionName_Placeholder_TransportProfileUri_RestrictToList,17295,Variable PublishSubscribeType_SetSecurityKeys,17296,Method PublishSubscribeType_SetSecurityKeys_InputArguments,17297,Variable SetSecurityKeysMethodType,17298,Method SetSecurityKeysMethodType_InputArguments,17299,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,17300,Variable PubSubConnectionType_WriterGroupName_Placeholder_AddDataSetWriter_OutputArguments,17301,Variable PubSubConnectionType_ReaderGroupName_Placeholder_MaxNetworkMessageSize,17302,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,17303,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent,17304,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,17305,Variable PubSubConnectionType_TransportProfileUri,17306,Variable PubSubConnectionType_ReaderGroupName_Placeholder_TransportSettings,17307,Object PubSubConnectionType_ReaderGroupName_Placeholder_MessageSettings,17308,Object PubSubConnectionType_TransportProfileUri_RestrictToList,17309,Variable PubSubConnectionType_WriterGroupName_Placeholder,17310,Object PubSubConnectionType_WriterGroupName_Placeholder_SecurityMode,17311,Variable PubSubConnectionType_WriterGroupName_Placeholder_SecurityGroupId,17312,Variable PubSubConnectionType_WriterGroupName_Placeholder_SecurityKeyServices,17313,Variable PubSubConnectionType_WriterGroupName_Placeholder_Status,17314,Object PubSubConnectionType_WriterGroupName_Placeholder_Status_State,17315,Variable PubSubConnectionType_WriterGroupName_Placeholder_Status_Enable,17316,Method PubSubConnectionType_WriterGroupName_Placeholder_Status_Disable,17317,Method PubSubConnectionType_WriterGroupName_Placeholder_PublishingInterval,17318,Variable PubSubConnectionType_WriterGroupName_Placeholder_KeepAliveTime,17319,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,17320,Variable PubSubConnectionType_WriterGroupName_Placeholder_Priority,17321,Variable PubSubConnectionType_WriterGroupName_Placeholder_LocaleIds,17322,Variable PubSubConnectionType_WriterGroupName_Placeholder_RemoveDataSetWriter,17323,Method PubSubConnectionType_WriterGroupName_Placeholder_RemoveDataSetWriter_InputArguments,17324,Variable PubSubConnectionType_ReaderGroupName_Placeholder,17325,Object PubSubConnectionType_ReaderGroupName_Placeholder_SecurityMode,17326,Variable PubSubConnectionType_ReaderGroupName_Placeholder_SecurityGroupId,17327,Variable PubSubConnectionType_ReaderGroupName_Placeholder_SecurityKeyServices,17328,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Status,17329,Object PubSubConnectionType_ReaderGroupName_Placeholder_Status_State,17330,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Status_Enable,17331,Method PubSubConnectionType_ReaderGroupName_Placeholder_Status_Disable,17332,Method PubSubConnectionType_ReaderGroupName_Placeholder_RemoveDataSetReader,17333,Method PubSubConnectionType_ReaderGroupName_Placeholder_RemoveDataSetReader_InputArguments,17334,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,17335,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,17336,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError,17337,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,17338,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,17339,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,17340,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,17341,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent,17342,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,17343,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,17344,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,17345,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,17346,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,17347,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,17348,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,17349,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,17350,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,17351,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_LiveValues,17352,Object PublishSubscribe_ConnectionName_Placeholder_Diagnostics_LiveValues_ResolvedAddress,17353,Variable PublishSubscribe_ConnectionName_Placeholder_Diagnostics_LiveValues_ResolvedAddress_DiagnosticsLevel,17354,Variable PubSubConnectionType_ReaderGroupName_Placeholder_AddDataSetReader,17355,Method PublishSubscribe_ConnectionName_Placeholder_AddWriterGroup,17356,Method PublishSubscribe_ConnectionName_Placeholder_AddWriterGroup_InputArguments,17357,Variable PublishSubscribe_ConnectionName_Placeholder_AddWriterGroup_OutputArguments,17358,Variable PublishSubscribe_ConnectionName_Placeholder_AddReaderGroup,17359,Method PublishSubscribe_ConnectionName_Placeholder_AddReaderGroup_InputArguments,17360,Variable PublishSubscribe_ConnectionName_Placeholder_AddReaderGroup_OutputArguments,17361,Variable PublishSubscribe_ConnectionName_Placeholder_RemoveGroup,17362,Method PublishSubscribe_ConnectionName_Placeholder_RemoveGroup_InputArguments,17363,Variable PublishSubscribe_SetSecurityKeys,17364,Method PublishSubscribe_SetSecurityKeys_InputArguments,17365,Variable PublishSubscribe_AddConnection,17366,Method PublishSubscribe_AddConnection_InputArguments,17367,Variable PublishSubscribe_AddConnection_OutputArguments,17368,Variable PublishSubscribe_RemoveConnection,17369,Method PublishSubscribe_RemoveConnection_InputArguments,17370,Variable PublishSubscribe_PublishedDataSets,17371,Object PublishSubscribe_PublishedDataSets_AddPublishedDataItems,17372,Method PublishSubscribe_PublishedDataSets_AddPublishedDataItems_InputArguments,17373,Variable PublishSubscribe_PublishedDataSets_AddPublishedDataItems_OutputArguments,17374,Variable PublishSubscribe_PublishedDataSets_AddPublishedEvents,17375,Method PublishSubscribe_PublishedDataSets_AddPublishedEvents_InputArguments,17376,Variable PublishSubscribe_PublishedDataSets_AddPublishedEvents_OutputArguments,17377,Variable PublishSubscribe_PublishedDataSets_AddPublishedDataItemsTemplate,17378,Method PublishSubscribe_PublishedDataSets_AddPublishedDataItemsTemplate_InputArguments,17379,Variable PublishSubscribe_PublishedDataSets_AddPublishedDataItemsTemplate_OutputArguments,17380,Variable PublishSubscribe_PublishedDataSets_AddPublishedEventsTemplate,17381,Method PublishSubscribe_PublishedDataSets_AddPublishedEventsTemplate_InputArguments,17382,Variable PublishSubscribe_PublishedDataSets_AddPublishedEventsTemplate_OutputArguments,17383,Variable PublishSubscribe_PublishedDataSets_RemovePublishedDataSet,17384,Method PublishSubscribe_PublishedDataSets_RemovePublishedDataSet_InputArguments,17385,Variable DataSetReaderType_CreateTargetVariables,17386,Method DataSetReaderType_CreateTargetVariables_InputArguments,17387,Variable DataSetReaderType_CreateTargetVariables_OutputArguments,17388,Variable DataSetReaderType_CreateDataSetMirror,17389,Method DataSetReaderType_CreateDataSetMirror_InputArguments,17390,Variable DataSetReaderType_CreateDataSetMirror_OutputArguments,17391,Variable DataSetReaderTypeCreateTargetVariablesMethodType,17392,Method DataSetReaderTypeCreateTargetVariablesMethodType_InputArguments,17393,Variable DataSetReaderTypeCreateTargetVariablesMethodType_OutputArguments,17394,Variable DataSetReaderTypeCreateDataSetMirrorMethodType,17395,Method DataSetReaderTypeCreateDataSetMirrorMethodType_InputArguments,17396,Variable DataSetReaderTypeCreateDataSetMirrorMethodType_OutputArguments,17397,Variable PublishSubscribe_PublishedDataSets_AddDataSetFolder,17398,Method PubSubConnectionType_ReaderGroupName_Placeholder_AddDataSetReader_InputArguments,17399,Variable PubSubConnectionType_ReaderGroupName_Placeholder_AddDataSetReader_OutputArguments,17400,Variable PublishSubscribe_PublishedDataSets_AddDataSetFolder_InputArguments,17401,Variable PublishSubscribe_PublishedDataSets_AddDataSetFolder_OutputArguments,17402,Variable PublishSubscribe_PublishedDataSets_RemoveDataSetFolder,17403,Method PublishSubscribe_PublishedDataSets_RemoveDataSetFolder_InputArguments,17404,Variable PublishSubscribe_Status,17405,Object PublishSubscribe_Status_State,17406,Variable PublishSubscribe_Status_Enable,17407,Method PublishSubscribe_Status_Disable,17408,Method PublishSubscribe_Diagnostics,17409,Object PublishSubscribe_Diagnostics_DiagnosticsLevel,17410,Variable PublishSubscribe_Diagnostics_TotalInformation,17411,Variable PublishSubscribe_Diagnostics_TotalInformation_Active,17412,Variable PublishSubscribe_Diagnostics_TotalInformation_Classification,17413,Variable PublishSubscribe_Diagnostics_TotalInformation_DiagnosticsLevel,17414,Variable PublishSubscribe_Diagnostics_TotalInformation_TimeFirstChange,17415,Variable PublishSubscribe_Diagnostics_TotalError,17416,Variable PublishSubscribe_Diagnostics_TotalError_Active,17417,Variable PublishSubscribe_Diagnostics_TotalError_Classification,17418,Variable PublishSubscribe_Diagnostics_TotalError_DiagnosticsLevel,17419,Variable PublishSubscribe_Diagnostics_TotalError_TimeFirstChange,17420,Variable PublishSubscribe_Diagnostics_Reset,17421,Method PublishSubscribe_Diagnostics_SubError,17422,Variable PublishSubscribe_Diagnostics_Counters,17423,Object PublishSubscribe_Diagnostics_Counters_StateError,17424,Variable PublishSubscribe_Diagnostics_Counters_StateError_Active,17425,Variable PublishSubscribe_Diagnostics_Counters_StateError_Classification,17426,Variable PubSubConnectionType_AddWriterGroup,17427,Method PubSubConnectionType_AddWriterGroup_InputArguments,17428,Variable PublishSubscribe_Diagnostics_Counters_StateError_DiagnosticsLevel,17429,Variable PublishSubscribe_Diagnostics_Counters_StateError_TimeFirstChange,17430,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByMethod,17431,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByMethod_Active,17432,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByMethod_Classification,17433,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,17434,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,17435,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByParent,17436,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByParent_Active,17437,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByParent_Classification,17438,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,17439,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,17440,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalFromError,17441,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalFromError_Active,17442,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalFromError_Classification,17443,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,17444,Variable PublishSubscribe_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,17445,Variable PublishSubscribe_Diagnostics_Counters_StatePausedByParent,17446,Variable PublishSubscribe_Diagnostics_Counters_StatePausedByParent_Active,17447,Variable PublishSubscribe_Diagnostics_Counters_StatePausedByParent_Classification,17448,Variable PublishSubscribe_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,17449,Variable PublishSubscribe_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,17450,Variable PublishSubscribe_Diagnostics_Counters_StateDisabledByMethod,17451,Variable PublishSubscribe_Diagnostics_Counters_StateDisabledByMethod_Active,17452,Variable PublishSubscribe_Diagnostics_Counters_StateDisabledByMethod_Classification,17453,Variable PublishSubscribe_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,17454,Variable PublishSubscribe_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,17455,Variable PubSubConnectionType_AddWriterGroup_OutputArguments,17456,Variable PublishSubscribe_Diagnostics_LiveValues,17457,Object PublishSubscribe_Diagnostics_LiveValues_ConfiguredDataSetWriters,17458,Variable PublishSubscribe_Diagnostics_LiveValues_ConfiguredDataSetWriters_DiagnosticsLevel,17459,Variable PublishSubscribe_Diagnostics_LiveValues_ConfiguredDataSetReaders,17460,Variable PublishSubscribe_Diagnostics_LiveValues_ConfiguredDataSetReaders_DiagnosticsLevel,17461,Variable PublishSubscribe_Diagnostics_LiveValues_OperationalDataSetWriters,17462,Variable PublishSubscribe_Diagnostics_LiveValues_OperationalDataSetWriters_DiagnosticsLevel,17463,Variable PublishSubscribe_Diagnostics_LiveValues_OperationalDataSetReaders,17464,Variable PubSubConnectionType_AddReaderGroup,17465,Method PublishSubscribe_Diagnostics_LiveValues_OperationalDataSetReaders_DiagnosticsLevel,17466,Variable DatagramConnectionTransportDataType,17467,DataType DatagramConnectionTransportDataType_Encoding_DefaultBinary,17468,Object OpcUa_BinarySchema_DatagramConnectionTransportDataType,17469,Variable OpcUa_BinarySchema_DatagramConnectionTransportDataType_DataTypeVersion,17470,Variable OpcUa_BinarySchema_DatagramConnectionTransportDataType_DictionaryFragment,17471,Variable DatagramConnectionTransportDataType_Encoding_DefaultXml,17472,Object OpcUa_XmlSchema_DatagramConnectionTransportDataType,17473,Variable OpcUa_XmlSchema_DatagramConnectionTransportDataType_DataTypeVersion,17474,Variable OpcUa_XmlSchema_DatagramConnectionTransportDataType_DictionaryFragment,17475,Variable DatagramConnectionTransportDataType_Encoding_DefaultJson,17476,Object UadpDataSetReaderMessageType_DataSetOffset,17477,Variable PublishSubscribeType_ConnectionName_Placeholder_ConnectionProperties,17478,Variable PublishSubscribeType_SupportedTransportProfiles,17479,Variable PublishSubscribe_ConnectionName_Placeholder_ConnectionProperties,17480,Variable PublishSubscribe_SupportedTransportProfiles,17481,Variable PublishedDataSetType_DataSetWriterName_Placeholder_DataSetWriterProperties,17482,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_DataSetWriterProperties,17483,Variable PublishedEventsType_DataSetWriterName_Placeholder_DataSetWriterProperties,17484,Variable PubSubConnectionType_ConnectionProperties,17485,Variable PubSubConnectionType_WriterGroupName_Placeholder_GroupProperties,17486,Variable PubSubConnectionType_ReaderGroupName_Placeholder_GroupProperties,17487,Variable PubSubGroupType_GroupProperties,17488,Variable WriterGroupType_GroupProperties,17489,Variable WriterGroupType_DataSetWriterName_Placeholder_DataSetWriterProperties,17490,Variable ReaderGroupType_GroupProperties,17491,Variable ReaderGroupType_DataSetReaderName_Placeholder_DataSetReaderProperties,17492,Variable DataSetWriterType_DataSetWriterProperties,17493,Variable DataSetReaderType_DataSetReaderProperties,17494,Variable PubSubConnectionType_AddReaderGroup_InputArguments,17507,Variable PubSubConnectionType_AddReaderGroup_OutputArguments,17508,Variable PubSubConnectionTypeAddWriterGroupMethodType,17561,Method GenericAttributeValue,17606,DataType GenericAttributes,17607,DataType GenericAttributeValue_Encoding_DefaultXml,17608,Object GenericAttributes_Encoding_DefaultXml,17609,Object GenericAttributeValue_Encoding_DefaultBinary,17610,Object GenericAttributes_Encoding_DefaultBinary,17611,Object ServerType_LocalTime,17612,Variable PubSubConnectionTypeAddWriterGroupMethodType_InputArguments,17613,Variable PubSubConnectionTypeAddWriterGroupMethodType_OutputArguments,17614,Variable AuditSecurityEventType_StatusCodeId,17615,Variable AuditChannelEventType_StatusCodeId,17616,Variable AuditOpenSecureChannelEventType_StatusCodeId,17617,Variable AuditSessionEventType_StatusCodeId,17618,Variable AuditCreateSessionEventType_StatusCodeId,17619,Variable AuditUrlMismatchEventType_StatusCodeId,17620,Variable AuditActivateSessionEventType_StatusCodeId,17621,Variable AuditCancelEventType_StatusCodeId,17622,Variable AuditCertificateEventType_StatusCodeId,17623,Variable AuditCertificateDataMismatchEventType_StatusCodeId,17624,Variable AuditCertificateExpiredEventType_StatusCodeId,17625,Variable AuditCertificateInvalidEventType_StatusCodeId,17626,Variable AuditCertificateUntrustedEventType_StatusCodeId,17627,Variable AuditCertificateRevokedEventType_StatusCodeId,17628,Variable AuditCertificateMismatchEventType_StatusCodeId,17629,Variable PubSubConnectionAddReaderGroupGroupMethodType,17630,Method PubSubConnectionAddReaderGroupGroupMethodType_InputArguments,17631,Variable SelectionListType_Selections,17632,Variable SelectionListType_SelectionDescriptions,17633,Variable Server_LocalTime,17634,Variable FiniteStateMachineType_AvailableStates,17635,Variable FiniteStateMachineType_AvailableTransitions,17636,Variable TemporaryFileTransferType_TransferState_Placeholder_AvailableStates,17637,Variable TemporaryFileTransferType_TransferState_Placeholder_AvailableTransitions,17638,Variable FileTransferStateMachineType_AvailableStates,17639,Variable FileTransferStateMachineType_AvailableTransitions,17640,Variable RoleMappingRuleChangedAuditEventType,17641,ObjectType RoleMappingRuleChangedAuditEventType_EventId,17642,Variable RoleMappingRuleChangedAuditEventType_EventType,17643,Variable RoleMappingRuleChangedAuditEventType_SourceNode,17644,Variable RoleMappingRuleChangedAuditEventType_SourceName,17645,Variable RoleMappingRuleChangedAuditEventType_Time,17646,Variable RoleMappingRuleChangedAuditEventType_ReceiveTime,17647,Variable RoleMappingRuleChangedAuditEventType_LocalTime,17648,Variable RoleMappingRuleChangedAuditEventType_Message,17649,Variable RoleMappingRuleChangedAuditEventType_Severity,17650,Variable RoleMappingRuleChangedAuditEventType_ActionTimeStamp,17651,Variable RoleMappingRuleChangedAuditEventType_Status,17652,Variable RoleMappingRuleChangedAuditEventType_ServerId,17653,Variable RoleMappingRuleChangedAuditEventType_ClientAuditEntryId,17654,Variable RoleMappingRuleChangedAuditEventType_ClientUserId,17655,Variable RoleMappingRuleChangedAuditEventType_MethodId,17656,Variable RoleMappingRuleChangedAuditEventType_InputArguments,17657,Variable AlarmConditionType_ShelvingState_AvailableStates,17658,Variable AlarmConditionType_ShelvingState_AvailableTransitions,17659,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_AvailableStates,17660,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_ShelvingState_AvailableTransitions,17661,Variable ShelvedStateMachineType_AvailableStates,17662,Variable ShelvedStateMachineType_AvailableTransitions,17663,Variable LimitAlarmType_ShelvingState_AvailableStates,17664,Variable LimitAlarmType_ShelvingState_AvailableTransitions,17665,Variable ExclusiveLimitStateMachineType_AvailableStates,17666,Variable ExclusiveLimitStateMachineType_AvailableTransitions,17667,Variable ExclusiveLimitAlarmType_ShelvingState_AvailableStates,17668,Variable ExclusiveLimitAlarmType_ShelvingState_AvailableTransitions,17669,Variable ExclusiveLimitAlarmType_LimitState_AvailableStates,17670,Variable ExclusiveLimitAlarmType_LimitState_AvailableTransitions,17671,Variable NonExclusiveLimitAlarmType_ShelvingState_AvailableStates,17672,Variable NonExclusiveLimitAlarmType_ShelvingState_AvailableTransitions,17673,Variable NonExclusiveLevelAlarmType_ShelvingState_AvailableStates,17674,Variable NonExclusiveLevelAlarmType_ShelvingState_AvailableTransitions,17675,Variable ExclusiveLevelAlarmType_ShelvingState_AvailableStates,17676,Variable ExclusiveLevelAlarmType_ShelvingState_AvailableTransitions,17677,Variable ExclusiveLevelAlarmType_LimitState_AvailableStates,17678,Variable ExclusiveLevelAlarmType_LimitState_AvailableTransitions,17679,Variable NonExclusiveDeviationAlarmType_ShelvingState_AvailableStates,17680,Variable NonExclusiveDeviationAlarmType_ShelvingState_AvailableTransitions,17681,Variable ExclusiveDeviationAlarmType_ShelvingState_AvailableStates,17682,Variable ExclusiveDeviationAlarmType_ShelvingState_AvailableTransitions,17683,Variable ExclusiveDeviationAlarmType_LimitState_AvailableStates,17684,Variable ExclusiveDeviationAlarmType_LimitState_AvailableTransitions,17685,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_AvailableStates,17686,Variable NonExclusiveRateOfChangeAlarmType_ShelvingState_AvailableTransitions,17687,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_AvailableStates,17688,Variable ExclusiveRateOfChangeAlarmType_ShelvingState_AvailableTransitions,17689,Variable ExclusiveRateOfChangeAlarmType_LimitState_AvailableStates,17690,Variable ExclusiveRateOfChangeAlarmType_LimitState_AvailableTransitions,17691,Variable DiscreteAlarmType_ShelvingState_AvailableStates,17692,Variable DiscreteAlarmType_ShelvingState_AvailableTransitions,17693,Variable OffNormalAlarmType_ShelvingState_AvailableStates,17694,Variable OffNormalAlarmType_ShelvingState_AvailableTransitions,17695,Variable SystemOffNormalAlarmType_ShelvingState_AvailableStates,17696,Variable SystemOffNormalAlarmType_ShelvingState_AvailableTransitions,17697,Variable TripAlarmType_ShelvingState_AvailableStates,17698,Variable TripAlarmType_ShelvingState_AvailableTransitions,17699,Variable CertificateExpirationAlarmType_ShelvingState_AvailableStates,17700,Variable CertificateExpirationAlarmType_ShelvingState_AvailableTransitions,17701,Variable DiscrepancyAlarmType_ShelvingState_AvailableStates,17702,Variable DiscrepancyAlarmType_ShelvingState_AvailableTransitions,17703,Variable ProgramStateMachineType_AvailableStates,17704,Variable ProgramStateMachineType_AvailableTransitions,17705,Variable PublishSubscribeType_ConnectionName_Placeholder_TransportProfileUri_Selections,17706,Variable PublishSubscribeType_ConnectionName_Placeholder_TransportProfileUri_SelectionDescriptions,17707,Variable PubSubConnectionType_TransportProfileUri_Selections,17710,Variable PubSubConnectionType_TransportProfileUri_SelectionDescriptions,17711,Variable FileDirectoryType_FileDirectoryName_Placeholder_DeleteFileSystemObject,17718,Method FileDirectoryType_FileDirectoryName_Placeholder_DeleteFileSystemObject_InputArguments,17719,Variable PubSubConnectionAddReaderGroupGroupMethodType_OutputArguments,17720,Variable ConnectionTransportType,17721,ObjectType FileSystem_FileDirectoryName_Placeholder_DeleteFileSystemObject,17722,Method FileSystem_FileDirectoryName_Placeholder_DeleteFileSystemObject_InputArguments,17723,Variable PubSubGroupType_MaxNetworkMessageSize,17724,Variable WriterGroupType,17725,ObjectType WriterGroupType_SecurityMode,17726,Variable WriterGroupType_SecurityGroupId,17727,Variable WriterGroupType_SecurityKeyServices,17728,Variable WriterGroupType_MaxNetworkMessageSize,17729,Variable WriterGroupType_Status,17730,Object WriterGroupType_Status_State,17731,Variable AuthorizationServices,17732,Object AuthorizationServices_ServiceName_Placeholder,17733,Object WriterGroupType_Status_Enable,17734,Method WriterGroupType_Status_Disable,17735,Method WriterGroupType_WriterGroupId,17736,Variable WriterGroupType_PublishingInterval,17737,Variable WriterGroupType_KeepAliveTime,17738,Variable WriterGroupType_Priority,17739,Variable WriterGroupType_LocaleIds,17740,Variable WriterGroupType_TransportSettings,17741,Object WriterGroupType_MessageSettings,17742,Object WriterGroupType_DataSetWriterName_Placeholder,17743,Object WriterGroupType_DataSetWriterName_Placeholder_DataSetWriterId,17744,Variable WriterGroupType_DataSetWriterName_Placeholder_DataSetFieldContentMask,17745,Variable WriterGroupType_DataSetWriterName_Placeholder_KeyFrameCount,17746,Variable WriterGroupType_DataSetWriterName_Placeholder_TransportSettings,17747,Object WriterGroupType_DataSetWriterName_Placeholder_MessageSettings,17748,Object WriterGroupType_DataSetWriterName_Placeholder_Status,17749,Object WriterGroupType_DataSetWriterName_Placeholder_Status_State,17750,Variable WriterGroupType_DataSetWriterName_Placeholder_Status_Enable,17751,Method WriterGroupType_DataSetWriterName_Placeholder_Status_Disable,17752,Method WriterGroupType_DataSetWriterName_Placeholder_Diagnostics,17753,Object WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_DiagnosticsLevel,17754,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation,17755,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Active,17756,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Classification,17757,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,17758,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,17759,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalError,17760,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Active,17761,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Classification,17762,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,17763,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_TotalError_TimeFirstChange,17764,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Reset,17765,Method WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_SubError,17766,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters,17767,Object WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError,17768,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Active,17769,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Classification,17770,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,17771,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,17772,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,17773,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,17774,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,17775,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,17776,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,17777,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent,17778,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,17779,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,17780,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,17781,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,17782,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError,17783,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,17784,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,17785,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,17786,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,17787,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent,17788,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,17789,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,17790,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,17791,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,17792,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,17793,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,17794,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,17795,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,17796,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,17797,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues,17798,Object WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages,17799,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Active,17800,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Classification,17801,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_DiagnosticsLevel,17802,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_TimeFirstChange,17803,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber,17804,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber_DiagnosticsLevel,17805,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode,17806,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode_DiagnosticsLevel,17807,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion,17808,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion_DiagnosticsLevel,17809,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion,17810,Variable WriterGroupType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion_DiagnosticsLevel,17811,Variable WriterGroupType_Diagnostics,17812,Object WriterGroupType_Diagnostics_DiagnosticsLevel,17813,Variable WriterGroupType_Diagnostics_TotalInformation,17814,Variable WriterGroupType_Diagnostics_TotalInformation_Active,17815,Variable WriterGroupType_Diagnostics_TotalInformation_Classification,17816,Variable WriterGroupType_Diagnostics_TotalInformation_DiagnosticsLevel,17817,Variable WriterGroupType_Diagnostics_TotalInformation_TimeFirstChange,17818,Variable WriterGroupType_Diagnostics_TotalError,17819,Variable WriterGroupType_Diagnostics_TotalError_Active,17820,Variable WriterGroupType_Diagnostics_TotalError_Classification,17821,Variable WriterGroupType_Diagnostics_TotalError_DiagnosticsLevel,17822,Variable WriterGroupType_Diagnostics_TotalError_TimeFirstChange,17823,Variable WriterGroupType_Diagnostics_Reset,17824,Method WriterGroupType_Diagnostics_SubError,17825,Variable WriterGroupType_Diagnostics_Counters,17826,Object WriterGroupType_Diagnostics_Counters_StateError,17827,Variable WriterGroupType_Diagnostics_Counters_StateError_Active,17828,Variable WriterGroupType_Diagnostics_Counters_StateError_Classification,17829,Variable WriterGroupType_Diagnostics_Counters_StateError_DiagnosticsLevel,17830,Variable WriterGroupType_Diagnostics_Counters_StateError_TimeFirstChange,17831,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByMethod,17832,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByMethod_Active,17833,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByMethod_Classification,17834,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,17835,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,17836,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByParent,17837,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByParent_Active,17838,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByParent_Classification,17839,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,17840,Variable WriterGroupType_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,17841,Variable WriterGroupType_Diagnostics_Counters_StateOperationalFromError,17842,Variable WriterGroupType_Diagnostics_Counters_StateOperationalFromError_Active,17843,Variable WriterGroupType_Diagnostics_Counters_StateOperationalFromError_Classification,17844,Variable WriterGroupType_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,17845,Variable WriterGroupType_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,17846,Variable WriterGroupType_Diagnostics_Counters_StatePausedByParent,17847,Variable WriterGroupType_Diagnostics_Counters_StatePausedByParent_Active,17848,Variable WriterGroupType_Diagnostics_Counters_StatePausedByParent_Classification,17849,Variable WriterGroupType_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,17850,Variable WriterGroupType_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,17851,Variable AuthorizationServiceConfigurationType,17852,ObjectType WriterGroupType_Diagnostics_Counters_StateDisabledByMethod,17853,Variable WriterGroupType_Diagnostics_Counters_StateDisabledByMethod_Active,17854,Variable WriterGroupType_Diagnostics_Counters_StateDisabledByMethod_Classification,17855,Variable WriterGroupType_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,17856,Variable WriterGroupType_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,17857,Variable WriterGroupType_Diagnostics_LiveValues,17858,Object WriterGroupType_Diagnostics_Counters_SentNetworkMessages,17859,Variable AuthorizationServiceConfigurationType_ServiceCertificate,17860,Variable DecimalDataType,17861,DataType DecimalDataType_Encoding_DefaultXml,17862,Object DecimalDataType_Encoding_DefaultBinary,17863,Object WriterGroupType_Diagnostics_Counters_SentNetworkMessages_Active,17864,Variable AlarmConditionType_AudibleSound_ListId,17865,Variable AlarmConditionType_AudibleSound_AgencyId,17866,Variable AlarmConditionType_AudibleSound_VersionId,17867,Variable AlarmConditionType_Unsuppress,17868,Method AlarmConditionType_RemoveFromService,17869,Method AlarmConditionType_PlaceInService,17870,Method WriterGroupType_Diagnostics_Counters_SentNetworkMessages_Classification,17871,Variable WriterGroupType_Diagnostics_Counters_SentNetworkMessages_DiagnosticsLevel,17872,Variable WriterGroupType_Diagnostics_Counters_SentNetworkMessages_TimeFirstChange,17873,Variable WriterGroupType_Diagnostics_Counters_FailedTransmissions,17874,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Unsuppress,17875,Method AlarmGroupType_AlarmConditionInstance_Placeholder_RemoveFromService,17876,Method AlarmGroupType_AlarmConditionInstance_Placeholder_PlaceInService,17877,Method WriterGroupType_Diagnostics_Counters_FailedTransmissions_Active,17878,Variable LimitAlarmType_AudibleSound_ListId,17879,Variable LimitAlarmType_AudibleSound_AgencyId,17880,Variable LimitAlarmType_AudibleSound_VersionId,17881,Variable LimitAlarmType_Unsuppress,17882,Method LimitAlarmType_RemoveFromService,17883,Method LimitAlarmType_PlaceInService,17884,Method WriterGroupType_Diagnostics_Counters_FailedTransmissions_Classification,17885,Variable ExclusiveLimitAlarmType_AudibleSound_ListId,17886,Variable ExclusiveLimitAlarmType_AudibleSound_AgencyId,17887,Variable ExclusiveLimitAlarmType_AudibleSound_VersionId,17888,Variable ExclusiveLimitAlarmType_Unsuppress,17889,Method ExclusiveLimitAlarmType_RemoveFromService,17890,Method ExclusiveLimitAlarmType_PlaceInService,17891,Method WriterGroupType_Diagnostics_Counters_FailedTransmissions_DiagnosticsLevel,17892,Variable NonExclusiveLimitAlarmType_AudibleSound_ListId,17893,Variable NonExclusiveLimitAlarmType_AudibleSound_AgencyId,17894,Variable NonExclusiveLimitAlarmType_AudibleSound_VersionId,17895,Variable NonExclusiveLimitAlarmType_Unsuppress,17896,Method NonExclusiveLimitAlarmType_RemoveFromService,17897,Method NonExclusiveLimitAlarmType_PlaceInService,17898,Method WriterGroupType_Diagnostics_Counters_FailedTransmissions_TimeFirstChange,17899,Variable WriterGroupType_Diagnostics_Counters_EncryptionErrors,17900,Variable WriterGroupType_Diagnostics_Counters_EncryptionErrors_Active,17901,Variable WriterGroupType_Diagnostics_Counters_EncryptionErrors_Classification,17902,Variable WriterGroupType_Diagnostics_Counters_EncryptionErrors_DiagnosticsLevel,17903,Variable NonExclusiveLevelAlarmType_RemoveFromService,17904,Method NonExclusiveLevelAlarmType_PlaceInService,17905,Method WriterGroupType_Diagnostics_Counters_EncryptionErrors_TimeFirstChange,17906,Variable ExclusiveLevelAlarmType_AudibleSound_ListId,17907,Variable ExclusiveLevelAlarmType_AudibleSound_AgencyId,17908,Variable ExclusiveLevelAlarmType_AudibleSound_VersionId,17909,Variable ExclusiveLevelAlarmType_Unsuppress,17910,Method ExclusiveLevelAlarmType_RemoveFromService,17911,Method ExclusiveLevelAlarmType_PlaceInService,17912,Method WriterGroupType_Diagnostics_LiveValues_ConfiguredDataSetWriters,17913,Variable NonExclusiveDeviationAlarmType_AudibleSound_ListId,17914,Variable NonExclusiveDeviationAlarmType_AudibleSound_AgencyId,17915,Variable NonExclusiveDeviationAlarmType_AudibleSound_VersionId,17916,Variable NonExclusiveDeviationAlarmType_Unsuppress,17917,Method NonExclusiveDeviationAlarmType_RemoveFromService,17918,Method NonExclusiveDeviationAlarmType_PlaceInService,17919,Method WriterGroupType_Diagnostics_LiveValues_ConfiguredDataSetWriters_DiagnosticsLevel,17920,Variable NonExclusiveRateOfChangeAlarmType_AudibleSound_ListId,17921,Variable NonExclusiveRateOfChangeAlarmType_AudibleSound_AgencyId,17922,Variable NonExclusiveRateOfChangeAlarmType_AudibleSound_VersionId,17923,Variable NonExclusiveRateOfChangeAlarmType_Unsuppress,17924,Method NonExclusiveRateOfChangeAlarmType_RemoveFromService,17925,Method NonExclusiveRateOfChangeAlarmType_PlaceInService,17926,Method WriterGroupType_Diagnostics_LiveValues_OperationalDataSetWriters,17927,Variable ExclusiveDeviationAlarmType_AudibleSound_ListId,17928,Variable ExclusiveDeviationAlarmType_AudibleSound_AgencyId,17929,Variable ExclusiveDeviationAlarmType_AudibleSound_VersionId,17930,Variable ExclusiveDeviationAlarmType_Unsuppress,17931,Method ExclusiveDeviationAlarmType_RemoveFromService,17932,Method ExclusiveDeviationAlarmType_PlaceInService,17933,Method WriterGroupType_Diagnostics_LiveValues_OperationalDataSetWriters_DiagnosticsLevel,17934,Variable ExclusiveRateOfChangeAlarmType_AudibleSound_ListId,17935,Variable ExclusiveRateOfChangeAlarmType_AudibleSound_AgencyId,17936,Variable ExclusiveRateOfChangeAlarmType_AudibleSound_VersionId,17937,Variable ExclusiveRateOfChangeAlarmType_Unsuppress,17938,Method ExclusiveRateOfChangeAlarmType_RemoveFromService,17939,Method ExclusiveRateOfChangeAlarmType_PlaceInService,17940,Method WriterGroupType_Diagnostics_LiveValues_SecurityTokenID,17941,Variable DiscreteAlarmType_AudibleSound_ListId,17942,Variable DiscreteAlarmType_AudibleSound_AgencyId,17943,Variable DiscreteAlarmType_AudibleSound_VersionId,17944,Variable DiscreteAlarmType_Unsuppress,17945,Method DiscreteAlarmType_RemoveFromService,17946,Method DiscreteAlarmType_PlaceInService,17947,Method WriterGroupType_Diagnostics_LiveValues_SecurityTokenID_DiagnosticsLevel,17948,Variable OffNormalAlarmType_AudibleSound_ListId,17949,Variable OffNormalAlarmType_AudibleSound_AgencyId,17950,Variable OffNormalAlarmType_AudibleSound_VersionId,17951,Variable OffNormalAlarmType_Unsuppress,17952,Method OffNormalAlarmType_RemoveFromService,17953,Method OffNormalAlarmType_PlaceInService,17954,Method WriterGroupType_Diagnostics_LiveValues_TimeToNextTokenID,17955,Variable SystemOffNormalAlarmType_AudibleSound_ListId,17956,Variable SystemOffNormalAlarmType_AudibleSound_AgencyId,17957,Variable SystemOffNormalAlarmType_AudibleSound_VersionId,17958,Variable SystemOffNormalAlarmType_Unsuppress,17959,Method SystemOffNormalAlarmType_RemoveFromService,17960,Method SystemOffNormalAlarmType_PlaceInService,17961,Method WriterGroupType_Diagnostics_LiveValues_TimeToNextTokenID_DiagnosticsLevel,17962,Variable TripAlarmType_AudibleSound_ListId,17963,Variable TripAlarmType_AudibleSound_AgencyId,17964,Variable TripAlarmType_AudibleSound_VersionId,17965,Variable TripAlarmType_Unsuppress,17966,Method TripAlarmType_RemoveFromService,17967,Method TripAlarmType_PlaceInService,17968,Method WriterGroupType_AddDataSetWriter,17969,Method CertificateExpirationAlarmType_AudibleSound_ListId,17970,Variable CertificateExpirationAlarmType_AudibleSound_AgencyId,17971,Variable CertificateExpirationAlarmType_AudibleSound_VersionId,17972,Variable CertificateExpirationAlarmType_Unsuppress,17973,Method CertificateExpirationAlarmType_RemoveFromService,17974,Method CertificateExpirationAlarmType_PlaceInService,17975,Method WriterGroupType_AddDataSetWriter_InputArguments,17976,Variable DiscrepancyAlarmType_AudibleSound_ListId,17977,Variable DiscrepancyAlarmType_AudibleSound_AgencyId,17978,Variable DiscrepancyAlarmType_AudibleSound_VersionId,17979,Variable DiscrepancyAlarmType_Unsuppress,17980,Method DiscrepancyAlarmType_RemoveFromService,17981,Method DiscrepancyAlarmType_PlaceInService,17982,Method HasEffectEnable,17983,ReferenceType HasEffectSuppressed,17984,ReferenceType HasEffectUnsuppressed,17985,ReferenceType AudioVariableType,17986,VariableType WriterGroupType_AddDataSetWriter_OutputArguments,17987,Variable AudioVariableType_ListId,17988,Variable AudioVariableType_AgencyId,17989,Variable AudioVariableType_VersionId,17990,Variable AlarmMetricsType_StartTime,17991,Variable WriterGroupType_RemoveDataSetWriter,17992,Method WriterGroupType_RemoveDataSetWriter_InputArguments,17993,Variable PubSubGroupTypeAddWriterrMethodType,17994,Method PubSubGroupTypeAddWriterrMethodType_InputArguments,17995,Variable PubSubGroupTypeAddWriterrMethodType_OutputArguments,17996,Variable WriterGroupTransportType,17997,ObjectType WriterGroupMessageType,17998,ObjectType ReaderGroupType,17999,ObjectType ReaderGroupType_SecurityMode,18000,Variable KeyCredentialConfigurationType,18001,ObjectType ReaderGroupType_SecurityGroupId,18002,Variable ReaderGroupType_SecurityKeyServices,18003,Variable KeyCredentialConfigurationType_EndpointUrls,18004,Variable KeyCredentialConfigurationType_ServiceStatus,18005,Variable KeyCredentialConfigurationType_UpdateCredential,18006,Method KeyCredentialConfigurationType_UpdateCredential_InputArguments,18007,Variable KeyCredentialConfigurationType_DeleteCredential,18008,Method KeyCredentialUpdateMethodType,18009,Method KeyCredentialUpdateMethodType_InputArguments,18010,Variable KeyCredentialAuditEventType,18011,ObjectType KeyCredentialAuditEventType_EventId,18012,Variable KeyCredentialAuditEventType_EventType,18013,Variable KeyCredentialAuditEventType_SourceNode,18014,Variable KeyCredentialAuditEventType_SourceName,18015,Variable KeyCredentialAuditEventType_Time,18016,Variable KeyCredentialAuditEventType_ReceiveTime,18017,Variable KeyCredentialAuditEventType_LocalTime,18018,Variable KeyCredentialAuditEventType_Message,18019,Variable KeyCredentialAuditEventType_Severity,18020,Variable KeyCredentialAuditEventType_ActionTimeStamp,18021,Variable KeyCredentialAuditEventType_Status,18022,Variable KeyCredentialAuditEventType_ServerId,18023,Variable KeyCredentialAuditEventType_ClientAuditEntryId,18024,Variable KeyCredentialAuditEventType_ClientUserId,18025,Variable KeyCredentialAuditEventType_MethodId,18026,Variable KeyCredentialAuditEventType_InputArguments,18027,Variable KeyCredentialAuditEventType_ResourceUri,18028,Variable KeyCredentialUpdatedAuditEventType,18029,ObjectType KeyCredentialUpdatedAuditEventType_EventId,18030,Variable KeyCredentialUpdatedAuditEventType_EventType,18031,Variable KeyCredentialUpdatedAuditEventType_SourceNode,18032,Variable KeyCredentialUpdatedAuditEventType_SourceName,18033,Variable KeyCredentialUpdatedAuditEventType_Time,18034,Variable KeyCredentialUpdatedAuditEventType_ReceiveTime,18035,Variable KeyCredentialUpdatedAuditEventType_LocalTime,18036,Variable KeyCredentialUpdatedAuditEventType_Message,18037,Variable KeyCredentialUpdatedAuditEventType_Severity,18038,Variable KeyCredentialUpdatedAuditEventType_ActionTimeStamp,18039,Variable KeyCredentialUpdatedAuditEventType_Status,18040,Variable KeyCredentialUpdatedAuditEventType_ServerId,18041,Variable KeyCredentialUpdatedAuditEventType_ClientAuditEntryId,18042,Variable KeyCredentialUpdatedAuditEventType_ClientUserId,18043,Variable KeyCredentialUpdatedAuditEventType_MethodId,18044,Variable KeyCredentialUpdatedAuditEventType_InputArguments,18045,Variable KeyCredentialUpdatedAuditEventType_ResourceUri,18046,Variable KeyCredentialDeletedAuditEventType,18047,ObjectType KeyCredentialDeletedAuditEventType_EventId,18048,Variable KeyCredentialDeletedAuditEventType_EventType,18049,Variable KeyCredentialDeletedAuditEventType_SourceNode,18050,Variable KeyCredentialDeletedAuditEventType_SourceName,18051,Variable KeyCredentialDeletedAuditEventType_Time,18052,Variable KeyCredentialDeletedAuditEventType_ReceiveTime,18053,Variable KeyCredentialDeletedAuditEventType_LocalTime,18054,Variable KeyCredentialDeletedAuditEventType_Message,18055,Variable KeyCredentialDeletedAuditEventType_Severity,18056,Variable KeyCredentialDeletedAuditEventType_ActionTimeStamp,18057,Variable KeyCredentialDeletedAuditEventType_Status,18058,Variable KeyCredentialDeletedAuditEventType_ServerId,18059,Variable KeyCredentialDeletedAuditEventType_ClientAuditEntryId,18060,Variable KeyCredentialDeletedAuditEventType_ClientUserId,18061,Variable KeyCredentialDeletedAuditEventType_MethodId,18062,Variable KeyCredentialDeletedAuditEventType_InputArguments,18063,Variable KeyCredentialDeletedAuditEventType_ResourceUri,18064,Variable ReaderGroupType_MaxNetworkMessageSize,18065,Variable AuthorizationServices_ServiceName_Placeholder_ServiceCertificate,18066,Variable ReaderGroupType_Status,18067,Object ReaderGroupType_Status_State,18068,Variable KeyCredentialConfigurationType_ResourceUri,18069,Variable AuthorizationServices_ServiceName_Placeholder_ServiceUri,18070,Variable AuthorizationServices_ServiceName_Placeholder_IssuerEndpointUrl,18071,Variable AuthorizationServiceConfigurationType_ServiceUri,18072,Variable AuthorizationServiceConfigurationType_IssuerEndpointUrl,18073,Variable ReaderGroupType_Status_Enable,18074,Method ReaderGroupType_Status_Disable,18075,Method ReaderGroupType_DataSetReaderName_Placeholder,18076,Object ReaderGroupType_DataSetReaderName_Placeholder_PublisherId,18077,Variable ReaderGroupType_DataSetReaderName_Placeholder_WriterGroupId,18078,Variable ReaderGroupType_DataSetReaderName_Placeholder_DataSetWriterId,18079,Variable ReaderGroupType_DataSetReaderName_Placeholder_DataSetMetaData,18080,Variable ReaderGroupType_DataSetReaderName_Placeholder_DataSetFieldContentMask,18081,Variable ReaderGroupType_DataSetReaderName_Placeholder_MessageReceiveTimeout,18082,Variable ReaderGroupType_DataSetReaderName_Placeholder_SecurityMode,18083,Variable ReaderGroupType_DataSetReaderName_Placeholder_SecurityGroupId,18084,Variable ReaderGroupType_DataSetReaderName_Placeholder_SecurityKeyServices,18085,Variable ReaderGroupType_DataSetReaderName_Placeholder_TransportSettings,18086,Object ReaderGroupType_DataSetReaderName_Placeholder_MessageSettings,18087,Object ReaderGroupType_DataSetReaderName_Placeholder_Status,18088,Object ReaderGroupType_DataSetReaderName_Placeholder_Status_State,18089,Variable ReaderGroupType_DataSetReaderName_Placeholder_Status_Enable,18090,Method ReaderGroupType_DataSetReaderName_Placeholder_Status_Disable,18091,Method ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics,18092,Object ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_DiagnosticsLevel,18093,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalInformation,18094,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalInformation_Active,18095,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalInformation_Classification,18096,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,18097,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,18098,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalError,18099,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalError_Active,18100,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalError_Classification,18101,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,18102,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_TotalError_TimeFirstChange,18103,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Reset,18104,Method ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_SubError,18105,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters,18106,Object ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateError,18107,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateError_Active,18108,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateError_Classification,18109,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,18110,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,18111,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,18112,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,18113,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,18114,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,18115,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,18116,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByParent,18117,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,18118,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,18119,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,18120,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,18121,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalFromError,18122,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,18123,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,18124,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,18125,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,18126,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StatePausedByParent,18127,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,18128,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,18129,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,18130,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,18131,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,18132,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,18133,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,18134,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,18135,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,18136,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues,18137,Object ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_FailedDataSetMessages,18138,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Active,18139,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Classification,18140,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_DiagnosticsLevel,18141,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_TimeFirstChange,18142,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_DecryptionErrors,18143,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_DecryptionErrors_Active,18144,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_DecryptionErrors_Classification,18145,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_DecryptionErrors_DiagnosticsLevel,18146,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_Counters_DecryptionErrors_TimeFirstChange,18147,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber,18148,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber_DiagnosticsLevel,18149,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_StatusCode,18150,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_StatusCode_DiagnosticsLevel,18151,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_MajorVersion,18152,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_MajorVersion_DiagnosticsLevel,18153,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_MinorVersion,18154,Variable KeyCredentialConfiguration,18155,Object KeyCredentialConfiguration_ServiceName_Placeholder,18156,Object KeyCredentialConfiguration_ServiceName_Placeholder_ResourceUri,18157,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_MinorVersion_DiagnosticsLevel,18158,Variable KeyCredentialConfiguration_ServiceName_Placeholder_EndpointUrls,18159,Variable KeyCredentialConfiguration_ServiceName_Placeholder_ServiceStatus,18160,Variable KeyCredentialConfiguration_ServiceName_Placeholder_UpdateCredential,18161,Method KeyCredentialConfiguration_ServiceName_Placeholder_UpdateCredential_InputArguments,18162,Variable KeyCredentialConfiguration_ServiceName_Placeholder_DeleteCredential,18163,Method KeyCredentialConfiguration_ServiceName_Placeholder_ProfileUri,18164,Variable KeyCredentialConfigurationType_ProfileUri,18165,Variable OpcUa_XmlSchema_DataTypeDefinition,18166,Variable OpcUa_XmlSchema_DataTypeDefinition_DataTypeVersion,18167,Variable OpcUa_XmlSchema_DataTypeDefinition_DictionaryFragment,18168,Variable OpcUa_XmlSchema_StructureField,18169,Variable OpcUa_XmlSchema_StructureField_DataTypeVersion,18170,Variable OpcUa_XmlSchema_StructureField_DictionaryFragment,18171,Variable OpcUa_XmlSchema_StructureDefinition,18172,Variable OpcUa_XmlSchema_StructureDefinition_DataTypeVersion,18173,Variable OpcUa_XmlSchema_StructureDefinition_DictionaryFragment,18174,Variable OpcUa_XmlSchema_EnumDefinition,18175,Variable OpcUa_XmlSchema_EnumDefinition_DataTypeVersion,18176,Variable OpcUa_XmlSchema_EnumDefinition_DictionaryFragment,18177,Variable OpcUa_BinarySchema_DataTypeDefinition,18178,Variable OpcUa_BinarySchema_DataTypeDefinition_DataTypeVersion,18179,Variable OpcUa_BinarySchema_DataTypeDefinition_DictionaryFragment,18180,Variable OpcUa_BinarySchema_StructureField,18181,Variable OpcUa_BinarySchema_StructureField_DataTypeVersion,18182,Variable OpcUa_BinarySchema_StructureField_DictionaryFragment,18183,Variable OpcUa_BinarySchema_StructureDefinition,18184,Variable OpcUa_BinarySchema_StructureDefinition_DataTypeVersion,18185,Variable OpcUa_BinarySchema_StructureDefinition_DictionaryFragment,18186,Variable OpcUa_BinarySchema_EnumDefinition,18187,Variable OpcUa_BinarySchema_EnumDefinition_DataTypeVersion,18188,Variable OpcUa_BinarySchema_EnumDefinition_DictionaryFragment,18189,Variable AlarmConditionType_LatchedState,18190,Variable AlarmConditionType_LatchedState_Id,18191,Variable AlarmConditionType_LatchedState_Name,18192,Variable AlarmConditionType_LatchedState_Number,18193,Variable AlarmConditionType_LatchedState_EffectiveDisplayName,18194,Variable AlarmConditionType_LatchedState_TransitionTime,18195,Variable AlarmConditionType_LatchedState_EffectiveTransitionTime,18196,Variable AlarmConditionType_LatchedState_TrueState,18197,Variable AlarmConditionType_LatchedState_FalseState,18198,Variable AlarmConditionType_Reset,18199,Method AlarmGroupType_AlarmConditionInstance_Placeholder_AudibleSound_ListId,18200,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AudibleSound_AgencyId,18201,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_AudibleSound_VersionId,18202,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState,18203,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_Id,18204,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_Name,18205,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_Number,18206,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_EffectiveDisplayName,18207,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_TransitionTime,18208,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_EffectiveTransitionTime,18209,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_TrueState,18210,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_LatchedState_FalseState,18211,Variable AlarmGroupType_AlarmConditionInstance_Placeholder_Reset,18212,Method LimitAlarmType_LatchedState,18213,Variable LimitAlarmType_LatchedState_Id,18214,Variable LimitAlarmType_LatchedState_Name,18215,Variable LimitAlarmType_LatchedState_Number,18216,Variable LimitAlarmType_LatchedState_EffectiveDisplayName,18217,Variable LimitAlarmType_LatchedState_TransitionTime,18218,Variable LimitAlarmType_LatchedState_EffectiveTransitionTime,18219,Variable LimitAlarmType_LatchedState_TrueState,18220,Variable LimitAlarmType_LatchedState_FalseState,18221,Variable LimitAlarmType_Reset,18222,Method ExclusiveLimitAlarmType_LatchedState,18223,Variable ExclusiveLimitAlarmType_LatchedState_Id,18224,Variable ExclusiveLimitAlarmType_LatchedState_Name,18225,Variable ExclusiveLimitAlarmType_LatchedState_Number,18226,Variable ExclusiveLimitAlarmType_LatchedState_EffectiveDisplayName,18227,Variable ExclusiveLimitAlarmType_LatchedState_TransitionTime,18228,Variable ExclusiveLimitAlarmType_LatchedState_EffectiveTransitionTime,18229,Variable ExclusiveLimitAlarmType_LatchedState_TrueState,18230,Variable ExclusiveLimitAlarmType_LatchedState_FalseState,18231,Variable ExclusiveLimitAlarmType_Reset,18232,Method NonExclusiveLimitAlarmType_LatchedState,18233,Variable NonExclusiveLimitAlarmType_LatchedState_Id,18234,Variable NonExclusiveLimitAlarmType_LatchedState_Name,18235,Variable NonExclusiveLimitAlarmType_LatchedState_Number,18236,Variable NonExclusiveLimitAlarmType_LatchedState_EffectiveDisplayName,18237,Variable NonExclusiveLimitAlarmType_LatchedState_TransitionTime,18238,Variable NonExclusiveLimitAlarmType_LatchedState_EffectiveTransitionTime,18239,Variable NonExclusiveLimitAlarmType_LatchedState_TrueState,18240,Variable NonExclusiveLimitAlarmType_LatchedState_FalseState,18241,Variable NonExclusiveLimitAlarmType_Reset,18242,Method NonExclusiveLevelAlarmType_AudibleSound_ListId,18243,Variable NonExclusiveLevelAlarmType_AudibleSound_AgencyId,18244,Variable NonExclusiveLevelAlarmType_AudibleSound_VersionId,18245,Variable NonExclusiveLevelAlarmType_LatchedState,18246,Variable NonExclusiveLevelAlarmType_LatchedState_Id,18247,Variable NonExclusiveLevelAlarmType_LatchedState_Name,18248,Variable NonExclusiveLevelAlarmType_LatchedState_Number,18249,Variable NonExclusiveLevelAlarmType_LatchedState_EffectiveDisplayName,18250,Variable NonExclusiveLevelAlarmType_LatchedState_TransitionTime,18251,Variable NonExclusiveLevelAlarmType_LatchedState_EffectiveTransitionTime,18252,Variable NonExclusiveLevelAlarmType_LatchedState_TrueState,18253,Variable NonExclusiveLevelAlarmType_LatchedState_FalseState,18254,Variable NonExclusiveLevelAlarmType_Unsuppress,18255,Method NonExclusiveLevelAlarmType_Reset,18256,Method ExclusiveLevelAlarmType_LatchedState,18257,Variable ExclusiveLevelAlarmType_LatchedState_Id,18258,Variable ExclusiveLevelAlarmType_LatchedState_Name,18259,Variable ExclusiveLevelAlarmType_LatchedState_Number,18260,Variable ExclusiveLevelAlarmType_LatchedState_EffectiveDisplayName,18261,Variable ExclusiveLevelAlarmType_LatchedState_TransitionTime,18262,Variable ExclusiveLevelAlarmType_LatchedState_EffectiveTransitionTime,18263,Variable ExclusiveLevelAlarmType_LatchedState_TrueState,18264,Variable ExclusiveLevelAlarmType_LatchedState_FalseState,18265,Variable ExclusiveLevelAlarmType_Reset,18266,Method NonExclusiveDeviationAlarmType_LatchedState,18267,Variable NonExclusiveDeviationAlarmType_LatchedState_Id,18268,Variable NonExclusiveDeviationAlarmType_LatchedState_Name,18269,Variable NonExclusiveDeviationAlarmType_LatchedState_Number,18270,Variable NonExclusiveDeviationAlarmType_LatchedState_EffectiveDisplayName,18271,Variable NonExclusiveDeviationAlarmType_LatchedState_TransitionTime,18272,Variable NonExclusiveDeviationAlarmType_LatchedState_EffectiveTransitionTime,18273,Variable NonExclusiveDeviationAlarmType_LatchedState_TrueState,18274,Variable NonExclusiveDeviationAlarmType_LatchedState_FalseState,18275,Variable NonExclusiveDeviationAlarmType_Reset,18276,Method NonExclusiveRateOfChangeAlarmType_LatchedState,18277,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_Id,18278,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_Name,18279,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_Number,18280,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_EffectiveDisplayName,18281,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_TransitionTime,18282,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_EffectiveTransitionTime,18283,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_TrueState,18284,Variable NonExclusiveRateOfChangeAlarmType_LatchedState_FalseState,18285,Variable NonExclusiveRateOfChangeAlarmType_Reset,18286,Method ExclusiveDeviationAlarmType_LatchedState,18287,Variable ExclusiveDeviationAlarmType_LatchedState_Id,18288,Variable ExclusiveDeviationAlarmType_LatchedState_Name,18289,Variable ExclusiveDeviationAlarmType_LatchedState_Number,18290,Variable ExclusiveDeviationAlarmType_LatchedState_EffectiveDisplayName,18291,Variable ExclusiveDeviationAlarmType_LatchedState_TransitionTime,18292,Variable ExclusiveDeviationAlarmType_LatchedState_EffectiveTransitionTime,18293,Variable ExclusiveDeviationAlarmType_LatchedState_TrueState,18294,Variable ExclusiveDeviationAlarmType_LatchedState_FalseState,18295,Variable ExclusiveDeviationAlarmType_Reset,18296,Method ExclusiveRateOfChangeAlarmType_LatchedState,18297,Variable ExclusiveRateOfChangeAlarmType_LatchedState_Id,18298,Variable ExclusiveRateOfChangeAlarmType_LatchedState_Name,18299,Variable ExclusiveRateOfChangeAlarmType_LatchedState_Number,18300,Variable ExclusiveRateOfChangeAlarmType_LatchedState_EffectiveDisplayName,18301,Variable ExclusiveRateOfChangeAlarmType_LatchedState_TransitionTime,18302,Variable ExclusiveRateOfChangeAlarmType_LatchedState_EffectiveTransitionTime,18303,Variable ExclusiveRateOfChangeAlarmType_LatchedState_TrueState,18304,Variable ExclusiveRateOfChangeAlarmType_LatchedState_FalseState,18305,Variable ExclusiveRateOfChangeAlarmType_Reset,18306,Method DiscreteAlarmType_LatchedState,18307,Variable DiscreteAlarmType_LatchedState_Id,18308,Variable DiscreteAlarmType_LatchedState_Name,18309,Variable DiscreteAlarmType_LatchedState_Number,18310,Variable DiscreteAlarmType_LatchedState_EffectiveDisplayName,18311,Variable DiscreteAlarmType_LatchedState_TransitionTime,18312,Variable DiscreteAlarmType_LatchedState_EffectiveTransitionTime,18313,Variable DiscreteAlarmType_LatchedState_TrueState,18314,Variable DiscreteAlarmType_LatchedState_FalseState,18315,Variable DiscreteAlarmType_Reset,18316,Method OffNormalAlarmType_LatchedState,18317,Variable OffNormalAlarmType_LatchedState_Id,18318,Variable OffNormalAlarmType_LatchedState_Name,18319,Variable OffNormalAlarmType_LatchedState_Number,18320,Variable OffNormalAlarmType_LatchedState_EffectiveDisplayName,18321,Variable OffNormalAlarmType_LatchedState_TransitionTime,18322,Variable OffNormalAlarmType_LatchedState_EffectiveTransitionTime,18323,Variable OffNormalAlarmType_LatchedState_TrueState,18324,Variable OffNormalAlarmType_LatchedState_FalseState,18325,Variable OffNormalAlarmType_Reset,18326,Method SystemOffNormalAlarmType_LatchedState,18327,Variable SystemOffNormalAlarmType_LatchedState_Id,18328,Variable SystemOffNormalAlarmType_LatchedState_Name,18329,Variable SystemOffNormalAlarmType_LatchedState_Number,18330,Variable SystemOffNormalAlarmType_LatchedState_EffectiveDisplayName,18331,Variable SystemOffNormalAlarmType_LatchedState_TransitionTime,18332,Variable SystemOffNormalAlarmType_LatchedState_EffectiveTransitionTime,18333,Variable SystemOffNormalAlarmType_LatchedState_TrueState,18334,Variable SystemOffNormalAlarmType_LatchedState_FalseState,18335,Variable SystemOffNormalAlarmType_Reset,18336,Method TripAlarmType_LatchedState,18337,Variable TripAlarmType_LatchedState_Id,18338,Variable TripAlarmType_LatchedState_Name,18339,Variable TripAlarmType_LatchedState_Number,18340,Variable TripAlarmType_LatchedState_EffectiveDisplayName,18341,Variable TripAlarmType_LatchedState_TransitionTime,18342,Variable TripAlarmType_LatchedState_EffectiveTransitionTime,18343,Variable TripAlarmType_LatchedState_TrueState,18344,Variable TripAlarmType_LatchedState_FalseState,18345,Variable TripAlarmType_Reset,18346,Method InstrumentDiagnosticAlarmType,18347,ObjectType InstrumentDiagnosticAlarmType_EventId,18348,Variable InstrumentDiagnosticAlarmType_EventType,18349,Variable InstrumentDiagnosticAlarmType_SourceNode,18350,Variable InstrumentDiagnosticAlarmType_SourceName,18351,Variable InstrumentDiagnosticAlarmType_Time,18352,Variable InstrumentDiagnosticAlarmType_ReceiveTime,18353,Variable InstrumentDiagnosticAlarmType_LocalTime,18354,Variable InstrumentDiagnosticAlarmType_Message,18355,Variable InstrumentDiagnosticAlarmType_Severity,18356,Variable InstrumentDiagnosticAlarmType_ConditionClassId,18357,Variable InstrumentDiagnosticAlarmType_ConditionClassName,18358,Variable InstrumentDiagnosticAlarmType_ConditionSubClassId,18359,Variable InstrumentDiagnosticAlarmType_ConditionSubClassName,18360,Variable InstrumentDiagnosticAlarmType_ConditionName,18361,Variable InstrumentDiagnosticAlarmType_BranchId,18362,Variable InstrumentDiagnosticAlarmType_Retain,18363,Variable InstrumentDiagnosticAlarmType_EnabledState,18364,Variable InstrumentDiagnosticAlarmType_EnabledState_Id,18365,Variable InstrumentDiagnosticAlarmType_EnabledState_Name,18366,Variable InstrumentDiagnosticAlarmType_EnabledState_Number,18367,Variable InstrumentDiagnosticAlarmType_EnabledState_EffectiveDisplayName,18368,Variable InstrumentDiagnosticAlarmType_EnabledState_TransitionTime,18369,Variable InstrumentDiagnosticAlarmType_EnabledState_EffectiveTransitionTime,18370,Variable InstrumentDiagnosticAlarmType_EnabledState_TrueState,18371,Variable InstrumentDiagnosticAlarmType_EnabledState_FalseState,18372,Variable InstrumentDiagnosticAlarmType_Quality,18373,Variable InstrumentDiagnosticAlarmType_Quality_SourceTimestamp,18374,Variable InstrumentDiagnosticAlarmType_LastSeverity,18375,Variable InstrumentDiagnosticAlarmType_LastSeverity_SourceTimestamp,18376,Variable InstrumentDiagnosticAlarmType_Comment,18377,Variable InstrumentDiagnosticAlarmType_Comment_SourceTimestamp,18378,Variable InstrumentDiagnosticAlarmType_ClientUserId,18379,Variable InstrumentDiagnosticAlarmType_Disable,18380,Method InstrumentDiagnosticAlarmType_Enable,18381,Method InstrumentDiagnosticAlarmType_AddComment,18382,Method InstrumentDiagnosticAlarmType_AddComment_InputArguments,18383,Variable InstrumentDiagnosticAlarmType_ConditionRefresh,18384,Method InstrumentDiagnosticAlarmType_ConditionRefresh_InputArguments,18385,Variable InstrumentDiagnosticAlarmType_ConditionRefresh2,18386,Method InstrumentDiagnosticAlarmType_ConditionRefresh2_InputArguments,18387,Variable InstrumentDiagnosticAlarmType_AckedState,18388,Variable InstrumentDiagnosticAlarmType_AckedState_Id,18389,Variable InstrumentDiagnosticAlarmType_AckedState_Name,18390,Variable InstrumentDiagnosticAlarmType_AckedState_Number,18391,Variable InstrumentDiagnosticAlarmType_AckedState_EffectiveDisplayName,18392,Variable InstrumentDiagnosticAlarmType_AckedState_TransitionTime,18393,Variable InstrumentDiagnosticAlarmType_AckedState_EffectiveTransitionTime,18394,Variable InstrumentDiagnosticAlarmType_AckedState_TrueState,18395,Variable InstrumentDiagnosticAlarmType_AckedState_FalseState,18396,Variable InstrumentDiagnosticAlarmType_ConfirmedState,18397,Variable InstrumentDiagnosticAlarmType_ConfirmedState_Id,18398,Variable InstrumentDiagnosticAlarmType_ConfirmedState_Name,18399,Variable InstrumentDiagnosticAlarmType_ConfirmedState_Number,18400,Variable InstrumentDiagnosticAlarmType_ConfirmedState_EffectiveDisplayName,18401,Variable InstrumentDiagnosticAlarmType_ConfirmedState_TransitionTime,18402,Variable InstrumentDiagnosticAlarmType_ConfirmedState_EffectiveTransitionTime,18403,Variable InstrumentDiagnosticAlarmType_ConfirmedState_TrueState,18404,Variable InstrumentDiagnosticAlarmType_ConfirmedState_FalseState,18405,Variable InstrumentDiagnosticAlarmType_Acknowledge,18406,Method InstrumentDiagnosticAlarmType_Acknowledge_InputArguments,18407,Variable InstrumentDiagnosticAlarmType_Confirm,18408,Method InstrumentDiagnosticAlarmType_Confirm_InputArguments,18409,Variable InstrumentDiagnosticAlarmType_ActiveState,18410,Variable InstrumentDiagnosticAlarmType_ActiveState_Id,18411,Variable InstrumentDiagnosticAlarmType_ActiveState_Name,18412,Variable InstrumentDiagnosticAlarmType_ActiveState_Number,18413,Variable InstrumentDiagnosticAlarmType_ActiveState_EffectiveDisplayName,18414,Variable InstrumentDiagnosticAlarmType_ActiveState_TransitionTime,18415,Variable InstrumentDiagnosticAlarmType_ActiveState_EffectiveTransitionTime,18416,Variable InstrumentDiagnosticAlarmType_ActiveState_TrueState,18417,Variable InstrumentDiagnosticAlarmType_ActiveState_FalseState,18418,Variable InstrumentDiagnosticAlarmType_InputNode,18419,Variable InstrumentDiagnosticAlarmType_SuppressedState,18420,Variable InstrumentDiagnosticAlarmType_SuppressedState_Id,18421,Variable InstrumentDiagnosticAlarmType_SuppressedState_Name,18422,Variable InstrumentDiagnosticAlarmType_SuppressedState_Number,18423,Variable InstrumentDiagnosticAlarmType_SuppressedState_EffectiveDisplayName,18424,Variable InstrumentDiagnosticAlarmType_SuppressedState_TransitionTime,18425,Variable InstrumentDiagnosticAlarmType_SuppressedState_EffectiveTransitionTime,18426,Variable InstrumentDiagnosticAlarmType_SuppressedState_TrueState,18427,Variable InstrumentDiagnosticAlarmType_SuppressedState_FalseState,18428,Variable InstrumentDiagnosticAlarmType_OutOfServiceState,18429,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_Id,18430,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_Name,18431,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_Number,18432,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_EffectiveDisplayName,18433,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_TransitionTime,18434,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_EffectiveTransitionTime,18435,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_TrueState,18436,Variable InstrumentDiagnosticAlarmType_OutOfServiceState_FalseState,18437,Variable InstrumentDiagnosticAlarmType_ShelvingState,18438,Object InstrumentDiagnosticAlarmType_ShelvingState_CurrentState,18439,Variable InstrumentDiagnosticAlarmType_ShelvingState_CurrentState_Id,18440,Variable InstrumentDiagnosticAlarmType_ShelvingState_CurrentState_Name,18441,Variable InstrumentDiagnosticAlarmType_ShelvingState_CurrentState_Number,18442,Variable InstrumentDiagnosticAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,18443,Variable InstrumentDiagnosticAlarmType_ShelvingState_LastTransition,18444,Variable InstrumentDiagnosticAlarmType_ShelvingState_LastTransition_Id,18445,Variable InstrumentDiagnosticAlarmType_ShelvingState_LastTransition_Name,18446,Variable InstrumentDiagnosticAlarmType_ShelvingState_LastTransition_Number,18447,Variable InstrumentDiagnosticAlarmType_ShelvingState_LastTransition_TransitionTime,18448,Variable InstrumentDiagnosticAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,18449,Variable InstrumentDiagnosticAlarmType_ShelvingState_AvailableStates,18450,Variable InstrumentDiagnosticAlarmType_ShelvingState_AvailableTransitions,18451,Variable InstrumentDiagnosticAlarmType_ShelvingState_UnshelveTime,18452,Variable InstrumentDiagnosticAlarmType_ShelvingState_TimedShelve,18453,Method InstrumentDiagnosticAlarmType_ShelvingState_TimedShelve_InputArguments,18454,Variable InstrumentDiagnosticAlarmType_ShelvingState_Unshelve,18455,Method InstrumentDiagnosticAlarmType_ShelvingState_OneShotShelve,18456,Method InstrumentDiagnosticAlarmType_SuppressedOrShelved,18457,Variable InstrumentDiagnosticAlarmType_MaxTimeShelved,18458,Variable InstrumentDiagnosticAlarmType_AudibleEnabled,18459,Variable InstrumentDiagnosticAlarmType_AudibleSound,18460,Variable InstrumentDiagnosticAlarmType_AudibleSound_ListId,18461,Variable InstrumentDiagnosticAlarmType_AudibleSound_AgencyId,18462,Variable InstrumentDiagnosticAlarmType_AudibleSound_VersionId,18463,Variable InstrumentDiagnosticAlarmType_SilenceState,18464,Variable InstrumentDiagnosticAlarmType_SilenceState_Id,18465,Variable InstrumentDiagnosticAlarmType_SilenceState_Name,18466,Variable InstrumentDiagnosticAlarmType_SilenceState_Number,18467,Variable InstrumentDiagnosticAlarmType_SilenceState_EffectiveDisplayName,18468,Variable InstrumentDiagnosticAlarmType_SilenceState_TransitionTime,18469,Variable InstrumentDiagnosticAlarmType_SilenceState_EffectiveTransitionTime,18470,Variable InstrumentDiagnosticAlarmType_SilenceState_TrueState,18471,Variable InstrumentDiagnosticAlarmType_SilenceState_FalseState,18472,Variable InstrumentDiagnosticAlarmType_OnDelay,18473,Variable InstrumentDiagnosticAlarmType_OffDelay,18474,Variable InstrumentDiagnosticAlarmType_FirstInGroupFlag,18475,Variable InstrumentDiagnosticAlarmType_FirstInGroup,18476,Object InstrumentDiagnosticAlarmType_LatchedState,18477,Variable InstrumentDiagnosticAlarmType_LatchedState_Id,18478,Variable InstrumentDiagnosticAlarmType_LatchedState_Name,18479,Variable InstrumentDiagnosticAlarmType_LatchedState_Number,18480,Variable InstrumentDiagnosticAlarmType_LatchedState_EffectiveDisplayName,18481,Variable InstrumentDiagnosticAlarmType_LatchedState_TransitionTime,18482,Variable InstrumentDiagnosticAlarmType_LatchedState_EffectiveTransitionTime,18483,Variable InstrumentDiagnosticAlarmType_LatchedState_TrueState,18484,Variable InstrumentDiagnosticAlarmType_LatchedState_FalseState,18485,Variable InstrumentDiagnosticAlarmType_AlarmGroup_Placeholder,18486,Object InstrumentDiagnosticAlarmType_ReAlarmTime,18487,Variable InstrumentDiagnosticAlarmType_ReAlarmRepeatCount,18488,Variable InstrumentDiagnosticAlarmType_Silence,18489,Method InstrumentDiagnosticAlarmType_Suppress,18490,Method InstrumentDiagnosticAlarmType_Unsuppress,18491,Method InstrumentDiagnosticAlarmType_RemoveFromService,18492,Method InstrumentDiagnosticAlarmType_PlaceInService,18493,Method InstrumentDiagnosticAlarmType_Reset,18494,Method InstrumentDiagnosticAlarmType_NormalState,18495,Variable SystemDiagnosticAlarmType,18496,ObjectType SystemDiagnosticAlarmType_EventId,18497,Variable SystemDiagnosticAlarmType_EventType,18498,Variable SystemDiagnosticAlarmType_SourceNode,18499,Variable SystemDiagnosticAlarmType_SourceName,18500,Variable SystemDiagnosticAlarmType_Time,18501,Variable SystemDiagnosticAlarmType_ReceiveTime,18502,Variable SystemDiagnosticAlarmType_LocalTime,18503,Variable SystemDiagnosticAlarmType_Message,18504,Variable SystemDiagnosticAlarmType_Severity,18505,Variable SystemDiagnosticAlarmType_ConditionClassId,18506,Variable SystemDiagnosticAlarmType_ConditionClassName,18507,Variable SystemDiagnosticAlarmType_ConditionSubClassId,18508,Variable SystemDiagnosticAlarmType_ConditionSubClassName,18509,Variable SystemDiagnosticAlarmType_ConditionName,18510,Variable SystemDiagnosticAlarmType_BranchId,18511,Variable SystemDiagnosticAlarmType_Retain,18512,Variable SystemDiagnosticAlarmType_EnabledState,18513,Variable SystemDiagnosticAlarmType_EnabledState_Id,18514,Variable SystemDiagnosticAlarmType_EnabledState_Name,18515,Variable SystemDiagnosticAlarmType_EnabledState_Number,18516,Variable SystemDiagnosticAlarmType_EnabledState_EffectiveDisplayName,18517,Variable SystemDiagnosticAlarmType_EnabledState_TransitionTime,18518,Variable SystemDiagnosticAlarmType_EnabledState_EffectiveTransitionTime,18519,Variable SystemDiagnosticAlarmType_EnabledState_TrueState,18520,Variable SystemDiagnosticAlarmType_EnabledState_FalseState,18521,Variable SystemDiagnosticAlarmType_Quality,18522,Variable SystemDiagnosticAlarmType_Quality_SourceTimestamp,18523,Variable SystemDiagnosticAlarmType_LastSeverity,18524,Variable SystemDiagnosticAlarmType_LastSeverity_SourceTimestamp,18525,Variable SystemDiagnosticAlarmType_Comment,18526,Variable SystemDiagnosticAlarmType_Comment_SourceTimestamp,18527,Variable SystemDiagnosticAlarmType_ClientUserId,18528,Variable SystemDiagnosticAlarmType_Disable,18529,Method SystemDiagnosticAlarmType_Enable,18530,Method SystemDiagnosticAlarmType_AddComment,18531,Method SystemDiagnosticAlarmType_AddComment_InputArguments,18532,Variable SystemDiagnosticAlarmType_ConditionRefresh,18533,Method SystemDiagnosticAlarmType_ConditionRefresh_InputArguments,18534,Variable SystemDiagnosticAlarmType_ConditionRefresh2,18535,Method SystemDiagnosticAlarmType_ConditionRefresh2_InputArguments,18536,Variable SystemDiagnosticAlarmType_AckedState,18537,Variable SystemDiagnosticAlarmType_AckedState_Id,18538,Variable SystemDiagnosticAlarmType_AckedState_Name,18539,Variable SystemDiagnosticAlarmType_AckedState_Number,18540,Variable SystemDiagnosticAlarmType_AckedState_EffectiveDisplayName,18541,Variable SystemDiagnosticAlarmType_AckedState_TransitionTime,18542,Variable SystemDiagnosticAlarmType_AckedState_EffectiveTransitionTime,18543,Variable SystemDiagnosticAlarmType_AckedState_TrueState,18544,Variable SystemDiagnosticAlarmType_AckedState_FalseState,18545,Variable SystemDiagnosticAlarmType_ConfirmedState,18546,Variable SystemDiagnosticAlarmType_ConfirmedState_Id,18547,Variable SystemDiagnosticAlarmType_ConfirmedState_Name,18548,Variable SystemDiagnosticAlarmType_ConfirmedState_Number,18549,Variable SystemDiagnosticAlarmType_ConfirmedState_EffectiveDisplayName,18550,Variable SystemDiagnosticAlarmType_ConfirmedState_TransitionTime,18551,Variable SystemDiagnosticAlarmType_ConfirmedState_EffectiveTransitionTime,18552,Variable SystemDiagnosticAlarmType_ConfirmedState_TrueState,18553,Variable SystemDiagnosticAlarmType_ConfirmedState_FalseState,18554,Variable SystemDiagnosticAlarmType_Acknowledge,18555,Method SystemDiagnosticAlarmType_Acknowledge_InputArguments,18556,Variable SystemDiagnosticAlarmType_Confirm,18557,Method SystemDiagnosticAlarmType_Confirm_InputArguments,18558,Variable SystemDiagnosticAlarmType_ActiveState,18559,Variable SystemDiagnosticAlarmType_ActiveState_Id,18560,Variable SystemDiagnosticAlarmType_ActiveState_Name,18561,Variable SystemDiagnosticAlarmType_ActiveState_Number,18562,Variable SystemDiagnosticAlarmType_ActiveState_EffectiveDisplayName,18563,Variable SystemDiagnosticAlarmType_ActiveState_TransitionTime,18564,Variable SystemDiagnosticAlarmType_ActiveState_EffectiveTransitionTime,18565,Variable SystemDiagnosticAlarmType_ActiveState_TrueState,18566,Variable SystemDiagnosticAlarmType_ActiveState_FalseState,18567,Variable SystemDiagnosticAlarmType_InputNode,18568,Variable SystemDiagnosticAlarmType_SuppressedState,18569,Variable SystemDiagnosticAlarmType_SuppressedState_Id,18570,Variable SystemDiagnosticAlarmType_SuppressedState_Name,18571,Variable SystemDiagnosticAlarmType_SuppressedState_Number,18572,Variable SystemDiagnosticAlarmType_SuppressedState_EffectiveDisplayName,18573,Variable SystemDiagnosticAlarmType_SuppressedState_TransitionTime,18574,Variable SystemDiagnosticAlarmType_SuppressedState_EffectiveTransitionTime,18575,Variable SystemDiagnosticAlarmType_SuppressedState_TrueState,18576,Variable SystemDiagnosticAlarmType_SuppressedState_FalseState,18577,Variable SystemDiagnosticAlarmType_OutOfServiceState,18578,Variable SystemDiagnosticAlarmType_OutOfServiceState_Id,18579,Variable SystemDiagnosticAlarmType_OutOfServiceState_Name,18580,Variable SystemDiagnosticAlarmType_OutOfServiceState_Number,18581,Variable SystemDiagnosticAlarmType_OutOfServiceState_EffectiveDisplayName,18582,Variable SystemDiagnosticAlarmType_OutOfServiceState_TransitionTime,18583,Variable SystemDiagnosticAlarmType_OutOfServiceState_EffectiveTransitionTime,18584,Variable SystemDiagnosticAlarmType_OutOfServiceState_TrueState,18585,Variable SystemDiagnosticAlarmType_OutOfServiceState_FalseState,18586,Variable SystemDiagnosticAlarmType_ShelvingState,18587,Object SystemDiagnosticAlarmType_ShelvingState_CurrentState,18588,Variable SystemDiagnosticAlarmType_ShelvingState_CurrentState_Id,18589,Variable SystemDiagnosticAlarmType_ShelvingState_CurrentState_Name,18590,Variable SystemDiagnosticAlarmType_ShelvingState_CurrentState_Number,18591,Variable SystemDiagnosticAlarmType_ShelvingState_CurrentState_EffectiveDisplayName,18592,Variable SystemDiagnosticAlarmType_ShelvingState_LastTransition,18593,Variable SystemDiagnosticAlarmType_ShelvingState_LastTransition_Id,18594,Variable SystemDiagnosticAlarmType_ShelvingState_LastTransition_Name,18595,Variable SystemDiagnosticAlarmType_ShelvingState_LastTransition_Number,18596,Variable SystemDiagnosticAlarmType_ShelvingState_LastTransition_TransitionTime,18597,Variable SystemDiagnosticAlarmType_ShelvingState_LastTransition_EffectiveTransitionTime,18598,Variable SystemDiagnosticAlarmType_ShelvingState_AvailableStates,18599,Variable SystemDiagnosticAlarmType_ShelvingState_AvailableTransitions,18600,Variable SystemDiagnosticAlarmType_ShelvingState_UnshelveTime,18601,Variable SystemDiagnosticAlarmType_ShelvingState_TimedShelve,18602,Method SystemDiagnosticAlarmType_ShelvingState_TimedShelve_InputArguments,18603,Variable SystemDiagnosticAlarmType_ShelvingState_Unshelve,18604,Method SystemDiagnosticAlarmType_ShelvingState_OneShotShelve,18605,Method SystemDiagnosticAlarmType_SuppressedOrShelved,18606,Variable SystemDiagnosticAlarmType_MaxTimeShelved,18607,Variable SystemDiagnosticAlarmType_AudibleEnabled,18608,Variable SystemDiagnosticAlarmType_AudibleSound,18609,Variable SystemDiagnosticAlarmType_AudibleSound_ListId,18610,Variable SystemDiagnosticAlarmType_AudibleSound_AgencyId,18611,Variable SystemDiagnosticAlarmType_AudibleSound_VersionId,18612,Variable SystemDiagnosticAlarmType_SilenceState,18613,Variable SystemDiagnosticAlarmType_SilenceState_Id,18614,Variable SystemDiagnosticAlarmType_SilenceState_Name,18615,Variable SystemDiagnosticAlarmType_SilenceState_Number,18616,Variable SystemDiagnosticAlarmType_SilenceState_EffectiveDisplayName,18617,Variable SystemDiagnosticAlarmType_SilenceState_TransitionTime,18618,Variable SystemDiagnosticAlarmType_SilenceState_EffectiveTransitionTime,18619,Variable SystemDiagnosticAlarmType_SilenceState_TrueState,18620,Variable SystemDiagnosticAlarmType_SilenceState_FalseState,18621,Variable SystemDiagnosticAlarmType_OnDelay,18622,Variable SystemDiagnosticAlarmType_OffDelay,18623,Variable SystemDiagnosticAlarmType_FirstInGroupFlag,18624,Variable SystemDiagnosticAlarmType_FirstInGroup,18625,Object SystemDiagnosticAlarmType_LatchedState,18626,Variable SystemDiagnosticAlarmType_LatchedState_Id,18627,Variable SystemDiagnosticAlarmType_LatchedState_Name,18628,Variable SystemDiagnosticAlarmType_LatchedState_Number,18629,Variable SystemDiagnosticAlarmType_LatchedState_EffectiveDisplayName,18630,Variable SystemDiagnosticAlarmType_LatchedState_TransitionTime,18631,Variable SystemDiagnosticAlarmType_LatchedState_EffectiveTransitionTime,18632,Variable SystemDiagnosticAlarmType_LatchedState_TrueState,18633,Variable SystemDiagnosticAlarmType_LatchedState_FalseState,18634,Variable SystemDiagnosticAlarmType_AlarmGroup_Placeholder,18635,Object SystemDiagnosticAlarmType_ReAlarmTime,18636,Variable SystemDiagnosticAlarmType_ReAlarmRepeatCount,18637,Variable SystemDiagnosticAlarmType_Silence,18638,Method SystemDiagnosticAlarmType_Suppress,18639,Method SystemDiagnosticAlarmType_Unsuppress,18640,Method SystemDiagnosticAlarmType_RemoveFromService,18641,Method SystemDiagnosticAlarmType_PlaceInService,18642,Method SystemDiagnosticAlarmType_Reset,18643,Method SystemDiagnosticAlarmType_NormalState,18644,Variable CertificateExpirationAlarmType_LatchedState,18645,Variable CertificateExpirationAlarmType_LatchedState_Id,18646,Variable CertificateExpirationAlarmType_LatchedState_Name,18647,Variable CertificateExpirationAlarmType_LatchedState_Number,18648,Variable CertificateExpirationAlarmType_LatchedState_EffectiveDisplayName,18649,Variable CertificateExpirationAlarmType_LatchedState_TransitionTime,18650,Variable CertificateExpirationAlarmType_LatchedState_EffectiveTransitionTime,18651,Variable CertificateExpirationAlarmType_LatchedState_TrueState,18652,Variable CertificateExpirationAlarmType_LatchedState_FalseState,18653,Variable CertificateExpirationAlarmType_Reset,18654,Method DiscrepancyAlarmType_LatchedState,18655,Variable DiscrepancyAlarmType_LatchedState_Id,18656,Variable DiscrepancyAlarmType_LatchedState_Name,18657,Variable DiscrepancyAlarmType_LatchedState_Number,18658,Variable DiscrepancyAlarmType_LatchedState_EffectiveDisplayName,18659,Variable DiscrepancyAlarmType_LatchedState_TransitionTime,18660,Variable DiscrepancyAlarmType_LatchedState_EffectiveTransitionTime,18661,Variable DiscrepancyAlarmType_LatchedState_TrueState,18662,Variable DiscrepancyAlarmType_LatchedState_FalseState,18663,Variable DiscrepancyAlarmType_Reset,18664,Method StatisticalConditionClassType,18665,ObjectType AlarmMetricsType_Reset,18666,Method PublishSubscribeType_ConnectionName_Placeholder_Diagnostics,18667,Object PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_DiagnosticsLevel,18668,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalInformation,18669,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalInformation_Active,18670,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalInformation_Classification,18671,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,18672,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,18673,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalError,18674,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalError_Active,18675,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalError_Classification,18676,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,18677,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_TotalError_TimeFirstChange,18678,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Reset,18679,Method PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_SubError,18680,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters,18681,Object PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateError,18682,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateError_Active,18683,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateError_Classification,18684,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,18685,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,18686,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,18687,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,18688,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,18689,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,18690,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,18691,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent,18692,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,18693,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,18694,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,18695,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,18696,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError,18697,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,18698,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,18699,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,18700,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,18701,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent,18702,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,18703,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,18704,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,18705,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,18706,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,18707,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,18708,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,18709,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,18710,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,18711,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_LiveValues,18712,Object PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_LiveValues_ResolvedAddress,18713,Variable PublishSubscribeType_ConnectionName_Placeholder_Diagnostics_LiveValues_ResolvedAddress_DiagnosticsLevel,18714,Variable PublishSubscribeType_Diagnostics,18715,Object PublishSubscribeType_Diagnostics_DiagnosticsLevel,18716,Variable PublishSubscribeType_Diagnostics_TotalInformation,18717,Variable PublishSubscribeType_Diagnostics_TotalInformation_Active,18718,Variable PublishSubscribeType_Diagnostics_TotalInformation_Classification,18719,Variable PublishSubscribeType_Diagnostics_TotalInformation_DiagnosticsLevel,18720,Variable PublishSubscribeType_Diagnostics_TotalInformation_TimeFirstChange,18721,Variable PublishSubscribeType_Diagnostics_TotalError,18722,Variable PublishSubscribeType_Diagnostics_TotalError_Active,18723,Variable PublishSubscribeType_Diagnostics_TotalError_Classification,18724,Variable PublishSubscribeType_Diagnostics_TotalError_DiagnosticsLevel,18725,Variable PublishSubscribeType_Diagnostics_TotalError_TimeFirstChange,18726,Variable PublishSubscribeType_Diagnostics_Reset,18727,Method PublishSubscribeType_Diagnostics_SubError,18728,Variable PublishSubscribeType_Diagnostics_Counters,18729,Object PublishSubscribeType_Diagnostics_Counters_StateError,18730,Variable PublishSubscribeType_Diagnostics_Counters_StateError_Active,18731,Variable PublishSubscribeType_Diagnostics_Counters_StateError_Classification,18732,Variable PublishSubscribeType_Diagnostics_Counters_StateError_DiagnosticsLevel,18733,Variable PublishSubscribeType_Diagnostics_Counters_StateError_TimeFirstChange,18734,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByMethod,18735,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByMethod_Active,18736,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByMethod_Classification,18737,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,18738,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,18739,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByParent,18740,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByParent_Active,18741,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByParent_Classification,18742,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,18743,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,18744,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalFromError,18745,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalFromError_Active,18746,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalFromError_Classification,18747,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,18748,Variable PublishSubscribeType_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,18749,Variable PublishSubscribeType_Diagnostics_Counters_StatePausedByParent,18750,Variable PublishSubscribeType_Diagnostics_Counters_StatePausedByParent_Active,18751,Variable PublishSubscribeType_Diagnostics_Counters_StatePausedByParent_Classification,18752,Variable PublishSubscribeType_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,18753,Variable PublishSubscribeType_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,18754,Variable PublishSubscribeType_Diagnostics_Counters_StateDisabledByMethod,18755,Variable PublishSubscribeType_Diagnostics_Counters_StateDisabledByMethod_Active,18756,Variable PublishSubscribeType_Diagnostics_Counters_StateDisabledByMethod_Classification,18757,Variable PublishSubscribeType_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,18758,Variable PublishSubscribeType_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,18759,Variable PublishSubscribeType_Diagnostics_LiveValues,18760,Object PublishSubscribeType_Diagnostics_LiveValues_ConfiguredDataSetWriters,18761,Variable PublishSubscribeType_Diagnostics_LiveValues_ConfiguredDataSetWriters_DiagnosticsLevel,18762,Variable PublishSubscribeType_Diagnostics_LiveValues_ConfiguredDataSetReaders,18763,Variable PublishSubscribeType_Diagnostics_LiveValues_ConfiguredDataSetReaders_DiagnosticsLevel,18764,Variable PublishSubscribeType_Diagnostics_LiveValues_OperationalDataSetWriters,18765,Variable PublishSubscribeType_Diagnostics_LiveValues_OperationalDataSetWriters_DiagnosticsLevel,18766,Variable PublishSubscribeType_Diagnostics_LiveValues_OperationalDataSetReaders,18767,Variable PublishSubscribeType_Diagnostics_LiveValues_OperationalDataSetReaders_DiagnosticsLevel,18768,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics,18871,Object PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_DiagnosticsLevel,18872,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation,18873,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Active,18874,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Classification,18875,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,18876,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,18877,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalError,18878,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Active,18879,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Classification,18880,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,18881,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_TotalError_TimeFirstChange,18882,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Reset,18883,Method PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_SubError,18884,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters,18885,Object PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError,18886,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Active,18887,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Classification,18888,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,18889,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,18890,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,18891,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,18892,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,18893,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,18894,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,18895,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent,18896,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,18897,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,18898,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,18899,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,18900,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError,18901,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,18902,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,18903,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,18904,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,18905,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent,18906,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,18907,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,18908,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,18909,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,18910,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,18911,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,18912,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,18913,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,18914,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,18915,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues,18916,Object PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages,18917,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Active,18918,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Classification,18919,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_DiagnosticsLevel,18920,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_TimeFirstChange,18921,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber,18922,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber_DiagnosticsLevel,18923,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode,18924,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode_DiagnosticsLevel,18925,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion,18926,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion_DiagnosticsLevel,18927,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion,18928,Variable PublishedDataSetType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion_DiagnosticsLevel,18929,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics,18930,Object PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_DiagnosticsLevel,18931,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation,18932,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Active,18933,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Classification,18934,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,18935,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,18936,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalError,18937,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Active,18938,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Classification,18939,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,18940,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_TimeFirstChange,18941,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Reset,18942,Method PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_SubError,18943,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters,18944,Object PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError,18945,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Active,18946,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Classification,18947,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,18948,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,18949,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,18950,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,18951,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,18952,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,18953,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,18954,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent,18955,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,18956,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,18957,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,18958,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,18959,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError,18960,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,18961,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,18962,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,18963,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,18964,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent,18965,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,18966,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,18967,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,18968,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,18969,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,18970,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,18971,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,18972,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,18973,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,18974,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues,18975,Object PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages,18976,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Active,18977,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Classification,18978,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_DiagnosticsLevel,18979,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_TimeFirstChange,18980,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber,18981,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber_DiagnosticsLevel,18982,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode,18983,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode_DiagnosticsLevel,18984,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion,18985,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion_DiagnosticsLevel,18986,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion,18987,Variable PublishedDataItemsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion_DiagnosticsLevel,18988,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics,18989,Object PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_DiagnosticsLevel,18990,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation,18991,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Active,18992,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_Classification,18993,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,18994,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,18995,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalError,18996,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Active,18997,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_Classification,18998,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,18999,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_TotalError_TimeFirstChange,19000,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Reset,19001,Method PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_SubError,19002,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters,19003,Object PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError,19004,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Active,19005,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_Classification,19006,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,19007,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,19008,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,19009,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,19010,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,19011,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,19012,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,19013,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent,19014,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,19015,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,19016,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,19017,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,19018,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError,19019,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,19020,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,19021,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,19022,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,19023,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent,19024,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,19025,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,19026,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,19027,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,19028,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,19029,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,19030,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,19031,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,19032,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,19033,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues,19034,Object PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages,19035,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Active,19036,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_Classification,19037,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_DiagnosticsLevel,19038,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_Counters_FailedDataSetMessages_TimeFirstChange,19039,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber,19040,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MessageSequenceNumber_DiagnosticsLevel,19041,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode,19042,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_StatusCode_DiagnosticsLevel,19043,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion,19044,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MajorVersion_DiagnosticsLevel,19045,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion,19046,Variable PublishedEventsType_DataSetWriterName_Placeholder_Diagnostics_LiveValues_MinorVersion_DiagnosticsLevel,19047,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics,19107,Object PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_DiagnosticsLevel,19108,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalInformation,19109,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalInformation_Active,19110,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalInformation_Classification,19111,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,19112,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,19113,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalError,19114,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalError_Active,19115,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalError_Classification,19116,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,19117,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_TotalError_TimeFirstChange,19118,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Reset,19119,Method PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_SubError,19120,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters,19121,Object PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateError,19122,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateError_Active,19123,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateError_Classification,19124,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,19125,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,19126,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,19127,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,19128,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,19129,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,19130,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,19131,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent,19132,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,19133,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,19134,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,19135,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,19136,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError,19137,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,19138,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,19139,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,19140,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,19141,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent,19142,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,19143,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,19144,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,19145,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,19146,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,19147,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,19148,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,19149,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,19150,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,19151,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues,19152,Object PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_SentNetworkMessages,19153,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_SentNetworkMessages_Active,19154,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_SentNetworkMessages_Classification,19155,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_SentNetworkMessages_DiagnosticsLevel,19156,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_SentNetworkMessages_TimeFirstChange,19157,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_FailedTransmissions,19158,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_FailedTransmissions_Active,19159,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_FailedTransmissions_Classification,19160,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_FailedTransmissions_DiagnosticsLevel,19161,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_FailedTransmissions_TimeFirstChange,19162,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_EncryptionErrors,19163,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_EncryptionErrors_Active,19164,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_EncryptionErrors_Classification,19165,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_EncryptionErrors_DiagnosticsLevel,19166,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_Counters_EncryptionErrors_TimeFirstChange,19167,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_ConfiguredDataSetWriters,19168,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_ConfiguredDataSetWriters_DiagnosticsLevel,19169,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_OperationalDataSetWriters,19170,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_OperationalDataSetWriters_DiagnosticsLevel,19171,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_SecurityTokenID,19172,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_SecurityTokenID_DiagnosticsLevel,19173,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_TimeToNextTokenID,19174,Variable PubSubConnectionType_WriterGroupName_Placeholder_Diagnostics_LiveValues_TimeToNextTokenID_DiagnosticsLevel,19175,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics,19176,Object PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_DiagnosticsLevel,19177,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalInformation,19178,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalInformation_Active,19179,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalInformation_Classification,19180,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalInformation_DiagnosticsLevel,19181,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalInformation_TimeFirstChange,19182,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalError,19183,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalError_Active,19184,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalError_Classification,19185,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalError_DiagnosticsLevel,19186,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_TotalError_TimeFirstChange,19187,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Reset,19188,Method PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_SubError,19189,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters,19190,Object PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateError,19191,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateError_Active,19192,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateError_Classification,19193,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateError_DiagnosticsLevel,19194,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateError_TimeFirstChange,19195,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod,19196,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Active,19197,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_Classification,19198,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,19199,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,19200,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent,19201,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Active,19202,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_Classification,19203,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,19204,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,19205,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError,19206,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Active,19207,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_Classification,19208,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,19209,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,19210,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent,19211,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_Active,19212,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_Classification,19213,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,19214,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,19215,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod,19216,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Active,19217,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_Classification,19218,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,19219,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,19220,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_LiveValues,19221,Object PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedNetworkMessages,19222,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedNetworkMessages_Active,19223,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedNetworkMessages_Classification,19224,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedNetworkMessages_DiagnosticsLevel,19225,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedNetworkMessages_TimeFirstChange,19226,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedInvalidNetworkMessages,19227,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedInvalidNetworkMessages_Active,19228,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedInvalidNetworkMessages_Classification,19229,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedInvalidNetworkMessages_DiagnosticsLevel,19230,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_ReceivedInvalidNetworkMessages_TimeFirstChange,19231,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_DecryptionErrors,19232,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_DecryptionErrors_Active,19233,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_DecryptionErrors_Classification,19234,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_DecryptionErrors_DiagnosticsLevel,19235,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_Counters_DecryptionErrors_TimeFirstChange,19236,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_LiveValues_ConfiguredDataSetReaders,19237,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_LiveValues_ConfiguredDataSetReaders_DiagnosticsLevel,19238,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_LiveValues_OperationalDataSetReaders,19239,Variable PubSubConnectionType_ReaderGroupName_Placeholder_Diagnostics_LiveValues_OperationalDataSetReaders_DiagnosticsLevel,19240,Variable PubSubConnectionType_Diagnostics,19241,Object PubSubConnectionType_Diagnostics_DiagnosticsLevel,19242,Variable PubSubConnectionType_Diagnostics_TotalInformation,19243,Variable PubSubConnectionType_Diagnostics_TotalInformation_Active,19244,Variable PubSubConnectionType_Diagnostics_TotalInformation_Classification,19245,Variable PubSubConnectionType_Diagnostics_TotalInformation_DiagnosticsLevel,19246,Variable PubSubConnectionType_Diagnostics_TotalInformation_TimeFirstChange,19247,Variable PubSubConnectionType_Diagnostics_TotalError,19248,Variable PubSubConnectionType_Diagnostics_TotalError_Active,19249,Variable PubSubConnectionType_Diagnostics_TotalError_Classification,19250,Variable PubSubConnectionType_Diagnostics_TotalError_DiagnosticsLevel,19251,Variable PubSubConnectionType_Diagnostics_TotalError_TimeFirstChange,19252,Variable PubSubConnectionType_Diagnostics_Reset,19253,Method PubSubConnectionType_Diagnostics_SubError,19254,Variable PubSubConnectionType_Diagnostics_Counters,19255,Object PubSubConnectionType_Diagnostics_Counters_StateError,19256,Variable PubSubConnectionType_Diagnostics_Counters_StateError_Active,19257,Variable PubSubConnectionType_Diagnostics_Counters_StateError_Classification,19258,Variable PubSubConnectionType_Diagnostics_Counters_StateError_DiagnosticsLevel,19259,Variable PubSubConnectionType_Diagnostics_Counters_StateError_TimeFirstChange,19260,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByMethod,19261,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByMethod_Active,19262,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByMethod_Classification,19263,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,19264,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,19265,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByParent,19266,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByParent_Active,19267,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByParent_Classification,19268,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,19269,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,19270,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalFromError,19271,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalFromError_Active,19272,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalFromError_Classification,19273,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,19274,Variable PubSubConnectionType_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,19275,Variable PubSubConnectionType_Diagnostics_Counters_StatePausedByParent,19276,Variable PubSubConnectionType_Diagnostics_Counters_StatePausedByParent_Active,19277,Variable PubSubConnectionType_Diagnostics_Counters_StatePausedByParent_Classification,19278,Variable PubSubConnectionType_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,19279,Variable PubSubConnectionType_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,19280,Variable PubSubConnectionType_Diagnostics_Counters_StateDisabledByMethod,19281,Variable PubSubConnectionType_Diagnostics_Counters_StateDisabledByMethod_Active,19282,Variable PubSubConnectionType_Diagnostics_Counters_StateDisabledByMethod_Classification,19283,Variable PubSubConnectionType_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,19284,Variable PubSubConnectionType_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,19285,Variable PubSubConnectionType_Diagnostics_LiveValues,19286,Object PubSubConnectionType_Diagnostics_LiveValues_ResolvedAddress,19287,Variable PubSubConnectionType_Diagnostics_LiveValues_ResolvedAddress_DiagnosticsLevel,19288,Variable DataSetWriterType_Diagnostics,19550,Object DataSetWriterType_Diagnostics_DiagnosticsLevel,19551,Variable DataSetWriterType_Diagnostics_TotalInformation,19552,Variable DataSetWriterType_Diagnostics_TotalInformation_Active,19553,Variable DataSetWriterType_Diagnostics_TotalInformation_Classification,19554,Variable DataSetWriterType_Diagnostics_TotalInformation_DiagnosticsLevel,19555,Variable DataSetWriterType_Diagnostics_TotalInformation_TimeFirstChange,19556,Variable DataSetWriterType_Diagnostics_TotalError,19557,Variable DataSetWriterType_Diagnostics_TotalError_Active,19558,Variable DataSetWriterType_Diagnostics_TotalError_Classification,19559,Variable DataSetWriterType_Diagnostics_TotalError_DiagnosticsLevel,19560,Variable DataSetWriterType_Diagnostics_TotalError_TimeFirstChange,19561,Variable DataSetWriterType_Diagnostics_Reset,19562,Method DataSetWriterType_Diagnostics_SubError,19563,Variable DataSetWriterType_Diagnostics_Counters,19564,Object DataSetWriterType_Diagnostics_Counters_StateError,19565,Variable DataSetWriterType_Diagnostics_Counters_StateError_Active,19566,Variable DataSetWriterType_Diagnostics_Counters_StateError_Classification,19567,Variable DataSetWriterType_Diagnostics_Counters_StateError_DiagnosticsLevel,19568,Variable DataSetWriterType_Diagnostics_Counters_StateError_TimeFirstChange,19569,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByMethod,19570,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByMethod_Active,19571,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByMethod_Classification,19572,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,19573,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,19574,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByParent,19575,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByParent_Active,19576,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByParent_Classification,19577,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,19578,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,19579,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalFromError,19580,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalFromError_Active,19581,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalFromError_Classification,19582,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,19583,Variable DataSetWriterType_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,19584,Variable DataSetWriterType_Diagnostics_Counters_StatePausedByParent,19585,Variable DataSetWriterType_Diagnostics_Counters_StatePausedByParent_Active,19586,Variable DataSetWriterType_Diagnostics_Counters_StatePausedByParent_Classification,19587,Variable DataSetWriterType_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,19588,Variable DataSetWriterType_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,19589,Variable DataSetWriterType_Diagnostics_Counters_StateDisabledByMethod,19590,Variable DataSetWriterType_Diagnostics_Counters_StateDisabledByMethod_Active,19591,Variable DataSetWriterType_Diagnostics_Counters_StateDisabledByMethod_Classification,19592,Variable DataSetWriterType_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,19593,Variable DataSetWriterType_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,19594,Variable DataSetWriterType_Diagnostics_LiveValues,19595,Object DataSetWriterType_Diagnostics_Counters_FailedDataSetMessages,19596,Variable DataSetWriterType_Diagnostics_Counters_FailedDataSetMessages_Active,19597,Variable DataSetWriterType_Diagnostics_Counters_FailedDataSetMessages_Classification,19598,Variable DataSetWriterType_Diagnostics_Counters_FailedDataSetMessages_DiagnosticsLevel,19599,Variable DataSetWriterType_Diagnostics_Counters_FailedDataSetMessages_TimeFirstChange,19600,Variable DataSetWriterType_Diagnostics_LiveValues_MessageSequenceNumber,19601,Variable DataSetWriterType_Diagnostics_LiveValues_MessageSequenceNumber_DiagnosticsLevel,19602,Variable DataSetWriterType_Diagnostics_LiveValues_StatusCode,19603,Variable DataSetWriterType_Diagnostics_LiveValues_StatusCode_DiagnosticsLevel,19604,Variable DataSetWriterType_Diagnostics_LiveValues_MajorVersion,19605,Variable DataSetWriterType_Diagnostics_LiveValues_MajorVersion_DiagnosticsLevel,19606,Variable DataSetWriterType_Diagnostics_LiveValues_MinorVersion,19607,Variable DataSetWriterType_Diagnostics_LiveValues_MinorVersion_DiagnosticsLevel,19608,Variable DataSetReaderType_Diagnostics,19609,Object DataSetReaderType_Diagnostics_DiagnosticsLevel,19610,Variable DataSetReaderType_Diagnostics_TotalInformation,19611,Variable DataSetReaderType_Diagnostics_TotalInformation_Active,19612,Variable DataSetReaderType_Diagnostics_TotalInformation_Classification,19613,Variable DataSetReaderType_Diagnostics_TotalInformation_DiagnosticsLevel,19614,Variable DataSetReaderType_Diagnostics_TotalInformation_TimeFirstChange,19615,Variable DataSetReaderType_Diagnostics_TotalError,19616,Variable DataSetReaderType_Diagnostics_TotalError_Active,19617,Variable DataSetReaderType_Diagnostics_TotalError_Classification,19618,Variable DataSetReaderType_Diagnostics_TotalError_DiagnosticsLevel,19619,Variable DataSetReaderType_Diagnostics_TotalError_TimeFirstChange,19620,Variable DataSetReaderType_Diagnostics_Reset,19621,Method DataSetReaderType_Diagnostics_SubError,19622,Variable DataSetReaderType_Diagnostics_Counters,19623,Object DataSetReaderType_Diagnostics_Counters_StateError,19624,Variable DataSetReaderType_Diagnostics_Counters_StateError_Active,19625,Variable DataSetReaderType_Diagnostics_Counters_StateError_Classification,19626,Variable DataSetReaderType_Diagnostics_Counters_StateError_DiagnosticsLevel,19627,Variable DataSetReaderType_Diagnostics_Counters_StateError_TimeFirstChange,19628,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByMethod,19629,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByMethod_Active,19630,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByMethod_Classification,19631,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,19632,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,19633,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByParent,19634,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByParent_Active,19635,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByParent_Classification,19636,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,19637,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,19638,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalFromError,19639,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalFromError_Active,19640,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalFromError_Classification,19641,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,19642,Variable DataSetReaderType_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,19643,Variable DataSetReaderType_Diagnostics_Counters_StatePausedByParent,19644,Variable DataSetReaderType_Diagnostics_Counters_StatePausedByParent_Active,19645,Variable DataSetReaderType_Diagnostics_Counters_StatePausedByParent_Classification,19646,Variable DataSetReaderType_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,19647,Variable DataSetReaderType_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,19648,Variable DataSetReaderType_Diagnostics_Counters_StateDisabledByMethod,19649,Variable DataSetReaderType_Diagnostics_Counters_StateDisabledByMethod_Active,19650,Variable DataSetReaderType_Diagnostics_Counters_StateDisabledByMethod_Classification,19651,Variable DataSetReaderType_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,19652,Variable DataSetReaderType_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,19653,Variable DataSetReaderType_Diagnostics_LiveValues,19654,Object DataSetReaderType_Diagnostics_Counters_FailedDataSetMessages,19655,Variable DataSetReaderType_Diagnostics_Counters_FailedDataSetMessages_Active,19656,Variable DataSetReaderType_Diagnostics_Counters_FailedDataSetMessages_Classification,19657,Variable DataSetReaderType_Diagnostics_Counters_FailedDataSetMessages_DiagnosticsLevel,19658,Variable DataSetReaderType_Diagnostics_Counters_FailedDataSetMessages_TimeFirstChange,19659,Variable DataSetReaderType_Diagnostics_Counters_DecryptionErrors,19660,Variable DataSetReaderType_Diagnostics_Counters_DecryptionErrors_Active,19661,Variable DataSetReaderType_Diagnostics_Counters_DecryptionErrors_Classification,19662,Variable DataSetReaderType_Diagnostics_Counters_DecryptionErrors_DiagnosticsLevel,19663,Variable DataSetReaderType_Diagnostics_Counters_DecryptionErrors_TimeFirstChange,19664,Variable DataSetReaderType_Diagnostics_LiveValues_MessageSequenceNumber,19665,Variable DataSetReaderType_Diagnostics_LiveValues_MessageSequenceNumber_DiagnosticsLevel,19666,Variable DataSetReaderType_Diagnostics_LiveValues_StatusCode,19667,Variable DataSetReaderType_Diagnostics_LiveValues_StatusCode_DiagnosticsLevel,19668,Variable DataSetReaderType_Diagnostics_LiveValues_MajorVersion,19669,Variable DataSetReaderType_Diagnostics_LiveValues_MajorVersion_DiagnosticsLevel,19670,Variable DataSetReaderType_Diagnostics_LiveValues_MinorVersion,19671,Variable DataSetReaderType_Diagnostics_LiveValues_MinorVersion_DiagnosticsLevel,19672,Variable DataSetReaderType_Diagnostics_LiveValues_SecurityTokenID,19673,Variable DataSetReaderType_Diagnostics_LiveValues_SecurityTokenID_DiagnosticsLevel,19674,Variable DataSetReaderType_Diagnostics_LiveValues_TimeToNextTokenID,19675,Variable DataSetReaderType_Diagnostics_LiveValues_TimeToNextTokenID_DiagnosticsLevel,19676,Variable PubSubDiagnosticsType,19677,ObjectType PubSubDiagnosticsType_DiagnosticsLevel,19678,Variable PubSubDiagnosticsType_TotalInformation,19679,Variable PubSubDiagnosticsType_TotalInformation_Active,19680,Variable PubSubDiagnosticsType_TotalInformation_Classification,19681,Variable PubSubDiagnosticsType_TotalInformation_DiagnosticsLevel,19682,Variable PubSubDiagnosticsType_TotalInformation_TimeFirstChange,19683,Variable PubSubDiagnosticsType_TotalError,19684,Variable PubSubDiagnosticsType_TotalError_Active,19685,Variable PubSubDiagnosticsType_TotalError_Classification,19686,Variable PubSubDiagnosticsType_TotalError_DiagnosticsLevel,19687,Variable PubSubDiagnosticsType_TotalError_TimeFirstChange,19688,Variable PubSubDiagnosticsType_Reset,19689,Method PubSubDiagnosticsType_SubError,19690,Variable PubSubDiagnosticsType_Counters,19691,Object PubSubDiagnosticsType_Counters_StateError,19692,Variable PubSubDiagnosticsType_Counters_StateError_Active,19693,Variable PubSubDiagnosticsType_Counters_StateError_Classification,19694,Variable PubSubDiagnosticsType_Counters_StateError_DiagnosticsLevel,19695,Variable PubSubDiagnosticsType_Counters_StateError_TimeFirstChange,19696,Variable PubSubDiagnosticsType_Counters_StateOperationalByMethod,19697,Variable PubSubDiagnosticsType_Counters_StateOperationalByMethod_Active,19698,Variable PubSubDiagnosticsType_Counters_StateOperationalByMethod_Classification,19699,Variable PubSubDiagnosticsType_Counters_StateOperationalByMethod_DiagnosticsLevel,19700,Variable PubSubDiagnosticsType_Counters_StateOperationalByMethod_TimeFirstChange,19701,Variable PubSubDiagnosticsType_Counters_StateOperationalByParent,19702,Variable PubSubDiagnosticsType_Counters_StateOperationalByParent_Active,19703,Variable PubSubDiagnosticsType_Counters_StateOperationalByParent_Classification,19704,Variable PubSubDiagnosticsType_Counters_StateOperationalByParent_DiagnosticsLevel,19705,Variable PubSubDiagnosticsType_Counters_StateOperationalByParent_TimeFirstChange,19706,Variable PubSubDiagnosticsType_Counters_StateOperationalFromError,19707,Variable PubSubDiagnosticsType_Counters_StateOperationalFromError_Active,19708,Variable PubSubDiagnosticsType_Counters_StateOperationalFromError_Classification,19709,Variable PubSubDiagnosticsType_Counters_StateOperationalFromError_DiagnosticsLevel,19710,Variable PubSubDiagnosticsType_Counters_StateOperationalFromError_TimeFirstChange,19711,Variable PubSubDiagnosticsType_Counters_StatePausedByParent,19712,Variable PubSubDiagnosticsType_Counters_StatePausedByParent_Active,19713,Variable PubSubDiagnosticsType_Counters_StatePausedByParent_Classification,19714,Variable PubSubDiagnosticsType_Counters_StatePausedByParent_DiagnosticsLevel,19715,Variable PubSubDiagnosticsType_Counters_StatePausedByParent_TimeFirstChange,19716,Variable PubSubDiagnosticsType_Counters_StateDisabledByMethod,19717,Variable PubSubDiagnosticsType_Counters_StateDisabledByMethod_Active,19718,Variable PubSubDiagnosticsType_Counters_StateDisabledByMethod_Classification,19719,Variable PubSubDiagnosticsType_Counters_StateDisabledByMethod_DiagnosticsLevel,19720,Variable PubSubDiagnosticsType_Counters_StateDisabledByMethod_TimeFirstChange,19721,Variable PubSubDiagnosticsType_LiveValues,19722,Object DiagnosticsLevel,19723,DataType DiagnosticsLevel_EnumStrings,19724,Variable PubSubDiagnosticsCounterType,19725,VariableType PubSubDiagnosticsCounterType_Active,19726,Variable PubSubDiagnosticsCounterType_Classification,19727,Variable PubSubDiagnosticsCounterType_DiagnosticsLevel,19728,Variable PubSubDiagnosticsCounterType_TimeFirstChange,19729,Variable PubSubDiagnosticsCounterClassification,19730,DataType PubSubDiagnosticsCounterClassification_EnumStrings,19731,Variable PubSubDiagnosticsRootType,19732,ObjectType PubSubDiagnosticsRootType_DiagnosticsLevel,19733,Variable PubSubDiagnosticsRootType_TotalInformation,19734,Variable PubSubDiagnosticsRootType_TotalInformation_Active,19735,Variable PubSubDiagnosticsRootType_TotalInformation_Classification,19736,Variable PubSubDiagnosticsRootType_TotalInformation_DiagnosticsLevel,19737,Variable PubSubDiagnosticsRootType_TotalInformation_TimeFirstChange,19738,Variable PubSubDiagnosticsRootType_TotalError,19739,Variable PubSubDiagnosticsRootType_TotalError_Active,19740,Variable PubSubDiagnosticsRootType_TotalError_Classification,19741,Variable PubSubDiagnosticsRootType_TotalError_DiagnosticsLevel,19742,Variable PubSubDiagnosticsRootType_TotalError_TimeFirstChange,19743,Variable PubSubDiagnosticsRootType_Reset,19744,Method PubSubDiagnosticsRootType_SubError,19745,Variable PubSubDiagnosticsRootType_Counters,19746,Object PubSubDiagnosticsRootType_Counters_StateError,19747,Variable PubSubDiagnosticsRootType_Counters_StateError_Active,19748,Variable PubSubDiagnosticsRootType_Counters_StateError_Classification,19749,Variable PubSubDiagnosticsRootType_Counters_StateError_DiagnosticsLevel,19750,Variable PubSubDiagnosticsRootType_Counters_StateError_TimeFirstChange,19751,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByMethod,19752,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByMethod_Active,19753,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByMethod_Classification,19754,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByMethod_DiagnosticsLevel,19755,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByMethod_TimeFirstChange,19756,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByParent,19757,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByParent_Active,19758,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByParent_Classification,19759,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByParent_DiagnosticsLevel,19760,Variable PubSubDiagnosticsRootType_Counters_StateOperationalByParent_TimeFirstChange,19761,Variable PubSubDiagnosticsRootType_Counters_StateOperationalFromError,19762,Variable PubSubDiagnosticsRootType_Counters_StateOperationalFromError_Active,19763,Variable PubSubDiagnosticsRootType_Counters_StateOperationalFromError_Classification,19764,Variable PubSubDiagnosticsRootType_Counters_StateOperationalFromError_DiagnosticsLevel,19765,Variable PubSubDiagnosticsRootType_Counters_StateOperationalFromError_TimeFirstChange,19766,Variable PubSubDiagnosticsRootType_Counters_StatePausedByParent,19767,Variable PubSubDiagnosticsRootType_Counters_StatePausedByParent_Active,19768,Variable PubSubDiagnosticsRootType_Counters_StatePausedByParent_Classification,19769,Variable PubSubDiagnosticsRootType_Counters_StatePausedByParent_DiagnosticsLevel,19770,Variable PubSubDiagnosticsRootType_Counters_StatePausedByParent_TimeFirstChange,19771,Variable PubSubDiagnosticsRootType_Counters_StateDisabledByMethod,19772,Variable PubSubDiagnosticsRootType_Counters_StateDisabledByMethod_Active,19773,Variable PubSubDiagnosticsRootType_Counters_StateDisabledByMethod_Classification,19774,Variable PubSubDiagnosticsRootType_Counters_StateDisabledByMethod_DiagnosticsLevel,19775,Variable PubSubDiagnosticsRootType_Counters_StateDisabledByMethod_TimeFirstChange,19776,Variable PubSubDiagnosticsRootType_LiveValues,19777,Object PubSubDiagnosticsRootType_LiveValues_ConfiguredDataSetWriters,19778,Variable PubSubDiagnosticsRootType_LiveValues_ConfiguredDataSetWriters_DiagnosticsLevel,19779,Variable PubSubDiagnosticsRootType_LiveValues_ConfiguredDataSetReaders,19780,Variable PubSubDiagnosticsRootType_LiveValues_ConfiguredDataSetReaders_DiagnosticsLevel,19781,Variable PubSubDiagnosticsRootType_LiveValues_OperationalDataSetWriters,19782,Variable PubSubDiagnosticsRootType_LiveValues_OperationalDataSetWriters_DiagnosticsLevel,19783,Variable PubSubDiagnosticsRootType_LiveValues_OperationalDataSetReaders,19784,Variable PubSubDiagnosticsRootType_LiveValues_OperationalDataSetReaders_DiagnosticsLevel,19785,Variable PubSubDiagnosticsConnectionType,19786,ObjectType PubSubDiagnosticsConnectionType_DiagnosticsLevel,19787,Variable PubSubDiagnosticsConnectionType_TotalInformation,19788,Variable PubSubDiagnosticsConnectionType_TotalInformation_Active,19789,Variable PubSubDiagnosticsConnectionType_TotalInformation_Classification,19790,Variable PubSubDiagnosticsConnectionType_TotalInformation_DiagnosticsLevel,19791,Variable PubSubDiagnosticsConnectionType_TotalInformation_TimeFirstChange,19792,Variable PubSubDiagnosticsConnectionType_TotalError,19793,Variable PubSubDiagnosticsConnectionType_TotalError_Active,19794,Variable PubSubDiagnosticsConnectionType_TotalError_Classification,19795,Variable PubSubDiagnosticsConnectionType_TotalError_DiagnosticsLevel,19796,Variable PubSubDiagnosticsConnectionType_TotalError_TimeFirstChange,19797,Variable PubSubDiagnosticsConnectionType_Reset,19798,Method PubSubDiagnosticsConnectionType_SubError,19799,Variable PubSubDiagnosticsConnectionType_Counters,19800,Object PubSubDiagnosticsConnectionType_Counters_StateError,19801,Variable PubSubDiagnosticsConnectionType_Counters_StateError_Active,19802,Variable PubSubDiagnosticsConnectionType_Counters_StateError_Classification,19803,Variable PubSubDiagnosticsConnectionType_Counters_StateError_DiagnosticsLevel,19804,Variable PubSubDiagnosticsConnectionType_Counters_StateError_TimeFirstChange,19805,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByMethod,19806,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByMethod_Active,19807,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByMethod_Classification,19808,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByMethod_DiagnosticsLevel,19809,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByMethod_TimeFirstChange,19810,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByParent,19811,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByParent_Active,19812,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByParent_Classification,19813,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByParent_DiagnosticsLevel,19814,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalByParent_TimeFirstChange,19815,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalFromError,19816,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalFromError_Active,19817,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalFromError_Classification,19818,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalFromError_DiagnosticsLevel,19819,Variable PubSubDiagnosticsConnectionType_Counters_StateOperationalFromError_TimeFirstChange,19820,Variable PubSubDiagnosticsConnectionType_Counters_StatePausedByParent,19821,Variable PubSubDiagnosticsConnectionType_Counters_StatePausedByParent_Active,19822,Variable PubSubDiagnosticsConnectionType_Counters_StatePausedByParent_Classification,19823,Variable PubSubDiagnosticsConnectionType_Counters_StatePausedByParent_DiagnosticsLevel,19824,Variable PubSubDiagnosticsConnectionType_Counters_StatePausedByParent_TimeFirstChange,19825,Variable PubSubDiagnosticsConnectionType_Counters_StateDisabledByMethod,19826,Variable PubSubDiagnosticsConnectionType_Counters_StateDisabledByMethod_Active,19827,Variable PubSubDiagnosticsConnectionType_Counters_StateDisabledByMethod_Classification,19828,Variable PubSubDiagnosticsConnectionType_Counters_StateDisabledByMethod_DiagnosticsLevel,19829,Variable PubSubDiagnosticsConnectionType_Counters_StateDisabledByMethod_TimeFirstChange,19830,Variable PubSubDiagnosticsConnectionType_LiveValues,19831,Object PubSubDiagnosticsConnectionType_LiveValues_ResolvedAddress,19832,Variable PubSubDiagnosticsConnectionType_LiveValues_ResolvedAddress_DiagnosticsLevel,19833,Variable PubSubDiagnosticsWriterGroupType,19834,ObjectType PubSubDiagnosticsWriterGroupType_DiagnosticsLevel,19835,Variable PubSubDiagnosticsWriterGroupType_TotalInformation,19836,Variable PubSubDiagnosticsWriterGroupType_TotalInformation_Active,19837,Variable PubSubDiagnosticsWriterGroupType_TotalInformation_Classification,19838,Variable PubSubDiagnosticsWriterGroupType_TotalInformation_DiagnosticsLevel,19839,Variable PubSubDiagnosticsWriterGroupType_TotalInformation_TimeFirstChange,19840,Variable PubSubDiagnosticsWriterGroupType_TotalError,19841,Variable PubSubDiagnosticsWriterGroupType_TotalError_Active,19842,Variable PubSubDiagnosticsWriterGroupType_TotalError_Classification,19843,Variable PubSubDiagnosticsWriterGroupType_TotalError_DiagnosticsLevel,19844,Variable PubSubDiagnosticsWriterGroupType_TotalError_TimeFirstChange,19845,Variable PubSubDiagnosticsWriterGroupType_Reset,19846,Method PubSubDiagnosticsWriterGroupType_SubError,19847,Variable PubSubDiagnosticsWriterGroupType_Counters,19848,Object PubSubDiagnosticsWriterGroupType_Counters_StateError,19849,Variable PubSubDiagnosticsWriterGroupType_Counters_StateError_Active,19850,Variable PubSubDiagnosticsWriterGroupType_Counters_StateError_Classification,19851,Variable PubSubDiagnosticsWriterGroupType_Counters_StateError_DiagnosticsLevel,19852,Variable PubSubDiagnosticsWriterGroupType_Counters_StateError_TimeFirstChange,19853,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByMethod,19854,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByMethod_Active,19855,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByMethod_Classification,19856,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByMethod_DiagnosticsLevel,19857,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByMethod_TimeFirstChange,19858,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByParent,19859,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByParent_Active,19860,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByParent_Classification,19861,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByParent_DiagnosticsLevel,19862,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalByParent_TimeFirstChange,19863,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalFromError,19864,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalFromError_Active,19865,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalFromError_Classification,19866,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalFromError_DiagnosticsLevel,19867,Variable PubSubDiagnosticsWriterGroupType_Counters_StateOperationalFromError_TimeFirstChange,19868,Variable PubSubDiagnosticsWriterGroupType_Counters_StatePausedByParent,19869,Variable PubSubDiagnosticsWriterGroupType_Counters_StatePausedByParent_Active,19870,Variable PubSubDiagnosticsWriterGroupType_Counters_StatePausedByParent_Classification,19871,Variable PubSubDiagnosticsWriterGroupType_Counters_StatePausedByParent_DiagnosticsLevel,19872,Variable PubSubDiagnosticsWriterGroupType_Counters_StatePausedByParent_TimeFirstChange,19873,Variable PubSubDiagnosticsWriterGroupType_Counters_StateDisabledByMethod,19874,Variable PubSubDiagnosticsWriterGroupType_Counters_StateDisabledByMethod_Active,19875,Variable PubSubDiagnosticsWriterGroupType_Counters_StateDisabledByMethod_Classification,19876,Variable PubSubDiagnosticsWriterGroupType_Counters_StateDisabledByMethod_DiagnosticsLevel,19877,Variable PubSubDiagnosticsWriterGroupType_Counters_StateDisabledByMethod_TimeFirstChange,19878,Variable PubSubDiagnosticsWriterGroupType_LiveValues,19879,Object PubSubDiagnosticsWriterGroupType_Counters_SentNetworkMessages,19880,Variable PubSubDiagnosticsWriterGroupType_Counters_SentNetworkMessages_Active,19881,Variable PubSubDiagnosticsWriterGroupType_Counters_SentNetworkMessages_Classification,19882,Variable PubSubDiagnosticsWriterGroupType_Counters_SentNetworkMessages_DiagnosticsLevel,19883,Variable PubSubDiagnosticsWriterGroupType_Counters_SentNetworkMessages_TimeFirstChange,19884,Variable PubSubDiagnosticsWriterGroupType_Counters_FailedTransmissions,19885,Variable PubSubDiagnosticsWriterGroupType_Counters_FailedTransmissions_Active,19886,Variable PubSubDiagnosticsWriterGroupType_Counters_FailedTransmissions_Classification,19887,Variable PubSubDiagnosticsWriterGroupType_Counters_FailedTransmissions_DiagnosticsLevel,19888,Variable PubSubDiagnosticsWriterGroupType_Counters_FailedTransmissions_TimeFirstChange,19889,Variable PubSubDiagnosticsWriterGroupType_Counters_EncryptionErrors,19890,Variable PubSubDiagnosticsWriterGroupType_Counters_EncryptionErrors_Active,19891,Variable PubSubDiagnosticsWriterGroupType_Counters_EncryptionErrors_Classification,19892,Variable PubSubDiagnosticsWriterGroupType_Counters_EncryptionErrors_DiagnosticsLevel,19893,Variable PubSubDiagnosticsWriterGroupType_Counters_EncryptionErrors_TimeFirstChange,19894,Variable PubSubDiagnosticsWriterGroupType_LiveValues_ConfiguredDataSetWriters,19895,Variable PubSubDiagnosticsWriterGroupType_LiveValues_ConfiguredDataSetWriters_DiagnosticsLevel,19896,Variable PubSubDiagnosticsWriterGroupType_LiveValues_OperationalDataSetWriters,19897,Variable PubSubDiagnosticsWriterGroupType_LiveValues_OperationalDataSetWriters_DiagnosticsLevel,19898,Variable PubSubDiagnosticsWriterGroupType_LiveValues_SecurityTokenID,19899,Variable PubSubDiagnosticsWriterGroupType_LiveValues_SecurityTokenID_DiagnosticsLevel,19900,Variable PubSubDiagnosticsWriterGroupType_LiveValues_TimeToNextTokenID,19901,Variable PubSubDiagnosticsWriterGroupType_LiveValues_TimeToNextTokenID_DiagnosticsLevel,19902,Variable PubSubDiagnosticsReaderGroupType,19903,ObjectType PubSubDiagnosticsReaderGroupType_DiagnosticsLevel,19904,Variable PubSubDiagnosticsReaderGroupType_TotalInformation,19905,Variable PubSubDiagnosticsReaderGroupType_TotalInformation_Active,19906,Variable PubSubDiagnosticsReaderGroupType_TotalInformation_Classification,19907,Variable PubSubDiagnosticsReaderGroupType_TotalInformation_DiagnosticsLevel,19908,Variable PubSubDiagnosticsReaderGroupType_TotalInformation_TimeFirstChange,19909,Variable PubSubDiagnosticsReaderGroupType_TotalError,19910,Variable PubSubDiagnosticsReaderGroupType_TotalError_Active,19911,Variable PubSubDiagnosticsReaderGroupType_TotalError_Classification,19912,Variable PubSubDiagnosticsReaderGroupType_TotalError_DiagnosticsLevel,19913,Variable PubSubDiagnosticsReaderGroupType_TotalError_TimeFirstChange,19914,Variable PubSubDiagnosticsReaderGroupType_Reset,19915,Method PubSubDiagnosticsReaderGroupType_SubError,19916,Variable PubSubDiagnosticsReaderGroupType_Counters,19917,Object PubSubDiagnosticsReaderGroupType_Counters_StateError,19918,Variable PubSubDiagnosticsReaderGroupType_Counters_StateError_Active,19919,Variable PubSubDiagnosticsReaderGroupType_Counters_StateError_Classification,19920,Variable PubSubDiagnosticsReaderGroupType_Counters_StateError_DiagnosticsLevel,19921,Variable PubSubDiagnosticsReaderGroupType_Counters_StateError_TimeFirstChange,19922,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByMethod,19923,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByMethod_Active,19924,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByMethod_Classification,19925,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByMethod_DiagnosticsLevel,19926,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByMethod_TimeFirstChange,19927,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByParent,19928,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByParent_Active,19929,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByParent_Classification,19930,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByParent_DiagnosticsLevel,19931,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalByParent_TimeFirstChange,19932,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalFromError,19933,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalFromError_Active,19934,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalFromError_Classification,19935,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalFromError_DiagnosticsLevel,19936,Variable PubSubDiagnosticsReaderGroupType_Counters_StateOperationalFromError_TimeFirstChange,19937,Variable PubSubDiagnosticsReaderGroupType_Counters_StatePausedByParent,19938,Variable PubSubDiagnosticsReaderGroupType_Counters_StatePausedByParent_Active,19939,Variable PubSubDiagnosticsReaderGroupType_Counters_StatePausedByParent_Classification,19940,Variable PubSubDiagnosticsReaderGroupType_Counters_StatePausedByParent_DiagnosticsLevel,19941,Variable PubSubDiagnosticsReaderGroupType_Counters_StatePausedByParent_TimeFirstChange,19942,Variable PubSubDiagnosticsReaderGroupType_Counters_StateDisabledByMethod,19943,Variable PubSubDiagnosticsReaderGroupType_Counters_StateDisabledByMethod_Active,19944,Variable PubSubDiagnosticsReaderGroupType_Counters_StateDisabledByMethod_Classification,19945,Variable PubSubDiagnosticsReaderGroupType_Counters_StateDisabledByMethod_DiagnosticsLevel,19946,Variable PubSubDiagnosticsReaderGroupType_Counters_StateDisabledByMethod_TimeFirstChange,19947,Variable PubSubDiagnosticsReaderGroupType_LiveValues,19948,Object PubSubDiagnosticsReaderGroupType_Counters_ReceivedNetworkMessages,19949,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedNetworkMessages_Active,19950,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedNetworkMessages_Classification,19951,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedNetworkMessages_DiagnosticsLevel,19952,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedNetworkMessages_TimeFirstChange,19953,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedInvalidNetworkMessages,19954,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedInvalidNetworkMessages_Active,19955,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedInvalidNetworkMessages_Classification,19956,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedInvalidNetworkMessages_DiagnosticsLevel,19957,Variable PubSubDiagnosticsReaderGroupType_Counters_ReceivedInvalidNetworkMessages_TimeFirstChange,19958,Variable PubSubDiagnosticsReaderGroupType_Counters_DecryptionErrors,19959,Variable PubSubDiagnosticsReaderGroupType_Counters_DecryptionErrors_Active,19960,Variable PubSubDiagnosticsReaderGroupType_Counters_DecryptionErrors_Classification,19961,Variable PubSubDiagnosticsReaderGroupType_Counters_DecryptionErrors_DiagnosticsLevel,19962,Variable PubSubDiagnosticsReaderGroupType_Counters_DecryptionErrors_TimeFirstChange,19963,Variable PubSubDiagnosticsReaderGroupType_LiveValues_ConfiguredDataSetReaders,19964,Variable PubSubDiagnosticsReaderGroupType_LiveValues_ConfiguredDataSetReaders_DiagnosticsLevel,19965,Variable PubSubDiagnosticsReaderGroupType_LiveValues_OperationalDataSetReaders,19966,Variable PubSubDiagnosticsReaderGroupType_LiveValues_OperationalDataSetReaders_DiagnosticsLevel,19967,Variable PubSubDiagnosticsDataSetWriterType,19968,ObjectType PubSubDiagnosticsDataSetWriterType_DiagnosticsLevel,19969,Variable PubSubDiagnosticsDataSetWriterType_TotalInformation,19970,Variable PubSubDiagnosticsDataSetWriterType_TotalInformation_Active,19971,Variable PubSubDiagnosticsDataSetWriterType_TotalInformation_Classification,19972,Variable PubSubDiagnosticsDataSetWriterType_TotalInformation_DiagnosticsLevel,19973,Variable PubSubDiagnosticsDataSetWriterType_TotalInformation_TimeFirstChange,19974,Variable PubSubDiagnosticsDataSetWriterType_TotalError,19975,Variable PubSubDiagnosticsDataSetWriterType_TotalError_Active,19976,Variable PubSubDiagnosticsDataSetWriterType_TotalError_Classification,19977,Variable PubSubDiagnosticsDataSetWriterType_TotalError_DiagnosticsLevel,19978,Variable PubSubDiagnosticsDataSetWriterType_TotalError_TimeFirstChange,19979,Variable PubSubDiagnosticsDataSetWriterType_Reset,19980,Method PubSubDiagnosticsDataSetWriterType_SubError,19981,Variable PubSubDiagnosticsDataSetWriterType_Counters,19982,Object PubSubDiagnosticsDataSetWriterType_Counters_StateError,19983,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateError_Active,19984,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateError_Classification,19985,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateError_DiagnosticsLevel,19986,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateError_TimeFirstChange,19987,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByMethod,19988,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByMethod_Active,19989,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByMethod_Classification,19990,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByMethod_DiagnosticsLevel,19991,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByMethod_TimeFirstChange,19992,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByParent,19993,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByParent_Active,19994,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByParent_Classification,19995,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByParent_DiagnosticsLevel,19996,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalByParent_TimeFirstChange,19997,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalFromError,19998,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalFromError_Active,19999,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalFromError_Classification,20000,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalFromError_DiagnosticsLevel,20001,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateOperationalFromError_TimeFirstChange,20002,Variable PubSubDiagnosticsDataSetWriterType_Counters_StatePausedByParent,20003,Variable PubSubDiagnosticsDataSetWriterType_Counters_StatePausedByParent_Active,20004,Variable PubSubDiagnosticsDataSetWriterType_Counters_StatePausedByParent_Classification,20005,Variable PubSubDiagnosticsDataSetWriterType_Counters_StatePausedByParent_DiagnosticsLevel,20006,Variable PubSubDiagnosticsDataSetWriterType_Counters_StatePausedByParent_TimeFirstChange,20007,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateDisabledByMethod,20008,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateDisabledByMethod_Active,20009,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateDisabledByMethod_Classification,20010,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateDisabledByMethod_DiagnosticsLevel,20011,Variable PubSubDiagnosticsDataSetWriterType_Counters_StateDisabledByMethod_TimeFirstChange,20012,Variable PubSubDiagnosticsDataSetWriterType_LiveValues,20013,Object PubSubDiagnosticsDataSetWriterType_Counters_FailedDataSetMessages,20014,Variable PubSubDiagnosticsDataSetWriterType_Counters_FailedDataSetMessages_Active,20015,Variable PubSubDiagnosticsDataSetWriterType_Counters_FailedDataSetMessages_Classification,20016,Variable PubSubDiagnosticsDataSetWriterType_Counters_FailedDataSetMessages_DiagnosticsLevel,20017,Variable PubSubDiagnosticsDataSetWriterType_Counters_FailedDataSetMessages_TimeFirstChange,20018,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_MessageSequenceNumber,20019,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_MessageSequenceNumber_DiagnosticsLevel,20020,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_StatusCode,20021,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_StatusCode_DiagnosticsLevel,20022,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_MajorVersion,20023,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_MajorVersion_DiagnosticsLevel,20024,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_MinorVersion,20025,Variable PubSubDiagnosticsDataSetWriterType_LiveValues_MinorVersion_DiagnosticsLevel,20026,Variable PubSubDiagnosticsDataSetReaderType,20027,ObjectType PubSubDiagnosticsDataSetReaderType_DiagnosticsLevel,20028,Variable PubSubDiagnosticsDataSetReaderType_TotalInformation,20029,Variable PubSubDiagnosticsDataSetReaderType_TotalInformation_Active,20030,Variable PubSubDiagnosticsDataSetReaderType_TotalInformation_Classification,20031,Variable PubSubDiagnosticsDataSetReaderType_TotalInformation_DiagnosticsLevel,20032,Variable PubSubDiagnosticsDataSetReaderType_TotalInformation_TimeFirstChange,20033,Variable PubSubDiagnosticsDataSetReaderType_TotalError,20034,Variable PubSubDiagnosticsDataSetReaderType_TotalError_Active,20035,Variable PubSubDiagnosticsDataSetReaderType_TotalError_Classification,20036,Variable PubSubDiagnosticsDataSetReaderType_TotalError_DiagnosticsLevel,20037,Variable PubSubDiagnosticsDataSetReaderType_TotalError_TimeFirstChange,20038,Variable PubSubDiagnosticsDataSetReaderType_Reset,20039,Method PubSubDiagnosticsDataSetReaderType_SubError,20040,Variable PubSubDiagnosticsDataSetReaderType_Counters,20041,Object PubSubDiagnosticsDataSetReaderType_Counters_StateError,20042,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateError_Active,20043,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateError_Classification,20044,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateError_DiagnosticsLevel,20045,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateError_TimeFirstChange,20046,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByMethod,20047,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByMethod_Active,20048,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByMethod_Classification,20049,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByMethod_DiagnosticsLevel,20050,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByMethod_TimeFirstChange,20051,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByParent,20052,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByParent_Active,20053,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByParent_Classification,20054,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByParent_DiagnosticsLevel,20055,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalByParent_TimeFirstChange,20056,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalFromError,20057,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalFromError_Active,20058,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalFromError_Classification,20059,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalFromError_DiagnosticsLevel,20060,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateOperationalFromError_TimeFirstChange,20061,Variable PubSubDiagnosticsDataSetReaderType_Counters_StatePausedByParent,20062,Variable PubSubDiagnosticsDataSetReaderType_Counters_StatePausedByParent_Active,20063,Variable PubSubDiagnosticsDataSetReaderType_Counters_StatePausedByParent_Classification,20064,Variable PubSubDiagnosticsDataSetReaderType_Counters_StatePausedByParent_DiagnosticsLevel,20065,Variable PubSubDiagnosticsDataSetReaderType_Counters_StatePausedByParent_TimeFirstChange,20066,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateDisabledByMethod,20067,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateDisabledByMethod_Active,20068,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateDisabledByMethod_Classification,20069,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateDisabledByMethod_DiagnosticsLevel,20070,Variable PubSubDiagnosticsDataSetReaderType_Counters_StateDisabledByMethod_TimeFirstChange,20071,Variable PubSubDiagnosticsDataSetReaderType_LiveValues,20072,Object PubSubDiagnosticsDataSetReaderType_Counters_FailedDataSetMessages,20073,Variable PubSubDiagnosticsDataSetReaderType_Counters_FailedDataSetMessages_Active,20074,Variable PubSubDiagnosticsDataSetReaderType_Counters_FailedDataSetMessages_Classification,20075,Variable PubSubDiagnosticsDataSetReaderType_Counters_FailedDataSetMessages_DiagnosticsLevel,20076,Variable PubSubDiagnosticsDataSetReaderType_Counters_FailedDataSetMessages_TimeFirstChange,20077,Variable PubSubDiagnosticsDataSetReaderType_Counters_DecryptionErrors,20078,Variable PubSubDiagnosticsDataSetReaderType_Counters_DecryptionErrors_Active,20079,Variable PubSubDiagnosticsDataSetReaderType_Counters_DecryptionErrors_Classification,20080,Variable PubSubDiagnosticsDataSetReaderType_Counters_DecryptionErrors_DiagnosticsLevel,20081,Variable PubSubDiagnosticsDataSetReaderType_Counters_DecryptionErrors_TimeFirstChange,20082,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_MessageSequenceNumber,20083,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_MessageSequenceNumber_DiagnosticsLevel,20084,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_StatusCode,20085,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_StatusCode_DiagnosticsLevel,20086,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_MajorVersion,20087,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_MajorVersion_DiagnosticsLevel,20088,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_MinorVersion,20089,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_MinorVersion_DiagnosticsLevel,20090,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_SecurityTokenID,20091,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_SecurityTokenID_DiagnosticsLevel,20092,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_TimeToNextTokenID,20093,Variable PubSubDiagnosticsDataSetReaderType_LiveValues_TimeToNextTokenID_DiagnosticsLevel,20094,Variable DataSetOrderingType,20408,DataType ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_SecurityTokenID,20409,Variable VersionTime,20998,DataType SessionlessInvokeResponseType,20999,DataType SessionlessInvokeResponseType_Encoding_DefaultXml,21000,Object SessionlessInvokeResponseType_Encoding_DefaultBinary,21001,Object OpcUa_BinarySchema_FieldTargetDataType,21002,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_SecurityTokenID_DiagnosticsLevel,21003,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_TimeToNextTokenID,21004,Variable ReaderGroupType_DataSetReaderName_Placeholder_Diagnostics_LiveValues_TimeToNextTokenID_DiagnosticsLevel,21005,Variable ReaderGroupType_DataSetReaderName_Placeholder_SubscribedDataSet,21006,Object ReaderGroupType_DataSetReaderName_Placeholder_SubscribedDataSet_DataSetMetaData,21007,Variable ReaderGroupType_DataSetReaderName_Placeholder_SubscribedDataSet_MessageReceiveTimeout,21008,Variable ReaderGroupType_DataSetReaderName_Placeholder_CreateTargetVariables,21009,Method ReaderGroupType_DataSetReaderName_Placeholder_CreateTargetVariables_InputArguments,21010,Variable ReaderGroupType_DataSetReaderName_Placeholder_CreateTargetVariables_OutputArguments,21011,Variable ReaderGroupType_DataSetReaderName_Placeholder_CreateDataSetMirror,21012,Method ReaderGroupType_DataSetReaderName_Placeholder_CreateDataSetMirror_InputArguments,21013,Variable ReaderGroupType_DataSetReaderName_Placeholder_CreateDataSetMirror_OutputArguments,21014,Variable ReaderGroupType_Diagnostics,21015,Object ReaderGroupType_Diagnostics_DiagnosticsLevel,21016,Variable ReaderGroupType_Diagnostics_TotalInformation,21017,Variable ReaderGroupType_Diagnostics_TotalInformation_Active,21018,Variable ReaderGroupType_Diagnostics_TotalInformation_Classification,21019,Variable ReaderGroupType_Diagnostics_TotalInformation_DiagnosticsLevel,21020,Variable ReaderGroupType_Diagnostics_TotalInformation_TimeFirstChange,21021,Variable ReaderGroupType_Diagnostics_TotalError,21022,Variable ReaderGroupType_Diagnostics_TotalError_Active,21023,Variable ReaderGroupType_Diagnostics_TotalError_Classification,21024,Variable ReaderGroupType_Diagnostics_TotalError_DiagnosticsLevel,21025,Variable ReaderGroupType_Diagnostics_TotalError_TimeFirstChange,21026,Variable ReaderGroupType_Diagnostics_Reset,21027,Method ReaderGroupType_Diagnostics_SubError,21028,Variable ReaderGroupType_Diagnostics_Counters,21029,Object ReaderGroupType_Diagnostics_Counters_StateError,21030,Variable ReaderGroupType_Diagnostics_Counters_StateError_Active,21031,Variable ReaderGroupType_Diagnostics_Counters_StateError_Classification,21032,Variable ReaderGroupType_Diagnostics_Counters_StateError_DiagnosticsLevel,21033,Variable ReaderGroupType_Diagnostics_Counters_StateError_TimeFirstChange,21034,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByMethod,21035,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByMethod_Active,21036,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByMethod_Classification,21037,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByMethod_DiagnosticsLevel,21038,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByMethod_TimeFirstChange,21039,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByParent,21040,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByParent_Active,21041,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByParent_Classification,21042,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByParent_DiagnosticsLevel,21043,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalByParent_TimeFirstChange,21044,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalFromError,21045,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalFromError_Active,21046,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalFromError_Classification,21047,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalFromError_DiagnosticsLevel,21048,Variable ReaderGroupType_Diagnostics_Counters_StateOperationalFromError_TimeFirstChange,21049,Variable ReaderGroupType_Diagnostics_Counters_StatePausedByParent,21050,Variable ReaderGroupType_Diagnostics_Counters_StatePausedByParent_Active,21051,Variable ReaderGroupType_Diagnostics_Counters_StatePausedByParent_Classification,21052,Variable ReaderGroupType_Diagnostics_Counters_StatePausedByParent_DiagnosticsLevel,21053,Variable ReaderGroupType_Diagnostics_Counters_StatePausedByParent_TimeFirstChange,21054,Variable ReaderGroupType_Diagnostics_Counters_StateDisabledByMethod,21055,Variable ReaderGroupType_Diagnostics_Counters_StateDisabledByMethod_Active,21056,Variable ReaderGroupType_Diagnostics_Counters_StateDisabledByMethod_Classification,21057,Variable ReaderGroupType_Diagnostics_Counters_StateDisabledByMethod_DiagnosticsLevel,21058,Variable ReaderGroupType_Diagnostics_Counters_StateDisabledByMethod_TimeFirstChange,21059,Variable ReaderGroupType_Diagnostics_LiveValues,21060,Object ReaderGroupType_Diagnostics_Counters_ReceivedNetworkMessages,21061,Variable ReaderGroupType_Diagnostics_Counters_ReceivedNetworkMessages_Active,21062,Variable ReaderGroupType_Diagnostics_Counters_ReceivedNetworkMessages_Classification,21063,Variable ReaderGroupType_Diagnostics_Counters_ReceivedNetworkMessages_DiagnosticsLevel,21064,Variable ReaderGroupType_Diagnostics_Counters_ReceivedNetworkMessages_TimeFirstChange,21065,Variable ReaderGroupType_Diagnostics_Counters_ReceivedInvalidNetworkMessages,21066,Variable ReaderGroupType_Diagnostics_Counters_ReceivedInvalidNetworkMessages_Active,21067,Variable ReaderGroupType_Diagnostics_Counters_ReceivedInvalidNetworkMessages_Classification,21068,Variable ReaderGroupType_Diagnostics_Counters_ReceivedInvalidNetworkMessages_DiagnosticsLevel,21069,Variable ReaderGroupType_Diagnostics_Counters_ReceivedInvalidNetworkMessages_TimeFirstChange,21070,Variable ReaderGroupType_Diagnostics_Counters_DecryptionErrors,21071,Variable ReaderGroupType_Diagnostics_Counters_DecryptionErrors_Active,21072,Variable ReaderGroupType_Diagnostics_Counters_DecryptionErrors_Classification,21073,Variable ReaderGroupType_Diagnostics_Counters_DecryptionErrors_DiagnosticsLevel,21074,Variable ReaderGroupType_Diagnostics_Counters_DecryptionErrors_TimeFirstChange,21075,Variable ReaderGroupType_Diagnostics_LiveValues_ConfiguredDataSetReaders,21076,Variable ReaderGroupType_Diagnostics_LiveValues_ConfiguredDataSetReaders_DiagnosticsLevel,21077,Variable ReaderGroupType_Diagnostics_LiveValues_OperationalDataSetReaders,21078,Variable ReaderGroupType_Diagnostics_LiveValues_OperationalDataSetReaders_DiagnosticsLevel,21079,Variable ReaderGroupType_TransportSettings,21080,Object ReaderGroupType_MessageSettings,21081,Object ReaderGroupType_AddDataSetReader,21082,Method ReaderGroupType_AddDataSetReader_InputArguments,21083,Variable ReaderGroupType_AddDataSetReader_OutputArguments,21084,Variable ReaderGroupType_RemoveDataSetReader,21085,Method ReaderGroupType_RemoveDataSetReader_InputArguments,21086,Variable PubSubGroupTypeAddReaderMethodType,21087,Method PubSubGroupTypeAddReaderMethodType_InputArguments,21088,Variable PubSubGroupTypeAddReaderMethodType_OutputArguments,21089,Variable ReaderGroupTransportType,21090,ObjectType ReaderGroupMessageType,21091,ObjectType DataSetWriterType_DataSetWriterId,21092,Variable DataSetWriterType_DataSetFieldContentMask,21093,Variable DataSetWriterType_KeyFrameCount,21094,Variable DataSetWriterType_MessageSettings,21095,Object DataSetWriterMessageType,21096,ObjectType DataSetReaderType_PublisherId,21097,Variable DataSetReaderType_WriterGroupId,21098,Variable DataSetReaderType_DataSetWriterId,21099,Variable DataSetReaderType_DataSetMetaData,21100,Variable DataSetReaderType_DataSetFieldContentMask,21101,Variable DataSetReaderType_MessageReceiveTimeout,21102,Variable DataSetReaderType_MessageSettings,21103,Object DataSetReaderMessageType,21104,ObjectType UadpWriterGroupMessageType,21105,ObjectType UadpWriterGroupMessageType_GroupVersion,21106,Variable UadpWriterGroupMessageType_DataSetOrdering,21107,Variable UadpWriterGroupMessageType_NetworkMessageContentMask,21108,Variable UadpWriterGroupMessageType_SamplingOffset,21109,Variable UadpWriterGroupMessageType_PublishingOffset,21110,Variable UadpDataSetWriterMessageType,21111,ObjectType UadpDataSetWriterMessageType_DataSetMessageContentMask,21112,Variable UadpDataSetWriterMessageType_ConfiguredSize,21113,Variable UadpDataSetWriterMessageType_NetworkMessageNumber,21114,Variable UadpDataSetWriterMessageType_DataSetOffset,21115,Variable UadpDataSetReaderMessageType,21116,ObjectType UadpDataSetReaderMessageType_GroupVersion,21117,Variable UadpDataSetReaderMessageType_DataSetOrdering,21118,Variable UadpDataSetReaderMessageType_NetworkMessageNumber,21119,Variable UadpDataSetReaderMessageType_DataSetClassId,21120,Variable UadpDataSetReaderMessageType_NetworkMessageContentMask,21121,Variable UadpDataSetReaderMessageType_DataSetMessageContentMask,21122,Variable UadpDataSetReaderMessageType_PublishingInterval,21123,Variable UadpDataSetReaderMessageType_ProcessingOffset,21124,Variable UadpDataSetReaderMessageType_ReceiveOffset,21125,Variable JsonWriterGroupMessageType,21126,ObjectType JsonWriterGroupMessageType_NetworkMessageContentMask,21127,Variable JsonDataSetWriterMessageType,21128,ObjectType JsonDataSetWriterMessageType_DataSetMessageContentMask,21129,Variable JsonDataSetReaderMessageType,21130,ObjectType JsonDataSetReaderMessageType_NetworkMessageContentMask,21131,Variable JsonDataSetReaderMessageType_DataSetMessageContentMask,21132,Variable DatagramWriterGroupTransportType,21133,ObjectType DatagramWriterGroupTransportType_MessageRepeatCount,21134,Variable DatagramWriterGroupTransportType_MessageRepeatDelay,21135,Variable BrokerWriterGroupTransportType,21136,ObjectType BrokerWriterGroupTransportType_QueueName,21137,Variable BrokerDataSetWriterTransportType,21138,ObjectType BrokerDataSetWriterTransportType_QueueName,21139,Variable BrokerDataSetWriterTransportType_MetaDataQueueName,21140,Variable BrokerDataSetWriterTransportType_MetaDataUpdateTime,21141,Variable BrokerDataSetReaderTransportType,21142,ObjectType BrokerDataSetReaderTransportType_QueueName,21143,Variable BrokerDataSetReaderTransportType_MetaDataQueueName,21144,Variable NetworkAddressType,21145,ObjectType NetworkAddressType_NetworkInterface,21146,Variable NetworkAddressUrlType,21147,ObjectType NetworkAddressUrlType_NetworkInterface,21148,Variable NetworkAddressUrlType_Url,21149,Variable WriterGroupDataType_Encoding_DefaultBinary,21150,Object NetworkAddressDataType_Encoding_DefaultBinary,21151,Object NetworkAddressUrlDataType_Encoding_DefaultBinary,21152,Object ReaderGroupDataType_Encoding_DefaultBinary,21153,Object PubSubConfigurationDataType_Encoding_DefaultBinary,21154,Object DatagramWriterGroupTransportDataType_Encoding_DefaultBinary,21155,Object OpcUa_BinarySchema_WriterGroupDataType,21156,Variable OpcUa_BinarySchema_WriterGroupDataType_DataTypeVersion,21157,Variable OpcUa_BinarySchema_WriterGroupDataType_DictionaryFragment,21158,Variable OpcUa_BinarySchema_NetworkAddressDataType,21159,Variable OpcUa_BinarySchema_NetworkAddressDataType_DataTypeVersion,21160,Variable OpcUa_BinarySchema_NetworkAddressDataType_DictionaryFragment,21161,Variable OpcUa_BinarySchema_NetworkAddressUrlDataType,21162,Variable OpcUa_BinarySchema_NetworkAddressUrlDataType_DataTypeVersion,21163,Variable OpcUa_BinarySchema_NetworkAddressUrlDataType_DictionaryFragment,21164,Variable OpcUa_BinarySchema_ReaderGroupDataType,21165,Variable OpcUa_BinarySchema_ReaderGroupDataType_DataTypeVersion,21166,Variable OpcUa_BinarySchema_ReaderGroupDataType_DictionaryFragment,21167,Variable OpcUa_BinarySchema_PubSubConfigurationDataType,21168,Variable OpcUa_BinarySchema_PubSubConfigurationDataType_DataTypeVersion,21169,Variable OpcUa_BinarySchema_PubSubConfigurationDataType_DictionaryFragment,21170,Variable OpcUa_BinarySchema_DatagramWriterGroupTransportDataType,21171,Variable OpcUa_BinarySchema_DatagramWriterGroupTransportDataType_DataTypeVersion,21172,Variable OpcUa_BinarySchema_DatagramWriterGroupTransportDataType_DictionaryFragment,21173,Variable WriterGroupDataType_Encoding_DefaultXml,21174,Object NetworkAddressDataType_Encoding_DefaultXml,21175,Object NetworkAddressUrlDataType_Encoding_DefaultXml,21176,Object ReaderGroupDataType_Encoding_DefaultXml,21177,Object PubSubConfigurationDataType_Encoding_DefaultXml,21178,Object DatagramWriterGroupTransportDataType_Encoding_DefaultXml,21179,Object OpcUa_XmlSchema_WriterGroupDataType,21180,Variable OpcUa_XmlSchema_WriterGroupDataType_DataTypeVersion,21181,Variable OpcUa_XmlSchema_WriterGroupDataType_DictionaryFragment,21182,Variable OpcUa_XmlSchema_NetworkAddressDataType,21183,Variable OpcUa_XmlSchema_NetworkAddressDataType_DataTypeVersion,21184,Variable OpcUa_XmlSchema_NetworkAddressDataType_DictionaryFragment,21185,Variable OpcUa_XmlSchema_NetworkAddressUrlDataType,21186,Variable OpcUa_XmlSchema_NetworkAddressUrlDataType_DataTypeVersion,21187,Variable OpcUa_XmlSchema_NetworkAddressUrlDataType_DictionaryFragment,21188,Variable OpcUa_XmlSchema_ReaderGroupDataType,21189,Variable OpcUa_XmlSchema_ReaderGroupDataType_DataTypeVersion,21190,Variable OpcUa_XmlSchema_ReaderGroupDataType_DictionaryFragment,21191,Variable OpcUa_XmlSchema_PubSubConfigurationDataType,21192,Variable OpcUa_XmlSchema_PubSubConfigurationDataType_DataTypeVersion,21193,Variable OpcUa_XmlSchema_PubSubConfigurationDataType_DictionaryFragment,21194,Variable OpcUa_XmlSchema_DatagramWriterGroupTransportDataType,21195,Variable OpcUa_XmlSchema_DatagramWriterGroupTransportDataType_DataTypeVersion,21196,Variable OpcUa_XmlSchema_DatagramWriterGroupTransportDataType_DictionaryFragment,21197,Variable WriterGroupDataType_Encoding_DefaultJson,21198,Object NetworkAddressDataType_Encoding_DefaultJson,21199,Object NetworkAddressUrlDataType_Encoding_DefaultJson,21200,Object ReaderGroupDataType_Encoding_DefaultJson,21201,Object PubSubConfigurationDataType_Encoding_DefaultJson,21202,Object DatagramWriterGroupTransportDataType_Encoding_DefaultJson,21203,Object python-opcua-0.98.9/schemas/OPCBinarySchema.xsd000066400000000000000000000133671357637245100213500ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/Opc.Ua.Adi.NodeSet2.xml000066400000000000000000015675471357637245100216650ustar00rootroot00000000000000 http://opcfoundation.org/UA/ADI/ http://opcfoundation.org/UA/DI/ i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 AnalyserDeviceType ns=1;i=5001 ns=1;i=9382 ns=1;i=9386 ns=1;i=9482 ns=1;i=9484 ns=1;i=9486 ns=1;i=9488 ns=1;i=9500 ns=1;i=9610 ns=2;i=1002 ParameterSet Flat list of Parameters ns=1;i=9459 ns=1;i=9462 i=58 i=80 ns=1;i=1001 DiagnosticStatus General health status of the analyser ns=1;i=9484 i=2365 i=78 ns=1;i=5001 ConfigData Optional analyser device large configuration ns=1;i=9463 ns=1;i=13070 ns=1;i=13071 ns=1;i=9466 ns=1;i=9467 ns=1;i=9470 ns=1;i=9472 ns=1;i=9475 ns=1;i=9477 ns=1;i=9480 ns=1;i=9482 i=11575 i=80 ns=1;i=5001 Size The size of the file in bytes. i=68 i=78 ns=1;i=9462 Writable Whether the file is writable. i=68 i=78 ns=1;i=9462 UserWritable Whether the file is writable by the current user. i=68 i=78 ns=1;i=9462 OpenCount The current number of open file handles. i=68 i=78 ns=1;i=9462 Open ns=1;i=9468 ns=1;i=9469 i=78 ns=1;i=9462 InputArguments i=68 i=78 ns=1;i=9467 i=297 Mode i=3 -1 OutputArguments i=68 i=78 ns=1;i=9467 i=297 FileHandle i=7 -1 Close ns=1;i=9471 i=78 ns=1;i=9462 InputArguments i=68 i=78 ns=1;i=9470 i=297 FileHandle i=7 -1 Read ns=1;i=9473 ns=1;i=9474 i=78 ns=1;i=9462 InputArguments i=68 i=78 ns=1;i=9472 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 ns=1;i=9472 i=297 Data i=15 -1 Write ns=1;i=9476 i=78 ns=1;i=9462 InputArguments i=68 i=78 ns=1;i=9475 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition ns=1;i=9478 ns=1;i=9479 i=78 ns=1;i=9462 InputArguments i=68 i=78 ns=1;i=9477 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 ns=1;i=9477 i=297 Position i=9 -1 SetPosition ns=1;i=9481 i=78 ns=1;i=9462 InputArguments i=68 i=78 ns=1;i=9480 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 MethodSet Flat list of Methods ns=1;i=9443 ns=1;i=9445 ns=1;i=9448 ns=1;i=9450 ns=1;i=9453 ns=1;i=9454 ns=1;i=9455 ns=1;i=9456 ns=1;i=9457 ns=1;i=9458 i=58 i=78 ns=1;i=1001 GetConfiguration ns=1;i=9444 i=78 ns=1;i=9382 OutputArguments i=68 i=78 ns=1;i=9443 i=297 ConfigData i=15 -1 SetConfiguration ns=1;i=9446 ns=1;i=9447 i=78 ns=1;i=9382 InputArguments i=68 i=78 ns=1;i=9445 i=297 ConfigData i=15 -1 OutputArguments i=68 i=78 ns=1;i=9445 i=297 ConfigDataDigest i=12 -1 GetConfigDataDigest ns=1;i=9449 i=78 ns=1;i=9382 OutputArguments i=68 i=78 ns=1;i=9448 i=297 ConfigDataDigest i=12 -1 CompareConfigDataDigest ns=1;i=9451 ns=1;i=9452 i=78 ns=1;i=9382 InputArguments i=68 i=78 ns=1;i=9450 i=297 ConfigDataDigest i=12 -1 OutputArguments i=68 i=78 ns=1;i=9450 i=297 IsEqual i=1 -1 ResetAllChannels Reset all AnalyserChannels belonging to this AnalyserDevice. i=78 ns=1;i=9382 StartAllChannels Start all AnalyserChannels belonging to this AnalyserDevice. i=78 ns=1;i=9382 StopAllChannels Stop all AnalyserChannels belonging to this AnalyserDevice. i=78 ns=1;i=9382 AbortAllChannels Abort all AnalyserChannels belonging to this AnalyserDevice. i=78 ns=1;i=9382 GotoOperating AnalyserDeviceStateMachine to go to Operating state, forcing all AnalyserChannels to leave the SlaveMode state and go to the Operating state. i=78 ns=1;i=9382 GotoMaintenance AnalyserDeviceStateMachine to go to Maintenance state, forcing all AnalyserChannels to SlaveMode state. i=78 ns=1;i=9382 Identification Used to organize parameters for identification of this TopologyElement ns=2;i=6003 ns=2;i=6004 ns=2;i=6001 ns=2;i=1005 i=78 ns=1;i=1001 Configuration ns=1;i=9462 ns=2;i=1005 i=78 ns=1;i=1001 Status ns=1;i=9459 ns=2;i=1005 i=78 ns=1;i=1001 FactorySettings ns=2;i=1005 i=78 ns=1;i=1001 AnalyserStateMachine ns=1;i=9489 ns=1;i=1002 i=78 ns=1;i=1001 CurrentState ns=1;i=9490 i=2760 i=78 ns=1;i=9488 Id i=68 i=78 ns=1;i=9489 <ChannelIdentifier> Channel definition ns=1;i=9503 ns=1;i=9546 ns=1;i=9548 ns=1;i=9550 ns=1;i=1003 i=11508 ns=1;i=1001 MethodSet Flat list of Methods ns=1;i=9521 ns=1;i=9522 ns=1;i=9523 ns=1;i=9525 ns=1;i=9526 ns=1;i=9527 ns=1;i=9528 ns=1;i=9529 ns=1;i=9530 ns=1;i=9531 ns=1;i=9532 ns=1;i=9533 i=58 i=78 ns=1;i=9500 GotoOperating Transitions the AnalyserChannel to Operating mode. i=78 ns=1;i=9503 GotoMaintenance Transitions the AnalyserChannel to Maintenance mode. i=78 ns=1;i=9503 StartSingleAcquisition ns=1;i=9524 i=78 ns=1;i=9503 InputArguments i=68 i=78 ns=1;i=9523 i=297 ExecutionCycle ns=1;i=9378 -1 i=297 ExecutionCycleSubcode i=7 -1 i=297 SelectedStream i=12 -1 Reset Causes transition to the Resetting state. i=78 ns=1;i=9503 Start Causes transition to the Starting state. i=78 ns=1;i=9503 Stop Causes transition to the Stopping state. i=78 ns=1;i=9503 Hold Causes transition to the Holding state. i=78 ns=1;i=9503 Unhold Causes transition to the Unholding state. i=78 ns=1;i=9503 Suspend Causes transition to the Suspending state. i=78 ns=1;i=9503 Unsuspend Causes transition to the Unsuspending state. i=78 ns=1;i=9503 Abort Causes transition to the Aborting state. i=78 ns=1;i=9503 Clear Causes transition to the Clearing state. i=78 ns=1;i=9503 Configuration ns=2;i=1005 i=78 ns=1;i=9500 Status ns=2;i=1005 i=78 ns=1;i=9500 ChannelStateMachine ns=1;i=9551 ns=1;i=9562 ns=1;i=1007 i=78 ns=1;i=9500 CurrentState ns=1;i=9552 i=2760 i=78 ns=1;i=9550 Id i=68 i=78 ns=1;i=9551 OperatingSubStateMachine ns=1;i=9563 ns=1;i=9574 ns=1;i=1008 i=78 ns=1;i=9550 CurrentState ns=1;i=9564 i=2760 i=78 ns=1;i=9562 Id i=68 i=78 ns=1;i=9563 OperatingExecuteSubStateMachine ns=1;i=9575 ns=1;i=1009 i=78 ns=1;i=9562 CurrentState ns=1;i=9576 i=2760 i=78 ns=1;i=9574 Id i=68 i=78 ns=1;i=9575 <AccessorySlotIdentifier> AccessorySlot definition ns=1;i=9611 ns=1;i=9612 ns=1;i=9613 ns=1;i=9614 ns=1;i=1017 i=11508 ns=1;i=1001 SupportedTypes Folder maintaining the set of (sub-types of) BaseObjectTypes that can be instantiated in the ConfigurableComponent i=61 i=78 ns=1;i=9610 IsHotSwappable True if an accessory can be inserted in the accessory slot while it is powered i=68 i=78 ns=1;i=9610 IsEnabled True if this accessory slot is capable of accepting an accessory in it i=68 i=78 ns=1;i=9610 AccessorySlotStateMachine ns=1;i=9615 ns=1;i=1018 i=78 ns=1;i=9610 CurrentState ns=1;i=9616 i=2760 i=78 ns=1;i=9614 Id i=68 i=78 ns=1;i=9615 AnalyserDeviceStateMachineType ns=1;i=9647 ns=1;i=9649 ns=1;i=9651 ns=1;i=9653 ns=1;i=9655 ns=1;i=9657 ns=1;i=9659 ns=1;i=9661 ns=1;i=9663 ns=1;i=9665 ns=1;i=9667 ns=1;i=9669 ns=1;i=9671 ns=1;i=9673 ns=1;i=9675 i=2771 Powerup The AnalyserDevice is in its power-up sequence and cannot perform any other task. ns=1;i=9648 ns=1;i=9657 i=2309 ns=1;i=1002 StateNumber i=68 i=78 ns=1;i=9647 100 Operating The AnalyserDevice is in the Operating mode. ns=1;i=9650 ns=1;i=9657 ns=1;i=9659 ns=1;i=9661 ns=1;i=9663 ns=1;i=9667 ns=1;i=9671 i=2307 ns=1;i=1002 StateNumber i=68 i=78 ns=1;i=9649 200 Local The AnalyserDevice is in the Local mode. This mode is normally used to perform local physical maintenance on the analyser. ns=1;i=9652 ns=1;i=9659 ns=1;i=9663 ns=1;i=9665 ns=1;i=9669 ns=1;i=9673 i=2307 ns=1;i=1002 StateNumber i=68 i=78 ns=1;i=9651 300 Maintenance The AnalyserDevice is in the Maintenance mode. This mode is used to perform remote maintenance on the analyser like firmware upgrade. ns=1;i=9654 ns=1;i=9661 ns=1;i=9665 ns=1;i=9667 ns=1;i=9669 ns=1;i=9675 i=2307 ns=1;i=1002 StateNumber i=68 i=78 ns=1;i=9653 400 Shutdown The AnalyserDevice is in its power-down sequence and cannot perform any other task. ns=1;i=9656 ns=1;i=9671 ns=1;i=9673 ns=1;i=9675 i=2307 ns=1;i=1002 StateNumber i=68 i=78 ns=1;i=9655 500 PowerupToOperatingTransition ns=1;i=9658 ns=1;i=9647 ns=1;i=9649 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9657 1 OperatingToLocalTransition ns=1;i=9660 ns=1;i=9649 ns=1;i=9651 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9659 2 OperatingToMaintenanceTransition ns=1;i=9662 ns=1;i=9649 ns=1;i=9653 ns=1;i=9458 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9661 3 LocalToOperatingTransition ns=1;i=9664 ns=1;i=9651 ns=1;i=9649 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9663 4 LocalToMaintenanceTransition ns=1;i=9666 ns=1;i=9651 ns=1;i=9653 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9665 5 MaintenanceToOperatingTransition ns=1;i=9668 ns=1;i=9653 ns=1;i=9649 ns=1;i=9457 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9667 6 MaintenanceToLocalTransition ns=1;i=9670 ns=1;i=9653 ns=1;i=9651 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9669 7 OperatingToShutdownTransition ns=1;i=9672 ns=1;i=9649 ns=1;i=9655 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9671 8 LocalToShutdownTransition ns=1;i=9674 ns=1;i=9651 ns=1;i=9655 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9673 9 MaintenanceToShutdownTransition ns=1;i=9676 ns=1;i=9653 ns=1;i=9655 i=2310 ns=1;i=1002 TransitionNumber i=68 i=78 ns=1;i=9675 10 AnalyserChannelType ns=1;i=9677 ns=1;i=9679 ns=1;i=9788 ns=1;i=9724 ns=1;i=9726 ns=1;i=9728 ns=1;i=9790 ns=1;i=9916 ns=2;i=1001 ParameterSet Flat list of Parameters ns=1;i=9712 ns=1;i=9715 ns=1;i=9718 ns=1;i=9721 i=58 i=80 ns=1;i=1003 ChannelId Channel Id defined by user i=2365 i=80 ns=1;i=9677 IsEnabled True if the channel is enabled and accepting commands ns=1;i=9724 i=2365 i=78 ns=1;i=9677 DiagnosticStatus AnalyserChannel health status ns=1;i=9726 i=2365 i=78 ns=1;i=9677 ActiveStream Active stream for this AnalyserChannel ns=1;i=9726 i=2365 i=78 ns=1;i=9677 MethodSet Flat list of Methods ns=1;i=9699 ns=1;i=9700 ns=1;i=9701 ns=1;i=9703 ns=1;i=9704 ns=1;i=9705 ns=1;i=9706 ns=1;i=9707 ns=1;i=9708 ns=1;i=9709 ns=1;i=9710 ns=1;i=9711 i=58 i=78 ns=1;i=1003 GotoOperating Transitions the AnalyserChannel to Operating mode. i=78 ns=1;i=9679 GotoMaintenance Transitions the AnalyserChannel to Maintenance mode. i=78 ns=1;i=9679 StartSingleAcquisition ns=1;i=9702 i=78 ns=1;i=9679 InputArguments i=68 i=78 ns=1;i=9701 i=297 ExecutionCycle ns=1;i=9378 -1 i=297 ExecutionCycleSubcode i=7 -1 i=297 SelectedStream i=12 -1 Reset Causes transition to the Resetting state. i=78 ns=1;i=9679 Start Causes transition to the Starting state. i=78 ns=1;i=9679 Stop Causes transition to the Stopping state. i=78 ns=1;i=9679 Hold Causes transition to the Holding state. i=78 ns=1;i=9679 Unhold Causes transition to the Unholding state. i=78 ns=1;i=9679 Suspend Causes transition to the Suspending state. i=78 ns=1;i=9679 Unsuspend Causes transition to the Unsuspending state. i=78 ns=1;i=9679 Abort Causes transition to the Aborting state. i=78 ns=1;i=9679 Clear Causes transition to the Clearing state. i=78 ns=1;i=9679 <GroupIdentifier> Group definition ns=2;i=1005 i=11508 ns=1;i=1003 Configuration ns=1;i=9715 ns=2;i=1005 i=78 ns=1;i=1003 Status ns=1;i=9718 ns=1;i=9721 ns=2;i=1005 i=78 ns=1;i=1003 ChannelStateMachine ns=1;i=9729 ns=1;i=9740 ns=1;i=1007 i=78 ns=1;i=1003 CurrentState ns=1;i=9730 i=2760 i=78 ns=1;i=9728 Id i=68 i=78 ns=1;i=9729 OperatingSubStateMachine ns=1;i=9741 ns=1;i=9752 ns=1;i=1008 i=78 ns=1;i=9728 CurrentState ns=1;i=9742 i=2760 i=78 ns=1;i=9740 Id i=68 i=78 ns=1;i=9741 OperatingExecuteSubStateMachine ns=1;i=9753 ns=1;i=1009 i=78 ns=1;i=9740 CurrentState ns=1;i=9754 i=2760 i=78 ns=1;i=9752 Id i=68 i=78 ns=1;i=9753 <StreamIdentifier> Stream definition ns=1;i=9902 ns=1;i=9904 ns=1;i=9906 ns=1;i=9908 ns=1;i=9910 ns=1;i=9912 ns=1;i=9914 ns=1;i=1010 i=11508 ns=1;i=1003 Configuration ns=2;i=1005 i=78 ns=1;i=9790 Status ns=2;i=1005 i=78 ns=1;i=9790 AcquisitionSettings ns=2;i=1005 i=78 ns=1;i=9790 AcquisitionStatus ns=2;i=1005 i=78 ns=1;i=9790 AcquisitionData ns=2;i=1005 i=78 ns=1;i=9790 ChemometricModelSettings ns=2;i=1005 i=78 ns=1;i=9790 Context ns=2;i=1005 i=78 ns=1;i=9790 <AccessorySlotIdentifier> AccessorySlot definition ns=1;i=9917 ns=1;i=9918 ns=1;i=9919 ns=1;i=9920 ns=1;i=1017 i=11508 ns=1;i=1003 SupportedTypes Folder maintaining the set of (sub-types of) BaseObjectTypes that can be instantiated in the ConfigurableComponent i=61 i=78 ns=1;i=9916 IsHotSwappable True if an accessory can be inserted in the accessory slot while it is powered i=68 i=78 ns=1;i=9916 IsEnabled True if this accessory slot is capable of accepting an accessory in it i=68 i=78 ns=1;i=9916 AccessorySlotStateMachine ns=1;i=9921 ns=1;i=1018 i=78 ns=1;i=9916 CurrentState ns=1;i=9922 i=2760 i=78 ns=1;i=9920 Id i=68 i=78 ns=1;i=9921 AnalyserChannelOperatingStateType ns=1;i=9948 i=2307 AnalyserChannelLocalStateType i=2307 AnalyserChannelMaintenanceStateType i=2307 AnalyserChannelStateMachineType Contains a nested state model that defines the top level states Operating, Local and Maintenance ns=1;i=9948 ns=1;i=9972 ns=1;i=9984 ns=1;i=9996 ns=1;i=9998 ns=1;i=10000 ns=1;i=10002 ns=1;i=10004 ns=1;i=10006 ns=1;i=10008 ns=1;i=10010 ns=1;i=10012 ns=1;i=10014 ns=1;i=10016 ns=1;i=10018 ns=1;i=10020 ns=1;i=10022 i=2771 OperatingSubStateMachine ns=1;i=9949 ns=1;i=9960 ns=1;i=9998 ns=1;i=1008 i=78 ns=1;i=1007 CurrentState ns=1;i=9950 i=2760 i=78 ns=1;i=9948 Id i=68 i=78 ns=1;i=9949 OperatingExecuteSubStateMachine ns=1;i=9961 ns=1;i=1009 i=78 ns=1;i=9948 CurrentState ns=1;i=9962 i=2760 i=78 ns=1;i=9960 Id i=68 i=78 ns=1;i=9961 LocalSubStateMachine ns=1;i=9973 ns=1;i=10000 i=2771 i=80 ns=1;i=1007 CurrentState ns=1;i=9974 i=2760 i=78 ns=1;i=9972 Id i=68 i=78 ns=1;i=9973 MaintenanceSubStateMachine ns=1;i=9985 ns=1;i=10002 i=2771 i=80 ns=1;i=1007 CurrentState ns=1;i=9986 i=2760 i=78 ns=1;i=9984 Id i=68 i=78 ns=1;i=9985 SlaveMode The AnalyserDevice is in Local or Maintenance mode and all AnalyserChannels are in SlaveMode ns=1;i=9997 ns=1;i=10004 ns=1;i=10018 ns=1;i=10020 ns=1;i=10022 i=2309 ns=1;i=1007 StateNumber i=68 i=78 ns=1;i=9996 100 Operating The AnalyserChannel is in the Operating mode. ns=1;i=9999 ns=1;i=9948 ns=1;i=10004 ns=1;i=10006 ns=1;i=10008 ns=1;i=10010 ns=1;i=10014 ns=1;i=10018 ns=1;i=1004 ns=1;i=1007 StateNumber i=68 i=78 ns=1;i=9998 200 Local The AnalyserChannel is in the Local mode. This mode is normally used to perform local physical maintenance on the analyser. ns=1;i=10001 ns=1;i=9972 ns=1;i=10006 ns=1;i=10010 ns=1;i=10012 ns=1;i=10016 ns=1;i=10020 ns=1;i=1005 ns=1;i=1007 StateNumber i=68 i=78 ns=1;i=10000 300 Maintenance The AnalyserChannel is in the Maintenance mode. This mode is used to perform remote maintenance on the analyser like firmware upgrade. ns=1;i=10003 ns=1;i=9984 ns=1;i=10008 ns=1;i=10012 ns=1;i=10014 ns=1;i=10016 ns=1;i=10022 ns=1;i=1006 ns=1;i=1007 StateNumber i=68 i=78 ns=1;i=10002 400 SlaveModeToOperatingTransition ns=1;i=10005 ns=1;i=9996 ns=1;i=9998 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10004 1 OperatingToLocalTransition ns=1;i=10007 ns=1;i=9998 ns=1;i=10000 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10006 2 OperatingToMaintenanceTransition ns=1;i=10009 ns=1;i=9998 ns=1;i=10002 ns=1;i=9700 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10008 3 LocalToOperatingTransition ns=1;i=10011 ns=1;i=10000 ns=1;i=9998 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10010 4 LocalToMaintenanceTransition ns=1;i=10013 ns=1;i=10000 ns=1;i=10002 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10012 5 MaintenanceToOperatingTransition ns=1;i=10015 ns=1;i=10002 ns=1;i=9998 ns=1;i=9699 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10014 6 MaintenanceToLocalTransition ns=1;i=10017 ns=1;i=10002 ns=1;i=10000 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10016 7 OperatingToSlaveModeTransition ns=1;i=10019 ns=1;i=9998 ns=1;i=9996 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10018 8 LocalToSlaveModeTransition ns=1;i=10021 ns=1;i=10000 ns=1;i=9996 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10020 9 MaintenanceToSlaveModeTransition ns=1;i=10023 ns=1;i=10002 ns=1;i=9996 i=2310 ns=1;i=1007 TransitionNumber i=68 i=78 ns=1;i=10022 10 AnalyserChannelOperatingExecuteStateType ns=1;i=10036 i=2307 AnalyserChannel_OperatingModeSubStateMachineType AnalyserChannel OperatingMode SubStateMachine ns=1;i=10036 ns=1;i=10048 ns=1;i=10050 ns=1;i=10052 ns=1;i=10054 ns=1;i=10056 ns=1;i=10058 ns=1;i=10060 ns=1;i=10062 ns=1;i=10064 ns=1;i=10066 ns=1;i=10068 ns=1;i=10070 ns=1;i=10072 ns=1;i=10074 ns=1;i=10076 ns=1;i=10078 ns=1;i=10080 ns=1;i=10082 ns=1;i=10084 ns=1;i=10086 ns=1;i=10088 ns=1;i=10090 ns=1;i=10092 ns=1;i=10094 ns=1;i=10096 ns=1;i=10098 ns=1;i=10100 ns=1;i=10102 ns=1;i=10104 ns=1;i=10106 ns=1;i=10108 ns=1;i=10110 ns=1;i=10112 ns=1;i=10114 ns=1;i=10116 ns=1;i=10118 ns=1;i=10120 ns=1;i=10122 ns=1;i=10124 ns=1;i=10126 ns=1;i=10128 ns=1;i=10130 ns=1;i=10132 ns=1;i=10134 ns=1;i=10136 ns=1;i=10138 ns=1;i=10140 ns=1;i=10142 ns=1;i=10144 ns=1;i=10146 ns=1;i=10148 ns=1;i=10150 ns=1;i=10152 ns=1;i=10154 ns=1;i=10156 ns=1;i=10158 ns=1;i=10160 ns=1;i=10162 ns=1;i=10164 ns=1;i=10166 ns=1;i=10168 ns=1;i=10170 ns=1;i=10172 ns=1;i=10174 ns=1;i=10176 ns=1;i=10178 ns=1;i=10180 ns=1;i=10182 ns=1;i=10184 ns=1;i=10186 ns=1;i=10188 i=2771 OperatingExecuteSubStateMachine ns=1;i=10037 ns=1;i=10056 ns=1;i=1009 i=78 ns=1;i=1008 CurrentState ns=1;i=10038 i=2760 i=78 ns=1;i=10036 Id i=68 i=78 ns=1;i=10037 Stopped This is the initial state after AnalyserDeviceStateMachine state Powerup ns=1;i=10049 ns=1;i=10082 ns=1;i=10100 ns=1;i=10130 ns=1;i=10136 ns=1;i=10162 i=2309 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10048 2 Resetting This state is the result of a Reset or SetConfiguration Method call from the Stopped state. ns=1;i=10051 ns=1;i=10082 ns=1;i=10084 ns=1;i=10084 ns=1;i=10086 ns=1;i=10138 ns=1;i=10164 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10050 15 Idle The Resetting state is completed, all parameters have been committed and ready to start acquisition ns=1;i=10053 ns=1;i=10086 ns=1;i=10088 ns=1;i=10140 ns=1;i=10166 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10052 4 Starting The analyser has received the Start or SingleAcquisitionStart Method call and it is preparing to enter in Execute state. ns=1;i=10055 ns=1;i=10088 ns=1;i=10090 ns=1;i=10090 ns=1;i=10092 ns=1;i=10142 ns=1;i=10168 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10054 3 Execute All repetitive acquisition cycles are done in this state: ns=1;i=10057 ns=1;i=10036 ns=1;i=10092 ns=1;i=10094 ns=1;i=10102 ns=1;i=10114 ns=1;i=10116 ns=1;i=10128 ns=1;i=10144 ns=1;i=10170 ns=1;i=8964 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10056 6 Completing This state is an automatic or commanded exit from the Execute state. ns=1;i=10059 ns=1;i=10094 ns=1;i=10096 ns=1;i=10096 ns=1;i=10098 ns=1;i=10146 ns=1;i=10172 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10058 16 Complete At this point, the Completing state is done and it transitions automatically to Stopped state to wait. ns=1;i=10061 ns=1;i=10098 ns=1;i=10100 ns=1;i=10148 ns=1;i=10174 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10060 17 Suspending This state is a result of a change in monitored conditions due to process conditions or factors. ns=1;i=10063 ns=1;i=10116 ns=1;i=10118 ns=1;i=10118 ns=1;i=10120 ns=1;i=10126 ns=1;i=10150 ns=1;i=10176 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10062 13 Suspended The analyser or channel may be running but no results are being generated while the analyser or channel is waiting for external process conditions to return to normal. ns=1;i=10065 ns=1;i=10120 ns=1;i=10122 ns=1;i=10152 ns=1;i=10178 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10064 5 Unsuspending This state is a result of a device request from Suspended state to transition back to the Execute state by calling the Unsuspend Method. ns=1;i=10067 ns=1;i=10122 ns=1;i=10124 ns=1;i=10124 ns=1;i=10126 ns=1;i=10128 ns=1;i=10154 ns=1;i=10180 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10066 14 Holding Brings the analyser or channel to a controlled stop or to a state which represents Held for the particular unit control mode ns=1;i=10069 ns=1;i=10102 ns=1;i=10104 ns=1;i=10104 ns=1;i=10106 ns=1;i=10112 ns=1;i=10156 ns=1;i=10182 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10068 10 Held The Held state holds the analyser or channel's operation. At this state, no acquisition cycle is performed. ns=1;i=10071 ns=1;i=10106 ns=1;i=10108 ns=1;i=10158 ns=1;i=10184 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10070 11 Unholding The Unholding state is a response to an operator command to resume the Execute state. ns=1;i=10073 ns=1;i=10108 ns=1;i=10110 ns=1;i=10110 ns=1;i=10112 ns=1;i=10114 ns=1;i=10160 ns=1;i=10186 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10072 12 Stopping Initiated by a Stop Method call, this state: ns=1;i=10075 ns=1;i=10130 ns=1;i=10138 ns=1;i=10140 ns=1;i=10142 ns=1;i=10144 ns=1;i=10146 ns=1;i=10148 ns=1;i=10150 ns=1;i=10152 ns=1;i=10154 ns=1;i=10156 ns=1;i=10158 ns=1;i=10160 ns=1;i=10188 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10074 7 Aborting The Aborting state can be entered at any time in response to the Abort command or on the occurrence of a machine fault. ns=1;i=10077 ns=1;i=10132 ns=1;i=10162 ns=1;i=10164 ns=1;i=10166 ns=1;i=10168 ns=1;i=10170 ns=1;i=10172 ns=1;i=10174 ns=1;i=10176 ns=1;i=10178 ns=1;i=10180 ns=1;i=10182 ns=1;i=10184 ns=1;i=10186 ns=1;i=10188 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10076 8 Aborted This state maintains machine status information relevant to the Abort condition. ns=1;i=10079 ns=1;i=10132 ns=1;i=10134 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10078 9 Clearing Clears faults that may have occurred when Aborting and are present in the Aborted state before proceeding to a Stopped state ns=1;i=10081 ns=1;i=10134 ns=1;i=10136 i=2307 ns=1;i=1008 StateNumber i=68 i=78 ns=1;i=10080 1 StoppedToResettingTransition ns=1;i=10083 ns=1;i=10048 ns=1;i=10050 ns=1;i=9703 ns=1;i=9445 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10082 1 ResettingTransition ns=1;i=10085 ns=1;i=10050 ns=1;i=10050 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10084 2 ResettingToIdleTransition ns=1;i=10087 ns=1;i=10050 ns=1;i=10052 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10086 3 IdleToStartingTransition ns=1;i=10089 ns=1;i=10052 ns=1;i=10054 ns=1;i=9704 ns=1;i=9701 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10088 4 StartingTransition ns=1;i=10091 ns=1;i=10054 ns=1;i=10054 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10090 5 StartingToExecuteTransition ns=1;i=10093 ns=1;i=10054 ns=1;i=10056 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10092 6 ExecuteToCompletingTransition ns=1;i=10095 ns=1;i=10056 ns=1;i=10058 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10094 7 CompletingTransition ns=1;i=10097 ns=1;i=10058 ns=1;i=10058 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10096 8 CompletingToCompleteTransition ns=1;i=10099 ns=1;i=10058 ns=1;i=10060 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10098 9 CompleteToStoppedTransition ns=1;i=10101 ns=1;i=10060 ns=1;i=10048 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10100 10 ExecuteToHoldingTransition ns=1;i=10103 ns=1;i=10056 ns=1;i=10068 ns=1;i=9706 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10102 11 HoldingTransition ns=1;i=10105 ns=1;i=10068 ns=1;i=10068 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10104 12 HoldingToHeldTransition ns=1;i=10107 ns=1;i=10068 ns=1;i=10070 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10106 13 HeldToUnholdingTransition ns=1;i=10109 ns=1;i=10070 ns=1;i=10072 ns=1;i=9707 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10108 14 UnholdingTransition ns=1;i=10111 ns=1;i=10072 ns=1;i=10072 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10110 15 UnholdingToHoldingTransition ns=1;i=10113 ns=1;i=10072 ns=1;i=10068 ns=1;i=9706 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10112 16 UnholdingToExecuteTransition ns=1;i=10115 ns=1;i=10072 ns=1;i=10056 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10114 17 ExecuteToSuspendingTransition ns=1;i=10117 ns=1;i=10056 ns=1;i=10062 ns=1;i=9708 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10116 18 SuspendingTransition ns=1;i=10119 ns=1;i=10062 ns=1;i=10062 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10118 19 SuspendingToSuspendedTransition ns=1;i=10121 ns=1;i=10062 ns=1;i=10064 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10120 20 SuspendedToUnsuspendingTransition ns=1;i=10123 ns=1;i=10064 ns=1;i=10066 ns=1;i=9709 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10122 21 UnsuspendingTransition ns=1;i=10125 ns=1;i=10066 ns=1;i=10066 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10124 22 UnsuspendingToSuspendingTransition ns=1;i=10127 ns=1;i=10066 ns=1;i=10062 ns=1;i=9708 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10126 23 UnsuspendingToExecuteTransition ns=1;i=10129 ns=1;i=10066 ns=1;i=10056 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10128 24 StoppingToStoppedTransition ns=1;i=10131 ns=1;i=10074 ns=1;i=10048 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10130 25 AbortingToAbortedTransition ns=1;i=10133 ns=1;i=10076 ns=1;i=10078 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10132 26 AbortedToClearingTransition ns=1;i=10135 ns=1;i=10078 ns=1;i=10080 ns=1;i=9711 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10134 27 ClearingToStoppedTransition ns=1;i=10137 ns=1;i=10080 ns=1;i=10048 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10136 28 ResettingToStoppingTransition ns=1;i=10139 ns=1;i=10050 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10138 29 IdleToStoppingTransition ns=1;i=10141 ns=1;i=10052 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10140 30 StartingToStoppingTransition ns=1;i=10143 ns=1;i=10054 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10142 31 ExecuteToStoppingTransition ns=1;i=10145 ns=1;i=10056 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10144 32 CompletingToStoppingTransition ns=1;i=10147 ns=1;i=10058 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10146 33 CompleteToStoppingTransition ns=1;i=10149 ns=1;i=10060 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10148 34 SuspendingToStoppingTransition ns=1;i=10151 ns=1;i=10062 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10150 35 SuspendedToStoppingTransition ns=1;i=10153 ns=1;i=10064 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10152 36 UnsuspendingToStoppingTransition ns=1;i=10155 ns=1;i=10066 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10154 37 HoldingToStoppingTransition ns=1;i=10157 ns=1;i=10068 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10156 38 HeldToStoppingTransition ns=1;i=10159 ns=1;i=10070 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10158 39 UnholdingToStoppingTransition ns=1;i=10161 ns=1;i=10072 ns=1;i=10074 ns=1;i=9705 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10160 40 StoppedToAbortingTransition ns=1;i=10163 ns=1;i=10048 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10162 41 ResettingToAbortingTransition ns=1;i=10165 ns=1;i=10050 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10164 42 IdleToAbortingTransition ns=1;i=10167 ns=1;i=10052 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10166 43 StartingToAbortingTransition ns=1;i=10169 ns=1;i=10054 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10168 44 ExecuteToAbortingTransition ns=1;i=10171 ns=1;i=10056 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10170 45 CompletingToAbortingTransition ns=1;i=10173 ns=1;i=10058 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10172 46 CompleteToAbortingTransition ns=1;i=10175 ns=1;i=10060 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10174 47 SuspendingToAbortingTransition ns=1;i=10177 ns=1;i=10062 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10176 48 SuspendedToAbortingTransition ns=1;i=10179 ns=1;i=10064 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10178 49 UnsuspendingToAbortingTransition ns=1;i=10181 ns=1;i=10066 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10180 50 HoldingToAbortingTransition ns=1;i=10183 ns=1;i=10068 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10182 51 HeldToAbortingTransition ns=1;i=10185 ns=1;i=10070 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10184 52 UnholdingToAbortingTransition ns=1;i=10187 ns=1;i=10072 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10186 53 StoppingToAbortingTransition ns=1;i=10189 ns=1;i=10074 ns=1;i=10076 ns=1;i=9710 i=2310 ns=1;i=1008 TransitionNumber i=68 i=78 ns=1;i=10188 54 AnalyserChannel_OperatingModeExecuteSubStateMachineType ns=1;i=10201 ns=1;i=10203 ns=1;i=10205 ns=1;i=10207 ns=1;i=10209 ns=1;i=10211 ns=1;i=10213 ns=1;i=10215 ns=1;i=10217 ns=1;i=10219 ns=1;i=10221 ns=1;i=10223 ns=1;i=10225 ns=1;i=10227 ns=1;i=10229 ns=1;i=10231 ns=1;i=10233 ns=1;i=10235 ns=1;i=10237 ns=1;i=10239 ns=1;i=10241 ns=1;i=10243 ns=1;i=10245 ns=1;i=10247 ns=1;i=10249 ns=1;i=10251 ns=1;i=10253 ns=1;i=10255 ns=1;i=10257 ns=1;i=10259 ns=1;i=10261 ns=1;i=10263 ns=1;i=10265 ns=1;i=10267 ns=1;i=10269 ns=1;i=10271 ns=1;i=10273 ns=1;i=10275 ns=1;i=10277 ns=1;i=10279 ns=1;i=10281 ns=1;i=10283 ns=1;i=10285 ns=1;i=10287 ns=1;i=10289 ns=1;i=10291 ns=1;i=10293 ns=1;i=10295 ns=1;i=10297 ns=1;i=10299 ns=1;i=10301 ns=1;i=10303 ns=1;i=10305 ns=1;i=10307 ns=1;i=10309 ns=1;i=10311 ns=1;i=10313 ns=1;i=10315 i=2771 SelectExecutionCycle This pseudo-state is used to decide which execution path shall be taken. ns=1;i=10202 ns=1;i=10241 ns=1;i=10257 ns=1;i=10273 ns=1;i=10289 ns=1;i=10297 ns=1;i=10315 i=2309 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10201 100 WaitForCalibrationTrigger Wait until the analyser channel is ready to perform the Calibration acquisition cycle ns=1;i=10204 ns=1;i=10241 ns=1;i=10243 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10203 200 ExtractCalibrationSample Collect / setup the sampling system to perform the acquisition cycle of a Calibration cycle ns=1;i=10206 ns=1;i=10243 ns=1;i=10245 ns=1;i=10245 ns=1;i=10247 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10205 300 PrepareCalibrationSample Prepare the Calibration sample for the AnalyseCalibrationSample state ns=1;i=10208 ns=1;i=10247 ns=1;i=10249 ns=1;i=10249 ns=1;i=10251 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10207 400 AnalyseCalibrationSample Perform the analysis of the Calibration Sample ns=1;i=10210 ns=1;i=10251 ns=1;i=10253 ns=1;i=10253 ns=1;i=10255 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10209 500 WaitForValidationTrigger Wait until the analyser channel is ready to perform the Validation acquisition cycle ns=1;i=10212 ns=1;i=10257 ns=1;i=10259 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10211 600 ExtractValidationSample Collect / setup the sampling system to perform the acquisition cycle of a Validation cycle ns=1;i=10214 ns=1;i=10259 ns=1;i=10261 ns=1;i=10261 ns=1;i=10263 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10213 700 PrepareValidationSample Prepare the Validation sample for the AnalyseValidationSample state ns=1;i=10216 ns=1;i=10263 ns=1;i=10265 ns=1;i=10265 ns=1;i=10267 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10215 800 AnalyseValidationSample Perform the analysis of the Validation Sample ns=1;i=10218 ns=1;i=10267 ns=1;i=10269 ns=1;i=10269 ns=1;i=10271 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10217 900 WaitForSampleTrigger Wait until the analyser channel is ready to perform the Sample acquisition cycle ns=1;i=10220 ns=1;i=10273 ns=1;i=10275 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10219 1000 ExtractSample Collect the Sample from the process ns=1;i=10222 ns=1;i=10275 ns=1;i=10277 ns=1;i=10277 ns=1;i=10279 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10221 1100 PrepareSample Prepare the Sample for the AnalyseSample state ns=1;i=10224 ns=1;i=10279 ns=1;i=10281 ns=1;i=10281 ns=1;i=10283 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10223 1200 AnalyseSample Perform the analysis of the Sample ns=1;i=10226 ns=1;i=10283 ns=1;i=10285 ns=1;i=10285 ns=1;i=10287 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10225 1300 WaitForDiagnosticTrigger Wait until the analyser channel is ready to perform the diagnostic cycle, ns=1;i=10228 ns=1;i=10289 ns=1;i=10291 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10227 1400 Diagnostic Perform the diagnostic cycle. ns=1;i=10230 ns=1;i=10291 ns=1;i=10293 ns=1;i=10293 ns=1;i=10295 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10229 1500 WaitForCleaningTrigger Wait until the analyser channel is ready to perform the cleaning cycle, ns=1;i=10232 ns=1;i=10297 ns=1;i=10299 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10231 1600 Cleaning Perform the cleaning cycle. ns=1;i=10234 ns=1;i=10299 ns=1;i=10301 ns=1;i=10301 ns=1;i=10303 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10233 1700 PublishResults Publish the results of the previous acquisition cycle ns=1;i=10236 ns=1;i=10255 ns=1;i=10271 ns=1;i=10287 ns=1;i=10295 ns=1;i=10303 ns=1;i=10305 ns=1;i=10307 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10235 1800 EjectGrabSample The Sample that was just analysed is ejected from the system to allow the operator or another system to grab it ns=1;i=10238 ns=1;i=10307 ns=1;i=10309 ns=1;i=10309 ns=1;i=10311 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10237 1900 CleanupSamplingSystem Cleanup the sampling sub-system to be ready for the next acquisition ns=1;i=10240 ns=1;i=10305 ns=1;i=10311 ns=1;i=10313 ns=1;i=10313 ns=1;i=10315 i=2307 ns=1;i=1009 StateNumber i=68 i=78 ns=1;i=10239 2000 SelectExecutionCycleToWaitForCalibrationTriggerTransition ns=1;i=10242 ns=1;i=10201 ns=1;i=10203 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10241 1 WaitForCalibrationTriggerToExtractCalibrationSampleTransition ns=1;i=10244 ns=1;i=10203 ns=1;i=10205 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10243 2 ExtractCalibrationSampleTransition ns=1;i=10246 ns=1;i=10205 ns=1;i=10205 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10245 3 ExtractCalibrationSampleToPrepareCalibrationSampleTransition ns=1;i=10248 ns=1;i=10205 ns=1;i=10207 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10247 4 PrepareCalibrationSampleTransition ns=1;i=10250 ns=1;i=10207 ns=1;i=10207 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10249 5 PrepareCalibrationSampleToAnalyseCalibrationSampleTransition ns=1;i=10252 ns=1;i=10207 ns=1;i=10209 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10251 6 AnalyseCalibrationSampleTransition ns=1;i=10254 ns=1;i=10209 ns=1;i=10209 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10253 7 AnalyseCalibrationSampleToPublishResultsTransition ns=1;i=10256 ns=1;i=10209 ns=1;i=10235 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10255 8 SelectExecutionCycleToWaitForValidationTriggerTransition ns=1;i=10258 ns=1;i=10201 ns=1;i=10211 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10257 9 WaitForValidationTriggerToExtractValidationSampleTransition ns=1;i=10260 ns=1;i=10211 ns=1;i=10213 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10259 10 ExtractValidationSampleTransition ns=1;i=10262 ns=1;i=10213 ns=1;i=10213 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10261 11 ExtractValidationSampleToPrepareValidationSampleTransition ns=1;i=10264 ns=1;i=10213 ns=1;i=10215 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10263 12 PrepareValidationSampleTransition ns=1;i=10266 ns=1;i=10215 ns=1;i=10215 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10265 13 PrepareValidationSampleToAnalyseValidationSampleTransition ns=1;i=10268 ns=1;i=10215 ns=1;i=10217 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10267 14 AnalyseValidationSampleTransition ns=1;i=10270 ns=1;i=10217 ns=1;i=10217 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10269 15 AnalyseValidationSampleToPublishResultsTransition ns=1;i=10272 ns=1;i=10217 ns=1;i=10235 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10271 16 SelectExecutionCycleToWaitForSampleTriggerTransition ns=1;i=10274 ns=1;i=10201 ns=1;i=10219 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10273 17 WaitForSampleTriggerToExtractSampleTransition ns=1;i=10276 ns=1;i=10219 ns=1;i=10221 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10275 18 ExtractSampleTransition ns=1;i=10278 ns=1;i=10221 ns=1;i=10221 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10277 19 ExtractSampleToPrepareSampleTransition ns=1;i=10280 ns=1;i=10221 ns=1;i=10223 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10279 20 PrepareSampleTransition ns=1;i=10282 ns=1;i=10223 ns=1;i=10223 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10281 21 PrepareSampleToAnalyseSampleTransition ns=1;i=10284 ns=1;i=10223 ns=1;i=10225 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10283 22 AnalyseSampleTransition ns=1;i=10286 ns=1;i=10225 ns=1;i=10225 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10285 23 AnalyseSampleToPublishResultsTransition ns=1;i=10288 ns=1;i=10225 ns=1;i=10235 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10287 24 SelectExecutionCycleToWaitForDiagnosticTriggerTransition ns=1;i=10290 ns=1;i=10201 ns=1;i=10227 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10289 25 WaitForDiagnosticTriggerToDiagnosticTransition ns=1;i=10292 ns=1;i=10227 ns=1;i=10229 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10291 26 DiagnosticTransition ns=1;i=10294 ns=1;i=10229 ns=1;i=10229 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10293 27 DiagnosticToPublishResultsTransition ns=1;i=10296 ns=1;i=10229 ns=1;i=10235 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10295 28 SelectExecutionCycleToWaitForCleaningTriggerTransition ns=1;i=10298 ns=1;i=10201 ns=1;i=10231 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10297 29 WaitForCleaningTriggerToCleaningTransition ns=1;i=10300 ns=1;i=10231 ns=1;i=10233 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10299 30 CleaningTransition ns=1;i=10302 ns=1;i=10233 ns=1;i=10233 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10301 31 CleaningToPublishResultsTransition ns=1;i=10304 ns=1;i=10233 ns=1;i=10235 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10303 32 PublishResultsToCleanupSamplingSystemTransition ns=1;i=10306 ns=1;i=10235 ns=1;i=10239 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10305 33 PublishResultsToEjectGrabSampleTransition ns=1;i=10308 ns=1;i=10235 ns=1;i=10237 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10307 34 EjectGrabSampleTransition ns=1;i=10310 ns=1;i=10237 ns=1;i=10237 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10309 35 EjectGrabSampleToCleanupSamplingSystemTransition ns=1;i=10312 ns=1;i=10237 ns=1;i=10239 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10311 36 CleanupSamplingSystemTransition ns=1;i=10314 ns=1;i=10239 ns=1;i=10239 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10313 37 CleanupSamplingSystemToSelectExecutionCycleTransition ns=1;i=10316 ns=1;i=10239 ns=1;i=10201 i=2310 ns=1;i=1009 TransitionNumber i=68 i=78 ns=1;i=10315 38 StreamType ns=1;i=10317 ns=1;i=10444 ns=1;i=10430 ns=1;i=10432 ns=1;i=10434 ns=1;i=10436 ns=1;i=10438 ns=1;i=10440 ns=1;i=10442 ns=2;i=1001 ParameterSet Flat list of Parameters ns=1;i=10339 ns=1;i=10342 ns=1;i=10345 ns=1;i=10348 ns=1;i=10351 ns=1;i=10354 ns=1;i=10357 ns=1;i=10363 ns=1;i=10366 ns=1;i=10369 ns=1;i=10373 ns=1;i=10376 ns=1;i=10382 ns=1;i=10385 ns=1;i=10388 ns=1;i=10391 ns=1;i=10394 ns=1;i=10397 ns=1;i=10400 ns=1;i=10403 ns=1;i=10406 ns=1;i=10409 ns=1;i=10412 ns=1;i=10415 ns=1;i=10418 ns=1;i=10421 ns=1;i=10424 ns=1;i=10427 i=58 i=80 ns=1;i=1010 IsEnabled True if this stream maybe used to perform acquisition ns=1;i=10430 i=2365 i=78 ns=1;i=10317 IsForced True if this stream is forced, which means that is the only Stream on this AnalyserChannel that can be used to perform acquisition ns=1;i=10430 i=2365 i=80 ns=1;i=10317 DiagnosticStatus Stream health status ns=1;i=10432 i=2365 i=78 ns=1;i=10317 LastCalibrationTime Time at which the last calibration was run ns=1;i=10432 i=2365 i=80 ns=1;i=10317 LastValidationTime Time at which the last validation was run ns=1;i=10432 i=2365 i=80 ns=1;i=10317 LastSampleTime Time at which the last sample was acquired ns=1;i=10432 i=2365 i=78 ns=1;i=10317 TimeBetweenSamples Number of milliseconds between two consecutive starts of acquisition ns=1;i=10361 ns=1;i=10434 i=2368 i=80 ns=1;i=10317 EURange i=68 i=78 ns=1;i=10357 IsActive True if this stream is actually running, acquiring data ns=1;i=10436 i=2365 i=78 ns=1;i=10317 ExecutionCycle Indicates which Execution cycle is in progress ns=1;i=10436 i=2365 i=78 ns=1;i=10317 ExecutionCycleSubcode Indicates which Execution cycle subcode is in progress ns=1;i=10372 ns=1;i=10436 i=2376 i=78 ns=1;i=10317 EnumStrings i=68 i=78 ns=1;i=10369 Progress Indicates the progress of an acquisition in terms of percentage of completion. Its value shall be between 0 and 100. ns=1;i=10436 i=2365 i=78 ns=1;i=10317 AcquisitionCounter Simple counter incremented after each Sampling acquisition performed on this Stream ns=1;i=10380 ns=1;i=10438 i=2368 i=78 ns=1;i=10317 EURange i=68 i=78 ns=1;i=10376 AcquisitionResultStatus Quality of the acquisition ns=1;i=10438 i=2365 i=78 ns=1;i=10317 RawData Raw data produced as a result of data acquisition on the Stream ns=1;i=10438 i=2365 i=80 ns=1;i=10317 ScaledData Scaled data produced as a result of data acquisition on the Stream and application of the analyser model ns=1;i=10438 i=2365 i=78 ns=1;i=10317 Offset Difference in milliseconds between the start of sample extraction and the start of the analysis. ns=1;i=10438 i=2365 i=80 ns=1;i=10317 AcquisitionEndTime The end time of the AnalyseSample or AnalyseCalibrationSample or AnalyseValidationSample state of the AnalyserChannel_OperatingModeExecuteSubStateMachine state machine ns=1;i=10438 i=2365 i=78 ns=1;i=10317 CampaignId Defines the current campaign ns=1;i=10442 i=2365 i=80 ns=1;i=10317 BatchId Defines the current batch ns=1;i=10442 i=2365 i=80 ns=1;i=10317 SubBatchId Defines the current sub-batch ns=1;i=10442 i=2365 i=80 ns=1;i=10317 LotId Defines the current lot ns=1;i=10442 i=2365 i=80 ns=1;i=10317 MaterialId Defines the current material ns=1;i=10442 i=2365 i=80 ns=1;i=10317 Process Current Process name ns=1;i=10442 i=2365 i=80 ns=1;i=10317 Unit Current Unit name ns=1;i=10442 i=2365 i=80 ns=1;i=10317 Operation Current Operation name ns=1;i=10442 i=2365 i=80 ns=1;i=10317 Phase Current Phase name ns=1;i=10442 i=2365 i=80 ns=1;i=10317 UserId Login name of the user who is logged on at the device console ns=1;i=10442 i=2365 i=80 ns=1;i=10317 SampleId Identifier for the sample ns=1;i=10442 i=2365 i=80 ns=1;i=10317 <GroupIdentifier> Group definition ns=2;i=1005 i=11508 ns=1;i=1010 Configuration ns=1;i=10339 ns=1;i=10342 ns=2;i=1005 i=78 ns=1;i=1010 Status ns=1;i=10345 ns=1;i=10348 ns=1;i=10351 ns=1;i=10354 ns=2;i=1005 i=78 ns=1;i=1010 AcquisitionSettings ns=1;i=10357 ns=2;i=1005 i=78 ns=1;i=1010 AcquisitionStatus ns=1;i=10363 ns=1;i=10366 ns=1;i=10369 ns=1;i=10373 ns=2;i=1005 i=78 ns=1;i=1010 AcquisitionData ns=1;i=10376 ns=1;i=10382 ns=1;i=10385 ns=1;i=10388 ns=1;i=10391 ns=1;i=10394 ns=2;i=1005 i=78 ns=1;i=1010 ChemometricModelSettings ns=2;i=1005 i=78 ns=1;i=1010 Context ns=1;i=10397 ns=1;i=10400 ns=1;i=10403 ns=1;i=10406 ns=1;i=10409 ns=1;i=10412 ns=1;i=10415 ns=1;i=10418 ns=1;i=10421 ns=1;i=10424 ns=1;i=10427 ns=2;i=1005 i=78 ns=1;i=1010 SpectrometerDeviceStreamType ns=1;i=10446 ns=1;i=10559 ns=1;i=10563 ns=1;i=10565 ns=1;i=10567 ns=1;i=10638 ns=1;i=1010 ParameterSet Flat list of Parameters ns=1;i=10468 ns=1;i=10474 ns=1;i=10483 ns=1;i=10492 ns=1;i=10495 ns=1;i=10498 ns=1;i=10502 ns=1;i=10505 ns=1;i=10511 ns=1;i=10517 ns=1;i=10523 ns=1;i=10575 ns=1;i=10584 ns=1;i=10593 ns=1;i=10596 ns=1;i=10599 ns=1;i=10602 ns=1;i=10605 ns=1;i=10608 ns=1;i=10611 ns=1;i=10614 ns=1;i=10617 ns=1;i=10620 ns=1;i=10629 i=58 i=80 ns=1;i=1030 IsEnabled True if this stream maybe used to perform acquisition ns=1;i=10559 i=2365 i=78 ns=1;i=10446 DiagnosticStatus Stream health status i=2365 i=78 ns=1;i=10446 LastSampleTime Time at which the last sample was acquired i=2365 i=78 ns=1;i=10446 IsActive True if this stream is actually running, acquiring data ns=1;i=10565 i=2365 i=78 ns=1;i=10446 ExecutionCycle Indicates which Execution cycle is in progress ns=1;i=10565 i=2365 i=78 ns=1;i=10446 ExecutionCycleSubcode Indicates which Execution cycle subcode is in progress ns=1;i=10501 ns=1;i=10565 i=2376 i=78 ns=1;i=10446 EnumStrings i=68 i=78 ns=1;i=10498 Progress Indicates the progress of an acquisition in terms of percentage of completion. Its value shall be between 0 and 100. ns=1;i=10565 i=2365 i=78 ns=1;i=10446 AcquisitionCounter Simple counter incremented after each Sampling acquisition performed on this Stream ns=1;i=10509 ns=1;i=10567 i=2368 i=78 ns=1;i=10446 EURange i=68 i=78 ns=1;i=10505 AcquisitionResultStatus Quality of the acquisition ns=1;i=10567 i=2365 i=78 ns=1;i=10446 ScaledData Scaled data produced as a result of data acquisition on the Stream and application of the analyser model ns=1;i=10567 i=2365 i=78 ns=1;i=10446 AcquisitionEndTime The end time of the AnalyseSample or AnalyseCalibrationSample or AnalyseValidationSample state of the AnalyserChannel_OperatingModeExecuteSubStateMachine state machine ns=1;i=10567 i=2365 i=78 ns=1;i=10446 ActiveBackground ns=1;i=10579 ns=1;i=10580 ns=1;i=10581 ns=1;i=10582 ns=1;i=10583 ns=1;i=10559 i=12029 i=78 ns=1;i=10446 EURange i=68 i=78 ns=1;i=10575 EngineeringUnits i=68 i=78 ns=1;i=10575 Title i=68 i=78 ns=1;i=10575 AxisScaleType i=68 i=78 ns=1;i=10575 XAxisDefinition i=68 i=78 ns=1;i=10575 ActiveBackground1 ns=1;i=10588 ns=1;i=10589 ns=1;i=10590 ns=1;i=10591 ns=1;i=10592 ns=1;i=10559 i=12029 i=80 ns=1;i=10446 EURange i=68 i=78 ns=1;i=10584 EngineeringUnits i=68 i=78 ns=1;i=10584 Title i=68 i=78 ns=1;i=10584 AxisScaleType i=68 i=78 ns=1;i=10584 XAxisDefinition i=68 i=78 ns=1;i=10584 SpectralRange ns=1;i=10563 i=2365 i=80 ns=1;i=10446 Resolution ns=1;i=10563 i=2365 i=80 ns=1;i=10446 RequestedNumberOfScans ns=1;i=10563 i=2365 i=80 ns=1;i=10446 Gain ns=1;i=10563 i=2365 i=80 ns=1;i=10446 TransmittanceCutoff ns=1;i=10563 i=2365 i=80 ns=1;i=10446 AbsorbanceCutoff ns=1;i=10563 i=2365 i=80 ns=1;i=10446 NumberOfScansDone ns=1;i=10565 i=2365 i=80 ns=1;i=10446 TotalNumberOfScansDone ns=1;i=10567 i=2365 i=78 ns=1;i=10446 BackgroundAcquisitionTime ns=1;i=10567 i=2365 i=78 ns=1;i=10446 PendingBackground ns=1;i=10624 ns=1;i=10625 ns=1;i=10626 ns=1;i=10627 ns=1;i=10628 ns=1;i=10567 i=12029 i=78 ns=1;i=10446 EURange i=68 i=78 ns=1;i=10620 EngineeringUnits i=68 i=78 ns=1;i=10620 Title i=68 i=78 ns=1;i=10620 AxisScaleType i=68 i=78 ns=1;i=10620 XAxisDefinition i=68 i=78 ns=1;i=10620 PendingBackground1 ns=1;i=10633 ns=1;i=10634 ns=1;i=10635 ns=1;i=10636 ns=1;i=10637 ns=1;i=10567 i=12029 i=80 ns=1;i=10446 EURange i=68 i=78 ns=1;i=10629 EngineeringUnits i=68 i=78 ns=1;i=10629 Title i=68 i=78 ns=1;i=10629 AxisScaleType i=68 i=78 ns=1;i=10629 XAxisDefinition i=68 i=78 ns=1;i=10629 Configuration ns=1;i=10575 ns=1;i=10584 ns=2;i=1005 i=78 ns=1;i=1030 AcquisitionSettings ns=1;i=10593 ns=1;i=10596 ns=1;i=10599 ns=1;i=10602 ns=1;i=10605 ns=1;i=10608 ns=2;i=1005 i=78 ns=1;i=1030 AcquisitionStatus ns=1;i=10611 ns=2;i=1005 i=78 ns=1;i=1030 AcquisitionData ns=1;i=10614 ns=1;i=10617 ns=1;i=10620 ns=1;i=10629 ns=2;i=1005 i=78 ns=1;i=1030 FactorySettings i=58 i=78 ns=1;i=1030 MassSpectrometerDeviceStreamType ns=1;i=1010 ParticleSizeMonitorDeviceStreamType ns=1;i=10768 ns=1;i=10889 ns=1;i=1010 ParameterSet Flat list of Parameters ns=1;i=10790 ns=1;i=10796 ns=1;i=10805 ns=1;i=10814 ns=1;i=10817 ns=1;i=10820 ns=1;i=10824 ns=1;i=10827 ns=1;i=10833 ns=1;i=10839 ns=1;i=10845 ns=1;i=10897 ns=1;i=10906 ns=1;i=10915 i=58 i=80 ns=1;i=1032 IsEnabled True if this stream maybe used to perform acquisition i=2365 i=78 ns=1;i=10768 DiagnosticStatus Stream health status i=2365 i=78 ns=1;i=10768 LastSampleTime Time at which the last sample was acquired i=2365 i=78 ns=1;i=10768 IsActive True if this stream is actually running, acquiring data i=2365 i=78 ns=1;i=10768 ExecutionCycle Indicates which Execution cycle is in progress i=2365 i=78 ns=1;i=10768 ExecutionCycleSubcode Indicates which Execution cycle subcode is in progress ns=1;i=10823 i=2376 i=78 ns=1;i=10768 EnumStrings i=68 i=78 ns=1;i=10820 Progress Indicates the progress of an acquisition in terms of percentage of completion. Its value shall be between 0 and 100. i=2365 i=78 ns=1;i=10768 AcquisitionCounter Simple counter incremented after each Sampling acquisition performed on this Stream ns=1;i=10831 ns=1;i=10889 i=2368 i=78 ns=1;i=10768 EURange i=68 i=78 ns=1;i=10827 AcquisitionResultStatus Quality of the acquisition ns=1;i=10889 i=2365 i=78 ns=1;i=10768 ScaledData Scaled data produced as a result of data acquisition on the Stream and application of the analyser model ns=1;i=10889 i=2365 i=78 ns=1;i=10768 AcquisitionEndTime The end time of the AnalyseSample or AnalyseCalibrationSample or AnalyseValidationSample state of the AnalyserChannel_OperatingModeExecuteSubStateMachine state machine ns=1;i=10889 i=2365 i=78 ns=1;i=10768 Background ns=1;i=10901 ns=1;i=10902 ns=1;i=10903 ns=1;i=10904 ns=1;i=10905 ns=1;i=10889 i=12029 i=80 ns=1;i=10768 EURange i=68 i=78 ns=1;i=10897 EngineeringUnits i=68 i=78 ns=1;i=10897 Title i=68 i=78 ns=1;i=10897 AxisScaleType i=68 i=78 ns=1;i=10897 XAxisDefinition i=68 i=78 ns=1;i=10897 SizeDistribution ns=1;i=10910 ns=1;i=10911 ns=1;i=10912 ns=1;i=10913 ns=1;i=10914 ns=1;i=10889 i=12029 i=78 ns=1;i=10768 EURange i=68 i=78 ns=1;i=10906 EngineeringUnits i=68 i=78 ns=1;i=10906 Title i=68 i=78 ns=1;i=10906 AxisScaleType i=68 i=78 ns=1;i=10906 XAxisDefinition i=68 i=78 ns=1;i=10906 BackgroundAcquisitionTime ns=1;i=10889 i=2365 i=78 ns=1;i=10768 AcquisitionData ns=1;i=10897 ns=1;i=10906 ns=1;i=10915 ns=2;i=1005 i=78 ns=1;i=1032 AcousticSpectrometerDeviceStreamType ns=1;i=1010 ChromatographDeviceStreamType ns=1;i=1010 MNRDeviceStreamType ns=1;i=1010 SpectrometerDeviceType ns=1;i=11305 ns=1;i=11411 ns=1;i=1001 ParameterSet Flat list of Parameters ns=1;i=11384 ns=1;i=11551 i=58 i=80 ns=1;i=1011 DiagnosticStatus General health status of the analyser i=2365 i=78 ns=1;i=11305 SpectralRange i=2365 i=80 ns=1;i=11305 FactorySettings ns=2;i=1005 i=78 ns=1;i=1011 ParticleSizeMonitorDeviceType ns=1;i=1001 ChromatographDeviceType ns=1;i=1001 MassSpectrometerDeviceType ns=1;i=1001 AcousticSpectrometerDeviceType ns=1;i=1001 NMRDeviceType ns=1;i=1001 AccessorySlotType Organizes zero or more Accessory objects identified by "AccessoryIdentifier" which represent Accessories currently being used on that AccessorySlot. ns=1;i=12786 ns=1;i=12787 ns=1;i=12788 ns=1;i=12800 ns=2;i=1004 IsHotSwappable True if an accessory can be inserted in the accessory slot while it is powered i=68 i=78 ns=1;i=1017 IsEnabled True if this accessory slot is capable of accepting an accessory in it i=68 i=78 ns=1;i=1017 AccessorySlotStateMachine ns=1;i=12789 ns=1;i=1018 i=78 ns=1;i=1017 CurrentState ns=1;i=12790 i=2760 i=78 ns=1;i=12788 Id i=68 i=78 ns=1;i=12789 <AccessoryIdentifier> Accessory definition ns=1;i=12821 ns=1;i=12823 ns=1;i=12825 ns=1;i=12827 ns=1;i=12828 ns=1;i=1019 i=11508 ns=1;i=1017 Configuration ns=2;i=1005 i=78 ns=1;i=12800 Status ns=2;i=1005 i=78 ns=1;i=12800 FactorySettings ns=2;i=1005 i=78 ns=1;i=12800 IsHotSwappable True if this accessory can be inserted in the accessory slot while it is powered i=68 i=78 ns=1;i=12800 IsReady True if this accessory is ready for use i=68 i=78 ns=1;i=12800 AccessorySlotStateMachineType Describes the behaviour of an AccessorySlot when a physical accessory is inserted or removed. ns=1;i=12840 ns=1;i=12842 ns=1;i=12844 ns=1;i=12846 ns=1;i=12848 ns=1;i=12850 ns=1;i=12852 ns=1;i=12854 ns=1;i=12856 ns=1;i=12858 ns=1;i=12860 ns=1;i=12862 ns=1;i=12864 ns=1;i=12866 ns=1;i=12868 ns=1;i=12870 ns=1;i=12872 ns=1;i=12874 i=2771 Powerup The AccessorySlot is in its power-up sequence and cannot perform any other task. ns=1;i=12841 ns=1;i=12852 i=2309 ns=1;i=1018 StateNumber i=68 i=78 ns=1;i=12840 100 Empty This represents an AccessorySlot where no Accessory is installed. ns=1;i=12843 ns=1;i=12852 ns=1;i=12854 ns=1;i=12866 ns=1;i=12868 i=2307 ns=1;i=1018 StateNumber i=68 i=78 ns=1;i=12842 200 Inserting This represents an AccessorySlot when an Accessory is being inserted and initializing. ns=1;i=12845 ns=1;i=12854 ns=1;i=12856 ns=1;i=12856 ns=1;i=12858 ns=1;i=12860 ns=1;i=12870 i=2307 ns=1;i=1018 StateNumber i=68 i=78 ns=1;i=12844 300 Installed This represents an AccessorySlot where an Accessory is installed and ready to use. ns=1;i=12847 ns=1;i=12860 ns=1;i=12862 ns=1;i=12872 i=2307 ns=1;i=1018 StateNumber i=68 i=78 ns=1;i=12846 400 Removing This represents an AccessorySlot where no Accessory is installed. ns=1;i=12849 ns=1;i=12858 ns=1;i=12862 ns=1;i=12864 ns=1;i=12864 ns=1;i=12866 ns=1;i=12874 i=2307 ns=1;i=1018 StateNumber i=68 i=78 ns=1;i=12848 500 Shutdown The AccessorySlot is in its power-down sequence and cannot perform any other task. ns=1;i=12851 ns=1;i=12868 ns=1;i=12870 ns=1;i=12872 ns=1;i=12874 i=2307 ns=1;i=1018 StateNumber i=68 i=78 ns=1;i=12850 600 PowerupToEmptyTransition ns=1;i=12853 ns=1;i=12840 ns=1;i=12842 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12852 1 EmptyToInsertingTransition ns=1;i=12855 ns=1;i=12842 ns=1;i=12844 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12854 2 InsertingTransition ns=1;i=12857 ns=1;i=12844 ns=1;i=12844 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12856 3 InsertingToRemovingTransition ns=1;i=12859 ns=1;i=12844 ns=1;i=12848 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12858 4 InsertingToInstalledTransition ns=1;i=12861 ns=1;i=12844 ns=1;i=12846 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12860 5 InstalledToRemovingTransition ns=1;i=12863 ns=1;i=12846 ns=1;i=12848 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12862 6 RemovingTransition ns=1;i=12865 ns=1;i=12848 ns=1;i=12848 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12864 7 RemovingToEmptyTransition ns=1;i=12867 ns=1;i=12848 ns=1;i=12842 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12866 8 EmptyToShutdownTransition ns=1;i=12869 ns=1;i=12842 ns=1;i=12850 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12868 9 InsertingToShutdownTransition ns=1;i=12871 ns=1;i=12844 ns=1;i=12850 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12870 10 InstalledToShutdownTransition ns=1;i=12873 ns=1;i=12846 ns=1;i=12850 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12872 11 RemovingToShutdownTransition ns=1;i=12875 ns=1;i=12848 ns=1;i=12850 i=2310 ns=1;i=1018 TransitionNumber i=68 i=78 ns=1;i=12874 12 AccessoryType ns=1;i=12898 ns=1;i=12900 ns=1;i=12902 ns=1;i=12904 ns=1;i=12905 ns=2;i=1001 Configuration ns=2;i=1005 i=78 ns=1;i=1019 Status ns=2;i=1005 i=78 ns=1;i=1019 FactorySettings ns=2;i=1005 i=78 ns=1;i=1019 IsHotSwappable True if this accessory can be inserted in the accessory slot while it is powered i=68 i=78 ns=1;i=1019 IsReady True if this accessory is ready for use i=68 i=78 ns=1;i=1019 DetectorType ns=1;i=1019 SmartSamplingSystemType ns=1;i=1019 SourceType ns=1;i=1019 GcOvenType ns=1;i=1019 ExecutionCycleEnumeration ns=1;i=13026 i=29 Idle, no cleaning or acquisition cycle in progress Scquisition cycle collecting data for diagnostic purpose Cleaning cycle Calibration acquisition cycle Validation acquisition cycle Sample acquisition cycle Scquisition cycle collecting data for diagnostic purpose and sample is extracted from the process to be sent in control lab Cleaning cycle with or without acquisition and sample is extracted from the process to be sent in control lab Calibration acquisition cycle and sample is extracted from the process to be sent in control lab Validation acquisition cycle and sample is extracted from the process to be sent in control lab Sample acquisition cycle and sample is extracted from the process to be sent in control lab EnumValues i=68 i=78 ns=1;i=9378 i=7616 0 IDLE Idle, no cleaning or acquisition cycle in progress i=7616 1 DIAGNOSTIC Scquisition cycle collecting data for diagnostic purpose i=7616 2 CLEANING Cleaning cycle i=7616 4 CALIBRATION Calibration acquisition cycle i=7616 8 VALIDATION Validation acquisition cycle i=7616 16 SAMPLING Sample acquisition cycle i=7616 32769 DIAGNOSTIC_WITH_GRAB_SAMPLE Scquisition cycle collecting data for diagnostic purpose and sample is extracted from the process to be sent in control lab i=7616 32770 CLEANING_WITH_GRAB_SAMPLE Cleaning cycle with or without acquisition and sample is extracted from the process to be sent in control lab i=7616 32772 CALIBRATION_WITH_GRAB_SAMPLE Calibration acquisition cycle and sample is extracted from the process to be sent in control lab i=7616 32776 VALIDATION_WITH_GRAB_SAMPLE Validation acquisition cycle and sample is extracted from the process to be sent in control lab i=7616 32784 SAMPLING_WITH_GRAB_SAMPLE Sample acquisition cycle and sample is extracted from the process to be sent in control lab AcquisitionResultStatusEnumeration ns=1;i=13027 i=29 No longer used. The acquisition has been completed as requested without any error. The acquisition has been completed as requested with error. The acquisition has been completed but nothing can be said about the quality of the result. The acquisition has been partially completed as requested without any error. EnumStrings i=68 i=78 ns=1;i=3003 NOT_USED GOOD BAD UNKNOWN PARTIAL EngineeringValueType Expose key results of an analyser and the associated values that qualified it ns=1;i=13030 i=2365 <Identifier> Point to the data source i=2365 i=11508 ns=1;i=9380 ChemometricModelType Hold the descriptions of a mathematical process and associated information to convert scaled data into one or more process values. ns=1;i=13033 ns=1;i=13034 ns=1;i=13035 ns=1;i=13036 ns=1;i=13037 i=63 Name i=68 i=78 ns=1;i=2007 CreationDate i=68 i=78 ns=1;i=2007 ModelDescription i=68 i=78 ns=1;i=2007 <User defined Input#> Point to model input parameters i=62 i=11510 ns=1;i=2007 <User defined Output#> Point to model output parameters i=62 i=11510 ns=1;i=2007 ProcessVariableType Provides a stable address space view from the user point of view even if the ADI server address space changes, after the new configuration is loaded. ns=1;i=13040 i=2365 <Source> Point to source parameter i=62 i=11510 ns=1;i=2008 HasDataSource TargetNode is providing the value for the SourceNode. i=49 DataSourceOf HasInput TargetNode is providing an input value for a ChemometricModel. i=49 InputOf HasOutput TargetNode is exposing an output value of a ChemometricModel. i=49 OutputOf MVAModelType Hold the descriptions of a mathematical process and associated information to convert scaled data into one or more process values. ns=1;i=13045 ns=1;i=13046 ns=1;i=2007 <User defined Output#> Point to model output parameters ns=1;i=13049 ns=1;i=2010 i=11508 ns=1;i=2009 AlarmState i=68 i=78 ns=1;i=13045 MainDataIndex i=68 i=78 ns=1;i=2009 MVAOutputParameterType Hold the descriptions of a mathematical process and associated information to convert scaled data into one or more process values. ns=1;i=13054 ns=1;i=13055 ns=1;i=13056 ns=1;i=13057 ns=1;i=13058 i=63 WarningLimits i=68 i=80 ns=1;i=2010 AlarmLimits i=68 i=80 ns=1;i=2010 AlarmState i=68 i=78 ns=1;i=2010 VendorSpecificError i=68 i=80 ns=1;i=2010 Statistics ns=1;i=13059 ns=1;i=13060 ns=1;i=13061 ns=1;i=13062 ns=1;i=2010 i=11508 ns=1;i=2010 WarningLimits i=68 i=80 ns=1;i=13058 AlarmLimits i=68 i=80 ns=1;i=13058 AlarmState i=68 i=78 ns=1;i=13058 VendorSpecificError i=68 i=80 ns=1;i=13058 AlarmStateEnumeration ns=1;i=13063 i=29 Normal In low warning range In high warning range In warning range (low or high) or some other warning cause In low alarm range In high alarm range In alarm range (low or high) or some other alarm cause EnumValues i=68 i=78 ns=1;i=3009 i=7616 0 NORMAL_0 Normal i=7616 1 WARNING_LOW_1 In low warning range i=7616 2 WARNING_HIGH_2 In high warning range i=7616 4 WARNING_4 In warning range (low or high) or some other warning cause i=7616 8 ALARM_LOW_8 In low alarm range i=7616 16 ALARM_HIGH_16 In high alarm range i=7616 32 ALARM_32 In alarm range (low or high) or some other alarm cause Opc.Ua.Adi ns=1;i=13069 ns=1;i=8001 i=93 i=72 PG9wYzpUeXBlRGljdGlvbmFyeQ0KICB4bWxuczpEST0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3Jn L1VBL0RJLyINCiAgeG1sbnM6b3BjPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvQmluYXJ5U2No ZW1hLyINCiAgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0 YW5jZSINCiAgeG1sbnM6dWE9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9yZy9VQS8iDQogIHhtbG5z OnRucz0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBL0FESS8iDQogIERlZmF1bHRCeXRlT3Jk ZXI9IkxpdHRsZUVuZGlhbiINCiAgVGFyZ2V0TmFtZXNwYWNlPSJodHRwOi8vb3BjZm91bmRhdGlv bi5vcmcvVUEvQURJLyINCj4NCiAgPG9wYzpJbXBvcnQgTmFtZXNwYWNlPSJodHRwOi8vb3BjZm91 bmRhdGlvbi5vcmcvVUEvREkvIiBMb2NhdGlvbj0iT3BjLlVhLkRpLkJpbmFyeVNjaGVtYS5ic2Qi Lz4NCiAgPG9wYzpJbXBvcnQgTmFtZXNwYWNlPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvVUEv IiBMb2NhdGlvbj0iT3BjLlVhLkJpbmFyeVNjaGVtYS5ic2QiLz4NCg0KICA8b3BjOkVudW1lcmF0 ZWRUeXBlIE5hbWU9IkV4ZWN1dGlvbkN5Y2xlRW51bWVyYXRpb24iIExlbmd0aEluQml0cz0iMzIi Pg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IklETEUiIFZhbHVlPSIwIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRJQUdOT1NUSUMiIFZhbHVlPSIxIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkNMRUFOSU5HIiBWYWx1ZT0iMiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJDQUxJQlJBVElPTiIgVmFsdWU9IjQiIC8+DQogICAg PG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVkFMSURBVElPTiIgVmFsdWU9IjgiIC8+DQogICAg PG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU0FNUExJTkciIFZhbHVlPSIxNiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJESUFHTk9TVElDX1dJVEhfR1JBQl9TQU1QTEUiIFZh bHVlPSIzMjc2OSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJDTEVBTklOR19X SVRIX0dSQUJfU0FNUExFIiBWYWx1ZT0iMzI3NzAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFs dWUgTmFtZT0iQ0FMSUJSQVRJT05fV0lUSF9HUkFCX1NBTVBMRSIgVmFsdWU9IjMyNzcyIiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlZBTElEQVRJT05fV0lUSF9HUkFCX1NBTVBM RSIgVmFsdWU9IjMyNzc2IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlNBTVBM SU5HX1dJVEhfR1JBQl9TQU1QTEUiIFZhbHVlPSIzMjc4NCIgLz4NCiAgPC9vcGM6RW51bWVyYXRl ZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJBY3F1aXNpdGlvblJlc3VsdFN0 YXR1c0VudW1lcmF0aW9uIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJOT1RfVVNFRCIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFs dWUgTmFtZT0iR09PRCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFt ZT0iQkFEIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVTktO T1dOIiBWYWx1ZT0iMyIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJQQVJUSUFM IiBWYWx1ZT0iNCIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJh dGVkVHlwZSBOYW1lPSJBbGFybVN0YXRlRW51bWVyYXRpb24iIExlbmd0aEluQml0cz0iMzIiPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5PUk1BTF8wIiBWYWx1ZT0iMCIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJXQVJOSU5HX0xPV18xIiBWYWx1ZT0iMSIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJXQVJOSU5HX0hJR0hfMiIgVmFsdWU9IjIi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iV0FSTklOR180IiBWYWx1ZT0iNCIg Lz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBTEFSTV9MT1dfOCIgVmFsdWU9Ijgi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQUxBUk1fSElHSF8xNiIgVmFsdWU9 IjE2IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkFMQVJNXzMyIiBWYWx1ZT0i MzIiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQo8L29wYzpUeXBlRGljdGlvbmFyeT4= NamespaceUri A URI that uniquely identifies the dictionary. i=68 ns=1;i=13067 http://opcfoundation.org/UA/ADI/ Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 ns=1;i=13067 true Opc.Ua.Adi ns=1;i=13066 ns=1;i=8003 i=92 i=72 PHhzOnNjaGVtYQ0KICB4bWxuczpEST0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBL0RJL1R5 cGVzLnhzZCINCiAgeG1sbnM6eHM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hIg0K ICB4bWxuczp1YT0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBLzIwMDgvMDIvVHlwZXMueHNk Ig0KICB4bWxuczp0bnM9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9yZy9VQS9BREkvVHlwZXMueHNk Ig0KICB0YXJnZXROYW1lc3BhY2U9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9yZy9VQS9BREkvVHlw ZXMueHNkIg0KICBlbGVtZW50Rm9ybURlZmF1bHQ9InF1YWxpZmllZCINCj4NCiAgPHhzOmltcG9y dCBuYW1lc3BhY2U9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9yZy9VQS9ESS9UeXBlcy54c2QiIC8+ DQogIDx4czppbXBvcnQgbmFtZXNwYWNlPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvVUEvMjAw OC8wMi9UeXBlcy54c2QiIC8+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkV4ZWN1dGlvbkN5 Y2xlRW51bWVyYXRpb24iPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJJRExFXzAiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9IkRJQUdOT1NUSUNfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iQ0xFQU5JTkdfMiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQ0FMSUJSQVRJ T05fNCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVkFMSURBVElPTl84IiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJTQU1QTElOR18xNiIgLz4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iRElBR05PU1RJQ19XSVRIX0dSQUJfU0FNUExFXzMyNzY5IiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJDTEVBTklOR19XSVRIX0dSQUJfU0FNUExFXzMy NzcwIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJDQUxJQlJBVElPTl9XSVRIX0dS QUJfU0FNUExFXzMyNzcyIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJWQUxJREFU SU9OX1dJVEhfR1JBQl9TQU1QTEVfMzI3NzYiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFs dWU9IlNBTVBMSU5HX1dJVEhfR1JBQl9TQU1QTEVfMzI3ODQiIC8+DQogICAgPC94czpyZXN0cmlj dGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJFeGVjdXRpb25D eWNsZUVudW1lcmF0aW9uIiB0eXBlPSJ0bnM6RXhlY3V0aW9uQ3ljbGVFbnVtZXJhdGlvbiIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRXhlY3V0aW9uQ3ljbGVFbnVtZXJhdGlv biI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXhlY3V0aW9u Q3ljbGVFbnVtZXJhdGlvbiIgdHlwZT0idG5zOkV4ZWN1dGlvbkN5Y2xlRW51bWVyYXRpb24iIG1p bk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRXhlY3V0aW9u Q3ljbGVFbnVtZXJhdGlvbiIgdHlwZT0idG5zOkxpc3RPZkV4ZWN1dGlvbkN5Y2xlRW51bWVyYXRp b24iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5h bWU9IkFjcXVpc2l0aW9uUmVzdWx0U3RhdHVzRW51bWVyYXRpb24iPg0KICAgIDx4czpyZXN0cmlj dGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJOT1Rf VVNFRF8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJHT09EXzEiIC8+DQogICAg ICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkJBRF8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJVTktOT1dOXzMiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlBBUlRJ QUxfNCIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IkFjcXVpc2l0aW9uUmVzdWx0U3RhdHVzRW51bWVyYXRpb24iIHR5cGU9 InRuczpBY3F1aXNpdGlvblJlc3VsdFN0YXR1c0VudW1lcmF0aW9uIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZBY3F1aXNpdGlvblJlc3VsdFN0YXR1c0VudW1lcmF0aW9uIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBY3F1aXNpdGlvblJl c3VsdFN0YXR1c0VudW1lcmF0aW9uIiB0eXBlPSJ0bnM6QWNxdWlzaXRpb25SZXN1bHRTdGF0dXNF bnVtZXJhdGlvbiIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJM aXN0T2ZBY3F1aXNpdGlvblJlc3VsdFN0YXR1c0VudW1lcmF0aW9uIiB0eXBlPSJ0bnM6TGlzdE9m QWNxdWlzaXRpb25SZXN1bHRTdGF0dXNFbnVtZXJhdGlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iQWxhcm1TdGF0ZUVudW1lcmF0aW9u Ij4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVt ZXJhdGlvbiB2YWx1ZT0iTk9STUFMXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9 IldBUk5JTkdfTE9XXzEiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IldBUk5JTkdf SElHSF8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJXQVJOSU5HXzQiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFMQVJNX0xPV184IiAvPg0KICAgICAgPHhzOmVu dW1lcmF0aW9uIHZhbHVlPSJBTEFSTV9ISUdIXzE2IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJBTEFSTV8zMiIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBs ZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFsYXJtU3RhdGVFbnVtZXJhdGlvbiIgdHlwZT0i dG5zOkFsYXJtU3RhdGVFbnVtZXJhdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TGlzdE9mQWxhcm1TdGF0ZUVudW1lcmF0aW9uIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJBbGFybVN0YXRlRW51bWVyYXRpb24iIHR5cGU9InRuczpBbGFybVN0 YXRlRW51bWVyYXRpb24iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mQWxhcm1TdGF0ZUVudW1lcmF0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mQWxhcm1TdGF0 ZUVudW1lcmF0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQo8L3hzOnNjaGVt YT4= NamespaceUri A URI that uniquely identifies the dictionary. i=68 ns=1;i=13064 http://opcfoundation.org/UA/ADI/Types.xsd Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 ns=1;i=13064 true python-opcua-0.98.9/schemas/Opc.Ua.Adi.Types.bsd000066400000000000000000000067761357637245100213050ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/Opc.Ua.Adi.Types.xsd000066400000000000000000000112211357637245100213100ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/Opc.Ua.Di.NodeSet2.xml000066400000000000000000000474421357637245100215060ustar00rootroot00000000000000 http://opcfoundation.org/UA/DI/ i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 Uses The semantic is to indicate that the target Node is used for the source Node of the Reference i=35 UsedBy DeviceSet Contains all instances of devices i=85 i=58 TopologyElementType Defines the basic information components for all configurable elements in a device topology ns=1;i=5002 ns=1;i=5003 ns=1;i=6019 ns=1;i=6014 i=58 ParameterSet Flat list of Parameters ns=1;i=6017 i=58 i=78 ns=1;i=1001 <ParameterIdentifier> A parameter which belongs to the topology element. i=63 i=11508 ns=1;i=5002 MethodSet Flat list of Methods ns=1;i=6018 i=58 i=80 ns=1;i=1001 <MethodIdentifier> A method which belongs to the topology element. ns=1;i=6018 i=11508 ns=1;i=5003 <GroupIdentifier> An application specific functional group used to organize parameters and methods. ns=1;i=1005 i=11508 ns=1;i=1001 Identification Used to organize parameters for identification of this TopologyElement ns=1;i=1005 i=80 ns=1;i=1001 DeviceType Defines the basic information components for all configurable elements in a device topology ns=1;i=6001 ns=1;i=6002 ns=1;i=6003 ns=1;i=6004 ns=1;i=6005 ns=1;i=6006 ns=1;i=6007 ns=1;i=6008 ns=1;i=1001 SerialNumber Identifier that uniquely identifies, within a manufacturer, a device instance i=68 i=78 ns=1;i=1002 RevisionCounter An incremental counter indicating the number of times the static data within the Device has been modified i=68 i=78 ns=1;i=1002 Manufacturer Model name of the device i=68 i=78 ns=1;i=1002 Model Name of the company that manufactured the device i=68 i=78 ns=1;i=1002 DeviceManual Address (pathname in the file system or a URL | Web address) of user manual for the device i=68 i=78 ns=1;i=1002 DeviceRevision Overall revision level of the device i=68 i=78 ns=1;i=1002 SoftwareRevision Revision level of the software/firmware of the device i=68 i=78 ns=1;i=1002 HardwareRevision Revision level of the hardware of the device i=68 i=78 ns=1;i=1002 BlockType Adds the concept of Blocks needed for block-oriented FieldDevices ns=1;i=6009 ns=1;i=6010 ns=1;i=6011 ns=1;i=6012 ns=1;i=6013 ns=1;i=1001 RevisionCounter Incremental counter indicating the number of times the static data within the Block has been modified i=68 i=80 ns=1;i=1003 ActualMode Current mode of operation the Block is able to achieve i=68 i=80 ns=1;i=1003 PermittedMode Modes of operation that are allowed for the Block based on application requirements i=68 i=80 ns=1;i=1003 NormalMode Mode the Block should be set to during normal operating conditions i=68 i=80 ns=1;i=1003 TargetMode Mode of operation that is desired for the Block i=68 i=80 ns=1;i=1003 ConfigurableObjectType Defines a general pattern to expose and configure modular components ns=1;i=5004 ns=1;i=6026 i=58 SupportedTypes Folder maintaining the set of (sub-types of) BaseObjectTypes that can be instantiated in the ConfigurableComponent i=61 i=78 ns=1;i=1004 <ObjectIdentifier> The instances that . i=58 i=11508 ns=1;i=1004 FunctionalGroupType FolderType is used to organize the Parameters and Methods from the complete set (ParameterSet, MethodSet) with regard to their application ns=1;i=6027 ns=1;i=6028 ns=1;i=6029 i=61 <GroupIdentifier> An application specific functional group used to organize parameters and methods. ns=1;i=1005 i=11508 ns=1;i=1005 <ParameterIdentifier> A parameter which belongs to the group. i=63 i=11508 ns=1;i=1005 <MethodIdentifier> A method which belongs to the group. ns=1;i=6029 i=11508 ns=1;i=1005 ProtocolType General structure of a Protocol ObjectType i=58 python-opcua-0.98.9/schemas/Opc.Ua.Di.Types.bsd000066400000000000000000000033731357637245100211320ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/Opc.Ua.Di.Types.xsd000066400000000000000000000032531357637245100211550ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/Opc.Ua.Endpoints.wsdl000066400000000000000000000570661357637245100216470ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part10.xml000066400000000000000000001517671357637245100222270ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 ProgramStateMachineType A state machine for a program. i=3830 i=3835 i=2392 i=2393 i=2394 i=2395 i=2396 i=2397 i=2398 i=2399 i=3850 i=2406 i=2400 i=2402 i=2404 i=2408 i=2410 i=2412 i=2414 i=2416 i=2418 i=2420 i=2422 i=2424 i=2426 i=2427 i=2428 i=2429 i=2430 i=2771 CurrentState i=3831 i=3833 i=2760 i=78 i=2391 Id i=68 i=78 i=3830 Number i=68 i=78 i=3830 LastTransition i=3836 i=3838 i=3839 i=2767 i=78 i=2391 Id i=68 i=78 i=3835 Number i=68 i=78 i=3835 TransitionTime i=68 i=78 i=3835 Creatable i=68 i=2391 Deletable i=68 i=78 i=2391 AutoDelete i=68 i=78 i=2391 RecycleCount i=68 i=78 i=2391 InstanceCount i=68 i=2391 MaxInstanceCount i=68 i=2391 MaxRecycleCount i=68 i=2391 ProgramDiagnostics i=3840 i=3841 i=3842 i=3843 i=3844 i=3845 i=3846 i=3847 i=15038 i=15040 i=3848 i=3849 i=15383 i=80 i=2391 CreateSessionId i=68 i=78 i=2399 CreateClientName i=68 i=78 i=2399 InvocationCreationTime i=68 i=78 i=2399 LastTransitionTime i=68 i=78 i=2399 LastMethodCall i=68 i=78 i=2399 LastMethodSessionId i=68 i=78 i=2399 LastMethodInputArguments i=68 i=78 i=2399 LastMethodOutputArguments i=68 i=78 i=2399 LastMethodInputValues i=68 i=78 i=2399 LastMethodOutputValues i=68 i=78 i=2399 LastMethodCallTime i=68 i=78 i=2399 LastMethodReturnStatus i=68 i=78 i=2399 FinalResultData i=58 i=80 i=2391 Halted The Program is in a terminal or failed state, and it cannot be started or resumed without being reset. i=2407 i=2408 i=2412 i=2420 i=2424 i=2307 i=2391 StateNumber i=68 i=78 i=2406 11 Ready The Program is properly initialized and may be started. i=2401 i=2408 i=2410 i=2414 i=2422 i=2424 i=2307 i=2391 StateNumber i=68 i=78 i=2400 12 Running The Program is executing making progress towards completion. i=2403 i=2410 i=2412 i=2414 i=2416 i=2418 i=2307 i=2391 StateNumber i=68 i=78 i=2402 13 Suspended The Program has been stopped prior to reaching a terminal state but may be resumed. i=2405 i=2416 i=2418 i=2420 i=2422 i=2307 i=2391 StateNumber i=68 i=78 i=2404 14 HaltedToReady i=2409 i=2406 i=2400 i=2430 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2408 1 ReadyToRunning i=2411 i=2400 i=2402 i=2426 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2410 2 RunningToHalted i=2413 i=2402 i=2406 i=2429 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2412 3 RunningToReady i=2415 i=2402 i=2400 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2414 4 RunningToSuspended i=2417 i=2402 i=2404 i=2427 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2416 5 SuspendedToRunning i=2419 i=2404 i=2402 i=2428 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2418 6 SuspendedToHalted i=2421 i=2404 i=2406 i=2429 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2420 7 SuspendedToReady i=2423 i=2404 i=2400 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2422 8 ReadyToHalted i=2425 i=2400 i=2406 i=2429 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2424 9 Start Causes the Program to transition from the Ready state to the Running state. i=2410 i=11508 i=2391 Suspend Causes the Program to transition from the Running state to the Suspended state. i=2416 i=11508 i=2391 Resume Causes the Program to transition from the Suspended state to the Running state. i=2418 i=11508 i=2391 Halt Causes the Program to transition from the Ready, Running or Suspended state to the Halted state. i=2412 i=2420 i=2424 i=11508 i=2391 Reset Causes the Program to transition from the Halted state to the Ready state. i=2408 i=11508 i=2391 ProgramTransitionEventType i=2379 i=2311 IntermediateResult i=68 i=78 i=2378 AuditProgramTransitionEventType i=11875 i=2315 TransitionNumber i=68 i=78 i=11856 ProgramTransitionAuditEventType i=3825 i=2315 Transition i=3826 i=2767 i=78 i=3806 Id i=68 i=78 i=3825 ProgramDiagnosticType i=2381 i=2382 i=2383 i=2384 i=2385 i=2386 i=2387 i=2388 i=2389 i=2390 i=63 CreateSessionId i=68 i=78 i=2380 CreateClientName i=68 i=78 i=2380 InvocationCreationTime i=68 i=78 i=2380 LastTransitionTime i=68 i=78 i=2380 LastMethodCall i=68 i=78 i=2380 LastMethodSessionId i=68 i=78 i=2380 LastMethodInputArguments i=68 i=78 i=2380 LastMethodOutputArguments i=68 i=78 i=2380 LastMethodCallTime i=68 i=78 i=2380 LastMethodReturnStatus i=68 i=78 i=2380 ProgramDiagnostic2Type i=15384 i=15385 i=15386 i=15387 i=15388 i=15389 i=15390 i=15391 i=15392 i=15393 i=15394 i=15395 i=63 CreateSessionId i=68 i=78 i=15383 CreateClientName i=68 i=78 i=15383 InvocationCreationTime i=68 i=78 i=15383 LastTransitionTime i=68 i=78 i=15383 LastMethodCall i=68 i=78 i=15383 LastMethodSessionId i=68 i=78 i=15383 LastMethodInputArguments i=68 i=78 i=15383 LastMethodOutputArguments i=68 i=78 i=15383 LastMethodInputValues i=68 i=78 i=15383 LastMethodOutputValues i=68 i=78 i=15383 LastMethodCallTime i=68 i=78 i=15383 LastMethodReturnStatus i=68 i=78 i=15383 ProgramDiagnosticDataType i=22 ProgramDiagnostic2DataType i=22 Default Binary i=894 i=8247 i=76 Default Binary i=15396 i=15398 i=76 Default XML i=894 i=8882 i=76 Default XML i=15396 i=15402 i=76 Default JSON i=894 i=76 Default JSON i=15396 i=76 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part11.xml000066400000000000000000001220001357637245100222020ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 HasHistoricalConfiguration The type for a reference to the historical configuration for a data variable. i=44 HistoricalConfigurationOf HistoryServerCapabilities i=11193 i=11242 i=11273 i=11274 i=11196 i=11197 i=11198 i=11199 i=11200 i=11281 i=11282 i=11283 i=11502 i=11275 i=11201 i=2268 i=2330 AccessHistoryDataCapability i=68 i=11192 AccessHistoryEventsCapability i=68 i=11192 MaxReturnDataValues i=68 i=11192 MaxReturnEventValues i=68 i=11192 InsertDataCapability i=68 i=11192 ReplaceDataCapability i=68 i=11192 UpdateDataCapability i=68 i=11192 DeleteRawCapability i=68 i=11192 DeleteAtTimeCapability i=68 i=11192 InsertEventCapability i=68 i=11192 ReplaceEventCapability i=68 i=11192 UpdateEventCapability i=68 i=11192 DeleteEventCapability i=68 i=11192 InsertAnnotationCapability i=68 i=11192 AggregateFunctions i=61 i=11192 Annotations i=68 HistoricalDataConfigurationType i=3059 i=11876 i=2323 i=2324 i=2325 i=2326 i=2327 i=2328 i=11499 i=11500 i=58 AggregateConfiguration i=11168 i=11169 i=11170 i=11171 i=11187 i=78 i=2318 TreatUncertainAsBad i=68 i=78 i=3059 PercentDataBad i=68 i=78 i=3059 PercentDataGood i=68 i=78 i=3059 UseSlopedExtrapolation i=68 i=78 i=3059 AggregateFunctions i=61 i=80 i=2318 Stepped i=68 i=78 i=2318 Definition i=68 i=80 i=2318 MaxTimeInterval i=68 i=80 i=2318 MinTimeInterval i=68 i=80 i=2318 ExceptionDeviation i=68 i=80 i=2318 ExceptionDeviationFormat i=68 i=80 i=2318 StartOfArchive i=68 i=80 i=2318 StartOfOnlineArchive i=68 i=80 i=2318 HA Configuration i=11203 i=11208 i=2318 AggregateConfiguration i=11204 i=11205 i=11206 i=11207 i=11187 i=11202 TreatUncertainAsBad i=68 i=11203 PercentDataBad i=68 i=11203 PercentDataGood i=68 i=11203 UseSlopedExtrapolation i=68 i=11203 Stepped i=68 i=11202 HistoricalEventFilter i=68 HistoryServerCapabilitiesType i=2331 i=2332 i=11268 i=11269 i=2334 i=2335 i=2336 i=2337 i=2338 i=11278 i=11279 i=11280 i=11501 i=11270 i=11172 i=58 AccessHistoryDataCapability i=68 i=78 i=2330 AccessHistoryEventsCapability i=68 i=78 i=2330 MaxReturnDataValues i=68 i=78 i=2330 MaxReturnEventValues i=68 i=78 i=2330 InsertDataCapability i=68 i=78 i=2330 ReplaceDataCapability i=68 i=78 i=2330 UpdateDataCapability i=68 i=78 i=2330 DeleteRawCapability i=68 i=78 i=2330 DeleteAtTimeCapability i=68 i=78 i=2330 InsertEventCapability i=68 i=78 i=2330 ReplaceEventCapability i=68 i=78 i=2330 UpdateEventCapability i=68 i=78 i=2330 DeleteEventCapability i=68 i=78 i=2330 InsertAnnotationCapability i=68 i=78 i=2330 AggregateFunctions i=61 i=78 i=2330 AuditHistoryEventUpdateEventType i=3025 i=3028 i=3003 i=3029 i=3030 i=2104 UpdatedNode i=68 i=78 i=2999 PerformInsertReplace i=68 i=78 i=2999 Filter i=68 i=78 i=2999 NewValues i=68 i=78 i=2999 OldValues i=68 i=78 i=2999 AuditHistoryValueUpdateEventType i=3026 i=3031 i=3032 i=3033 i=2104 UpdatedNode i=68 i=78 i=3006 PerformInsertReplace i=68 i=78 i=3006 NewValues i=68 i=78 i=3006 OldValues i=68 i=78 i=3006 AuditHistoryDeleteEventType i=3027 i=2104 UpdatedNode i=68 i=78 i=3012 AuditHistoryRawModifyDeleteEventType i=3015 i=3016 i=3017 i=3034 i=3012 IsDeleteModified i=68 i=78 i=3014 StartTime i=68 i=78 i=3014 EndTime i=68 i=78 i=3014 OldValues i=68 i=78 i=3014 AuditHistoryAtTimeDeleteEventType i=3020 i=3021 i=3012 ReqTimes i=68 i=78 i=3019 OldValues i=68 i=78 i=3019 AuditHistoryEventDeleteEventType i=3023 i=3024 i=3012 EventIds i=68 i=78 i=3022 OldValues i=68 i=78 i=3022 Annotation i=22 ExceptionDeviationFormat i=7614 i=29 EnumStrings i=68 i=78 i=890 AbsoluteValue PercentOfValue PercentOfRange PercentOfEURange Unknown Default Binary i=891 i=8244 i=76 Default XML i=891 i=8879 i=76 Default JSON i=891 i=76 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part13.xml000066400000000000000000000461011357637245100222130ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 AggregateConfigurationType i=11188 i=11189 i=11190 i=11191 i=58 TreatUncertainAsBad i=68 i=78 i=11187 PercentDataBad i=68 i=78 i=11187 PercentDataGood i=68 i=78 i=11187 UseSlopedExtrapolation i=68 i=78 i=11187 Interpolative At the beginning of each interval, retrieve the calculated value from the data points on either side of the requested timestamp. i=2340 Average Retrieve the average value of the data over the interval. i=2340 TimeAverage Retrieve the time weighted average data over the interval using Interpolated Bounding Values. i=2340 TimeAverage2 Retrieve the time weighted average data over the interval using Simple Bounding Values. i=2340 Total Retrieve the total (time integral) of the data over the interval using Interpolated Bounding Values. i=2340 Total2 Retrieve the total (time integral) of the data over the interval using Simple Bounding Values. i=2340 Minimum Retrieve the minimum raw value in the interval with the timestamp of the start of the interval. i=2340 Maximum Retrieve the maximum raw value in the interval with the timestamp of the start of the interval. i=2340 MinimumActualTime Retrieve the minimum value in the interval and the Timestamp of the minimum value. i=2340 MaximumActualTime Retrieve the maximum value in the interval and the Timestamp of the maximum value. i=2340 Range Retrieve the difference between the minimum and maximum Value over the interval. i=2340 Minimum2 Retrieve the minimum value in the interval including the Simple Bounding Values. i=2340 Maximum2 Retrieve the maximum value in the interval including the Simple Bounding Values. i=2340 MinimumActualTime2 Retrieve the minimum value with the actual timestamp including the Simple Bounding Values. i=2340 MaximumActualTime2 Retrieve the maximum value with the actual timestamp including the Simple Bounding Values. i=2340 Range2 Retrieve the difference between the Minimum2 and Maximum2 value over the interval. i=2340 AnnotationCount Retrieve the number of Annotations in the interval. i=2340 Count Retrieve the number of raw values over the interval. i=2340 DurationInStateZero Retrieve the time a Boolean or numeric was in a zero state using Simple Bounding Values. i=2340 DurationInStateNonZero Retrieve the time a Boolean or numeric was in a non-zero state using Simple Bounding Values. i=2340 NumberOfTransitions Retrieve the number of changes between zero and non-zero that a Boolean or Numeric value experienced in the interval. i=2340 Start Retrieve the value at the beginning of the interval using Interpolated Bounding Values. i=2340 End Retrieve the value at the end of the interval using Interpolated Bounding Values. i=2340 Delta Retrieve the difference between the Start and End value in the interval. i=2340 StartBound Retrieve the value at the beginning of the interval using Simple Bounding Values. i=2340 EndBound Retrieve the value at the end of the interval using Simple Bounding Values. i=2340 DeltaBounds Retrieve the difference between the StartBound and EndBound value in the interval. i=2340 DurationGood Retrieve the total duration of time in the interval during which the data is good. i=2340 DurationBad Retrieve the total duration of time in the interval during which the data is bad. i=2340 PercentGood Retrieve the percent of data (0 to 100) in the interval which has a good StatusCode. i=2340 PercentBad Retrieve the percent of data (0 to 100) in the interval which has a bad StatusCode. i=2340 WorstQuality Retrieve the worst StatusCode of data in the interval. i=2340 WorstQuality2 Retrieve the worst StatusCode of data in the interval including the Simple Bounding Values. i=2340 StandardDeviationSample Retrieve the standard deviation for the interval for a sample of the population (n-1). i=2340 StandardDeviationPopulation Retrieve the standard deviation for the interval for a complete population (n) which includes Simple Bounding Values. i=2340 VarianceSample Retrieve the variance for the interval as calculated by the StandardDeviationSample. i=2340 VariancePopulation Retrieve the variance for the interval as calculated by the StandardDeviationPopulation which includes Simple Bounding Values. i=2340 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part3.xml000066400000000000000000002214031357637245100221320ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 Default Binary The default binary encoding for a data type. i=58 Default XML The default XML encoding for a data type. i=58 BaseDataType Describes a value that can have any valid DataType. Number Describes a value that can have any numeric DataType. i=24 Integer Describes a value that can have any integer DataType. i=26 UInteger Describes a value that can have any unsigned integer DataType. i=26 Enumeration Describes a value that is an enumerated DataType. i=24 Boolean Describes a value that is either TRUE or FALSE. i=24 SByte Describes a value that is an integer between -128 and 127. i=27 Byte Describes a value that is an integer between 0 and 255. i=28 Int16 Describes a value that is an integer between −32,768 and 32,767. i=27 UInt16 Describes a value that is an integer between 0 and 65535. i=28 Int32 Describes a value that is an integer between −2,147,483,648 and 2,147,483,647. i=27 UInt32 Describes a value that is an integer between 0 and 4,294,967,295. i=28 Int64 Describes a value that is an integer between −9,223,372,036,854,775,808 and 9,223,372,036,854,775,807. i=27 UInt64 Describes a value that is an integer between 0 and 18,446,744,073,709,551,615. i=28 Float Describes a value that is an IEEE 754-1985 single precision floating point number. i=26 Double Describes a value that is an IEEE 754-1985 double precision floating point number. i=26 String Describes a value that is a sequence of printable Unicode characters. i=24 DateTime Describes a value that is a Gregorian calender date and time. i=24 Guid Describes a value that is a 128-bit globally unique identifier. i=24 ByteString Describes a value that is a sequence of bytes. i=24 XmlElement Describes a value that is an XML element. i=24 NodeId Describes a value that is an identifier for a node within a Server address space. i=24 QualifiedName Describes a value that is a name qualified by a namespace. i=24 LocalizedText Describes a value that is human readable Unicode text with a locale identifier. i=24 Structure Describes a value that is any type of structure that can be described with a data encoding. i=24 Image Describes a value that is an image encoded as a string of bytes. i=15 Decimal Describes an arbitrary precision decimal value. i=26 References The abstract base type for all references. NonHierarchicalReferences The abstract base type for all non-hierarchical references. i=31 NonHierarchicalReferences HierarchicalReferences The abstract base type for all hierarchical references. i=31 HierarchicalReferences HasChild The abstract base type for all non-looping hierarchical references. i=33 ChildOf Organizes The type for hierarchical references that are used to organize nodes. i=33 OrganizedBy HasEventSource The type for non-looping hierarchical references that are used to organize event sources. i=33 EventSourceOf HasModellingRule The type for references from instance declarations to modelling rule nodes. i=32 ModellingRuleOf HasEncoding The type for references from data type nodes to to data type encoding nodes. i=32 EncodingOf HasDescription The type for references from data type encoding nodes to data type description nodes. i=32 DescriptionOf HasTypeDefinition The type for references from a instance node its type defintion node. i=32 TypeDefinitionOf GeneratesEvent The type for references from a node to an event type that is raised by node. i=32 GeneratedBy AlwaysGeneratesEvent The type for references from a node to an event type that is always raised by node. i=41 AlwaysGeneratedBy Aggregates The type for non-looping hierarchical references that are used to aggregate nodes into complex types. i=34 AggregatedBy HasSubtype The type for non-looping hierarchical references that are used to define sub types. i=34 SubtypeOf HasProperty The type for non-looping hierarchical reference from a node to its property. i=44 PropertyOf HasComponent The type for non-looping hierarchical reference from a node to its component. i=44 ComponentOf HasNotifier The type for non-looping hierarchical references that are used to indicate how events propagate from node to node. i=36 NotifierOf HasOrderedComponent The type for non-looping hierarchical reference from a node to its component when the order of references matters. i=47 OrderedComponentOf NamingRuleType Describes a value that specifies the significance of the BrowseName for an instance declaration. i=12169 i=29 The BrowseName must appear in all instances of the type. The BrowseName may appear in an instance of the type. The modelling rule defines a constraint and the BrowseName is not used in an instance of the type. EnumValues i=68 i=78 i=120 i=7616 1 Mandatory The BrowseName must appear in all instances of the type. i=7616 2 Optional The BrowseName may appear in an instance of the type. i=7616 3 Constraint The modelling rule defines a constraint and the BrowseName is not used in an instance of the type. NodeVersion The version number of the node (used to indicate changes to references of the owning node). i=68 ViewVersion The version number of the view. i=68 Icon A small image representing the object. i=68 LocalTime The local time where the owning variable value was collected. i=68 AllowNulls Whether the value of the owning variable is allowed to be null. i=68 ValueAsText The string representation of the current value for a variable with an enumerated data type. i=68 MaxStringLength The maximum number of bytes supported by the DataVariable. i=68 MaxCharacters The maximum number of Unicode characters supported by the DataVariable. i=68 MaxByteStringLength The maximum length for a byte string that can be stored in the owning variable. i=68 MaxArrayLength The maximum length for an array that can be stored in the owning variable. i=68 EngineeringUnits The engineering units for the value of the owning variable. i=68 EnumStrings The human readable strings associated with the values of an enumerated value (when values are sequential). i=68 EnumValues The human readable strings associated with the values of an enumerated value (when values have no sequence). i=68 OptionSetValues Contains the human-readable representation for each bit of the bit mask. i=68 InputArguments The input arguments for a method. i=68 OutputArguments The output arguments for a method. i=68 DefaultInputValues Specifies the default values for optional input arguments. i=68 ImageBMP An image encoded in BMP format. i=30 ImageGIF An image encoded in GIF format. i=30 ImageJPG An image encoded in JPEG format. i=30 ImagePNG An image encoded in PNG format. i=30 AudioDataType An image encoded in PNG format. i=15 IdType The type of identifier used in a node id. i=7591 i=29 The identifier is a numeric value. 0 is a null value. The identifier is a string value. An empty string is a null value. The identifier is a 16 byte structure. 16 zero bytes is a null value. The identifier is an array of bytes. A zero length array is a null value. EnumStrings i=68 i=78 i=256 Numeric String Guid Opaque NodeClass A mask specifying the class of the node. i=11878 i=29 No classes are selected. The node is an object. The node is a variable. The node is a method. The node is an object type. The node is an variable type. The node is a reference type. The node is a data type. The node is a view. EnumValues i=68 i=78 i=257 i=7616 0 Unspecified No classes are selected. i=7616 1 Object The node is an object. i=7616 2 Variable The node is a variable. i=7616 4 Method The node is a method. i=7616 8 ObjectType The node is an object type. i=7616 16 VariableType The node is an variable type. i=7616 32 ReferenceType The node is a reference type. i=7616 64 DataType The node is a data type. i=7616 128 View The node is a view. PermissionType i=15030 i=5 OptionSetValues i=68 i=78 i=94 Browse ReadRolePermissions WriteAttribute WriteRolePermissions WriteHistorizing Read Write ReadHistory InsertHistory ModifyHistory DeleteHistory ReceiveEvents Call AddReference RemoveReference DeleteNode AddNode AccessLevelType i=15032 i=3 OptionSetValues i=68 i=78 i=15031 CurrentRead CurrentWrite HistoryRead Reserved HistoryWrite StatusWrite TimestampWrite AccessLevelExType i=15407 i=7 OptionSetValues i=68 i=78 i=15406 CurrentRead CurrentWrite HistoryRead Reserved HistoryWrite StatusWrite TimestampWrite Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved NonatomicRead NonatomicWrite WriteFullArrayOnly EventNotifierType i=15034 i=7 OptionSetValues i=68 i=78 i=15033 SubscribeToEvents Reserved HistoryRead HistoryWrite AccessRestrictionType i=15035 i=7 OptionSetValues i=68 i=78 i=95 SigningRequired EncryptionRequired SessionRequired RolePermissionType i=22 DataTypeDefinition i=22 StructureType i=14528 i=29 EnumStrings i=68 i=78 i=98 Structure StructureWithOptionalFields Union StructureField i=22 StructureDefinition i=97 EnumDefinition i=97 Argument An argument for a method. i=22 The name of the argument. The data type of the argument. Whether the argument is an array type and the rank of the array if it is. The number of dimensions if the argument is an array type and one or more dimensions have a fixed length. The description for the argument. EnumValueType A mapping between a value of an enumerated type and a name and description. i=22 The value of the enumeration. Human readable name for the value. A description of the value. EnumField i=7594 OptionSet This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask. i=22 Array of bytes representing the bits in the option set. Array of bytes with same size as value representing the valid bits in the value parameter. Union This abstract DataType is the base DataType for all union DataTypes. i=22 NormalizedString A string normalized based on the rules in the unicode specification. i=12 DecimalString An arbitraty numeric value. i=12 DurationString A period of time formatted as defined in ISO 8601-2000. i=12 TimeString A time formatted as defined in ISO 8601-2000. i=12 DateString A date formatted as defined in ISO 8601-2000. i=12 Duration A period of time measured in milliseconds. i=11 UtcTime A date/time value specified in Universal Coordinated Time (UTC). i=13 LocaleId An identifier for a user locale. i=12 TimeZoneDataType i=22 Default Binary i=96 i=16131 i=76 Default Binary i=97 i=18178 i=76 Default Binary i=101 i=18181 i=76 Default Binary i=99 i=18184 i=76 Default Binary i=100 i=18187 i=76 Default Binary i=296 i=7650 i=76 Default Binary i=7594 i=7656 i=76 Default Binary i=102 i=14870 i=76 Default Binary i=12755 i=12767 i=76 Default Binary i=12756 i=12770 i=76 Default Binary i=8912 i=8914 i=76 Default XML i=96 i=16127 i=76 Default XML i=97 i=18166 i=76 Default XML i=101 i=18169 i=76 Default XML i=99 i=18172 i=76 Default XML i=100 i=18175 i=76 Default XML i=296 i=8285 i=76 Default XML i=7594 i=8291 i=76 Default XML i=102 i=14826 i=76 Default XML i=12755 i=12759 i=76 Default XML i=12756 i=12762 i=76 Default XML i=8912 i=8918 i=76 Default JSON i=96 i=76 Default JSON i=97 i=76 Default JSON i=101 i=76 Default JSON i=99 i=76 Default JSON i=100 i=76 Default JSON i=296 i=76 Default JSON i=7594 i=76 Default JSON i=102 i=76 Default JSON i=12755 i=76 Default JSON i=12756 i=76 Default JSON i=8912 i=76 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part4.xml000066400000000000000000003445351357637245100221470ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 ExpandedNodeId Describes a value that is an absolute identifier for a node. i=24 StatusCode Describes a value that is a code representing the outcome of an operation by a Server. i=24 DataValue Describes a value that is a structure containing a value, a status code and timestamps. i=24 DiagnosticInfo Describes a value that is a structure containing diagnostics associated with a StatusCode. i=24 IntegerId A numeric identifier for an object. i=7 ApplicationType The types of applications. i=7597 i=29 The application is a server. The application is a client. The application is a client and a server. The application is a discovery server. EnumStrings i=68 i=78 i=307 Server Client ClientAndServer DiscoveryServer ApplicationDescription Describes an application and how to find it. i=22 The globally unique identifier for the application. The globally unique identifier for the product. The name of application. The type of application. The globally unique identifier for the server that is acting as a gateway for the server. The globally unique identifier for the discovery profile supported by the server. The URLs for the server's discovery endpoints. VersionTime i=7 ServerOnNetwork i=22 ApplicationInstanceCertificate A certificate for an instance of an application. i=15 MessageSecurityMode The type of security to use on a message. i=7595 i=29 An invalid mode. No security is used. The message is signed. The message is signed and encrypted. EnumStrings i=68 i=78 i=302 Invalid None Sign SignAndEncrypt UserTokenType The possible user token types. i=7596 i=29 An anonymous user. A user identified by a user name and password. A user identified by an X509 certificate. A user identified by WS-Security XML token. EnumStrings i=68 i=78 i=303 Anonymous UserName Certificate IssuedToken UserTokenPolicy Describes a user token that can be used with a server. i=22 A identifier for the policy assigned by the server. The type of user token. The type of issued token. The endpoint or any other information need to contruct an issued token URL. The security policy to use when encrypting or signing the user token. EndpointDescription The description of a endpoint that can be used to access a server. i=22 The network endpoint to use when connecting to the server. The description of the server. The server's application certificate. The security mode that must be used when connecting to the endpoint. The security policy to use when connecting to the endpoint. The user identity tokens that can be used with this endpoint. The transport profile to use when connecting to the endpoint. A server assigned value that indicates how secure the endpoint is relative to other server endpoints. RegisteredServer The information required to register a server with a discovery server. i=22 The globally unique identifier for the server. The globally unique identifier for the product. The name of server in multiple lcoales. The type of server. The globally unique identifier for the server that is acting as a gateway for the server. The URLs for the server's discovery endpoints. A path to a file that is deleted when the server is no longer accepting connections. If FALSE the server will save the registration information to a persistent datastore. DiscoveryConfiguration A base type for discovery configuration information. i=22 MdnsDiscoveryConfiguration The discovery information needed for mDNS registration. i=12890 The name for server that is broadcast via mDNS. The server capabilities that are broadcast via mDNS. SecurityTokenRequestType Indicates whether a token if being created or renewed. i=7598 i=29 The channel is being created. The channel is being renewed. EnumStrings i=68 i=78 i=315 Issue Renew SignedSoftwareCertificate A software certificate with a digital signature. i=22 The data of the certificate. The digital signature. SessionAuthenticationToken A unique identifier for a session used to authenticate requests. i=17 UserIdentityToken A base type for a user identity token. i=22 The policy id specified in a user token policy for the endpoint being used. AnonymousIdentityToken A token representing an anonymous user. i=316 UserNameIdentityToken A token representing a user identified by a user name and password. i=316 The user name. The password encrypted with the server certificate. The algorithm used to encrypt the password. X509IdentityToken A token representing a user identified by an X509 certificate. i=316 The certificate. IssuedIdentityToken A token representing a user identified by a WS-Security XML token. i=316 The XML token encrypted with the server certificate. The algorithm used to encrypt the certificate. NodeAttributesMask The bits used to specify default attributes for a new node. i=11881 i=29 No attribuites provided. The access level attribute is specified. The array dimensions attribute is specified. The browse name attribute is specified. The contains no loops attribute is specified. The data type attribute is specified. The description attribute is specified. The display name attribute is specified. The event notifier attribute is specified. The executable attribute is specified. The historizing attribute is specified. The inverse name attribute is specified. The is abstract attribute is specified. The minimum sampling interval attribute is specified. The node class attribute is specified. The node id attribute is specified. The symmetric attribute is specified. The user access level attribute is specified. The user executable attribute is specified. The user write mask attribute is specified. The value rank attribute is specified. The write mask attribute is specified. The value attribute is specified. The write mask attribute is specified. The write mask attribute is specified. The write mask attribute is specified. All attributes are specified. All base attributes are specified. All object attributes are specified. All object type attributes are specified. All variable attributes are specified. All variable type attributes are specified. All method attributes are specified. All reference type attributes are specified. All view attributes are specified. EnumValues i=68 i=78 i=348 i=7616 0 None No attribuites provided. i=7616 1 AccessLevel The access level attribute is specified. i=7616 2 ArrayDimensions The array dimensions attribute is specified. i=7616 4 BrowseName The browse name attribute is specified. i=7616 8 ContainsNoLoops The contains no loops attribute is specified. i=7616 16 DataType The data type attribute is specified. i=7616 32 Description The description attribute is specified. i=7616 64 DisplayName The display name attribute is specified. i=7616 128 EventNotifier The event notifier attribute is specified. i=7616 256 Executable The executable attribute is specified. i=7616 512 Historizing The historizing attribute is specified. i=7616 1024 InverseName The inverse name attribute is specified. i=7616 2048 IsAbstract The is abstract attribute is specified. i=7616 4096 MinimumSamplingInterval The minimum sampling interval attribute is specified. i=7616 8192 NodeClass The node class attribute is specified. i=7616 16384 NodeId The node id attribute is specified. i=7616 32768 Symmetric The symmetric attribute is specified. i=7616 65536 UserAccessLevel The user access level attribute is specified. i=7616 131072 UserExecutable The user executable attribute is specified. i=7616 262144 UserWriteMask The user write mask attribute is specified. i=7616 524288 ValueRank The value rank attribute is specified. i=7616 1048576 WriteMask The write mask attribute is specified. i=7616 2097152 Value The value attribute is specified. i=7616 4194304 DataTypeDefinition The write mask attribute is specified. i=7616 8388608 RolePermissions The write mask attribute is specified. i=7616 16777216 AccessRestrictions The write mask attribute is specified. i=7616 33554431 All All attributes are specified. i=7616 26501220 BaseNode All base attributes are specified. i=7616 26501348 Object All object attributes are specified. i=7616 26503268 ObjectType All object type attributes are specified. i=7616 26571383 Variable All variable attributes are specified. i=7616 28600438 VariableType All variable type attributes are specified. i=7616 26632548 Method All method attributes are specified. i=7616 26537060 ReferenceType All reference type attributes are specified. i=7616 26501356 View All view attributes are specified. AddNodesItem A request to add a node to the server address space. i=22 The node id for the parent node. The type of reference from the parent to the new node. The node id requested by the client. If null the server must provide one. The browse name for the new node. The class of the new node. The default attributes for the new node. The type definition for the new node. AddReferencesItem A request to add a reference to the server address space. i=22 The source of the reference. The type of reference. If TRUE the reference is a forward reference. The URI of the server containing the target (if in another server). The target of the reference. The node class of the target (if known). DeleteNodesItem A request to delete a node to the server address space. i=22 The id of the node to delete. If TRUE all references to the are deleted as well. DeleteReferencesItem A request to delete a node from the server address space. i=22 The source of the reference to delete. The type of reference to delete. If TRUE the a forward reference is deleted. The target of the reference to delete. If TRUE the reference is deleted in both directions. AttributeWriteMask Define bits used to indicate which attributes are writable. i=15036 i=7 No attributes are writable. The access level attribute is writable. The array dimensions attribute is writable. The browse name attribute is writable. The contains no loops attribute is writable. The data type attribute is writable. The description attribute is writable. The display name attribute is writable. The event notifier attribute is writable. The executable attribute is writable. The historizing attribute is writable. The inverse name attribute is writable. The is abstract attribute is writable. The minimum sampling interval attribute is writable. The node class attribute is writable. The node id attribute is writable. The symmetric attribute is writable. The user access level attribute is writable. The user executable attribute is writable. The user write mask attribute is writable. The value rank attribute is writable. The write mask attribute is writable. The value attribute is writable. The DataTypeDefinition attribute is writable. The RolePermissions attribute is writable. The AccessRestrictions attribute is writable. The AccessLevelEx attribute is writable. OptionSetValues i=68 i=78 i=347 AccessLevel ArrayDimensions BrowseName ContainsNoLoops DataType Description DisplayName EventNotifier Executable Historizing InverseName IsAbstract MinimumSamplingInterval NodeClass NodeId Symmetric UserAccessLevel UserExecutable UserWriteMask ValueRank WriteMask ValueForVariableType DataTypeDefinition RolePermissions AccessRestrictions AccessLevelEx ContinuationPoint An identifier for a suspended query or browse operation. i=15 RelativePathElement An element in a relative path. i=22 The type of reference to follow. If TRUE the reverse reference is followed. If TRUE then subtypes of the reference type are followed. The browse name of the target. RelativePath A relative path constructed from reference types and browse names. i=22 A list of elements in the path. Counter A monotonically increasing value. i=7 NumericRange Specifies a range of array indexes. i=12 Time A time value specified as HH:MM:SS.SSS. i=12 Date A date value. i=13 EndpointConfiguration i=22 FilterOperator i=7605 i=29 EnumStrings i=68 i=78 i=576 Equals IsNull GreaterThan LessThan GreaterThanOrEqual LessThanOrEqual Like Not Between InList And Or Cast InView OfType RelatedTo BitwiseAnd BitwiseOr ContentFilterElement i=22 ContentFilter i=22 FilterOperand i=22 ElementOperand i=589 LiteralOperand i=589 AttributeOperand i=589 SimpleAttributeOperand i=589 HistoryEvent i=22 HistoryUpdateType i=11884 i=29 EnumValues i=68 i=78 i=11234 i=7616 1 Insert i=7616 2 Replace i=7616 3 Update i=7616 4 Delete PerformUpdateType i=11885 i=29 EnumValues i=68 i=78 i=11293 i=7616 1 Insert i=7616 2 Replace i=7616 3 Update i=7616 4 Remove MonitoringFilter i=22 EventFilter i=719 AggregateConfiguration i=22 HistoryEventFieldList i=22 Default Binary i=308 i=7665 i=76 Default Binary i=12189 i=12213 i=76 Default Binary i=304 i=7662 i=76 Default Binary i=312 i=7668 i=76 Default Binary i=432 i=7782 i=76 Default Binary i=12890 i=12902 i=76 Default Binary i=12891 i=12905 i=76 Default Binary i=344 i=7698 i=76 Default Binary i=316 i=7671 i=76 Default Binary i=319 i=7674 i=76 Default Binary i=322 i=7677 i=76 Default Binary i=325 i=7680 i=76 Default Binary i=938 i=7683 i=76 Default Binary i=376 i=7728 i=76 Default Binary i=379 i=7731 i=76 Default Binary i=382 i=7734 i=76 Default Binary i=385 i=7737 i=76 Default Binary i=537 i=12718 i=76 Default Binary i=540 i=12721 i=76 Default Binary i=331 i=7686 i=76 Default Binary i=583 i=7929 i=76 Default Binary i=586 i=7932 i=76 Default Binary i=589 i=7935 i=76 Default Binary i=592 i=7938 i=76 Default Binary i=595 i=7941 i=76 Default Binary i=598 i=7944 i=76 Default Binary i=601 i=7947 i=76 Default Binary i=659 i=8004 i=76 Default Binary i=719 i=8067 i=76 Default Binary i=725 i=8073 i=76 Default Binary i=948 i=8076 i=76 Default Binary i=920 i=8172 i=76 Default XML i=308 i=8300 i=76 Default XML i=12189 i=12201 i=76 Default XML i=304 i=8297 i=76 Default XML i=312 i=8303 i=76 Default XML i=432 i=8417 i=76 Default XML i=12890 i=12894 i=76 Default XML i=12891 i=12897 i=76 Default XML i=344 i=8333 i=76 Default XML i=316 i=8306 i=76 Default XML i=319 i=8309 i=76 Default XML i=322 i=8312 i=76 Default XML i=325 i=8315 i=76 Default XML i=938 i=8318 i=76 Default XML i=376 i=8363 i=76 Default XML i=379 i=8366 i=76 Default XML i=382 i=8369 i=76 Default XML i=385 i=8372 i=76 Default XML i=537 i=12712 i=76 Default XML i=540 i=12715 i=76 Default XML i=331 i=8321 i=76 Default XML i=583 i=8564 i=76 Default XML i=586 i=8567 i=76 Default XML i=589 i=8570 i=76 Default XML i=592 i=8573 i=76 Default XML i=595 i=8576 i=76 Default XML i=598 i=8579 i=76 Default XML i=601 i=8582 i=76 Default XML i=659 i=8639 i=76 Default XML i=719 i=8702 i=76 Default XML i=725 i=8708 i=76 Default XML i=948 i=8711 i=76 Default XML i=920 i=8807 i=76 Default JSON i=308 i=76 Default JSON i=12189 i=76 Default JSON i=304 i=76 Default JSON i=312 i=76 Default JSON i=432 i=76 Default JSON i=12890 i=76 Default JSON i=12891 i=76 Default JSON i=344 i=76 Default JSON i=316 i=76 Default JSON i=319 i=76 Default JSON i=322 i=76 Default JSON i=325 i=76 Default JSON i=938 i=76 Default JSON i=376 i=76 Default JSON i=379 i=76 Default JSON i=382 i=76 Default JSON i=385 i=76 Default JSON i=537 i=76 Default JSON i=540 i=76 Default JSON i=331 i=76 Default JSON i=583 i=76 Default JSON i=586 i=76 Default JSON i=589 i=76 Default JSON i=592 i=76 Default JSON i=595 i=76 Default JSON i=598 i=76 Default JSON i=601 i=76 Default JSON i=659 i=76 Default JSON i=719 i=76 Default JSON i=725 i=76 Default JSON i=948 i=76 Default JSON i=920 i=76 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part5.xml000066400000000000000000052241271357637245100221470ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 FromState The type for a reference to the state before a transition. i=32 ToTransition ToState The type for a reference to the state after a transition. i=32 FromTransition HasCause The type for a reference to a method that can cause a transition to occur. i=32 MayBeCausedBy HasEffect The type for a reference to an event that may be raised when a transition occurs. i=32 MayBeEffectedBy HasSubStateMachine The type for a reference to a substate for a state. i=32 SubStateMachineOf BaseObjectType The base type for all object nodes. FolderType The type for objects that organize other nodes. i=58 BaseVariableType The abstract base type for all variable nodes. BaseDataVariableType The type for variable that represents a process value. i=62 PropertyType The type for variable that represents a property of another node. i=62 DataTypeDescriptionType The type for variable that represents the description of a data type encoding. i=104 i=105 i=63 DataTypeVersion The version number for the data type description. i=68 i=80 i=69 DictionaryFragment A fragment of a data type dictionary that defines the data type. i=68 i=80 i=69 DataTypeDictionaryType The type for variable that represents the collection of data type decriptions. i=106 i=107 i=15001 i=63 DataTypeVersion The version number for the data type dictionary. i=68 i=80 i=72 NamespaceUri A URI that uniquely identifies the dictionary. i=68 i=80 i=72 Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 i=80 i=72 DataTypeSystemType i=58 DataTypeEncodingType i=58 ModellingRuleType The type for an object that describes how an instance declaration is used when a type is instantiated. i=111 i=58 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=78 i=77 1 Mandatory Specifies that an instance with the attributes and references of the instance declaration must appear when a type is instantiated. i=112 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=78 1 Optional Specifies that an instance with the attributes and references of the instance declaration may appear when a type is instantiated. i=113 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=80 2 ExposesItsArray Specifies that an instance appears for each element of the containing array variable. i=114 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=83 3 MandatoryShared Specifies that a reference to a shared instance must appear in when a type is instantiated. i=116 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=79 1 OptionalPlaceholder Specifies that zero or more instances with the attributes and references of the instance declaration may appear when a type is instantiated. i=11509 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=11508 2 MandatoryPlaceholder Specifies that one or more instances with the attributes and references of the instance declaration must appear when a type is instantiated. i=11511 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=11510 1 Root The root of the server address space. i=61 Objects The browse entry point when looking for objects in the server address space. i=84 i=61 Types The browse entry point when looking for types in the server address space. i=84 i=61 Views The browse entry point when looking for views in the server address space. i=84 i=61 ObjectTypes The browse entry point when looking for object types in the server address space. i=86 i=58 i=61 VariableTypes The browse entry point when looking for variable types in the server address space. i=86 i=62 i=61 DataTypes The browse entry point when looking for data types in the server address space. i=86 i=24 i=61 ReferenceTypes The browse entry point when looking for reference types in the server address space. i=86 i=31 i=61 XML Schema A type system which uses XML schema to describe the encoding of data types. i=90 i=75 OPC Binary A type system which uses OPC binary schema to describe the encoding of data types. i=90 i=75 http://opcfoundation.org/UA/ i=15958 i=15959 i=15960 i=15961 i=15962 i=15963 i=15964 i=16134 i=16135 i=16136 i=11715 i=11616 NamespaceUri The URI of the namespace. i=68 i=15957 http://opcfoundation.org/UA/ NamespaceVersion The human readable string representing version of the namespace. i=68 i=15957 1.04 NamespacePublicationDate The publication date for the namespace. i=68 i=15957 2017-11-22 IsNamespaceSubset If TRUE then the server only supports a subset of the namespace. i=68 i=15957 false StaticNodeIdTypes A list of IdTypes for nodes which are the same in every server that exposes them. i=68 i=15957 0 StaticNumericNodeIdRange A list of ranges for numeric node ids which are the same in every server that exposes them. i=68 i=15957 1:65535 StaticStringNodeIdPattern A regular expression which matches string node ids are the same in every server that exposes them. i=68 i=15957 DefaultRolePermissions i=68 i=15957 DefaultUserRolePermissions i=68 i=15957 DefaultAccessRestrictions i=68 i=15957 ServerType Specifies the current status and capabilities of the server. i=2005 i=2006 i=15003 i=2007 i=2008 i=2742 i=12882 i=17612 i=2009 i=2010 i=2011 i=2012 i=11527 i=11489 i=12871 i=12746 i=12883 i=58 ServerArray The list of server URIs used by the server. i=68 i=78 i=2004 NamespaceArray The list of namespace URIs used by the server. i=68 i=78 i=2004 UrisVersion Defines the version of the ServerArray and the NamespaceArray. i=68 i=80 i=2004 ServerStatus The current status of the server. i=3074 i=3075 i=3076 i=3077 i=3084 i=3085 i=2138 i=78 i=2004 StartTime i=63 i=78 i=2007 CurrentTime i=63 i=78 i=2007 State i=63 i=78 i=2007 BuildInfo i=3078 i=3079 i=3080 i=3081 i=3082 i=3083 i=3051 i=78 i=2007 ProductUri i=63 i=78 i=3077 ManufacturerName i=63 i=78 i=3077 ProductName i=63 i=78 i=3077 SoftwareVersion i=63 i=78 i=3077 BuildNumber i=63 i=78 i=3077 BuildDate i=63 i=78 i=3077 SecondsTillShutdown i=63 i=78 i=2007 ShutdownReason i=63 i=78 i=2007 ServiceLevel A value indicating the level of service the server can provide. 255 indicates the best. i=68 i=78 i=2004 Auditing A flag indicating whether the server is currently generating audit events. i=68 i=78 i=2004 EstimatedReturnTime Indicates the time at which the Server is expected to be available in the state RUNNING. i=68 i=80 i=2004 LocalTime Indicates the time zone the Server is is running in. i=68 i=80 i=2004 ServerCapabilities Describes capabilities supported by the server. i=3086 i=3087 i=3088 i=3089 i=3090 i=3091 i=3092 i=3093 i=3094 i=2013 i=78 i=2004 ServerProfileArray A list of profiles supported by the server. i=68 i=78 i=2009 LocaleIdArray A list of locales supported by the server. i=68 i=78 i=2009 MinSupportedSampleRate The minimum sampling interval supported by the server. i=68 i=78 i=2009 MaxBrowseContinuationPoints The maximum number of continuation points for Browse operations per session. i=68 i=78 i=2009 MaxQueryContinuationPoints The maximum number of continuation points for Query operations per session. i=68 i=78 i=2009 MaxHistoryContinuationPoints The maximum number of continuation points for ReadHistory operations per session. i=68 i=78 i=2009 SoftwareCertificates The software certificates owned by the server. i=68 i=78 i=2009 ModellingRules A folder for the modelling rules supported by the server. i=61 i=78 i=2009 AggregateFunctions A folder for the real time aggregates supported by the server. i=61 i=78 i=2009 ServerDiagnostics Reports diagnostics about the server. i=3095 i=3110 i=3111 i=3114 i=2020 i=78 i=2004 ServerDiagnosticsSummary A summary of server level diagnostics. i=3096 i=3097 i=3098 i=3099 i=3100 i=3101 i=3102 i=3104 i=3105 i=3106 i=3107 i=3108 i=2150 i=78 i=2010 ServerViewCount i=63 i=78 i=3095 CurrentSessionCount i=63 i=78 i=3095 CumulatedSessionCount i=63 i=78 i=3095 SecurityRejectedSessionCount i=63 i=78 i=3095 RejectedSessionCount i=63 i=78 i=3095 SessionTimeoutCount i=63 i=78 i=3095 SessionAbortCount i=63 i=78 i=3095 PublishingIntervalCount i=63 i=78 i=3095 CurrentSubscriptionCount i=63 i=78 i=3095 CumulatedSubscriptionCount i=63 i=78 i=3095 SecurityRejectedRequestsCount i=63 i=78 i=3095 RejectedRequestsCount i=63 i=78 i=3095 SubscriptionDiagnosticsArray A list of diagnostics for each active subscription. i=2171 i=78 i=2010 SessionsDiagnosticsSummary A summary of session level diagnostics. i=3112 i=3113 i=2026 i=78 i=2010 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=78 i=3111 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=78 i=3111 EnabledFlag If TRUE the diagnostics collection is enabled. i=68 i=78 i=2010 VendorServerInfo Server information provided by the vendor. i=2033 i=78 i=2004 ServerRedundancy Describes the redundancy capabilities of the server. i=3115 i=2034 i=78 i=2004 RedundancySupport Indicates what style of redundancy is supported by the server. i=68 i=78 i=2012 Namespaces Describes the namespaces supported by the server. i=11645 i=80 i=2004 GetMonitoredItems i=11490 i=11491 i=80 i=2004 InputArguments i=68 i=78 i=11489 i=297 SubscriptionId i=7 -1 OutputArguments i=68 i=78 i=11489 i=297 ServerHandles i=7 1 i=297 ClientHandles i=7 1 ResendData i=12872 i=80 i=2004 InputArguments i=68 i=78 i=12871 i=297 SubscriptionId i=7 -1 SetSubscriptionDurable i=12747 i=12748 i=80 i=2004 InputArguments i=68 i=78 i=12746 i=297 SubscriptionId i=7 -1 i=297 LifetimeInHours i=7 -1 OutputArguments i=68 i=78 i=12746 i=297 RevisedLifetimeInHours i=7 -1 RequestServerStateChange i=12884 i=80 i=2004 InputArguments i=68 i=78 i=12883 i=297 State i=852 -1 i=297 EstimatedReturnTime i=13 -1 i=297 SecondsTillShutdown i=7 -1 i=297 Reason i=21 -1 i=297 Restart i=1 -1 ServerCapabilitiesType Describes the capabilities supported by the server. i=2014 i=2016 i=2017 i=2732 i=2733 i=2734 i=3049 i=11549 i=11550 i=12910 i=11551 i=2019 i=2754 i=11562 i=16295 i=58 ServerProfileArray A list of profiles supported by the server. i=68 i=78 i=2013 LocaleIdArray A list of locales supported by the server. i=68 i=78 i=2013 MinSupportedSampleRate The minimum sampling interval supported by the server. i=68 i=78 i=2013 MaxBrowseContinuationPoints The maximum number of continuation points for Browse operations per session. i=68 i=78 i=2013 MaxQueryContinuationPoints The maximum number of continuation points for Query operations per session. i=68 i=78 i=2013 MaxHistoryContinuationPoints The maximum number of continuation points for ReadHistory operations per session. i=68 i=78 i=2013 SoftwareCertificates The software certificates owned by the server. i=68 i=78 i=2013 MaxArrayLength The maximum length for an array value supported by the server. i=68 i=80 i=2013 MaxStringLength The maximum length for a string value supported by the server. i=68 i=80 i=2013 MaxByteStringLength The maximum length for a byte string value supported by the server. i=68 i=80 i=2013 OperationLimits Defines the limits supported by the server for different operations. i=11564 i=80 i=2013 ModellingRules A folder for the modelling rules supported by the server. i=61 i=78 i=2013 AggregateFunctions A folder for the real time aggregates supported by the server. i=61 i=78 i=2013 <VendorCapability> i=2137 i=11508 i=2013 Roles Describes the roles supported by the server. i=16296 i=16299 i=15607 i=80 i=2013 AddRole i=16297 i=16298 i=78 i=16295 InputArguments i=68 i=78 i=16296 i=297 RoleName i=12 -1 i=297 NamespaceUri i=12 -1 OutputArguments i=68 i=78 i=16296 i=297 RoleNodeId i=17 -1 RemoveRole i=16300 i=78 i=16295 InputArguments i=68 i=78 i=16299 i=297 RoleNodeId i=17 -1 ServerDiagnosticsType The diagnostics information for a server. i=2021 i=2022 i=2023 i=2744 i=2025 i=58 ServerDiagnosticsSummary A summary of server level diagnostics. i=3116 i=3117 i=3118 i=3119 i=3120 i=3121 i=3122 i=3124 i=3125 i=3126 i=3127 i=3128 i=2150 i=78 i=2020 ServerViewCount i=63 i=78 i=2021 CurrentSessionCount i=63 i=78 i=2021 CumulatedSessionCount i=63 i=78 i=2021 SecurityRejectedSessionCount i=63 i=78 i=2021 RejectedSessionCount i=63 i=78 i=2021 SessionTimeoutCount i=63 i=78 i=2021 SessionAbortCount i=63 i=78 i=2021 PublishingIntervalCount i=63 i=78 i=2021 CurrentSubscriptionCount i=63 i=78 i=2021 CumulatedSubscriptionCount i=63 i=78 i=2021 SecurityRejectedRequestsCount i=63 i=78 i=2021 RejectedRequestsCount i=63 i=78 i=2021 SamplingIntervalDiagnosticsArray A list of diagnostics for each sampling interval supported by the server. i=2164 i=80 i=2020 SubscriptionDiagnosticsArray A list of diagnostics for each active subscription. i=2171 i=78 i=2020 SessionsDiagnosticsSummary A summary of session level diagnostics. i=3129 i=3130 i=2026 i=78 i=2020 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=78 i=2744 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=78 i=2744 EnabledFlag If TRUE the diagnostics collection is enabled. i=68 i=78 i=2020 SessionsDiagnosticsSummaryType Provides a summary of session level diagnostics. i=2027 i=2028 i=12097 i=58 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=78 i=2026 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=78 i=2026 <ClientName> i=12098 i=12142 i=12152 i=2029 i=11508 i=2026 SessionDiagnostics Diagnostics information for an active session. i=12099 i=12100 i=12101 i=12102 i=12103 i=12104 i=12105 i=12106 i=12107 i=12108 i=12109 i=12110 i=12111 i=12112 i=12113 i=12114 i=12115 i=12116 i=12117 i=12118 i=12119 i=12120 i=12121 i=12122 i=12123 i=12124 i=12125 i=12126 i=12127 i=12128 i=12129 i=12130 i=12131 i=12132 i=12133 i=12134 i=12135 i=12136 i=12137 i=12138 i=12139 i=12140 i=12141 i=2197 i=78 i=12097 SessionId i=63 i=78 i=12098 SessionName i=63 i=78 i=12098 ClientDescription i=63 i=78 i=12098 ServerUri i=63 i=78 i=12098 EndpointUrl i=63 i=78 i=12098 LocaleIds i=63 i=78 i=12098 ActualSessionTimeout i=63 i=78 i=12098 MaxResponseMessageSize i=63 i=78 i=12098 ClientConnectionTime i=63 i=78 i=12098 ClientLastContactTime i=63 i=78 i=12098 CurrentSubscriptionsCount i=63 i=78 i=12098 CurrentMonitoredItemsCount i=63 i=78 i=12098 CurrentPublishRequestsInQueue i=63 i=78 i=12098 TotalRequestCount i=63 i=78 i=12098 UnauthorizedRequestCount i=63 i=78 i=12098 ReadCount i=63 i=78 i=12098 HistoryReadCount i=63 i=78 i=12098 WriteCount i=63 i=78 i=12098 HistoryUpdateCount i=63 i=78 i=12098 CallCount i=63 i=78 i=12098 CreateMonitoredItemsCount i=63 i=78 i=12098 ModifyMonitoredItemsCount i=63 i=78 i=12098 SetMonitoringModeCount i=63 i=78 i=12098 SetTriggeringCount i=63 i=78 i=12098 DeleteMonitoredItemsCount i=63 i=78 i=12098 CreateSubscriptionCount i=63 i=78 i=12098 ModifySubscriptionCount i=63 i=78 i=12098 SetPublishingModeCount i=63 i=78 i=12098 PublishCount i=63 i=78 i=12098 RepublishCount i=63 i=78 i=12098 TransferSubscriptionsCount i=63 i=78 i=12098 DeleteSubscriptionsCount i=63 i=78 i=12098 AddNodesCount i=63 i=78 i=12098 AddReferencesCount i=63 i=78 i=12098 DeleteNodesCount i=63 i=78 i=12098 DeleteReferencesCount i=63 i=78 i=12098 BrowseCount i=63 i=78 i=12098 BrowseNextCount i=63 i=78 i=12098 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=12098 QueryFirstCount i=63 i=78 i=12098 QueryNextCount i=63 i=78 i=12098 RegisterNodesCount i=63 i=78 i=12098 UnregisterNodesCount i=63 i=78 i=12098 SessionSecurityDiagnostics Security related diagnostics information for an active session. i=12143 i=12144 i=12145 i=12146 i=12147 i=12148 i=12149 i=12150 i=12151 i=2244 i=78 i=12097 SessionId i=63 i=78 i=12142 ClientUserIdOfSession i=63 i=78 i=12142 ClientUserIdHistory i=63 i=78 i=12142 AuthenticationMechanism i=63 i=78 i=12142 Encoding i=63 i=78 i=12142 TransportProtocol i=63 i=78 i=12142 SecurityMode i=63 i=78 i=12142 SecurityPolicyUri i=63 i=78 i=12142 ClientCertificate i=63 i=78 i=12142 SubscriptionDiagnosticsArray A list of diagnostics for each subscription owned by the session. i=2171 i=78 i=12097 SessionDiagnosticsObjectType A container for session level diagnostics information. i=2030 i=2031 i=2032 i=58 SessionDiagnostics Diagnostics information for an active session. i=3131 i=3132 i=3133 i=3134 i=3135 i=3136 i=3137 i=3138 i=3139 i=3140 i=3141 i=3142 i=3143 i=8898 i=11891 i=3151 i=3152 i=3153 i=3154 i=3155 i=3156 i=3157 i=3158 i=3159 i=3160 i=3161 i=3162 i=3163 i=3164 i=3165 i=3166 i=3167 i=3168 i=3169 i=3170 i=3171 i=3172 i=3173 i=3174 i=3175 i=3176 i=3177 i=3178 i=2197 i=78 i=2029 SessionId i=63 i=78 i=2030 SessionName i=63 i=78 i=2030 ClientDescription i=63 i=78 i=2030 ServerUri i=63 i=78 i=2030 EndpointUrl i=63 i=78 i=2030 LocaleIds i=63 i=78 i=2030 ActualSessionTimeout i=63 i=78 i=2030 MaxResponseMessageSize i=63 i=78 i=2030 ClientConnectionTime i=63 i=78 i=2030 ClientLastContactTime i=63 i=78 i=2030 CurrentSubscriptionsCount i=63 i=78 i=2030 CurrentMonitoredItemsCount i=63 i=78 i=2030 CurrentPublishRequestsInQueue i=63 i=78 i=2030 TotalRequestCount i=63 i=78 i=2030 UnauthorizedRequestCount i=63 i=78 i=2030 ReadCount i=63 i=78 i=2030 HistoryReadCount i=63 i=78 i=2030 WriteCount i=63 i=78 i=2030 HistoryUpdateCount i=63 i=78 i=2030 CallCount i=63 i=78 i=2030 CreateMonitoredItemsCount i=63 i=78 i=2030 ModifyMonitoredItemsCount i=63 i=78 i=2030 SetMonitoringModeCount i=63 i=78 i=2030 SetTriggeringCount i=63 i=78 i=2030 DeleteMonitoredItemsCount i=63 i=78 i=2030 CreateSubscriptionCount i=63 i=78 i=2030 ModifySubscriptionCount i=63 i=78 i=2030 SetPublishingModeCount i=63 i=78 i=2030 PublishCount i=63 i=78 i=2030 RepublishCount i=63 i=78 i=2030 TransferSubscriptionsCount i=63 i=78 i=2030 DeleteSubscriptionsCount i=63 i=78 i=2030 AddNodesCount i=63 i=78 i=2030 AddReferencesCount i=63 i=78 i=2030 DeleteNodesCount i=63 i=78 i=2030 DeleteReferencesCount i=63 i=78 i=2030 BrowseCount i=63 i=78 i=2030 BrowseNextCount i=63 i=78 i=2030 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=2030 QueryFirstCount i=63 i=78 i=2030 QueryNextCount i=63 i=78 i=2030 RegisterNodesCount i=63 i=78 i=2030 UnregisterNodesCount i=63 i=78 i=2030 SessionSecurityDiagnostics Security related diagnostics information for an active session. i=3179 i=3180 i=3181 i=3182 i=3183 i=3184 i=3185 i=3186 i=3187 i=2244 i=78 i=2029 SessionId i=63 i=78 i=2031 ClientUserIdOfSession i=63 i=78 i=2031 ClientUserIdHistory i=63 i=78 i=2031 AuthenticationMechanism i=63 i=78 i=2031 Encoding i=63 i=78 i=2031 TransportProtocol i=63 i=78 i=2031 SecurityMode i=63 i=78 i=2031 SecurityPolicyUri i=63 i=78 i=2031 ClientCertificate i=63 i=78 i=2031 SubscriptionDiagnosticsArray A list of diagnostics for each subscription owned by the session. i=2171 i=78 i=2029 VendorServerInfoType A base type for vendor specific server information. i=58 ServerRedundancyType A base type for an object that describe how a server supports redundancy. i=2035 i=58 RedundancySupport Indicates what style of redundancy is supported by the server. i=68 i=78 i=2034 TransparentRedundancyType Identifies the capabilties of server that supports transparent redundancy. i=2037 i=2038 i=2034 CurrentServerId The ID of the server that is currently in use. i=68 i=78 i=2036 RedundantServerArray A list of servers in the same redundant set. i=68 i=78 i=2036 NonTransparentRedundancyType Identifies the capabilties of server that supports non-transparent redundancy. i=2040 i=2034 ServerUriArray A list of servers in the same redundant set. i=68 i=78 i=2039 NonTransparentNetworkRedundancyType i=11948 i=2039 ServerNetworkGroups i=68 i=78 i=11945 OperationLimitsType Identifies the operation limits imposed by the server. i=11565 i=12161 i=12162 i=11567 i=12163 i=12164 i=11569 i=11570 i=11571 i=11572 i=11573 i=11574 i=61 MaxNodesPerRead The maximum number of operations in a single Read request. i=68 i=80 i=11564 MaxNodesPerHistoryReadData The maximum number of operations in a single data HistoryRead request. i=68 i=80 i=11564 MaxNodesPerHistoryReadEvents The maximum number of operations in a single event HistoryRead request. i=68 i=80 i=11564 MaxNodesPerWrite The maximum number of operations in a single Write request. i=68 i=80 i=11564 MaxNodesPerHistoryUpdateData The maximum number of operations in a single data HistoryUpdate request. i=68 i=80 i=11564 MaxNodesPerHistoryUpdateEvents The maximum number of operations in a single event HistoryUpdate request. i=68 i=80 i=11564 MaxNodesPerMethodCall The maximum number of operations in a single Call request. i=68 i=80 i=11564 MaxNodesPerBrowse The maximum number of operations in a single Browse request. i=68 i=80 i=11564 MaxNodesPerRegisterNodes The maximum number of operations in a single RegisterNodes request. i=68 i=80 i=11564 MaxNodesPerTranslateBrowsePathsToNodeIds The maximum number of operations in a single TranslateBrowsePathsToNodeIds request. i=68 i=80 i=11564 MaxNodesPerNodeManagement The maximum number of operations in a single AddNodes, AddReferences, DeleteNodes or DeleteReferences request. i=68 i=80 i=11564 MaxMonitoredItemsPerCall The maximum number of operations in a single MonitoredItem related request. i=68 i=80 i=11564 FileType An object that represents a file that can be accessed via the server. i=11576 i=12686 i=12687 i=11579 i=13341 i=11580 i=11583 i=11585 i=11588 i=11590 i=11593 i=58 Size The size of the file in bytes. i=68 i=78 i=11575 Writable Whether the file is writable. i=68 i=78 i=11575 UserWritable Whether the file is writable by the current user. i=68 i=78 i=11575 OpenCount The current number of open file handles. i=68 i=78 i=11575 MimeType The content of the file. i=68 i=80 i=11575 Open i=11581 i=11582 i=78 i=11575 InputArguments i=68 i=78 i=11580 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=11580 i=297 FileHandle i=7 -1 Close i=11584 i=78 i=11575 InputArguments i=68 i=78 i=11583 i=297 FileHandle i=7 -1 Read i=11586 i=11587 i=78 i=11575 InputArguments i=68 i=78 i=11585 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=11585 i=297 Data i=15 -1 Write i=11589 i=78 i=11575 InputArguments i=68 i=78 i=11588 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=11591 i=11592 i=78 i=11575 InputArguments i=68 i=78 i=11590 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=11590 i=297 Position i=9 -1 SetPosition i=11594 i=78 i=11575 InputArguments i=68 i=78 i=11593 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 AddressSpaceFileType A file used to store a namespace exported from the server. i=11615 i=11575 ExportNamespace Updates the file by exporting the server namespace. i=80 i=11595 NamespaceMetadataType Provides the metadata for a namespace used by the server. i=11617 i=11618 i=11619 i=11620 i=11621 i=11622 i=11623 i=11624 i=16137 i=16138 i=16139 i=58 NamespaceUri The URI of the namespace. i=68 i=78 i=11616 NamespaceVersion The human readable string representing version of the namespace. i=68 i=78 i=11616 NamespacePublicationDate The publication date for the namespace. i=68 i=78 i=11616 IsNamespaceSubset If TRUE then the server only supports a subset of the namespace. i=68 i=78 i=11616 StaticNodeIdTypes A list of IdTypes for nodes which are the same in every server that exposes them. i=68 i=78 i=11616 StaticNumericNodeIdRange A list of ranges for numeric node ids which are the same in every server that exposes them. i=68 i=78 i=11616 StaticStringNodeIdPattern A regular expression which matches string node ids are the same in every server that exposes them. i=68 i=78 i=11616 NamespaceFile A file containing the nodes of the namespace. i=11625 i=12690 i=12691 i=11628 i=11629 i=11632 i=11634 i=11637 i=11639 i=11642 i=11595 i=80 i=11616 Size The size of the file in bytes. i=68 i=78 i=11624 Writable Whether the file is writable. i=68 i=78 i=11624 UserWritable Whether the file is writable by the current user. i=68 i=78 i=11624 OpenCount The current number of open file handles. i=68 i=78 i=11624 Open i=11630 i=11631 i=78 i=11624 InputArguments i=68 i=78 i=11629 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=11629 i=297 FileHandle i=7 -1 Close i=11633 i=78 i=11624 InputArguments i=68 i=78 i=11632 i=297 FileHandle i=7 -1 Read i=11635 i=11636 i=78 i=11624 InputArguments i=68 i=78 i=11634 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=11634 i=297 Data i=15 -1 Write i=11638 i=78 i=11624 InputArguments i=68 i=78 i=11637 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=11640 i=11641 i=78 i=11624 InputArguments i=68 i=78 i=11639 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=11639 i=297 Position i=9 -1 SetPosition i=11643 i=78 i=11624 InputArguments i=68 i=78 i=11642 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 DefaultRolePermissions i=68 i=80 i=11616 DefaultUserRolePermissions i=68 i=80 i=11616 DefaultAccessRestrictions i=68 i=80 i=11616 NamespacesType A container for the namespace metadata provided by the server. i=11646 i=58 <NamespaceIdentifier> i=11647 i=11648 i=11649 i=11650 i=11651 i=11652 i=11653 i=11616 i=11508 i=11645 NamespaceUri The URI of the namespace. i=68 i=78 i=11646 NamespaceVersion The human readable string representing version of the namespace. i=68 i=78 i=11646 NamespacePublicationDate The publication date for the namespace. i=68 i=78 i=11646 IsNamespaceSubset If TRUE then the server only supports a subset of the namespace. i=68 i=78 i=11646 StaticNodeIdTypes A list of IdTypes for nodes which are the same in every server that exposes them. i=68 i=78 i=11646 StaticNumericNodeIdRange A list of ranges for numeric node ids which are the same in every server that exposes them. i=68 i=78 i=11646 StaticStringNodeIdPattern A regular expression which matches string node ids are the same in every server that exposes them. i=68 i=78 i=11646 BaseEventType The base type for all events. i=2042 i=2043 i=2044 i=2045 i=2046 i=2047 i=3190 i=2050 i=2051 i=58 EventId A globally unique identifier for the event. i=68 i=78 i=2041 EventType The identifier for the event type. i=68 i=78 i=2041 SourceNode The source of the event. i=68 i=78 i=2041 SourceName A description of the source of the event. i=68 i=78 i=2041 Time When the event occurred. i=68 i=78 i=2041 ReceiveTime When the server received the event from the underlying system. i=68 i=78 i=2041 LocalTime Information about the local time where the event originated. i=68 i=78 i=2041 Message A localized description of the event. i=68 i=78 i=2041 Severity Indicates how urgent an event is. i=68 i=78 i=2041 AuditEventType A base type for events used to track client initiated changes to the server state. i=2053 i=2054 i=2055 i=2056 i=2057 i=2041 ActionTimeStamp When the action triggering the event occurred. i=68 i=78 i=2052 Status If TRUE the action was performed. If FALSE the action failed and the server state did not change. i=68 i=78 i=2052 ServerId The unique identifier for the server generating the event. i=68 i=78 i=2052 ClientAuditEntryId The log entry id provided in the request that initiated the action. i=68 i=78 i=2052 ClientUserId The user identity associated with the session that initiated the action. i=68 i=78 i=2052 AuditSecurityEventType A base type for events used to track security related changes. i=17615 i=2052 StatusCodeId i=68 i=80 i=2058 AuditChannelEventType A base type for events used to track related changes to a secure channel. i=2745 i=2058 SecureChannelId The identifier for the secure channel that was changed. i=68 i=78 i=2059 AuditOpenSecureChannelEventType An event that is raised when a secure channel is opened. i=2061 i=2746 i=2062 i=2063 i=2065 i=2066 i=2059 ClientCertificate The certificate provided by the client. i=68 i=78 i=2060 ClientCertificateThumbprint The thumbprint for certificate provided by the client. i=68 i=78 i=2060 RequestType The type of request (NEW or RENEW). i=68 i=78 i=2060 SecurityPolicyUri The security policy used by the channel. i=68 i=78 i=2060 SecurityMode The security mode used by the channel. i=68 i=78 i=2060 RequestedLifetime The lifetime of the channel requested by the client. i=68 i=78 i=2060 AuditSessionEventType A base type for events used to track related changes to a session. i=2070 i=2058 SessionId The unique identifier for the session,. i=68 i=78 i=2069 AuditCreateSessionEventType An event that is raised when a session is created. i=2072 i=2073 i=2747 i=2074 i=2069 SecureChannelId The secure channel associated with the session. i=68 i=78 i=2071 ClientCertificate The certificate provided by the client. i=68 i=78 i=2071 ClientCertificateThumbprint The thumbprint of the certificate provided by the client. i=68 i=78 i=2071 RevisedSessionTimeout The timeout for the session. i=68 i=78 i=2071 AuditUrlMismatchEventType i=2749 i=2071 EndpointUrl i=68 i=78 i=2748 AuditActivateSessionEventType i=2076 i=2077 i=11485 i=2069 ClientSoftwareCertificates i=68 i=78 i=2075 UserIdentityToken i=68 i=78 i=2075 SecureChannelId i=68 i=78 i=2075 AuditCancelEventType i=2079 i=2069 RequestHandle i=68 i=78 i=2078 AuditCertificateEventType i=2081 i=2058 Certificate i=68 i=78 i=2080 AuditCertificateDataMismatchEventType i=2083 i=2084 i=2080 InvalidHostname i=68 i=78 i=2082 InvalidUri i=68 i=78 i=2082 AuditCertificateExpiredEventType i=2080 AuditCertificateInvalidEventType i=2080 AuditCertificateUntrustedEventType i=2080 AuditCertificateRevokedEventType i=2080 AuditCertificateMismatchEventType i=2080 AuditNodeManagementEventType i=2052 AuditAddNodesEventType i=2092 i=2090 NodesToAdd i=68 i=78 i=2091 AuditDeleteNodesEventType i=2094 i=2090 NodesToDelete i=68 i=78 i=2093 AuditAddReferencesEventType i=2096 i=2090 ReferencesToAdd i=68 i=78 i=2095 AuditDeleteReferencesEventType i=2098 i=2090 ReferencesToDelete i=68 i=78 i=2097 AuditUpdateEventType i=2052 AuditWriteUpdateEventType i=2750 i=2101 i=2102 i=2103 i=2099 AttributeId i=68 i=78 i=2100 IndexRange i=68 i=78 i=2100 OldValue i=68 i=78 i=2100 NewValue i=68 i=78 i=2100 AuditHistoryUpdateEventType i=2751 i=2099 ParameterDataTypeId i=68 i=78 i=2104 AuditUpdateMethodEventType i=2128 i=2129 i=2052 MethodId i=68 i=78 i=2127 InputArguments i=68 i=78 i=2127 SystemEventType i=2041 DeviceFailureEventType i=2130 SystemStatusChangeEventType i=11696 i=2130 SystemState i=68 i=78 i=11446 BaseModelChangeEventType i=2041 GeneralModelChangeEventType i=2134 i=2132 Changes i=68 i=78 i=2133 SemanticChangeEventType i=2739 i=2132 Changes i=68 i=78 i=2738 EventQueueOverflowEventType i=2041 ProgressEventType i=12502 i=12503 i=2041 Context i=68 i=78 i=11436 Progress i=68 i=78 i=11436 AggregateFunctionType i=58 ServerVendorCapabilityType i=63 ServerStatusType i=2139 i=2140 i=2141 i=2142 i=2752 i=2753 i=63 StartTime i=63 i=78 i=2138 CurrentTime i=63 i=78 i=2138 State i=63 i=78 i=2138 BuildInfo i=3698 i=3699 i=3700 i=3701 i=3702 i=3703 i=3051 i=78 i=2138 ProductUri i=63 i=78 i=2142 ManufacturerName i=63 i=78 i=2142 ProductName i=63 i=78 i=2142 SoftwareVersion i=63 i=78 i=2142 BuildNumber i=63 i=78 i=2142 BuildDate i=63 i=78 i=2142 SecondsTillShutdown i=63 i=78 i=2138 ShutdownReason i=63 i=78 i=2138 BuildInfoType i=3052 i=3053 i=3054 i=3055 i=3056 i=3057 i=63 ProductUri i=63 i=78 i=3051 ManufacturerName i=63 i=78 i=3051 ProductName i=63 i=78 i=3051 SoftwareVersion i=63 i=78 i=3051 BuildNumber i=63 i=78 i=3051 BuildDate i=63 i=78 i=3051 ServerDiagnosticsSummaryType i=2151 i=2152 i=2153 i=2154 i=2155 i=2156 i=2157 i=2159 i=2160 i=2161 i=2162 i=2163 i=63 ServerViewCount i=63 i=78 i=2150 CurrentSessionCount i=63 i=78 i=2150 CumulatedSessionCount i=63 i=78 i=2150 SecurityRejectedSessionCount i=63 i=78 i=2150 RejectedSessionCount i=63 i=78 i=2150 SessionTimeoutCount i=63 i=78 i=2150 SessionAbortCount i=63 i=78 i=2150 PublishingIntervalCount i=63 i=78 i=2150 CurrentSubscriptionCount i=63 i=78 i=2150 CumulatedSubscriptionCount i=63 i=78 i=2150 SecurityRejectedRequestsCount i=63 i=78 i=2150 RejectedRequestsCount i=63 i=78 i=2150 SamplingIntervalDiagnosticsArrayType i=12779 i=63 SamplingIntervalDiagnostics i=12780 i=12781 i=12782 i=12783 i=2165 i=83 i=2164 SamplingInterval i=63 i=78 i=12779 SampledMonitoredItemsCount i=63 i=78 i=12779 MaxSampledMonitoredItemsCount i=63 i=78 i=12779 DisabledMonitoredItemsSamplingCount i=63 i=78 i=12779 SamplingIntervalDiagnosticsType i=2166 i=11697 i=11698 i=11699 i=63 SamplingInterval i=63 i=78 i=2165 SampledMonitoredItemsCount i=63 i=78 i=2165 MaxSampledMonitoredItemsCount i=63 i=78 i=2165 DisabledMonitoredItemsSamplingCount i=63 i=78 i=2165 SubscriptionDiagnosticsArrayType i=12784 i=63 SubscriptionDiagnostics i=12785 i=12786 i=12787 i=12788 i=12789 i=12790 i=12791 i=12792 i=12793 i=12794 i=12795 i=12796 i=12797 i=12798 i=12799 i=12800 i=12801 i=12802 i=12803 i=12804 i=12805 i=12806 i=12807 i=12808 i=12809 i=12810 i=12811 i=12812 i=12813 i=12814 i=12815 i=2172 i=83 i=2171 SessionId i=63 i=78 i=12784 SubscriptionId i=63 i=78 i=12784 Priority i=63 i=78 i=12784 PublishingInterval i=63 i=78 i=12784 MaxKeepAliveCount i=63 i=78 i=12784 MaxLifetimeCount i=63 i=78 i=12784 MaxNotificationsPerPublish i=63 i=78 i=12784 PublishingEnabled i=63 i=78 i=12784 ModifyCount i=63 i=78 i=12784 EnableCount i=63 i=78 i=12784 DisableCount i=63 i=78 i=12784 RepublishRequestCount i=63 i=78 i=12784 RepublishMessageRequestCount i=63 i=78 i=12784 RepublishMessageCount i=63 i=78 i=12784 TransferRequestCount i=63 i=78 i=12784 TransferredToAltClientCount i=63 i=78 i=12784 TransferredToSameClientCount i=63 i=78 i=12784 PublishRequestCount i=63 i=78 i=12784 DataChangeNotificationsCount i=63 i=78 i=12784 EventNotificationsCount i=63 i=78 i=12784 NotificationsCount i=63 i=78 i=12784 LatePublishRequestCount i=63 i=78 i=12784 CurrentKeepAliveCount i=63 i=78 i=12784 CurrentLifetimeCount i=63 i=78 i=12784 UnacknowledgedMessageCount i=63 i=78 i=12784 DiscardedMessageCount i=63 i=78 i=12784 MonitoredItemCount i=63 i=78 i=12784 DisabledMonitoredItemCount i=63 i=78 i=12784 MonitoringQueueOverflowCount i=63 i=78 i=12784 NextSequenceNumber i=63 i=78 i=12784 EventQueueOverflowCount i=63 i=78 i=12784 SubscriptionDiagnosticsType i=2173 i=2174 i=2175 i=2176 i=2177 i=8888 i=2179 i=2180 i=2181 i=2182 i=2183 i=2184 i=2185 i=2186 i=2187 i=2188 i=2189 i=2190 i=2191 i=2998 i=2193 i=8889 i=8890 i=8891 i=8892 i=8893 i=8894 i=8895 i=8896 i=8897 i=8902 i=63 SessionId i=63 i=78 i=2172 SubscriptionId i=63 i=78 i=2172 Priority i=63 i=78 i=2172 PublishingInterval i=63 i=78 i=2172 MaxKeepAliveCount i=63 i=78 i=2172 MaxLifetimeCount i=63 i=78 i=2172 MaxNotificationsPerPublish i=63 i=78 i=2172 PublishingEnabled i=63 i=78 i=2172 ModifyCount i=63 i=78 i=2172 EnableCount i=63 i=78 i=2172 DisableCount i=63 i=78 i=2172 RepublishRequestCount i=63 i=78 i=2172 RepublishMessageRequestCount i=63 i=78 i=2172 RepublishMessageCount i=63 i=78 i=2172 TransferRequestCount i=63 i=78 i=2172 TransferredToAltClientCount i=63 i=78 i=2172 TransferredToSameClientCount i=63 i=78 i=2172 PublishRequestCount i=63 i=78 i=2172 DataChangeNotificationsCount i=63 i=78 i=2172 EventNotificationsCount i=63 i=78 i=2172 NotificationsCount i=63 i=78 i=2172 LatePublishRequestCount i=63 i=78 i=2172 CurrentKeepAliveCount i=63 i=78 i=2172 CurrentLifetimeCount i=63 i=78 i=2172 UnacknowledgedMessageCount i=63 i=78 i=2172 DiscardedMessageCount i=63 i=78 i=2172 MonitoredItemCount i=63 i=78 i=2172 DisabledMonitoredItemCount i=63 i=78 i=2172 MonitoringQueueOverflowCount i=63 i=78 i=2172 NextSequenceNumber i=63 i=78 i=2172 EventQueueOverflowCount i=63 i=78 i=2172 SessionDiagnosticsArrayType i=12816 i=63 SessionDiagnostics i=12817 i=12818 i=12819 i=12820 i=12821 i=12822 i=12823 i=12824 i=12825 i=12826 i=12827 i=12828 i=12829 i=12830 i=12831 i=12832 i=12833 i=12834 i=12835 i=12836 i=12837 i=12838 i=12839 i=12840 i=12841 i=12842 i=12843 i=12844 i=12845 i=12846 i=12847 i=12848 i=12849 i=12850 i=12851 i=12852 i=12853 i=12854 i=12855 i=12856 i=12857 i=12858 i=12859 i=2197 i=83 i=2196 SessionId i=63 i=78 i=12816 SessionName i=63 i=78 i=12816 ClientDescription i=63 i=78 i=12816 ServerUri i=63 i=78 i=12816 EndpointUrl i=63 i=78 i=12816 LocaleIds i=63 i=78 i=12816 ActualSessionTimeout i=63 i=78 i=12816 MaxResponseMessageSize i=63 i=78 i=12816 ClientConnectionTime i=63 i=78 i=12816 ClientLastContactTime i=63 i=78 i=12816 CurrentSubscriptionsCount i=63 i=78 i=12816 CurrentMonitoredItemsCount i=63 i=78 i=12816 CurrentPublishRequestsInQueue i=63 i=78 i=12816 TotalRequestCount i=63 i=78 i=12816 UnauthorizedRequestCount i=63 i=78 i=12816 ReadCount i=63 i=78 i=12816 HistoryReadCount i=63 i=78 i=12816 WriteCount i=63 i=78 i=12816 HistoryUpdateCount i=63 i=78 i=12816 CallCount i=63 i=78 i=12816 CreateMonitoredItemsCount i=63 i=78 i=12816 ModifyMonitoredItemsCount i=63 i=78 i=12816 SetMonitoringModeCount i=63 i=78 i=12816 SetTriggeringCount i=63 i=78 i=12816 DeleteMonitoredItemsCount i=63 i=78 i=12816 CreateSubscriptionCount i=63 i=78 i=12816 ModifySubscriptionCount i=63 i=78 i=12816 SetPublishingModeCount i=63 i=78 i=12816 PublishCount i=63 i=78 i=12816 RepublishCount i=63 i=78 i=12816 TransferSubscriptionsCount i=63 i=78 i=12816 DeleteSubscriptionsCount i=63 i=78 i=12816 AddNodesCount i=63 i=78 i=12816 AddReferencesCount i=63 i=78 i=12816 DeleteNodesCount i=63 i=78 i=12816 DeleteReferencesCount i=63 i=78 i=12816 BrowseCount i=63 i=78 i=12816 BrowseNextCount i=63 i=78 i=12816 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=12816 QueryFirstCount i=63 i=78 i=12816 QueryNextCount i=63 i=78 i=12816 RegisterNodesCount i=63 i=78 i=12816 UnregisterNodesCount i=63 i=78 i=12816 SessionDiagnosticsVariableType i=2198 i=2199 i=2200 i=2201 i=2202 i=2203 i=2204 i=3050 i=2205 i=2206 i=2207 i=2208 i=2209 i=8900 i=11892 i=2217 i=2218 i=2219 i=2220 i=2221 i=2222 i=2223 i=2224 i=2225 i=2226 i=2227 i=2228 i=2229 i=2230 i=2231 i=2232 i=2233 i=2234 i=2235 i=2236 i=2237 i=2238 i=2239 i=2240 i=2241 i=2242 i=2730 i=2731 i=63 SessionId i=63 i=78 i=2197 SessionName i=63 i=78 i=2197 ClientDescription i=63 i=78 i=2197 ServerUri i=63 i=78 i=2197 EndpointUrl i=63 i=78 i=2197 LocaleIds i=63 i=78 i=2197 ActualSessionTimeout i=63 i=78 i=2197 MaxResponseMessageSize i=63 i=78 i=2197 ClientConnectionTime i=63 i=78 i=2197 ClientLastContactTime i=63 i=78 i=2197 CurrentSubscriptionsCount i=63 i=78 i=2197 CurrentMonitoredItemsCount i=63 i=78 i=2197 CurrentPublishRequestsInQueue i=63 i=78 i=2197 TotalRequestCount i=63 i=78 i=2197 UnauthorizedRequestCount i=63 i=78 i=2197 ReadCount i=63 i=78 i=2197 HistoryReadCount i=63 i=78 i=2197 WriteCount i=63 i=78 i=2197 HistoryUpdateCount i=63 i=78 i=2197 CallCount i=63 i=78 i=2197 CreateMonitoredItemsCount i=63 i=78 i=2197 ModifyMonitoredItemsCount i=63 i=78 i=2197 SetMonitoringModeCount i=63 i=78 i=2197 SetTriggeringCount i=63 i=78 i=2197 DeleteMonitoredItemsCount i=63 i=78 i=2197 CreateSubscriptionCount i=63 i=78 i=2197 ModifySubscriptionCount i=63 i=78 i=2197 SetPublishingModeCount i=63 i=78 i=2197 PublishCount i=63 i=78 i=2197 RepublishCount i=63 i=78 i=2197 TransferSubscriptionsCount i=63 i=78 i=2197 DeleteSubscriptionsCount i=63 i=78 i=2197 AddNodesCount i=63 i=78 i=2197 AddReferencesCount i=63 i=78 i=2197 DeleteNodesCount i=63 i=78 i=2197 DeleteReferencesCount i=63 i=78 i=2197 BrowseCount i=63 i=78 i=2197 BrowseNextCount i=63 i=78 i=2197 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=2197 QueryFirstCount i=63 i=78 i=2197 QueryNextCount i=63 i=78 i=2197 RegisterNodesCount i=63 i=78 i=2197 UnregisterNodesCount i=63 i=78 i=2197 SessionSecurityDiagnosticsArrayType i=12860 i=63 SessionSecurityDiagnostics i=12861 i=12862 i=12863 i=12864 i=12865 i=12866 i=12867 i=12868 i=12869 i=2244 i=83 i=2243 SessionId i=63 i=78 i=12860 ClientUserIdOfSession i=63 i=78 i=12860 ClientUserIdHistory i=63 i=78 i=12860 AuthenticationMechanism i=63 i=78 i=12860 Encoding i=63 i=78 i=12860 TransportProtocol i=63 i=78 i=12860 SecurityMode i=63 i=78 i=12860 SecurityPolicyUri i=63 i=78 i=12860 ClientCertificate i=63 i=78 i=12860 SessionSecurityDiagnosticsType i=2245 i=2246 i=2247 i=2248 i=2249 i=2250 i=2251 i=2252 i=3058 i=63 SessionId i=63 i=78 i=2244 ClientUserIdOfSession i=63 i=78 i=2244 ClientUserIdHistory i=63 i=78 i=2244 AuthenticationMechanism i=63 i=78 i=2244 Encoding i=63 i=78 i=2244 TransportProtocol i=63 i=78 i=2244 SecurityMode i=63 i=78 i=2244 SecurityPolicyUri i=63 i=78 i=2244 ClientCertificate i=63 i=78 i=2244 OptionSetType i=11488 i=11701 i=63 OptionSetValues i=68 i=78 i=11487 BitMask i=68 i=80 i=11487 SelectionListType i=17632 i=17633 i=16312 i=63 Selections i=68 i=78 i=16309 SelectionDescriptions i=68 i=80 i=16309 RestrictToList i=68 i=80 i=16309 AudioVariableType i=17988 i=17989 i=17990 i=63 ListId i=68 i=80 i=17986 AgencyId i=68 i=80 i=17986 VersionId i=68 i=80 i=17986 EventTypes i=86 i=2041 i=61 Server i=2254 i=2255 i=2256 i=2267 i=2994 i=12885 i=2268 i=2274 i=2295 i=2296 i=11715 i=11492 i=12873 i=12749 i=12886 i=16313 i=85 i=2004 ServerArray The list of server URIs used by the server. i=68 i=2253 NamespaceArray The list of namespace URIs used by the server. i=68 i=2253 ServerStatus The current status of the server. i=2257 i=2258 i=2259 i=2260 i=2992 i=2993 i=2138 i=2253 StartTime i=63 i=2256 CurrentTime i=63 i=2256 State i=63 i=2256 BuildInfo i=2262 i=2263 i=2261 i=2264 i=2265 i=2266 i=3051 i=2256 ProductUri i=63 i=2260 ManufacturerName i=63 i=2260 ProductName i=63 i=2260 SoftwareVersion i=63 i=2260 BuildNumber i=63 i=2260 BuildDate i=63 i=2260 SecondsTillShutdown i=63 i=2256 ShutdownReason i=63 i=2256 ServiceLevel A value indicating the level of service the server can provide. 255 indicates the best. i=68 i=2253 Auditing A flag indicating whether the server is currently generating audit events. i=68 i=2253 EstimatedReturnTime Indicates the time at which the Server is expected to be available in the state RUNNING. i=68 i=2253 ServerCapabilities Describes capabilities supported by the server. i=2269 i=2271 i=2272 i=2735 i=2736 i=2737 i=3704 i=11702 i=11703 i=12911 i=11704 i=2996 i=2997 i=15606 i=2013 i=2253 ServerProfileArray A list of profiles supported by the server. i=68 i=2268 LocaleIdArray A list of locales supported by the server. i=68 i=2268 MinSupportedSampleRate The minimum sampling interval supported by the server. i=68 i=2268 MaxBrowseContinuationPoints The maximum number of continuation points for Browse operations per session. i=68 i=2268 MaxQueryContinuationPoints The maximum number of continuation points for Query operations per session. i=68 i=2268 MaxHistoryContinuationPoints The maximum number of continuation points for ReadHistory operations per session. i=68 i=2268 SoftwareCertificates The software certificates owned by the server. i=68 i=2268 MaxArrayLength The maximum length for an array value supported by the server. i=68 i=2268 MaxStringLength The maximum length for a string value supported by the server. i=68 i=2268 MaxByteStringLength The maximum length for a byte string value supported by the server. i=68 i=2268 OperationLimits Defines the limits supported by the server for different operations. i=11705 i=12165 i=12166 i=11707 i=12167 i=12168 i=11709 i=11710 i=11711 i=11712 i=11713 i=11714 i=11564 i=2268 MaxNodesPerRead The maximum number of operations in a single Read request. i=68 i=11704 MaxNodesPerHistoryReadData The maximum number of operations in a single data HistoryRead request. i=68 i=11704 MaxNodesPerHistoryReadEvents The maximum number of operations in a single event HistoryRead request. i=68 i=11704 MaxNodesPerWrite The maximum number of operations in a single Write request. i=68 i=11704 MaxNodesPerHistoryUpdateData The maximum number of operations in a single data HistoryUpdate request. i=68 i=11704 MaxNodesPerHistoryUpdateEvents The maximum number of operations in a single event HistoryUpdate request. i=68 i=11704 MaxNodesPerMethodCall The maximum number of operations in a single Call request. i=68 i=11704 MaxNodesPerBrowse The maximum number of operations in a single Browse request. i=68 i=11704 MaxNodesPerRegisterNodes The maximum number of operations in a single RegisterNodes request. i=68 i=11704 MaxNodesPerTranslateBrowsePathsToNodeIds The maximum number of operations in a single TranslateBrowsePathsToNodeIds request. i=68 i=11704 MaxNodesPerNodeManagement The maximum number of operations in a single AddNodes, AddReferences, DeleteNodes or DeleteReferences request. i=68 i=11704 MaxMonitoredItemsPerCall The maximum number of operations in a single MonitoredItem related request. i=68 i=11704 ModellingRules A folder for the modelling rules supported by the server. i=61 i=2268 AggregateFunctions A folder for the real time aggregates supported by the server. i=61 i=2268 Roles Describes the roles supported by the server. i=16301 i=16304 i=15607 i=2268 AddRole i=16302 i=16303 i=15606 InputArguments i=68 i=16301 i=297 RoleName i=12 -1 i=297 NamespaceUri i=12 -1 OutputArguments i=68 i=16301 i=297 RoleNodeId i=17 -1 RemoveRole i=16305 i=15606 InputArguments i=68 i=16304 i=297 RoleNodeId i=17 -1 ServerDiagnostics Reports diagnostics about the server. i=2275 i=2289 i=2290 i=3706 i=2294 i=2020 i=2253 ServerDiagnosticsSummary A summary of server level diagnostics. i=2276 i=2277 i=2278 i=2279 i=3705 i=2281 i=2282 i=2284 i=2285 i=2286 i=2287 i=2288 i=2150 i=2274 ServerViewCount i=63 i=2275 CurrentSessionCount i=63 i=2275 CumulatedSessionCount i=63 i=2275 SecurityRejectedSessionCount i=63 i=2275 RejectedSessionCount i=63 i=2275 SessionTimeoutCount i=63 i=2275 SessionAbortCount i=63 i=2275 PublishingIntervalCount i=63 i=2275 CurrentSubscriptionCount i=63 i=2275 CumulatedSubscriptionCount i=63 i=2275 SecurityRejectedRequestsCount i=63 i=2275 RejectedRequestsCount i=63 i=2275 SamplingIntervalDiagnosticsArray A list of diagnostics for each sampling interval supported by the server. i=2164 i=2274 SubscriptionDiagnosticsArray A list of diagnostics for each active subscription. i=2171 i=2274 SessionsDiagnosticsSummary A summary of session level diagnostics. i=3707 i=3708 i=2026 i=2274 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=3706 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=3706 EnabledFlag If TRUE the diagnostics collection is enabled. i=68 i=2274 VendorServerInfo Server information provided by the vendor. i=2033 i=2253 ServerRedundancy Describes the redundancy capabilities of the server. i=3709 i=11312 i=11313 i=11314 i=14415 i=2034 i=2253 RedundancySupport Indicates what style of redundancy is supported by the server. i=68 i=2296 CurrentServerId i=68 i=2296 RedundantServerArray i=68 i=2296 ServerUriArray i=68 i=2296 ServerNetworkGroups i=68 i=2296 Namespaces Describes the namespaces supported by the server. i=11645 i=2253 GetMonitoredItems i=11493 i=11494 i=2253 InputArguments i=68 i=11492 i=297 SubscriptionId i=7 -1 OutputArguments i=68 i=11492 i=297 ServerHandles i=7 1 i=297 ClientHandles i=7 1 ResendData i=12874 i=2253 InputArguments i=68 i=12873 i=297 SubscriptionId i=7 -1 SetSubscriptionDurable i=12750 i=12751 i=2253 InputArguments i=68 i=12749 i=297 SubscriptionId i=7 -1 i=297 LifetimeInHours i=7 -1 OutputArguments i=68 i=12749 i=297 RevisedLifetimeInHours i=7 -1 RequestServerStateChange i=12887 i=2253 InputArguments i=68 i=12886 i=297 State i=852 -1 i=297 EstimatedReturnTime i=13 -1 i=297 SecondsTillShutdown i=7 -1 i=297 Reason i=21 -1 i=297 Restart i=1 -1 CurrentTimeZone i=68 i=2253 BitFieldMaskDataType A mask of 32 bits that can be updated individually by using the top 32 bits as a mask. i=9 KeyValuePair i=22 EndpointType i=22 StateMachineType i=2769 i=2770 i=58 CurrentState i=3720 i=2755 i=78 i=2299 Id i=68 i=78 i=2769 LastTransition i=3724 i=2762 i=80 i=2299 Id i=68 i=78 i=2770 StateVariableType i=2756 i=2757 i=2758 i=2759 i=63 Id i=68 i=78 i=2755 Name i=68 i=80 i=2755 Number i=68 i=80 i=2755 EffectiveDisplayName i=68 i=80 i=2755 TransitionVariableType i=2763 i=2764 i=2765 i=2766 i=11456 i=63 Id i=68 i=78 i=2762 Name i=68 i=80 i=2762 Number i=68 i=80 i=2762 TransitionTime i=68 i=80 i=2762 EffectiveTransitionTime i=68 i=80 i=2762 FiniteStateMachineType i=2772 i=2773 i=17635 i=17636 i=2299 CurrentState i=3728 i=2760 i=78 i=2771 Id i=68 i=78 i=2772 LastTransition i=3732 i=2767 i=80 i=2771 Id i=68 i=78 i=2773 AvailableStates i=63 i=80 i=2771 AvailableTransitions i=63 i=80 i=2771 FiniteStateVariableType i=2761 i=2755 Id i=68 i=78 i=2760 FiniteTransitionVariableType i=2768 i=2762 Id i=68 i=78 i=2767 StateType i=2308 i=58 StateNumber i=68 i=78 i=2307 InitialStateType i=2307 TransitionType i=2312 i=58 TransitionNumber i=68 i=78 i=2310 TransitionEventType i=2774 i=2775 i=2776 i=2041 Transition i=3754 i=2762 i=78 i=2311 Id i=68 i=78 i=2774 FromState i=3746 i=2755 i=78 i=2311 Id i=68 i=78 i=2775 ToState i=3750 i=2755 i=78 i=2311 Id i=68 i=78 i=2776 AuditUpdateStateEventType i=2777 i=2778 i=2127 OldStateId i=68 i=78 i=2315 NewStateId i=68 i=78 i=2315 FileDirectoryType i=13354 i=13366 i=13387 i=13390 i=13393 i=13395 i=61 <FileDirectoryName> i=13355 i=13358 i=17718 i=13363 i=13353 i=11508 i=13353 CreateDirectory i=13356 i=13357 i=78 i=13354 InputArguments i=68 i=78 i=13355 i=297 DirectoryName i=12 -1 OutputArguments i=68 i=78 i=13355 i=297 DirectoryNodeId i=17 -1 CreateFile i=13359 i=13360 i=78 i=13354 InputArguments i=68 i=78 i=13358 i=297 FileName i=12 -1 i=297 RequestFileOpen i=1 -1 OutputArguments i=68 i=78 i=13358 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 Delete i=17719 i=78 i=13354 InputArguments i=68 i=78 i=17718 i=297 ObjectToDelete i=17 -1 MoveOrCopy i=13364 i=13365 i=78 i=13354 InputArguments i=68 i=78 i=13363 i=297 ObjectToMoveOrCopy i=17 -1 i=297 TargetDirectory i=17 -1 i=297 CreateCopy i=1 -1 i=297 NewName i=12 -1 OutputArguments i=68 i=78 i=13363 i=297 NewNodeId i=17 -1 <FileName> i=13367 i=13368 i=13369 i=13370 i=13372 i=13375 i=13377 i=13380 i=13382 i=13385 i=11575 i=11508 i=13353 Size The size of the file in bytes. i=68 i=78 i=13366 Writable Whether the file is writable. i=68 i=78 i=13366 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13366 OpenCount The current number of open file handles. i=68 i=78 i=13366 Open i=13373 i=13374 i=78 i=13366 InputArguments i=68 i=78 i=13372 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13372 i=297 FileHandle i=7 -1 Close i=13376 i=78 i=13366 InputArguments i=68 i=78 i=13375 i=297 FileHandle i=7 -1 Read i=13378 i=13379 i=78 i=13366 InputArguments i=68 i=78 i=13377 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13377 i=297 Data i=15 -1 Write i=13381 i=78 i=13366 InputArguments i=68 i=78 i=13380 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13383 i=13384 i=78 i=13366 InputArguments i=68 i=78 i=13382 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13382 i=297 Position i=9 -1 SetPosition i=13386 i=78 i=13366 InputArguments i=68 i=78 i=13385 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 CreateDirectory i=13388 i=13389 i=78 i=13353 InputArguments i=68 i=78 i=13387 i=297 DirectoryName i=12 -1 OutputArguments i=68 i=78 i=13387 i=297 DirectoryNodeId i=17 -1 CreateFile i=13391 i=13392 i=78 i=13353 InputArguments i=68 i=78 i=13390 i=297 FileName i=12 -1 i=297 RequestFileOpen i=1 -1 OutputArguments i=68 i=78 i=13390 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 Delete i=13394 i=78 i=13353 InputArguments i=68 i=78 i=13393 i=297 ObjectToDelete i=17 -1 MoveOrCopy i=13396 i=13397 i=78 i=13353 InputArguments i=68 i=78 i=13395 i=297 ObjectToMoveOrCopy i=17 -1 i=297 TargetDirectory i=17 -1 i=297 CreateCopy i=1 -1 i=297 NewName i=12 -1 OutputArguments i=68 i=78 i=13395 i=297 NewNodeId i=17 -1 FileSystem i=16348 i=16351 i=16354 i=16356 i=13353 CreateDirectory i=16349 i=16350 i=16314 InputArguments i=68 i=16348 i=297 DirectoryName i=12 -1 OutputArguments i=68 i=16348 i=297 DirectoryNodeId i=17 -1 CreateFile i=16352 i=16353 i=16314 InputArguments i=68 i=16351 i=297 FileName i=12 -1 i=297 RequestFileOpen i=1 -1 OutputArguments i=68 i=16351 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 Delete i=16355 i=16314 InputArguments i=68 i=16354 i=297 ObjectToDelete i=17 -1 MoveOrCopy i=16357 i=16358 i=16314 InputArguments i=68 i=16356 i=297 ObjectToMoveOrCopy i=17 -1 i=297 TargetDirectory i=17 -1 i=297 CreateCopy i=1 -1 i=297 NewName i=12 -1 OutputArguments i=68 i=16356 i=297 NewNodeId i=17 -1 TemporaryFileTransferType i=15745 i=15746 i=15749 i=15751 i=15754 i=58 ClientProcessingTimeout i=68 i=78 i=15744 GenerateFileForRead i=15747 i=15748 i=78 i=15744 InputArguments i=68 i=78 i=15746 i=297 GenerateOptions i=24 -1 OutputArguments i=68 i=78 i=15746 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 i=297 CompletionStateMachine i=17 -1 GenerateFileForWrite i=16359 i=15750 i=78 i=15744 InputArguments i=68 i=78 i=15749 i=297 GenerateOptions i=24 -1 OutputArguments i=68 i=78 i=15749 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 CloseAndCommit i=15752 i=15753 i=78 i=15744 InputArguments i=68 i=78 i=15751 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=15751 i=297 CompletionStateMachine i=17 -1 <TransferState> i=15755 i=15794 i=15803 i=11508 i=15744 CurrentState i=15756 i=2760 i=78 i=15754 Id i=68 i=78 i=15755 Reset i=78 i=15754 FileTransferStateMachineType i=15815 i=15817 i=15819 i=15821 i=15823 i=15825 i=15827 i=15829 i=15831 i=15833 i=15835 i=15837 i=15839 i=15841 i=15843 i=2771 Idle i=15816 i=2309 i=15803 StateNumber i=68 i=78 i=15815 ReadPrepare i=15818 i=2307 i=15803 StateNumber i=68 i=78 i=15817 ReadTransfer i=15820 i=2307 i=15803 StateNumber i=68 i=78 i=15819 ApplyWrite i=15822 i=2307 i=15803 StateNumber i=68 i=78 i=15821 Error i=15824 i=2307 i=15803 StateNumber i=68 i=78 i=15823 IdleToReadPrepare i=15826 i=2310 i=15803 TransitionNumber i=68 i=78 i=15825 ReadPrepareToReadTransfer i=15828 i=2310 i=15803 TransitionNumber i=68 i=78 i=15827 ReadTransferToIdle i=15830 i=2310 i=15803 TransitionNumber i=68 i=78 i=15829 IdleToApplyWrite i=15832 i=2310 i=15803 TransitionNumber i=68 i=78 i=15831 ApplyWriteToIdle i=15834 i=2310 i=15803 TransitionNumber i=68 i=78 i=15833 ReadPrepareToError i=15836 i=2310 i=15803 TransitionNumber i=68 i=78 i=15835 ReadTransferToError i=15838 i=2310 i=15803 TransitionNumber i=68 i=78 i=15837 ApplyWriteToError i=15840 i=2310 i=15803 TransitionNumber i=68 i=78 i=15839 ErrorToIdle i=15842 i=2310 i=15803 TransitionNumber i=68 i=78 i=15841 Reset i=78 i=15803 RoleSetType A container for the roles supported by the server. i=15608 i=15997 i=16000 i=58 <RoleName> i=16162 i=15620 i=11508 i=15607 Identities i=68 i=78 i=15608 AddRole i=15998 i=15999 i=78 i=15607 InputArguments i=68 i=78 i=15997 i=297 RoleName i=12 -1 i=297 NamespaceUri i=12 -1 OutputArguments i=68 i=78 i=15997 i=297 RoleNodeId i=17 -1 RemoveRole i=16001 i=78 i=15607 InputArguments i=68 i=78 i=16000 i=297 RoleNodeId i=17 -1 RoleType i=16173 i=16174 i=15410 i=16175 i=15411 i=15624 i=15626 i=16176 i=16178 i=16180 i=16182 i=58 Identities i=68 i=78 i=15620 Applications i=68 i=80 i=15620 ApplicationsExclude i=68 i=80 i=15620 Endpoints i=68 i=80 i=15620 EndpointsExclude i=68 i=80 i=15620 AddIdentity i=15625 i=80 i=15620 InputArguments i=68 i=78 i=15624 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15627 i=80 i=15620 InputArguments i=68 i=78 i=15626 i=297 RuleToRemove i=15634 -1 AddApplication i=16177 i=80 i=15620 InputArguments i=68 i=78 i=16176 i=297 RuleToAdd i=12 -1 RemoveApplication i=16179 i=80 i=15620 InputArguments i=68 i=78 i=16178 i=297 RuleToRemove i=12 -1 AddEndpoint i=16181 i=80 i=15620 InputArguments i=68 i=78 i=16180 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16183 i=80 i=15620 InputArguments i=68 i=78 i=16182 i=297 RuleToRemove i=12 -1 IdentityCriteriaType i=15633 i=29 EnumValues i=68 i=78 i=15632 i=7616 1 UserName i=7616 2 Thumbprint i=7616 3 Role i=7616 4 GroupId i=7616 5 Anonymous i=7616 6 AuthenticatedUser IdentityMappingRuleType i=22 RoleMappingRuleChangedAuditEventType i=2127 Anonymous The Role has very limited access for use when a Session has anonymous credentials. i=16192 i=16193 i=15412 i=16194 i=15413 i=15648 i=15650 i=16195 i=16197 i=16199 i=16201 i=15606 i=15620 Identities i=68 i=15644 Applications i=68 i=15644 ApplicationsExclude i=68 i=15644 Endpoints i=68 i=15644 EndpointsExclude i=68 i=15644 AddIdentity i=15649 i=15644 InputArguments i=68 i=15648 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15651 i=15644 InputArguments i=68 i=15650 i=297 RuleToRemove i=15634 -1 AddApplication i=16196 i=15644 InputArguments i=68 i=16195 i=297 RuleToAdd i=12 -1 RemoveApplication i=16198 i=15644 InputArguments i=68 i=16197 i=297 RuleToRemove i=12 -1 AddEndpoint i=16200 i=15644 InputArguments i=68 i=16199 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16202 i=15644 InputArguments i=68 i=16201 i=297 RuleToRemove i=12 -1 AuthenticatedUser The Role has limited access for use when a Session has valid non-anonymous credentials but has not been explicity granted access to a Role. i=16203 i=16204 i=15414 i=16205 i=15415 i=15660 i=15662 i=16206 i=16208 i=16210 i=16212 i=15606 i=15620 Identities i=68 i=15656 Applications i=68 i=15656 ApplicationsExclude i=68 i=15656 Endpoints i=68 i=15656 EndpointsExclude i=68 i=15656 AddIdentity i=15661 i=15656 InputArguments i=68 i=15660 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15663 i=15656 InputArguments i=68 i=15662 i=297 RuleToRemove i=15634 -1 AddApplication i=16207 i=15656 InputArguments i=68 i=16206 i=297 RuleToAdd i=12 -1 RemoveApplication i=16209 i=15656 InputArguments i=68 i=16208 i=297 RuleToRemove i=12 -1 AddEndpoint i=16211 i=15656 InputArguments i=68 i=16210 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16213 i=15656 InputArguments i=68 i=16212 i=297 RuleToRemove i=12 -1 Observer The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events. i=16214 i=16215 i=15416 i=16216 i=15417 i=15672 i=15674 i=16217 i=16219 i=16221 i=16223 i=15606 i=15620 Identities i=68 i=15668 Applications i=68 i=15668 ApplicationsExclude i=68 i=15668 Endpoints i=68 i=15668 EndpointsExclude i=68 i=15668 AddIdentity i=15673 i=15668 InputArguments i=68 i=15672 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15675 i=15668 InputArguments i=68 i=15674 i=297 RuleToRemove i=15634 -1 AddApplication i=16218 i=15668 InputArguments i=68 i=16217 i=297 RuleToAdd i=12 -1 RemoveApplication i=16220 i=15668 InputArguments i=68 i=16219 i=297 RuleToRemove i=12 -1 AddEndpoint i=16222 i=15668 InputArguments i=68 i=16221 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16224 i=15668 InputArguments i=68 i=16223 i=297 RuleToRemove i=12 -1 Operator The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events. i=16225 i=16226 i=15418 i=16227 i=15423 i=15684 i=15686 i=16228 i=16230 i=16232 i=16234 i=15606 i=15620 Identities i=68 i=15680 Applications i=68 i=15680 ApplicationsExclude i=68 i=15680 Endpoints i=68 i=15680 EndpointsExclude i=68 i=15680 AddIdentity i=15685 i=15680 InputArguments i=68 i=15684 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15687 i=15680 InputArguments i=68 i=15686 i=297 RuleToRemove i=15634 -1 AddApplication i=16229 i=15680 InputArguments i=68 i=16228 i=297 RuleToAdd i=12 -1 RemoveApplication i=16231 i=15680 InputArguments i=68 i=16230 i=297 RuleToRemove i=12 -1 AddEndpoint i=16233 i=15680 InputArguments i=68 i=16232 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16235 i=15680 InputArguments i=68 i=16234 i=297 RuleToRemove i=12 -1 Engineer The Role is allowed to browse, read live data, read and update historical data/events, call methods or subscribe to data/events. i=16236 i=16237 i=15424 i=16238 i=15425 i=16041 i=16043 i=16239 i=16241 i=16243 i=16245 i=15606 i=15620 Identities i=68 i=16036 Applications i=68 i=16036 ApplicationsExclude i=68 i=16036 Endpoints i=68 i=16036 EndpointsExclude i=68 i=16036 AddIdentity i=16042 i=16036 InputArguments i=68 i=16041 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=16044 i=16036 InputArguments i=68 i=16043 i=297 RuleToRemove i=15634 -1 AddApplication i=16240 i=16036 InputArguments i=68 i=16239 i=297 RuleToAdd i=12 -1 RemoveApplication i=16242 i=16036 InputArguments i=68 i=16241 i=297 RuleToRemove i=12 -1 AddEndpoint i=16244 i=16036 InputArguments i=68 i=16243 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16246 i=16036 InputArguments i=68 i=16245 i=297 RuleToRemove i=12 -1 Supervisor The Role is allowed to browse, read live data, read and historical data/events, call methods or subscribe to data/events. i=16247 i=16248 i=15426 i=16249 i=15427 i=15696 i=15698 i=16250 i=16252 i=16254 i=16256 i=15606 i=15620 Identities i=68 i=15692 Applications i=68 i=15692 ApplicationsExclude i=68 i=15692 Endpoints i=68 i=15692 EndpointsExclude i=68 i=15692 AddIdentity i=15697 i=15692 InputArguments i=68 i=15696 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15699 i=15692 InputArguments i=68 i=15698 i=297 RuleToRemove i=15634 -1 AddApplication i=16251 i=15692 InputArguments i=68 i=16250 i=297 RuleToAdd i=12 -1 RemoveApplication i=16253 i=15692 InputArguments i=68 i=16252 i=297 RuleToRemove i=12 -1 AddEndpoint i=16255 i=15692 InputArguments i=68 i=16254 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16257 i=15692 InputArguments i=68 i=16256 i=297 RuleToRemove i=12 -1 ConfigureAdmin The Role is allowed to change the non-security related configuration settings. i=16269 i=16270 i=15428 i=16271 i=15429 i=15720 i=15722 i=16272 i=16274 i=16276 i=16278 i=15606 i=15620 Identities i=68 i=15716 Applications i=68 i=15716 ApplicationsExclude i=68 i=15716 Endpoints i=68 i=15716 EndpointsExclude i=68 i=15716 AddIdentity i=15721 i=15716 InputArguments i=68 i=15720 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15723 i=15716 InputArguments i=68 i=15722 i=297 RuleToRemove i=15634 -1 AddApplication i=16273 i=15716 InputArguments i=68 i=16272 i=297 RuleToAdd i=12 -1 RemoveApplication i=16275 i=15716 InputArguments i=68 i=16274 i=297 RuleToRemove i=12 -1 AddEndpoint i=16277 i=15716 InputArguments i=68 i=16276 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16279 i=15716 InputArguments i=68 i=16278 i=297 RuleToRemove i=12 -1 SecurityAdmin The Role is allowed to change security related settings. i=16258 i=16259 i=15430 i=16260 i=15527 i=15708 i=15710 i=16261 i=16263 i=16265 i=16267 i=15606 i=15620 Identities i=68 i=15704 Applications i=68 i=15704 ApplicationsExclude i=68 i=15704 Endpoints i=68 i=15704 EndpointsExclude i=68 i=15704 AddIdentity i=15709 i=15704 InputArguments i=68 i=15708 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15711 i=15704 InputArguments i=68 i=15710 i=297 RuleToRemove i=15634 -1 AddApplication i=16262 i=15704 InputArguments i=68 i=16261 i=297 RuleToAdd i=12 -1 RemoveApplication i=16264 i=15704 InputArguments i=68 i=16263 i=297 RuleToRemove i=12 -1 AddEndpoint i=16266 i=15704 InputArguments i=68 i=16265 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16268 i=15704 InputArguments i=68 i=16267 i=297 RuleToRemove i=12 -1 BuildInfo i=22 RedundancySupport i=7611 i=29 EnumStrings i=68 i=78 i=851 None Cold Warm Hot Transparent HotAndMirrored ServerState i=7612 i=29 EnumStrings i=68 i=78 i=852 Running Failed NoConfiguration Suspended Shutdown Test CommunicationFault Unknown RedundantServerDataType i=22 EndpointUrlListDataType i=22 NetworkGroupDataType i=22 SamplingIntervalDiagnosticsDataType i=22 ServerDiagnosticsSummaryDataType i=22 ServerStatusDataType i=22 SessionDiagnosticsDataType i=22 SessionSecurityDiagnosticsDataType i=22 ServiceCounterDataType i=22 StatusResult i=22 SubscriptionDiagnosticsDataType i=22 ModelChangeStructureDataType i=22 SemanticChangeStructureDataType i=22 Default Binary i=14533 i=14873 i=76 Default Binary i=15528 i=15734 i=76 Default Binary i=15634 i=15738 i=76 Default Binary i=338 i=7692 i=76 Default Binary i=853 i=8208 i=76 Default Binary i=11943 i=11959 i=76 Default Binary i=11944 i=11962 i=76 Default Binary i=856 i=8211 i=76 Default Binary i=859 i=8214 i=76 Default Binary i=862 i=8217 i=76 Default Binary i=865 i=8220 i=76 Default Binary i=868 i=8223 i=76 Default Binary i=871 i=8226 i=76 Default Binary i=299 i=7659 i=76 Default Binary i=874 i=8229 i=76 Default Binary i=877 i=8232 i=76 Default Binary i=897 i=8235 i=76 Opc.Ua i=7619 i=15037 i=14873 i=15734 i=15738 i=12681 i=15741 i=14855 i=15599 i=15602 i=15501 i=15521 i=14849 i=14852 i=14876 i=15766 i=15769 i=14324 i=15772 i=15775 i=15778 i=15781 i=15784 i=15787 i=21156 i=15793 i=15854 i=15857 i=15860 i=21159 i=21162 i=21165 i=15866 i=15869 i=15872 i=15877 i=15880 i=15883 i=15886 i=21002 i=15889 i=21168 i=15895 i=15898 i=15919 i=15922 i=15925 i=15931 i=17469 i=21171 i=15524 i=15940 i=15943 i=15946 i=16131 i=18178 i=18181 i=18184 i=18187 i=7650 i=7656 i=14870 i=12767 i=12770 i=8914 i=7665 i=12213 i=7662 i=7668 i=7782 i=12902 i=12905 i=7698 i=7671 i=7674 i=7677 i=7680 i=7683 i=7728 i=7731 i=7734 i=7737 i=12718 i=12721 i=7686 i=7929 i=7932 i=7935 i=7938 i=7941 i=7944 i=7947 i=8004 i=8067 i=8073 i=8076 i=8172 i=7692 i=8208 i=11959 i=11962 i=8211 i=8214 i=8217 i=8220 i=8223 i=8226 i=7659 i=8229 i=8232 i=8235 i=8238 i=8241 i=12183 i=12186 i=12091 i=12094 i=8247 i=15398 i=8244 i=93 i=72 PG9wYzpUeXBlRGljdGlvbmFyeQ0KICB4bWxuczpvcGM9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9y Zy9CaW5hcnlTY2hlbWEvIg0KICB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1M U2NoZW1hLWluc3RhbmNlIg0KICB4bWxuczp1YT0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VB LyINCiAgeG1sbnM6dG5zPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvVUEvIg0KICBEZWZhdWx0 Qnl0ZU9yZGVyPSJMaXR0bGVFbmRpYW4iDQogIFRhcmdldE5hbWVzcGFjZT0iaHR0cDovL29wY2Zv dW5kYXRpb24ub3JnL1VBLyINCj4NCg0KICA8b3BjOkltcG9ydCBOYW1lc3BhY2U9Imh0dHA6Ly9v cGNmb3VuZGF0aW9uLm9yZy9CaW5hcnlTY2hlbWEvIiAvPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iWG1sRWxlbWVudCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkFuIFhNTCBlbGVt ZW50IGVuY29kZWQgYXMgYSBVVEYtOCBzdHJpbmcuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ikxlbmd0aCIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0ib3BjOkNoYXIiIExlbmd0aEZpZWxkPSJMZW5n dGgiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUg TmFtZT0iTm9kZUlkVHlwZSIgTGVuZ3RoSW5CaXRzPSI2Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+VGhlIHBvc3NpYmxlIGVuY29kaW5ncyBmb3IgYSBOb2RlSWQgdmFsdWUuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUd29CeXRlIiBWYWx1ZT0i MCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJGb3VyQnl0ZSIgVmFsdWU9IjEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTnVtZXJpYyIgVmFsdWU9IjIiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU3RyaW5nIiBWYWx1ZT0iMyIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJHdWlkIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJCeXRlU3RyaW5nIiBWYWx1ZT0iNSIgLz4NCiAgPC9vcGM6 RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUd29CeXRlTm9k ZUlkIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklkZW50aWZpZXIiIFR5cGVOYW1lPSJvcGM6Qnl0 ZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJGb3VyQnl0ZU5vZGVJZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VJbmRl eCIgVHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSWRlbnRpZmll ciIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTnVtZXJpY05vZGVJZCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOYW1lc3BhY2VJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJZGVudGlmaWVyIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTdHJpbmdO b2RlSWQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTmFtZXNwYWNlSW5kZXgiIFR5cGVOYW1lPSJv cGM6VUludDE2IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSWRlbnRpZmllciIgVHlwZU5hbWU9 Im9wYzpDaGFyQXJyYXkiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iR3VpZE5vZGVJZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1l c3BhY2VJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJJZGVudGlmaWVyIiBUeXBlTmFtZT0ib3BjOkd1aWQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnl0ZVN0cmluZ05vZGVJZCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MTYi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJZGVudGlmaWVyIiBUeXBlTmFtZT0ib3BjOkJ5dGVT dHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iTm9kZUlkIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QW4gaWRlbnRpZmllciBm b3IgYSBub2RlIGluIGEgVUEgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlv bj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZFR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWRU eXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzZXJ2ZWQxIiBUeXBlTmFtZT0ib3BjOkJp dCIgTGVuZ3RoPSIyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHdvQnl0ZSIgVHlwZU5hbWU9 InVhOlR3b0J5dGVOb2RlSWQiIFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0i MCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZvdXJCeXRlIiBUeXBlTmFtZT0idWE6Rm91ckJ5 dGVOb2RlSWQiIFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0iMSIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik51bWVyaWMiIFR5cGVOYW1lPSJ1YTpOdW1lcmljTm9kZUlkIiBT d2l0Y2hGaWVsZD0iTm9kZUlkVHlwZSIgU3dpdGNoVmFsdWU9IjIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJTdHJpbmciIFR5cGVOYW1lPSJ1YTpTdHJpbmdOb2RlSWQiIFN3aXRjaEZpZWxkPSJO b2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0iMyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikd1aWQi IFR5cGVOYW1lPSJ1YTpHdWlkTm9kZUlkIiBTd2l0Y2hGaWVsZD0iTm9kZUlkVHlwZSIgU3dpdGNo VmFsdWU9IjQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCeXRlU3RyaW5nIiBUeXBlTmFtZT0i dWE6Qnl0ZVN0cmluZ05vZGVJZCIgU3dpdGNoRmllbGQ9Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVl PSI1IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBl IE5hbWU9IkV4cGFuZGVkTm9kZUlkIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QW4gaWRlbnRp ZmllciBmb3IgYSBub2RlIGluIGEgVUEgc2VydmVyIGFkZHJlc3Mgc3BhY2UgcXVhbGlmaWVkIHdp dGggYSBjb21wbGV0ZSBuYW1lc3BhY2Ugc3RyaW5nLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb2RlSWRUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkVHlwZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckluZGV4U3BlY2lmaWVkIiBUeXBlTmFtZT0ib3Bj OkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVSSVNwZWNpZmllZCIgVHlw ZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUd29CeXRlIiBUeXBlTmFt ZT0idWE6VHdvQnl0ZU5vZGVJZCIgU3dpdGNoRmllbGQ9Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVl PSIwIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRm91ckJ5dGUiIFR5cGVOYW1lPSJ1YTpGb3Vy Qnl0ZU5vZGVJZCIgU3dpdGNoRmllbGQ9Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVlPSIxIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTnVtZXJpYyIgVHlwZU5hbWU9InVhOk51bWVyaWNOb2RlSWQi IFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlN0cmluZyIgVHlwZU5hbWU9InVhOlN0cmluZ05vZGVJZCIgU3dpdGNoRmllbGQ9 Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iR3Vp ZCIgVHlwZU5hbWU9InVhOkd1aWROb2RlSWQiIFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0 Y2hWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJ5dGVTdHJpbmciIFR5cGVOYW1l PSJ1YTpCeXRlU3RyaW5nTm9kZUlkIiBTd2l0Y2hGaWVsZD0iTm9kZUlkVHlwZSIgU3dpdGNoVmFs dWU9IjUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VVUkkiIFR5cGVOYW1lPSJv cGM6Q2hhckFycmF5IiBTd2l0Y2hGaWVsZD0iTmFtZXNwYWNlVVJJU3BlY2lmaWVkIi8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFN3aXRj aEZpZWxkPSJTZXJ2ZXJJbmRleFNwZWNpZmllZCIvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iU3RhdHVzQ29kZSIgTGVuZ3RoSW5CaXRzPSIzMiIg Qnl0ZU9yZGVyU2lnbmlmaWNhbnQ9InRydWUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIDMy LWJpdCBzdGF0dXMgY29kZSB2YWx1ZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFx dWVUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGlhZ25vc3RpY0luZm8iPg0K ICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHJlY3Vyc2l2ZSBzdHJ1Y3R1cmUgY29udGFpbmluZyBk aWFnbm9zdGljIGluZm9ybWF0aW9uIGFzc29jaWF0ZWQgd2l0aCBhIHN0YXR1cyBjb2RlLjwvb3Bj OkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTeW1ib2xpY0lkU3BlY2lmaWVk IiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVS SVNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJM b2NhbGVTcGVjaWZpZWQiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTG9jYWxpemVkVGV4dFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJBZGRpdGlvbmFsSW5mb1NwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJbm5lclN0YXR1c0NvZGVTcGVjaWZpZWQiIFR5cGVO YW1lPSJvcGM6Qml0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5uZXJEaWFnbm9zdGljSW5m b1NwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9IjIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJTeW1ib2xpY0lkIiBUeXBlTmFtZT0ib3BjOkludDMyIiBTd2l0Y2hGaWVsZD0iU3lt Ym9saWNJZFNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVSSSIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgU3dpdGNoRmllbGQ9Ik5hbWVzcGFjZVVSSVNwZWNpZmllZCIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsZSIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgU3dp dGNoRmllbGQ9IkxvY2FsZVNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2Fs aXplZFRleHQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIFN3aXRjaEZpZWxkPSJMb2NhbGl6ZWRUZXh0 U3BlY2lmaWVkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWRkaXRpb25hbEluZm8iIFR5cGVO YW1lPSJvcGM6Q2hhckFycmF5IiBTd2l0Y2hGaWVsZD0iQWRkaXRpb25hbEluZm9TcGVjaWZpZWQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJbm5lclN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpT dGF0dXNDb2RlIiBTd2l0Y2hGaWVsZD0iSW5uZXJTdGF0dXNDb2RlU3BlY2lmaWVkIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iSW5uZXJEaWFnbm9zdGljSW5mbyIgVHlwZU5hbWU9InVhOkRpYWdu b3N0aWNJbmZvIiBTd2l0Y2hGaWVsZD0iSW5uZXJEaWFnbm9zdGljSW5mb1NwZWNpZmllZCIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJR dWFsaWZpZWROYW1lIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBzdHJpbmcgcXVhbGlmaWVk IHdpdGggYSBuYW1lc3BhY2UgaW5kZXguPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5hbWVzcGFjZUluZGV4IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpDaGFyQXJyYXkiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTG9jYWxpemVk VGV4dCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgc3RyaW5nIHF1YWxpZmllZCB3aXRoIGEg bmFtZXNwYWNlIGluZGV4Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJMb2NhbGVTcGVjaWZpZWQiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iVGV4dFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9IjYiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJMb2NhbGUiIFR5cGVOYW1lPSJvcGM6Q2hhckFycmF5IiBTd2l0Y2hG aWVsZD0iTG9jYWxlU3BlY2lmaWVkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGV4dCIgVHlw ZU5hbWU9Im9wYzpDaGFyQXJyYXkiIFN3aXRjaEZpZWxkPSJUZXh0U3BlY2lmaWVkIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFW YWx1ZSI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgdmFsdWUgd2l0aCBhbiBhc3NvY2lhdGVk IHRpbWVzdGFtcCwgYW5kIHF1YWxpdHkuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlZhbHVlU3BlY2lmaWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlN0YXR1c0NvZGVTcGVjaWZpZWQiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU291cmNlVGltZXN0YW1wU3BlY2lmaWVkIiBUeXBlTmFtZT0i b3BjOkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvdXJjZVBpY29zZWNvbmRzU3BlY2lm aWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlclRp bWVzdGFtcFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTZXJ2ZXJQaWNvc2Vjb25kc1NwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9 IjIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOlZhcmlhbnQi IFN3aXRjaEZpZWxkPSJWYWx1ZVNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0 YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBTd2l0Y2hGaWVsZD0iU3RhdHVzQ29k ZVNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvdXJjZVRpbWVzdGFtcCIgVHlw ZU5hbWU9Im9wYzpEYXRlVGltZSIgU3dpdGNoRmllbGQ9IlNvdXJjZVRpbWVzdGFtcFNwZWNpZmll ZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvdXJjZVBpY29zZWNvbmRzIiBUeXBlTmFtZT0i b3BjOlVJbnQxNiIgU3dpdGNoRmllbGQ9IlNvdXJjZVBpY29zZWNvbmRzU3BlY2lmaWVkIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyVGltZXN0YW1wIiBUeXBlTmFtZT0ib3BjOkRhdGVU aW1lIiBTd2l0Y2hGaWVsZD0iU2VydmVyVGltZXN0YW1wU3BlY2lmaWVkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyUGljb3NlY29uZHMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTd2l0 Y2hGaWVsZD0iU2VydmVyUGljb3NlY29uZHNTcGVjaWZpZWQiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBzZXJpYWxpemVkIG9iamVjdCBwcmVmaXhlZCB3aXRo IGl0cyBkYXRhIHR5cGUgaWRlbnRpZmllci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVHlwZUlkU3BlY2lmaWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkJpbmFyeUJvZHkiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iWG1sQm9keSIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9IjUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJUeXBlSWQiIFR5cGVOYW1lPSJ1YTpFeHBhbmRlZE5vZGVJZCIg U3dpdGNoRmllbGQ9IlR5cGVJZFNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJv ZHlMZW5ndGgiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJC b2R5IiBUeXBlTmFtZT0ib3BjOkJ5dGUiIExlbmd0aEZpZWxkPSJCb2R5TGVuZ3RoIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZhcmlh bnQiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHVuaW9uIG9mIHNldmVyYWwgdHlwZXMuPC9v cGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlZhcmlhbnRUeXBlIiBUeXBl TmFtZT0ib3BjOkJpdCIgTGVuZ3RoPSI2IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlE aW1lbnNpb25zU3BlY2lmaWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgTGVuZ3RoPSIxIi8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJBcnJheUxlbmd0aFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQi IExlbmd0aD0iMSIvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlMZW5ndGgiIFR5cGVOYW1l PSJvcGM6SW50MzIiIFN3aXRjaEZpZWxkPSJBcnJheUxlbmd0aFNwZWNpZmllZCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkJvb2xlYW4iIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgTGVuZ3RoRmll bGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSIx IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU0J5dGUiIFR5cGVOYW1lPSJvcGM6U0J5dGUiIExl bmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0Y2hW YWx1ZT0iMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJ5dGUiIFR5cGVOYW1lPSJvcGM6Qnl0 ZSIgTGVuZ3RoRmllbGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3 aXRjaFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW50MTYiIFR5cGVOYW1lPSJv cGM6SW50MTYiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRU eXBlIiBTd2l0Y2hWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVJbnQxNiIgVHlw ZU5hbWU9Im9wYzpVSW50MTYiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9 IlZhcmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iNSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Iklu dDMyIiBUeXBlTmFtZT0ib3BjOkludDMyIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRj aEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjYiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJVSW50MzIiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5n dGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjciIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJbnQ2NCIgVHlwZU5hbWU9Im9wYzpJbnQ2NCIgTGVuZ3RoRmllbGQ9IkFy cmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSI4IiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iVUludDY0IiBUeXBlTmFtZT0ib3BjOlVJbnQ2NCIgTGVuZ3Ro RmllbGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVl PSI5IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRmxvYXQiIFR5cGVOYW1lPSJvcGM6RmxvYXQi IExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0 Y2hWYWx1ZT0iMTAiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEb3VibGUiIFR5cGVOYW1lPSJv cGM6RG91YmxlIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50 VHlwZSIgU3dpdGNoVmFsdWU9IjExIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RyaW5nIiBU eXBlTmFtZT0ib3BjOkNoYXJBcnJheSIgTGVuZ3RoRmllbGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hG aWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSIxMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkRhdGVUaW1lIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiBMZW5ndGhGaWVsZD0iQXJyYXlM ZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjEzIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iR3VpZCIgVHlwZU5hbWU9Im9wYzpHdWlkIiBMZW5ndGhGaWVsZD0i QXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjE0IiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQnl0ZVN0cmluZyIgVHlwZU5hbWU9Im9wYzpCeXRlU3Ry aW5nIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIg U3dpdGNoVmFsdWU9IjE1IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iWG1sRWxlbWVudCIgVHlw ZU5hbWU9InVhOlhtbEVsZW1lbnQiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmll bGQ9IlZhcmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iMTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIg U3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iMTciIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJFeHBhbmRlZE5vZGVJZCIgVHlwZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiBM ZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNo VmFsdWU9IjE4IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9 InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZh cmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iMTkiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJRdWFs aWZpZWROYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgTGVuZ3RoRmllbGQ9IkFycmF5 TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSIyMCIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsaXplZFRleHQiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRU ZXh0IiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIg U3dpdGNoVmFsdWU9IjIxIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXh0ZW5zaW9uT2JqZWN0 IiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgi IFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjIyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRGF0YVZhbHVlIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBMZW5ndGhGaWVs ZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjIz IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmFyaWFudCIgVHlwZU5hbWU9InVhOlZhcmlhbnQi IExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0 Y2hWYWx1ZT0iMjQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mbyIgVHlw ZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRj aEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjI1IiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgU3dpdGNoRmll bGQ9IkFycmF5RGltZW5zaW9uc1NwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFy cmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZBcnJh eURpbWVuc2lvbnMiIFN3aXRjaEZpZWxkPSJBcnJheURpbWVuc2lvbnNTcGVjaWZpZWQiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iTmFt aW5nUnVsZVR5cGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9Ik1hbmRhdG9yeSIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iT3B0aW9uYWwiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IkNvbnN0cmFpbnQiIFZhbHVlPSIzIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCiAg ICANCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iSW1hZ2VCTVAiPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5BbiBpbWFnZSBlbmNvZGVkIGluIEJNUCBmb3JtYXQuPC9vcGM6RG9jdW1lbnRhdGlv bj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iSW1hZ2VH SUYiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BbiBpbWFnZSBlbmNvZGVkIGluIEdJRiBmb3Jt YXQuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOk9w YXF1ZVR5cGUgTmFtZT0iSW1hZ2VKUEciPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BbiBpbWFn ZSBlbmNvZGVkIGluIEpQRUcgZm9ybWF0Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9w YXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9IkltYWdlUE5HIj4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+QW4gaW1hZ2UgZW5jb2RlZCBpbiBQTkcgZm9ybWF0Ljwvb3BjOkRvY3Vt ZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9 IkF1ZGlvRGF0YVR5cGUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BbiBpbWFnZSBlbmNvZGVk IGluIFBORyBmb3JtYXQuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4N Cg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iQml0RmllbGRNYXNrRGF0YVR5cGUiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5BIG1hc2sgb2YgMzIgYml0cyB0aGF0IGNhbiBiZSB1cGRhdGVkIGlu ZGl2aWR1YWxseSBieSB1c2luZyB0aGUgdG9wIDMyIGJpdHMgYXMgYSBtYXNrLjwvb3BjOkRvY3Vt ZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJLZXlWYWx1ZVBhaXIiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iS2V5IiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRwb2ludFR5 cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i RW5kcG9pbnRVcmwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VjdXJpdHlNb2RlIiBUeXBlTmFtZT0idG5zOk1lc3NhZ2VTZWN1cml0eU1vZGUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eVBvbGljeVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFuc3BvcnRQcm9maWxlVXJpIiBUeXBlTmFt ZT0ib3BjOlN0cmluZyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVt ZXJhdGVkVHlwZSBOYW1lPSJPcGVuRmlsZU1vZGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJlYWQiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IldyaXRlIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJFcmFzZUV4aXN0aW5nIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJBcHBlbmQiIFZhbHVlPSI4IiAvPg0KICA8L29wYzpFbnVtZXJhdGVk VHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IklkZW50aXR5Q3JpdGVyaWFUeXBl IiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2Vy TmFtZSIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVGh1bWJw cmludCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUm9sZSIg VmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iR3JvdXBJZCIgVmFs dWU9IjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQW5vbnltb3VzIiBWYWx1 ZT0iNSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBdXRoZW50aWNhdGVkVXNl ciIgVmFsdWU9IjYiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iSWRlbnRpdHlNYXBwaW5nUnVsZVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3JpdGVyaWFUeXBlIiBUeXBlTmFt ZT0idG5zOklkZW50aXR5Q3JpdGVyaWFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3Jp dGVyaWEiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlRydXN0TGlzdE1hc2tzIiBMZW5ndGhJbkJp dHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb25lIiBWYWx1ZT0iMCIg Lz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUcnVzdGVkQ2VydGlmaWNhdGVzIiBW YWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUcnVzdGVkQ3JscyIg VmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSXNzdWVyQ2VydGlm aWNhdGVzIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJJc3N1 ZXJDcmxzIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBbGwi IFZhbHVlPSIxNSIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJUcnVzdExpc3REYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRMaXN0cyIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVHJ1c3RlZENlcnRpZmljYXRl cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRydXN0ZWRD ZXJ0aWZpY2F0ZXMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZU cnVzdGVkQ2VydGlmaWNhdGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlRydXN0ZWRD cmxzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJ1c3Rl ZENybHMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZUcnVzdGVk Q3JscyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZJc3N1ZXJDZXJ0aWZpY2F0ZXMiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc3N1ZXJDZXJ0aWZp Y2F0ZXMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZJc3N1ZXJD ZXJ0aWZpY2F0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mSXNzdWVyQ3JscyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Iklzc3VlckNybHMiIFR5 cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZJc3N1ZXJDcmxzIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRl Y2ltYWxEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJTY2FsZSIgVHlwZU5hbWU9Im9wYzpJbnQxNiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGF0YVR5cGVTY2hlbWFI ZWFkZXIiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZk5hbWVzcGFjZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOYW1lc3BhY2VzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5v T2ZOYW1lc3BhY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlN0cnVjdHVyZURhdGFU eXBlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0cnVj dHVyZURhdGFUeXBlcyIgVHlwZU5hbWU9InRuczpTdHJ1Y3R1cmVEZXNjcmlwdGlvbiIgTGVuZ3Ro RmllbGQ9Ik5vT2ZTdHJ1Y3R1cmVEYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mRW51bURhdGFUeXBlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkVudW1EYXRhVHlwZXMiIFR5cGVOYW1lPSJ0bnM6RW51bURlc2NyaXB0aW9uIiBMZW5n dGhGaWVsZD0iTm9PZkVudW1EYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m U2ltcGxlRGF0YVR5cGVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU2ltcGxlRGF0YVR5cGVzIiBUeXBlTmFtZT0idG5zOlNpbXBsZVR5cGVEZXNjcmlwdGlv biIgTGVuZ3RoRmllbGQ9Ik5vT2ZTaW1wbGVEYXRhVHlwZXMiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGF0YVR5cGVEZXNjcmlwdGlv biIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE YXRhVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TmFtZSIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5hbWUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU3RydWN0dXJlRGVzY3JpcHRpb24i IEJhc2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJEYXRhVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5 cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJ1 YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0cnVjdHVyZURlZmluaXRpb24iIFR5cGVOYW1lPSJ0bnM6 U3RydWN0dXJlRGVmaW5pdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbnVtRGVzY3JpcHRpb24iIEJhc2VUeXBlPSJ0bnM6RGF0 YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBT b3VyY2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkVudW1EZWZpbml0aW9uIiBUeXBlTmFtZT0idG5zOkVudW1EZWZpbml0aW9uIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iQnVpbHRJblR5cGUiIFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTaW1w bGVUeXBlRGVzY3JpcHRpb24iIEJhc2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3Vy Y2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5 cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJhc2VEYXRhVHlwZSIgVHlw ZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJ1aWx0SW5UeXBlIiBU eXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iVUFCaW5hcnlGaWxlRGF0YVR5cGUiIEJhc2VUeXBlPSJ0bnM6 RGF0YVR5cGVTY2hlbWFIZWFkZXIiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5hbWVzcGFj ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3Bh Y2VzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZOYW1lc3BhY2VzIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlN0cnVjdHVyZURhdGFUeXBlcyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0cnVjdHVyZURhdGFUeXBlcyIg VHlwZU5hbWU9InRuczpTdHJ1Y3R1cmVEZXNjcmlwdGlvbiIgTGVuZ3RoRmllbGQ9Ik5vT2ZTdHJ1 Y3R1cmVEYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRW51bURhdGFUeXBl cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVudW1EYXRh VHlwZXMiIFR5cGVOYW1lPSJ0bnM6RW51bURlc2NyaXB0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZkVu dW1EYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2ltcGxlRGF0YVR5cGVz IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2ltcGxlRGF0 YVR5cGVzIiBUeXBlTmFtZT0idG5zOlNpbXBsZVR5cGVEZXNjcmlwdGlvbiIgTGVuZ3RoRmllbGQ9 Ik5vT2ZTaW1wbGVEYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTY2hlbWFMb2Nh dGlvbiIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m RmlsZUhlYWRlciIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkZpbGVIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6S2V5VmFsdWVQYWlyIiBMZW5ndGhGaWVsZD0iTm9P ZkZpbGVIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCb2R5IiBUeXBlTmFtZT0idWE6 VmFyaWFudCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVk VHlwZSBOYW1lPSJQdWJTdWJTdGF0ZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVt ZXJhdGVkVmFsdWUgTmFtZT0iRGlzYWJsZWQiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9IlBhdXNlZCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iT3BlcmF0aW9uYWwiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkVycm9yIiBWYWx1ZT0iMyIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhU2V0TWV0YURhdGFUeXBlIiBCYXNl VHlwZT0idG5zOkRhdGFUeXBlU2NoZW1hSGVhZGVyIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZOYW1lc3BhY2VzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTmFtZXNwYWNlcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mTmFt ZXNwYWNlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZTdHJ1Y3R1cmVEYXRhVHlwZXMi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdHJ1Y3R1cmVE YXRhVHlwZXMiIFR5cGVOYW1lPSJ0bnM6U3RydWN0dXJlRGVzY3JpcHRpb24iIExlbmd0aEZpZWxk PSJOb09mU3RydWN0dXJlRGF0YVR5cGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkVu dW1EYXRhVHlwZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJFbnVtRGF0YVR5cGVzIiBUeXBlTmFtZT0idG5zOkVudW1EZXNjcmlwdGlvbiIgTGVuZ3RoRmll bGQ9Ik5vT2ZFbnVtRGF0YVR5cGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNpbXBs ZURhdGFUeXBlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlNpbXBsZURhdGFUeXBlcyIgVHlwZU5hbWU9InRuczpTaW1wbGVUeXBlRGVzY3JpcHRpb24iIExl bmd0aEZpZWxkPSJOb09mU2ltcGxlRGF0YVR5cGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNj cmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJOb09mRmllbGRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRmllbGRzIiBUeXBlTmFtZT0idG5zOkZpZWxkTWV0YURhdGEiIExlbmd0aEZpZWxkPSJO b09mRmllbGRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldENsYXNzSWQiIFR5cGVO YW1lPSJvcGM6R3VpZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbmZpZ3VyYXRpb25WZXJz aW9uIiBUeXBlTmFtZT0idG5zOkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0YVR5cGUiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRmllbGRN ZXRhRGF0YSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJOYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkZpZWxkRmxhZ3MiIFR5cGVOYW1lPSJ0bnM6RGF0YVNldEZpZWxkRmxhZ3MiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCdWlsdEluVHlwZSIgVHlwZU5hbWU9Im9wYzpCeXRlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZVJhbmsiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFt ZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJNYXhTdHJpbmdMZW5ndGgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldEZpZWxkSWQiIFR5cGVOYW1lPSJvcGM6R3Vp ZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZQcm9wZXJ0aWVzIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJvcGVydGllcyIgVHlwZU5hbWU9InRu czpLZXlWYWx1ZVBhaXIiIExlbmd0aEZpZWxkPSJOb09mUHJvcGVydGllcyIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJEYXRhU2V0Rmll bGRGbGFncyIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFt ZT0iUHJvbW90ZWRGaWVsZCIgVmFsdWU9IjEiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQ29uZmlndXJhdGlvblZlcnNpb25EYXRhVHlw ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJN YWpvclZlcnNpb24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTWlub3JWZXJzaW9uIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJQdWJsaXNoZWREYXRhU2V0 RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mRGF0YVNldEZvbGRlciIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkRhdGFTZXRGb2xkZXIiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhGaWVs ZD0iTm9PZkRhdGFTZXRGb2xkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0TWV0 YURhdGEiIFR5cGVOYW1lPSJ0bnM6RGF0YVNldE1ldGFEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZFeHRlbnNpb25GaWVsZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJFeHRlbnNpb25GaWVsZHMiIFR5cGVOYW1lPSJ0bnM6S2V5VmFs dWVQYWlyIiBMZW5ndGhGaWVsZD0iTm9PZkV4dGVuc2lvbkZpZWxkcyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkRhdGFTZXRTb3VyY2UiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i UHVibGlzaGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJQdWJsaXNoZWRWYXJpYWJsZURhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hlZFZhcmlhYmxlIiBUeXBlTmFtZT0i dWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1l PSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2FtcGxpbmdJbnRlcnZhbEhp bnQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVhZGJh bmRUeXBlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl YWRiYW5kVmFsdWUiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iSW5kZXhSYW5nZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTdWJzdGl0dXRlVmFsdWUiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZk1ldGFEYXRhUHJvcGVydGllcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1ldGFEYXRhUHJvcGVydGllcyIgVHlwZU5hbWU9InVh OlF1YWxpZmllZE5hbWUiIExlbmd0aEZpZWxkPSJOb09mTWV0YURhdGFQcm9wZXJ0aWVzIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlB1 Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIiBCYXNlVHlwZT0idG5zOlB1Ymxpc2hlZERhdGFTZXRT b3VyY2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUHVibGlzaGVkRGF0YSIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hlZERh dGEiIFR5cGVOYW1lPSJ0bnM6UHVibGlzaGVkVmFyaWFibGVEYXRhVHlwZSIgTGVuZ3RoRmllbGQ9 Ik5vT2ZQdWJsaXNoZWREYXRhIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IlB1Ymxpc2hlZEV2ZW50c0RhdGFUeXBlIiBCYXNlVHlwZT0i dG5zOlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJFdmVudE5vdGlmaWVyIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZlNlbGVjdGVkRmllbGRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iU2VsZWN0ZWRGaWVsZHMiIFR5cGVOYW1lPSJ0bnM6U2ltcGxlQXR0cmli dXRlT3BlcmFuZCIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZWxlY3RlZEZpZWxkcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkZpbHRlciIgVHlwZU5hbWU9InRuczpDb250ZW50RmlsdGVyIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkRhdGFT ZXRGaWVsZENvbnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJTdGF0dXNDb2RlIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJTb3VyY2VUaW1lc3RhbXAiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlNlcnZlclRpbWVzdGFtcCIgVmFsdWU9IjQiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU291cmNlUGljb1NlY29uZHMiIFZhbHVlPSI4IiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlNlcnZlclBpY29TZWNvbmRzIiBWYWx1ZT0i MTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUmF3RGF0YUVuY29kaW5nIiBW YWx1ZT0iMzIiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iRGF0YVNldFdyaXRlckRhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5n IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5hYmxlZCIgVHlwZU5hbWU9Im9wYzpCb29sZWFu IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldFdyaXRlcklkIiBUeXBlTmFtZT0ib3Bj OlVJbnQxNiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRGaWVsZENvbnRlbnRNYXNr IiBUeXBlTmFtZT0idG5zOkRhdGFTZXRGaWVsZENvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iS2V5RnJhbWVDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEYXRhU2V0TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVNldFdyaXRlclByb3BlcnRpZXMiIFR5cGVOYW1lPSJv cGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0V3JpdGVyUHJvcGVydGll cyIgVHlwZU5hbWU9InRuczpLZXlWYWx1ZVBhaXIiIExlbmd0aEZpZWxkPSJOb09mRGF0YVNldFdy aXRlclByb3BlcnRpZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFuc3BvcnRTZXR0aW5n cyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik1lc3NhZ2VTZXR0aW5ncyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhU2V0 V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRh dGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IlB1YlN1Ykdyb3VwRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJTZWN1cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5 TW9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5R3JvdXBJZCIgVHlwZU5hbWU9 Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VjdXJpdHlLZXlTZXJ2 aWNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3Vy aXR5S2V5U2VydmljZXMiIFR5cGVOYW1lPSJ0bnM6RW5kcG9pbnREZXNjcmlwdGlvbiIgTGVuZ3Ro RmllbGQ9Ik5vT2ZTZWN1cml0eUtleVNlcnZpY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TWF4TmV0d29ya01lc3NhZ2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZHcm91cFByb3BlcnRpZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJHcm91cFByb3BlcnRpZXMiIFR5cGVOYW1lPSJ0bnM6S2V5 VmFsdWVQYWlyIiBMZW5ndGhGaWVsZD0iTm9PZkdyb3VwUHJvcGVydGllcyIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJXcml0ZXJHcm91 cERhdGFUeXBlIiBCYXNlVHlwZT0idG5zOlB1YlN1Ykdyb3VwRGF0YVR5cGUiPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIFNvdXJjZVR5cGU9InRuczpQ dWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5hYmxlZCIgVHlw ZU5hbWU9Im9wYzpCb29sZWFuIiBTb3VyY2VUeXBlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5TW9kZSIgVHlwZU5hbWU9InRuczpNZXNz YWdlU2VjdXJpdHlNb2RlIiBTb3VyY2VUeXBlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5R3JvdXBJZCIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIFNvdXJjZVR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlNlY3VyaXR5S2V5U2VydmljZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eUtleVNlcnZpY2VzIiBUeXBlTmFtZT0idG5z OkVuZHBvaW50RGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mU2VjdXJpdHlLZXlTZXJ2aWNl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heE5ldHdvcmtNZXNzYWdlU2l6ZSIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkdyb3VwUHJvcGVydGllcyIgVHlwZU5hbWU9Im9wYzpJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikdyb3VwUHJvcGVydGllcyIgVHlwZU5hbWU9 InRuczpLZXlWYWx1ZVBhaXIiIExlbmd0aEZpZWxkPSJOb09mR3JvdXBQcm9wZXJ0aWVzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVyR3JvdXBJZCIgVHlwZU5hbWU9Im9wYzpVSW50MTYi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQdWJsaXNoaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJv cGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iS2VlcEFsaXZlVGltZSIgVHlwZU5h bWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQcmlvcml0eSIgVHlwZU5h bWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxvY2FsZUlkcyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsZUlkcyIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mTG9jYWxlSWRzIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVHJhbnNwb3J0U2V0dGluZ3MiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25P YmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXNzYWdlU2V0dGluZ3MiIFR5cGVOYW1l PSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVNl dFdyaXRlcnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE YXRhU2V0V3JpdGVycyIgVHlwZU5hbWU9InRuczpEYXRhU2V0V3JpdGVyRGF0YVR5cGUiIExlbmd0 aEZpZWxkPSJOb09mRGF0YVNldFdyaXRlcnMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlw ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVyR3JvdXBNZXNzYWdlRGF0YVR5 cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlB1YlN1YkNvbm5lY3Rpb25EYXRhVHlw ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO YW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuYWJs ZWQiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxp c2hlcklkIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRy YW5zcG9ydFByb2ZpbGVVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQWRkcmVzcyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZDb25uZWN0aW9uUHJvcGVydGllcyIgVHlwZU5hbWU9Im9wYzpJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbm5lY3Rpb25Qcm9wZXJ0aWVzIiBUeXBl TmFtZT0idG5zOktleVZhbHVlUGFpciIgTGVuZ3RoRmllbGQ9Ik5vT2ZDb25uZWN0aW9uUHJvcGVy dGllcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyYW5zcG9ydFNldHRpbmdzIiBUeXBlTmFt ZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZldyaXRl ckdyb3VwcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ildy aXRlckdyb3VwcyIgVHlwZU5hbWU9InRuczpXcml0ZXJHcm91cERhdGFUeXBlIiBMZW5ndGhGaWVs ZD0iTm9PZldyaXRlckdyb3VwcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWFkZXJH cm91cHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWFk ZXJHcm91cHMiIFR5cGVOYW1lPSJ0bnM6UmVhZGVyR3JvdXBEYXRhVHlwZSIgTGVuZ3RoRmllbGQ9 Ik5vT2ZSZWFkZXJHcm91cHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiBCYXNlVHlw ZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJOZXR3b3JrQWRkcmVzc0RhdGFUeXBlIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5ldHdvcmtJbnRlcmZh Y2UiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiIEJh c2VUeXBlPSJ0bnM6TmV0d29ya0FkZHJlc3NEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOZXR3b3JrSW50ZXJmYWNlIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5z Ok5ldHdvcmtBZGRyZXNzRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVcmwiIFR5 cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlYWRlckdyb3VwRGF0YVR5cGUiIEJhc2VUeXBlPSJ0bnM6 UHViU3ViR3JvdXBEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lIiBUeXBlTmFt ZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5zOlB1YlN1Ykdyb3VwRGF0YVR5cGUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIFNvdXJj ZVR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U2VjdXJpdHlNb2RlIiBUeXBlTmFtZT0idG5zOk1lc3NhZ2VTZWN1cml0eU1vZGUiIFNvdXJjZVR5 cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2Vj dXJpdHlHcm91cElkIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5zOlB1YlN1 Ykdyb3VwRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VjdXJpdHlLZXlT ZXJ2aWNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNl Y3VyaXR5S2V5U2VydmljZXMiIFR5cGVOYW1lPSJ0bnM6RW5kcG9pbnREZXNjcmlwdGlvbiIgTGVu Z3RoRmllbGQ9Ik5vT2ZTZWN1cml0eUtleVNlcnZpY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTWF4TmV0d29ya01lc3NhZ2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlw ZT0idG5zOlB1YlN1Ykdyb3VwRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m R3JvdXBQcm9wZXJ0aWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iR3JvdXBQcm9wZXJ0aWVzIiBUeXBlTmFtZT0idG5zOktleVZhbHVlUGFpciIgTGVuZ3Ro RmllbGQ9Ik5vT2ZHcm91cFByb3BlcnRpZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFu c3BvcnRTZXR0aW5ncyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik1lc3NhZ2VTZXR0aW5ncyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVj dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEYXRhU2V0UmVhZGVycyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRSZWFkZXJzIiBUeXBl TmFtZT0idG5zOkRhdGFTZXRSZWFkZXJEYXRhVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZEYXRhU2V0 UmVhZGVycyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJSZWFkZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJSZWFkZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4 dGVuc2lvbk9iamVjdCI+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iRGF0YVNldFJlYWRlckRhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJvcGM6U3Ry aW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5hYmxlZCIgVHlwZU5hbWU9Im9wYzpCb29s ZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaGVySWQiIFR5cGVOYW1lPSJ1YTpW YXJpYW50IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVyR3JvdXBJZCIgVHlwZU5hbWU9 Im9wYzpVSW50MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0V3JpdGVySWQiIFR5 cGVOYW1lPSJvcGM6VUludDE2IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldE1ldGFE YXRhIiBUeXBlTmFtZT0idG5zOkRhdGFTZXRNZXRhRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEYXRhU2V0RmllbGRDb250ZW50TWFzayIgVHlwZU5hbWU9InRuczpEYXRhU2V0Rmll bGRDb250ZW50TWFzayIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1lc3NhZ2VSZWNlaXZlVGlt ZW91dCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1 cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlY3VyaXR5R3JvdXBJZCIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VjdXJpdHlLZXlTZXJ2aWNlcyIgVHlwZU5hbWU9Im9w YzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5S2V5U2VydmljZXMiIFR5 cGVOYW1lPSJ0bnM6RW5kcG9pbnREZXNjcmlwdGlvbiIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZWN1cml0 eUtleVNlcnZpY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRhdGFTZXRSZWFkZXJQ cm9wZXJ0aWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i RGF0YVNldFJlYWRlclByb3BlcnRpZXMiIFR5cGVOYW1lPSJ0bnM6S2V5VmFsdWVQYWlyIiBMZW5n dGhGaWVsZD0iTm9PZkRhdGFTZXRSZWFkZXJQcm9wZXJ0aWVzIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iVHJhbnNwb3J0U2V0dGluZ3MiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXNzYWdlU2V0dGluZ3MiIFR5cGVOYW1lPSJ1YTpFeHRl bnNpb25PYmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdWJzY3JpYmVkRGF0YVNldCIg VHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0 YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFTZXRSZWFkZXJNZXNzYWdl RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlN1YnNjcmliZWREYXRhU2V0 RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlRhcmdldFZhcmlhYmxlc0Rh dGFUeXBlIiBCYXNlVHlwZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9PZlRhcmdldFZhcmlhYmxlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRhcmdldFZhcmlhYmxlcyIgVHlwZU5hbWU9InRuczpG aWVsZFRhcmdldERhdGFUeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlRhcmdldFZhcmlhYmxlcyIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJG aWVsZFRhcmdldERhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRGaWVsZElkIiBUeXBlTmFtZT0ib3BjOkd1aWQiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZWNlaXZlckluZGV4UmFuZ2UiIFR5cGVOYW1lPSJvcGM6U3Ry aW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGFyZ2V0Tm9kZUlkIiBUeXBlTmFtZT0idWE6 Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVJbmRleFJhbmdlIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik92ZXJyaWRlVmFsdWVI YW5kbGluZyIgVHlwZU5hbWU9InRuczpPdmVycmlkZVZhbHVlSGFuZGxpbmciIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJPdmVycmlkZVZhbHVlIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJPdmVy cmlkZVZhbHVlSGFuZGxpbmciIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkRpc2FibGVkIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJMYXN0VXNlYWJsZVZhbHVlIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJPdmVycmlkZVZhbHVlIiBWYWx1ZT0iMiIgLz4NCiAgPC9vcGM6RW51 bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTdWJzY3JpYmVkRGF0 YVNldE1pcnJvckRhdGFUeXBlIiBCYXNlVHlwZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5 cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGFyZW50Tm9kZU5hbWUiIFR5cGVOYW1lPSJvcGM6 U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mUm9s ZVBlcm1pc3Npb25zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlB1YlN1YkNvbmZpZ3VyYXRpb25EYXRhVHlwZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUHVibGlzaGVkRGF0 YVNldHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQdWJs aXNoZWREYXRhU2V0cyIgVHlwZU5hbWU9InRuczpQdWJsaXNoZWREYXRhU2V0RGF0YVR5cGUiIExl bmd0aEZpZWxkPSJOb09mUHVibGlzaGVkRGF0YVNldHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mQ29ubmVjdGlvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJDb25uZWN0aW9ucyIgVHlwZU5hbWU9InRuczpQdWJTdWJDb25uZWN0aW9uRGF0YVR5 cGUiIExlbmd0aEZpZWxkPSJOb09mQ29ubmVjdGlvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iRGF0YVNldE9yZGVyaW5nVHlwZSIg TGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVW5kZWZp bmVkIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBc2NlbmRp bmdXcml0ZXJJZCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i QXNjZW5kaW5nV3JpdGVySWRTaW5nbGUiIFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVtZXJhdGVk VHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlVhZHBOZXR3b3JrTWVzc2FnZUNv bnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJQdWJsaXNoZXJJZCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iR3JvdXBIZWFkZXIiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IldyaXRlckdyb3VwSWQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9Ikdyb3VwVmVyc2lvbiIgVmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iTmV0d29ya01lc3NhZ2VOdW1iZXIiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTZXF1ZW5jZU51bWJlciIgVmFsdWU9IjMyIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlBheWxvYWRIZWFkZXIiIFZhbHVlPSI2NCIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUaW1lc3RhbXAiIFZhbHVlPSIxMjgiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUGljb3NlY29uZHMiIFZhbHVlPSIyNTYi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVNldENsYXNzSWQiIFZhbHVl PSI1MTIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUHJvbW90ZWRGaWVsZHMi IFZhbHVlPSIxMDI0IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9 InRuczpXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJH cm91cFZlcnNpb24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iRGF0YVNldE9yZGVyaW5nIiBUeXBlTmFtZT0idG5zOkRhdGFTZXRPcmRlcmluZ1R5cGUiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiBUeXBlTmFt ZT0idG5zOlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU2FtcGxpbmdPZmZzZXQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlB1Ymxpc2hpbmdPZmZzZXQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQdWJsaXNoaW5nT2Zmc2V0IiBUeXBlTmFtZT0ib3BjOkRv dWJsZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZQdWJsaXNoaW5nT2Zmc2V0IiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlVhZHBEYXRhU2V0TWVz c2FnZUNvbnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJUaW1lc3RhbXAiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9IlBpY29TZWNvbmRzIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJTdGF0dXMiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9Ik1ham9yVmVyc2lvbiIgVmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFs dWUgTmFtZT0iTWlub3JWZXJzaW9uIiBWYWx1ZT0iMTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iU2VxdWVuY2VOdW1iZXIiIFZhbHVlPSIzMiIgLz4NCiAgPC9vcGM6RW51bWVy YXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVYWRwRGF0YVNldFdyaXRl ck1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9InRuczpEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFU eXBlIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIFR5 cGVOYW1lPSJ0bnM6VWFkcERhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJDb25maWd1cmVkU2l6ZSIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrTWVzc2FnZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50 MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0T2Zmc2V0IiBUeXBlTmFtZT0ib3Bj OlVJbnQxNiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJVYWRwRGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9InRu czpEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikdy b3VwVmVyc2lvbiIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOZXR3b3JrTWVzc2FnZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEYXRhU2V0T2Zmc2V0IiBUeXBlTmFtZT0ib3BjOlVJbnQxNiIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRDbGFzc0lkIiBUeXBlTmFtZT0ib3BjOkd1aWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiBUeXBlTmFt ZT0idG5zOlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgVHlwZU5hbWU9InRuczpVYWRwRGF0YVNl dE1lc3NhZ2VDb250ZW50TWFzayIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hpbmdJ bnRlcnZhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZWNlaXZlT2Zmc2V0IiBUeXBlTmFtZT0ib3BjOkRvdWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlByb2Nlc3NpbmdPZmZzZXQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9Ikpzb25OZXR3b3Jr TWVzc2FnZUNvbnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJOZXR3b3JrTWVzc2FnZUhlYWRlciIgVmFsdWU9IjEiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVNldE1lc3NhZ2VIZWFkZXIiIFZhbHVlPSIyIiAv Pg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlNpbmdsZURhdGFTZXRNZXNzYWdlIiBW YWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJQdWJsaXNoZXJJZCIg VmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVNldENsYXNz SWQiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJSZXBseVRv IiBWYWx1ZT0iMzIiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iSnNvbldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiBCYXNlVHlwZT0i dG5zOldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5l dHdvcmtNZXNzYWdlQ29udGVudE1hc2siIFR5cGVOYW1lPSJ0bnM6SnNvbk5ldHdvcmtNZXNzYWdl Q29udGVudE1hc2siIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVy YXRlZFR5cGUgTmFtZT0iSnNvbkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIExlbmd0aEluQml0 cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRhdGFTZXRXcml0ZXJJZCIg VmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTWV0YURhdGFWZXJz aW9uIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTZXF1ZW5j ZU51bWJlciIgVmFsdWU9IjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVGlt ZXN0YW1wIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTdGF0 dXMiIFZhbHVlPSIxNiIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5 cGU9InRuczpEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIFR5cGVOYW1lPSJ0bnM6SnNvbkRhdGFTZXRN ZXNzYWdlQ29udGVudE1hc2siIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iSnNvbkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIEJh c2VUeXBlPSJ0bnM6RGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiBUeXBlTmFtZT0idG5zOkpzb25OZXR3 b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldE1l c3NhZ2VDb250ZW50TWFzayIgVHlwZU5hbWU9InRuczpKc29uRGF0YVNldE1lc3NhZ2VDb250ZW50 TWFzayIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlw ZSBOYW1lPSJEYXRhZ3JhbUNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgQmFzZVR5cGU9InRu czpDb25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlz Y292ZXJ5QWRkcmVzcyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhZ3JhbVdy aXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIEJhc2VUeXBlPSJ0bnM6V3JpdGVyR3JvdXBUcmFu c3BvcnREYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXNzYWdlUmVwZWF0Q291bnQi IFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1lc3NhZ2VSZXBl YXREZWxheSIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJva2VyQ29ubmVjdGlvblRyYW5zcG9y dERhdGFUeXBlIiBCYXNlVHlwZT0idG5zOkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNvdXJjZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdXRoZW50aWNhdGlvblByb2ZpbGVVcmkiIFR5cGVOYW1l PSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1l cmF0ZWRUeXBlIE5hbWU9IkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIExlbmd0aElu Qml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5vdFNwZWNpZmllZCIg VmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQmVzdEVmZm9ydCIg VmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQXRMZWFzdE9uY2Ui IFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkF0TW9zdE9uY2Ui IFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkV4YWN0bHlPbmNl IiBWYWx1ZT0iNCIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiBCYXNlVHlw ZT0idG5zOldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUXVldWVOYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlc291cmNlVXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkF1dGhlbnRpY2F0aW9uUHJvZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWREZWxpdmVyeUd1YXJhbnRlZSIgVHlwZU5h bWU9InRuczpCcm9rZXJUcmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb2tlckRhdGFTZXRX cml0ZXJUcmFuc3BvcnREYXRhVHlwZSIgQmFzZVR5cGU9InRuczpEYXRhU2V0V3JpdGVyVHJhbnNw b3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUXVldWVOYW1lIiBUeXBlTmFtZT0i b3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc291cmNlVXJpIiBUeXBlTmFt ZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF1dGhlbnRpY2F0aW9uUHJv ZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJN ZXRhRGF0YVF1ZXVlTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNZXRhRGF0YVVwZGF0ZVRpbWUiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb2tl ckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSIgQmFzZVR5cGU9InRuczpEYXRhU2V0UmVh ZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUXVldWVOYW1lIiBU eXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc291cmNlVXJp IiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF1dGhlbnRp Y2F0aW9uUHJvZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXF1ZXN0ZWREZWxpdmVyeUd1YXJhbnRlZSIgVHlwZU5hbWU9InRuczpCcm9rZXJU cmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWV0YURh dGFRdWV1ZU5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkRpYWdub3N0aWNzTGV2ZWwiIExl bmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkJhc2ljIiBW YWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBZHZhbmNlZCIgVmFs dWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW5mbyIgVmFsdWU9IjIi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTG9nIiBWYWx1ZT0iMyIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEZWJ1ZyIgVmFsdWU9IjQiIC8+DQogIDwvb3Bj OkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iUHViU3ViRGlh Z25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24iIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkluZm9ybWF0aW9uIiBWYWx1ZT0iMCIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJFcnJvciIgVmFsdWU9IjEiIC8+DQogIDwvb3BjOkVu dW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iSWRUeXBlIiBMZW5n dGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIHR5cGUgb2YgaWRlbnRp ZmllciB1c2VkIGluIGEgbm9kZSBpZC48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9Ik51bWVyaWMiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9IlN0cmluZyIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iR3VpZCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iT3BhcXVlIiBWYWx1ZT0iMyIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAg PG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJOb2RlQ2xhc3MiIExlbmd0aEluQml0cz0iMzIiPg0K ICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIG1hc2sgc3BlY2lmeWluZyB0aGUgY2xhc3Mgb2YgdGhl IG5vZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1l PSJVbnNwZWNpZmllZCIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFt ZT0iT2JqZWN0IiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJW YXJpYWJsZSIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTWV0 aG9kIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJPYmplY3RU eXBlIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJWYXJpYWJs ZVR5cGUiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJSZWZl cmVuY2VUeXBlIiBWYWx1ZT0iMzIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i RGF0YVR5cGUiIFZhbHVlPSI2NCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJW aWV3IiBWYWx1ZT0iMTI4IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOkVu dW1lcmF0ZWRUeXBlIE5hbWU9IkFjY2Vzc0xldmVsVHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQog ICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ3VycmVudFJlYWQiIFZhbHVlPSIxIiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkN1cnJlbnRXcml0ZSIgVmFsdWU9IjIiIC8+DQogICAg PG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSGlzdG9yeVJlYWQiIFZhbHVlPSI0IiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ikhpc3RvcnlXcml0ZSIgVmFsdWU9IjE2IiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlN0YXR1c1dyaXRlIiBWYWx1ZT0iMzIiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVGltZXN0YW1wV3JpdGUiIFZhbHVlPSI2 NCIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBO YW1lPSJBY2Nlc3NMZXZlbEV4VHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVt ZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iQ3VycmVudFJlYWQiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkN1cnJlbnRXcml0ZSIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iSGlzdG9yeVJlYWQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9Ikhpc3RvcnlXcml0ZSIgVmFsdWU9IjE2IiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlN0YXR1c1dyaXRlIiBWYWx1ZT0iMzIiIC8+DQogICAgPG9wYzpF bnVtZXJhdGVkVmFsdWUgTmFtZT0iVGltZXN0YW1wV3JpdGUiIFZhbHVlPSI2NCIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb25hdG9taWNSZWFkIiBWYWx1ZT0iNjU1MzYiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uYXRvbWljV3JpdGUiIFZhbHVlPSIx MzEwNzIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iV3JpdGVGdWxsQXJyYXlP bmx5IiBWYWx1ZT0iMjYyMTQ0IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3Bj OkVudW1lcmF0ZWRUeXBlIE5hbWU9IkV2ZW50Tm90aWZpZXJUeXBlIiBMZW5ndGhJbkJpdHM9IjMy Ij4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb25lIiBWYWx1ZT0iMCIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTdWJzY3JpYmVUb0V2ZW50cyIgVmFsdWU9IjEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSGlzdG9yeVJlYWQiIFZhbHVlPSI0 IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ikhpc3RvcnlXcml0ZSIgVmFsdWU9 IjgiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iUm9sZVBlcm1pc3Npb25UeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlBlcm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJT dHJ1Y3R1cmVUeXBlIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJTdHJ1Y3R1cmUiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlN0cnVjdHVyZVdpdGhPcHRpb25hbEZpZWxkcyIgVmFsdWU9IjEiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVW5pb24iIFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVt ZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlN0cnVjdHVyZUZpZWxk IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5h bWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3Jp cHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iRGF0YVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJWYWx1ZVJhbmsiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3Ro RmllbGQ9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhT dHJpbmdMZW5ndGgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iSXNPcHRpb25hbCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlN0cnVjdHVyZURlZmluaXRp b24iIEJhc2VUeXBlPSJ0bnM6RGF0YVR5cGVEZWZpbml0aW9uIj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkRlZmF1bHRFbmNvZGluZ0lkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQmFzZURhdGFUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iU3RydWN0dXJlVHlwZSIgVHlwZU5hbWU9InRuczpTdHJ1Y3R1cmVUeXBl IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkZpZWxkcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpZWxkcyIgVHlwZU5hbWU9InRuczpTdHJ1Y3R1 cmVGaWVsZCIgTGVuZ3RoRmllbGQ9Ik5vT2ZGaWVsZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRW51bURlZmluaXRpb24iIEJhc2VU eXBlPSJ0bnM6RGF0YVR5cGVEZWZpbml0aW9uIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZG aWVsZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJGaWVs ZHMiIFR5cGVOYW1lPSJ0bnM6RW51bUZpZWxkIiBMZW5ndGhGaWVsZD0iTm9PZkZpZWxkcyIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJO b2RlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBhbGwgbm9kZXMuPC9v cGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9 InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5hbWU9 InRuczpOb2RlQ2xhc3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBl TmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlO YW1lIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6 Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlclJvbGVQZXJtaXNzaW9ucyIg VHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mVXNlclJv bGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFjY2Vzc1Jlc3RyaWN0aW9u cyIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVm ZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJl ZmVyZW5jZXMiIFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZS ZWZlcmVuY2VzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9Ikluc3RhbmNlTm9kZSIgQmFzZVR5cGU9InRuczpOb2RlIj4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlwZT0idG5z Ok5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlQ2xhc3MiIFR5cGVOYW1lPSJ0bnM6 Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6 Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5v ZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFt ZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUm9sZVBlcm1pc3Npb25zIiBU eXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSb2xlUGVy bWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXNlclJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJSb2xl UGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVs ZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBY2Nl c3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTb3VyY2VUeXBlPSJ0bnM6Tm9k ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZlcmVuY2VzIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlcyIgVHlwZU5hbWU9InRu czpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVHlwZU5vZGUi IEJhc2VUeXBlPSJ0bnM6Tm9kZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVO YW1lPSJ1YTpOb2RlSWQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9kZUNsYXNzIiBUeXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0idG5z Ok5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6 UXVhbGlmaWVkTmFtZSIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1l PSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRu czpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lv blR5cGUiIExlbmd0aEZpZWxkPSJOb09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5z OlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25z IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFtZT0i b3BjOlVJbnQxNiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mUmVmZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmll bGQ9Ik5vT2ZSZWZlcmVuY2VzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik9iamVjdE5vZGUiIEJhc2VUeXBlPSJ0bnM6SW5zdGFuY2VO b2RlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdo aWNoIGJlbG9uZyB0byBvYmplY3Qgbm9kZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlwZT0idG5z Ok5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlQ2xhc3MiIFR5cGVOYW1lPSJ0bnM6 Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6 Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5v ZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFt ZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUm9sZVBlcm1pc3Npb25zIiBU eXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSb2xlUGVy bWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXNlclJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJSb2xl UGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVs ZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBY2Nl c3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTb3VyY2VUeXBlPSJ0bnM6Tm9k ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZlcmVuY2VzIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlcyIgVHlwZU5hbWU9InRu czpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFdmVudE5vdGlmaWVyIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iT2JqZWN0 VHlwZU5vZGUiIEJhc2VUeXBlPSJ0bnM6VHlwZU5vZGUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlv bj5TcGVjaWZpZXMgdGhlIGF0dHJpYnV0ZXMgd2hpY2ggYmVsb25nIHRvIG9iamVjdCB0eXBlIG5v ZGVzLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5 cGVOYW1lPSJ1YTpOb2RlSWQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9kZUNsYXNzIiBUeXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0i dG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0i dWE6UXVhbGlmaWVkTmFtZSIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlz c2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0i dG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Np b25zIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFt ZT0ib3BjOlVJbnQxNiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJOb09mUmVmZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3Ro RmllbGQ9Ik5vT2ZSZWZlcmVuY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNBYnN0cmFj dCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZhcmlhYmxlTm9kZSIgQmFzZVR5cGU9InRuczpJ bnN0YW5jZU5vZGUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5TcGVjaWZpZXMgdGhlIGF0dHJp YnV0ZXMgd2hpY2ggYmVsb25nIHRvIHZhcmlhYmxlIG5vZGVzLjwvb3BjOkRvY3VtZW50YXRpb24+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIFNvdXJj ZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUNsYXNzIiBUeXBl TmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgU291cmNl VHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlw ZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBT b3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlTWFzayIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVQZXJt aXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJO b09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlVzZXJSb2xl UGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIg TGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQxNiIgU291cmNlVHlw ZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVmZXJlbmNlcyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZXMiIFR5 cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZWZlcmVuY2VzIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZVJhbmsiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJBY2Nlc3NMZXZlbCIgVHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVXNlckFjY2Vzc0xldmVsIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJNaW5pbXVtU2FtcGxpbmdJbnRlcnZhbCIgVHlwZU5hbWU9Im9w YzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJIaXN0b3JpemluZyIgVHlwZU5hbWU9 Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWNjZXNzTGV2ZWxFeCIgVHlw ZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iVmFyaWFibGVUeXBlTm9kZSIgQmFzZVR5cGU9InRuczpUeXBl Tm9kZSI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0aGUgYXR0cmlidXRlcyB3 aGljaCBiZWxvbmcgdG8gdmFyaWFibGUgdHlwZSBub2Rlcy48L29wYzpEb2N1bWVudGF0aW9uPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VU eXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5h bWU9InRuczpOb2RlQ2xhc3MiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQnJvd3NlTmFtZSIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5hbWUiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291 cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJXcml0ZU1hc2siIFR5 cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBl PSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSb2xlUGVybWlzc2lvbnMi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSb2xlUGVybWlz c2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9P ZlJvbGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZVc2VyUm9sZVBl cm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i VXNlclJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExl bmd0aEZpZWxkPSJOb09mVXNlclJvbGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkFjY2Vzc1Jlc3RyaWN0aW9ucyIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZXMiIFR5cGVO YW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzIiBUeXBl TmFtZT0idG5zOlJlZmVyZW5jZU5vZGUiIExlbmd0aEZpZWxkPSJOb09mUmVmZXJlbmNlcyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iVmFsdWVSYW5rIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mQXJyYXlEaW1lbnNpb25zIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iSXNBYnN0cmFjdCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlZmVyZW5j ZVR5cGVOb2RlIiBCYXNlVHlwZT0idG5zOlR5cGVOb2RlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byByZWZlcmVuY2UgdHlw ZSBub2Rlcy48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlk IiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5hbWU9InRuczpOb2RlQ2xhc3MiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQnJvd3NlTmFtZSIgVHlwZU5h bWU9InVhOlF1YWxpZmllZE5hbWUiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3Vy Y2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBU eXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VU eXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5 cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBl cm1pc3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlclJvbGVQZXJtaXNzaW9ucyIgVHlwZU5h bWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mVXNlclJvbGVQZXJt aXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFjY2Vzc1Jlc3RyaWN0aW9ucyIgVHlw ZU5hbWU9Im9wYzpVSW50MTYiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzIiBUeXBlTmFtZT0idG5zOlJlZmVyZW5jZU5vZGUiIExl bmd0aEZpZWxkPSJOb09mUmVmZXJlbmNlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklzQWJz dHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN5 bW1ldHJpYyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SW52ZXJzZU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik1ldGhvZE5vZGUiIEJh c2VUeXBlPSJ0bnM6SW5zdGFuY2VOb2RlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+U3BlY2lm aWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBtZXRob2Qgbm9kZXMuPC9vcGM6RG9j dW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5v ZGVJZCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rl Q2xhc3MiIFR5cGVOYW1lPSJ0bnM6Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWRO YW1lIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3Bs YXlOYW1lIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2Fs aXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i V3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQz MiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9s ZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVu Z3RoRmllbGQ9Ik5vT2ZSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mVXNlclJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlVzZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1p c3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJBY2Nlc3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2 IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZl cmVuY2VzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVm ZXJlbmNlcyIgVHlwZU5hbWU9InRuczpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJl ZmVyZW5jZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFeGVjdXRhYmxlIiBUeXBlTmFtZT0i b3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyRXhlY3V0YWJsZSIgVHlw ZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZpZXdOb2RlIiBCYXNlVHlwZT0idG5zOkluc3RhbmNlTm9k ZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIFNv dXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUNsYXNzIiBU eXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgU291 cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIg VHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0 IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlTWFz ayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJj ZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJvbGVQZXJtaXNz aW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVQ ZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxk PSJOb09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlVzZXJS b2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlw ZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQxNiIgU291cmNl VHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVmZXJlbmNlcyIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZXMi IFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZWZlcmVuY2Vz IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ29udGFpbnNOb0xvb3BzIiBUeXBlTmFtZT0ib3Bj OkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVudE5vdGlmaWVyIiBUeXBlTmFt ZT0ib3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iRGF0YVR5cGVOb2RlIiBCYXNlVHlwZT0idG5zOlR5cGVOb2RlIj4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlw ZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlQ2xhc3MiIFR5cGVOYW1l PSJ0bnM6Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBl PSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFt ZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJj ZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0i dG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9sZVBlcm1pc3Npb25zIiBU eXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUm9sZVBlcm1pc3Np b25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZS b2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXNlclJvbGVQZXJt aXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVz ZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5n dGhGaWVsZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJBY2Nlc3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTb3VyY2VUeXBlPSJ0 bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZlcmVuY2VzIiBUeXBlTmFt ZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlcyIgVHlwZU5h bWU9InRuczpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJJc0Fic3RyYWN0IiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZURlZmluaXRpb24iIFR5cGVOYW1lPSJ1YTpF eHRlbnNpb25PYmplY3QiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iUmVmZXJlbmNlTm9kZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlNwZWNpZmllcyBhIHJlZmVyZW5jZSB3aGlj aCBiZWxvbmdzIHRvIGEgbm9kZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVmZXJlbmNlVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iSXNJbnZlcnNlIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJUYXJnZXRJZCIgVHlwZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFy Z3VtZW50IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50 YXRpb24+QW4gYXJndW1lbnQgZm9yIGEgbWV0aG9kLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkRhdGFUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVmFsdWVSYW5rIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpVSW50 MzIiIExlbmd0aEZpZWxkPSJOb09mQXJyYXlEaW1lbnNpb25zIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkVudW1WYWx1 ZVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRh dGlvbj5BIG1hcHBpbmcgYmV0d2VlbiBhIHZhbHVlIG9mIGFuIGVudW1lcmF0ZWQgdHlwZSBhbmQg YSBuYW1lIGFuZCBkZXNjcmlwdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJvcGM6SW50NjQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i RW51bUZpZWxkIiBCYXNlVHlwZT0idG5zOkVudW1WYWx1ZVR5cGUiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJvcGM6SW50NjQiIFNvdXJjZVR5cGU9InRuczpFbnVtVmFs dWVUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6RW51bVZhbHVlVHlwZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIg U291cmNlVHlwZT0idG5zOkVudW1WYWx1ZVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO YW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJPcHRpb25TZXQiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGlzIGFic3RyYWN0IFN0cnVj dHVyZWQgRGF0YVR5cGUgaXMgdGhlIGJhc2UgRGF0YVR5cGUgZm9yIGFsbCBEYXRhVHlwZXMgcmVw cmVzZW50aW5nIGEgYml0IG1hc2suPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJWYWxpZEJpdHMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVbmlvbiIgQmFz ZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoaXMg YWJzdHJhY3QgRGF0YVR5cGUgaXMgdGhlIGJhc2UgRGF0YVR5cGUgZm9yIGFsbCB1bmlvbiBEYXRh VHlwZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAg PG9wYzpPcGFxdWVUeXBlIE5hbWU9Ik5vcm1hbGl6ZWRTdHJpbmciPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5BIHN0cmluZyBub3JtYWxpemVkIGJhc2VkIG9uIHRoZSBydWxlcyBpbiB0aGUgdW5p Y29kZSBzcGVjaWZpY2F0aW9uLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5 cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9IkRlY2ltYWxTdHJpbmciPg0KICAgIDxvcGM6 RG9jdW1lbnRhdGlvbj5BbiBhcmJpdHJhdHkgbnVtZXJpYyB2YWx1ZS48L29wYzpEb2N1bWVudGF0 aW9uPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJEdXJh dGlvblN0cmluZyI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcGVyaW9kIG9mIHRpbWUgZm9y bWF0dGVkIGFzIGRlZmluZWQgaW4gSVNPIDg2MDEtMjAwMC48L29wYzpEb2N1bWVudGF0aW9uPg0K ICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJUaW1lU3RyaW5n Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSB0aW1lIGZvcm1hdHRlZCBhcyBkZWZpbmVkIGlu IElTTyA4NjAxLTIwMDAuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4N Cg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iRGF0ZVN0cmluZyI+DQogICAgPG9wYzpEb2N1bWVu dGF0aW9uPkEgZGF0ZSBmb3JtYXR0ZWQgYXMgZGVmaW5lZCBpbiBJU08gODYwMS0yMDAwLjwvb3Bj OkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBl IE5hbWU9IkR1cmF0aW9uIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBwZXJpb2Qgb2YgdGlt ZSBtZWFzdXJlZCBpbiBtaWxsaXNlY29uZHMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6 T3BhcXVlVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iVXRjVGltZSI+DQogICAgPG9w YzpEb2N1bWVudGF0aW9uPkEgZGF0ZS90aW1lIHZhbHVlIHNwZWNpZmllZCBpbiBVbml2ZXJzYWwg Q29vcmRpbmF0ZWQgVGltZSAoVVRDKS48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFx dWVUeXBlPg0KDQogIDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJMb2NhbGVJZCI+DQogICAgPG9wYzpE b2N1bWVudGF0aW9uPkFuIGlkZW50aWZpZXIgZm9yIGEgdXNlciBsb2NhbGUuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IlRpbWVab25lRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iT2Zmc2V0IiBUeXBlTmFtZT0ib3BjOkludDE2IiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iRGF5bGlnaHRTYXZpbmdJbk9mZnNldCIgVHlwZU5hbWU9Im9wYzpCb29s ZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFt ZT0iSW50ZWdlcklkIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBudW1lcmljIGlkZW50aWZp ZXIgZm9yIGFuIG9iamVjdC48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFxdWVUeXBl Pg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iQXBwbGljYXRpb25UeXBlIiBMZW5ndGhJ bkJpdHM9IjMyIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIHR5cGVzIG9mIGFwcGxpY2F0 aW9ucy48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 IlNlcnZlciIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ2xp ZW50IiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJDbGllbnRB bmRTZXJ2ZXIiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRp c2NvdmVyeVNlcnZlciIgVmFsdWU9IjMiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQXBwbGljYXRpb25EZXNjcmlwdGlvbiIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkRlc2NyaWJl cyBhbiBhcHBsaWNhdGlvbiBhbmQgaG93IHRvIGZpbmQgaXQuPC9vcGM6RG9jdW1lbnRhdGlvbj4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkFwcGxpY2F0aW9uVXJpIiBUeXBlTmFtZT0ib3BjOlN0cmlu ZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2R1Y3RVcmkiIFR5cGVOYW1lPSJvcGM6U3Ry aW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXBwbGljYXRpb25OYW1lIiBUeXBlTmFtZT0i dWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFwcGxpY2F0aW9uVHlw ZSIgVHlwZU5hbWU9InRuczpBcHBsaWNhdGlvblR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJHYXRld2F5U2VydmVyVXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkRpc2NvdmVyeVByb2ZpbGVVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpc2NvdmVyeVVybHMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNjb3ZlcnlVcmxzIiBUeXBlTmFtZT0ib3Bj OlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaXNjb3ZlcnlVcmxzIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlcXVlc3RIZWFkZXIi IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5U aGUgaGVhZGVyIHBhc3NlZCB3aXRoIGV2ZXJ5IHNlcnZlciByZXF1ZXN0Ljwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdXRoZW50aWNhdGlvblRva2VuIiBUeXBlTmFt ZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGltZXN0YW1wIiBUeXBlTmFt ZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhhbmRsZSIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXR1cm5EaWFn bm9zdGljcyIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJB dWRpdEVudHJ5SWQiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iVGltZW91dEhpbnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iQWRkaXRpb25hbEhlYWRlciIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJS ZXNwb25zZUhlYWRlciIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpE b2N1bWVudGF0aW9uPlRoZSBoZWFkZXIgcGFzc2VkIHdpdGggZXZlcnkgc2VydmVyIHJlc3BvbnNl Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUaW1lc3RhbXAiIFR5 cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGFu ZGxlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZp Y2VSZXN1bHQiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VydmljZURpYWdub3N0aWNzIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU3RyaW5nVGFibGUiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdHJpbmdUYWJsZSIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIExlbmd0aEZpZWxkPSJOb09mU3RyaW5nVGFibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJBZGRpdGlvbmFsSGVhZGVyIiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iVmVyc2lvblRp bWUiPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i U2VydmljZUZhdWx0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRv Y3VtZW50YXRpb24+VGhlIHJlc3BvbnNlIHJldHVybmVkIGJ5IGFsbCBzZXJ2aWNlcyB3aGVuIHRo ZXJlIGlzIGEgc2VydmljZSBsZXZlbCBlcnJvci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFk ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iU2Vzc2lvbmxlc3NJbnZva2VSZXF1ZXN0VHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lv bk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXJpc1ZlcnNpb24iIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVcmlzVmVyc2lvbiIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mVXJpc1ZlcnNpb24iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb09mTmFtZXNwYWNlVXJpcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVyaXMiIFR5cGVOYW1lPSJvcGM6U3RyaW5n IiBMZW5ndGhGaWVsZD0iTm9PZk5hbWVzcGFjZVVyaXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mU2VydmVyVXJpcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlNlcnZlclVyaXMiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhGaWVsZD0iTm9P ZlNlcnZlclVyaXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTG9jYWxlSWRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTG9jYWxlSWRzIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZMb2NhbGVJZHMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJTZXJ2aWNlSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlNlc3Npb25s ZXNzSW52b2tlUmVzcG9uc2VUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZOYW1lc3BhY2VVcmlzIiBUeXBlTmFtZT0ib3BjOkludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTmFtZXNwYWNlVXJpcyIgVHlwZU5hbWU9Im9wYzpT dHJpbmciIExlbmd0aEZpZWxkPSJOb09mTmFtZXNwYWNlVXJpcyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZTZXJ2ZXJVcmlzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyVXJpcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxk PSJOb09mU2VydmVyVXJpcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZpY2VJZCIgVHlw ZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iRmluZFNlcnZlcnNSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+RmluZHMgdGhlIHNlcnZlcnMg a25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRl ciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0 cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZMb2NhbGVJZHMiIFR5cGVOYW1lPSJv cGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMb2NhbGVJZHMiIFR5cGVOYW1lPSJv cGM6U3RyaW5nIiBMZW5ndGhGaWVsZD0iTm9PZkxvY2FsZUlkcyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZTZXJ2ZXJVcmlzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyVXJpcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxk PSJOb09mU2VydmVyVXJpcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJGaW5kU2VydmVyc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+RmluZHMgdGhlIHNlcnZlcnMg a25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVh ZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlcnZlcnMiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJzIiBUeXBlTmFtZT0idG5zOkFw cGxpY2F0aW9uRGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mU2VydmVycyIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTZXJ2ZXJP bk5ldHdvcmsiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVjb3JkSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU2VydmVyTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaXNjb3ZlcnlVcmwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9w YzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mU2VydmVyQ2FwYWJpbGl0aWVzIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkZpbmRTZXJ2 ZXJzT25OZXR3b3JrUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFk ZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGFydGluZ1JlY29yZElkIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heFJlY29yZHNUb1JldHVybiIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VydmVy Q2FwYWJpbGl0eUZpbHRlciIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlNlcnZlckNhcGFiaWxpdHlGaWx0ZXIiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5n dGhGaWVsZD0iTm9PZlNlcnZlckNhcGFiaWxpdHlGaWx0ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRmluZFNlcnZlcnNPbk5ldHdv cmtSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RDb3VudGVyUmVzZXRUaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlcnZlcnMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJzIiBUeXBlTmFtZT0i dG5zOlNlcnZlck9uTmV0d29yayIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZXJ2ZXJzIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iQXBwbGljYXRpb25J bnN0YW5jZUNlcnRpZmljYXRlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBjZXJ0aWZpY2F0 ZSBmb3IgYW4gaW5zdGFuY2Ugb2YgYW4gYXBwbGljYXRpb24uPC9vcGM6RG9jdW1lbnRhdGlvbj4N CiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9Ik1lc3Nh Z2VTZWN1cml0eU1vZGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlv bj5UaGUgdHlwZSBvZiBzZWN1cml0eSB0byB1c2Ugb24gYSBtZXNzYWdlLjwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW52YWxpZCIgVmFsdWU9IjAi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjEiIC8+DQog ICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU2lnbiIgVmFsdWU9IjIiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU2lnbkFuZEVuY3J5cHQiIFZhbHVlPSIzIiAvPg0KICA8 L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlVzZXJU b2tlblR5cGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUg cG9zc2libGUgdXNlciB0b2tlbiB0eXBlcy48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IkFub255bW91cyIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpF bnVtZXJhdGVkVmFsdWUgTmFtZT0iVXNlck5hbWUiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IkNlcnRpZmljYXRlIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVu dW1lcmF0ZWRWYWx1ZSBOYW1lPSJJc3N1ZWRUb2tlbiIgVmFsdWU9IjMiIC8+DQogIDwvb3BjOkVu dW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVXNlclRva2VuUG9s aWN5IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+RGVzY3JpYmVzIGEgdXNlciB0b2tlbiB0aGF0IGNhbiBiZSB1c2VkIHdpdGggYSBzZXJ2ZXIu PC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlBvbGljeUlkIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRva2VuVHlwZSIgVHlw ZU5hbWU9InRuczpVc2VyVG9rZW5UeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNzdWVk VG9rZW5UeXBlIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Iklzc3VlckVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlNlY3VyaXR5UG9saWN5VXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRw b2ludERlc2NyaXB0aW9uIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+VGhlIGRlc2NyaXB0aW9uIG9mIGEgZW5kcG9pbnQgdGhhdCBjYW4gYmUg dXNlZCB0byBhY2Nlc3MgYSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlcnZlciIgVHlwZU5hbWU9InRuczpBcHBsaWNhdGlvbkRlc2NyaXB0aW9u IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyQ2VydGlmaWNhdGUiIFR5cGVOYW1lPSJv cGM6Qnl0ZVN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5TW9kZSIgVHlw ZU5hbWU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U2VjdXJpdHlQb2xpY3lVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlVzZXJJZGVudGl0eVRva2VucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJJZGVudGl0eVRva2VucyIgVHlwZU5hbWU9InRuczpV c2VyVG9rZW5Qb2xpY3kiIExlbmd0aEZpZWxkPSJOb09mVXNlcklkZW50aXR5VG9rZW5zIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iVHJhbnNwb3J0UHJvZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpT dHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eUxldmVsIiBUeXBlTmFtZT0i b3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iR2V0RW5kcG9pbnRzUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5 IHRoZSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJl cXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZMb2NhbGVJZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJMb2NhbGVJZHMiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhG aWVsZD0iTm9PZkxvY2FsZUlkcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZQcm9maWxl VXJpcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2Zp bGVVcmlzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZQcm9maWxlVXJp cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJHZXRFbmRwb2ludHNSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5IHRoZSBz ZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNl SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkVuZHBvaW50cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVuZHBvaW50cyIgVHlwZU5hbWU9InRuczpFbmRwb2ludERlc2NyaXB0aW9uIiBM ZW5ndGhGaWVsZD0iTm9PZkVuZHBvaW50cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3RlcmVkU2VydmVyIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIGluZm9ybWF0 aW9uIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIGEgc2VydmVyIHdpdGggYSBkaXNjb3Zlcnkgc2VydmVy Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJVcmkiIFR5 cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJvZHVjdFVyaSIg VHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VydmVy TmFtZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2 ZXJOYW1lcyIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIExlbmd0aEZpZWxkPSJOb09mU2Vy dmVyTmFtZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJUeXBlIiBUeXBlTmFtZT0i dG5zOkFwcGxpY2F0aW9uVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkdhdGV3YXlTZXJ2 ZXJVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9P ZkRpc2NvdmVyeVVybHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEaXNjb3ZlcnlVcmxzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5v T2ZEaXNjb3ZlcnlVcmxzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VtYXBob3JlRmlsZVBh dGgiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNPbmxp bmUiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3RlclNlcnZlclJlcXVlc3QiIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5SZWdpc3Rl cnMgYSBzZXJ2ZXIgd2l0aCB0aGUgZGlzY292ZXJ5IHNlcnZlci48L29wYzpEb2N1bWVudGF0aW9u Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1 ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyIiBUeXBlTmFtZT0idG5z OlJlZ2lzdGVyZWRTZXJ2ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVnaXN0ZXJTZXJ2ZXJSZXNwb25zZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlJlZ2lzdGVycyBhIHNl cnZlciB3aXRoIHRoZSBkaXNjb3Zlcnkgc2VydmVyLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhl YWRlciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlw ZSBOYW1lPSJEaXNjb3ZlcnlDb25maWd1cmF0aW9uIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBiYXNlIHR5cGUgZm9yIGRpc2NvdmVyeSBj b25maWd1cmF0aW9uIGluZm9ybWF0aW9uLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOlN0 cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTWRuc0Rpc2NvdmVy eUNvbmZpZ3VyYXRpb24iIEJhc2VUeXBlPSJ0bnM6RGlzY292ZXJ5Q29uZmlndXJhdGlvbiI+DQog ICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSBkaXNjb3ZlcnkgaW5mb3JtYXRpb24gbmVlZGVkIGZv ciBtRE5TIHJlZ2lzdHJhdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTWRuc1NlcnZlck5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9w YzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mU2VydmVyQ2FwYWJpbGl0aWVzIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlZ2lzdGVy U2VydmVyMlJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyIiBUeXBlTmFtZT0idG5zOlJlZ2lzdGVyZWRT ZXJ2ZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlzY292ZXJ5Q29uZmlndXJhdGlv biIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc2NvdmVy eUNvbmZpZ3VyYXRpb24iIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIExlbmd0aEZpZWxk PSJOb09mRGlzY292ZXJ5Q29uZmlndXJhdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3RlclNlcnZlcjJSZXNwb25zZSIg QmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNw b25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZDb25maWd1cmF0aW9uUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbmZpZ3VyYXRpb25SZXN1bHRzIiBUeXBlTmFtZT0i dWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZDb25maWd1cmF0aW9uUmVzdWx0cyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1l PSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0i U2VjdXJpdHlUb2tlblJlcXVlc3RUeXBlIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkRv Y3VtZW50YXRpb24+SW5kaWNhdGVzIHdoZXRoZXIgYSB0b2tlbiBpZiBiZWluZyBjcmVhdGVkIG9y IHJlbmV3ZWQuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJJc3N1ZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i UmVuZXciIFZhbHVlPSIxIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9IkNoYW5uZWxTZWN1cml0eVRva2VuIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIHRva2VuIHRoYXQgaWRl bnRpZmllcyBhIHNldCBvZiBrZXlzIGZvciBhbiBhY3RpdmUgc2VjdXJlIGNoYW5uZWwuPC9vcGM6 RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNoYW5uZWxJZCIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUb2tlbklkIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZWRBdCIgVHlwZU5hbWU9 Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRMaWZldGltZSIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iT3BlblNlY3VyZUNoYW5uZWxSZXF1ZXN0IiBCYXNlVHlw ZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+Q3JlYXRlcyBh IHNlY3VyZSBjaGFubmVsIHdpdGggYSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRl ciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudFByb3RvY29sVmVyc2lvbiIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0VHlwZSIgVHlw ZU5hbWU9InRuczpTZWN1cml0eVRva2VuUmVxdWVzdFR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTZWN1cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudE5vbmNlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJp bmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRMaWZldGltZSIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iT3BlblNlY3VyZUNoYW5uZWxSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4 dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkNyZWF0ZXMgYSBzZWN1cmUg Y2hhbm5lbCB3aXRoIGEgc2VydmVyLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlclByb3RvY29sVmVyc2lvbiIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eVRva2VuIiBUeXBlTmFt ZT0idG5zOkNoYW5uZWxTZWN1cml0eVRva2VuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2Vy dmVyTm9uY2UiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgPC9vcGM6U3RydWN0dXJl ZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDbG9zZVNlY3VyZUNoYW5uZWxS ZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50 YXRpb24+Q2xvc2VzIGEgc2VjdXJlIGNoYW5uZWwuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRl ciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJDbG9zZVNlY3VyZUNoYW5uZWxSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkNsb3NlcyBhIHNlY3VyZSBjaGFubmVsLjwv b3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIg VHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRl IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+ QSBzb2Z0d2FyZSBjZXJ0aWZpY2F0ZSB3aXRoIGEgZGlnaXRhbCBzaWduYXR1cmUuPC9vcGM6RG9j dW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNlcnRpZmljYXRlRGF0YSIgVHlwZU5h bWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2lnbmF0dXJlIiBU eXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJTZXNzaW9uQXV0aGVudGljYXRpb25Ub2tlbiI+DQogICAg PG9wYzpEb2N1bWVudGF0aW9uPkEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIGEgc2Vzc2lvbiB1c2Vk IHRvIGF1dGhlbnRpY2F0ZSByZXF1ZXN0cy48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpP cGFxdWVUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2lnbmF0dXJlRGF0YSIg QmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEg ZGlnaXRhbCBzaWduYXR1cmUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkFsZ29yaXRobSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTaWduYXR1cmUiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDcmVhdGVTZXNzaW9u UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVu dGF0aW9uPkNyZWF0ZXMgYSBuZXcgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0 bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudERlc2NyaXB0 aW9uIiBUeXBlTmFtZT0idG5zOkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJTZXJ2ZXJVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRW5kcG9pbnRVcmwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iU2Vzc2lvbk5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iQ2xpZW50Tm9uY2UiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudENlcnRpZmljYXRlIiBUeXBlTmFtZT0ib3Bj OkJ5dGVTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRTZXNzaW9uVGlt ZW91dCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhS ZXNwb25zZU1lc3NhZ2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDcmVhdGVTZXNzaW9u UmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5DcmVhdGVzIGEgbmV3IHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwvb3BjOkRvY3Vt ZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9 InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlc3Npb25JZCIg VHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF1dGhlbnRpY2F0 aW9uVG9rZW4iIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXZpc2VkU2Vzc2lvblRpbWVvdXQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyTm9uY2UiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckNlcnRpZmljYXRlIiBUeXBlTmFtZT0ib3BjOkJ5dGVT dHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VydmVyRW5kcG9pbnRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyRW5kcG9pbnRz IiBUeXBlTmFtZT0idG5zOkVuZHBvaW50RGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mU2Vy dmVyRW5kcG9pbnRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlcnZlclNvZnR3YXJl Q2VydGlmaWNhdGVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VydmVyU29mdHdhcmVDZXJ0aWZpY2F0ZXMiIFR5cGVOYW1lPSJ0bnM6U2lnbmVkU29mdHdh cmVDZXJ0aWZpY2F0ZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZXJ2ZXJTb2Z0d2FyZUNlcnRpZmljYXRl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlclNpZ25hdHVyZSIgVHlwZU5hbWU9InRu czpTaWduYXR1cmVEYXRhIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4UmVxdWVzdE1lc3Nh Z2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVc2VySWRlbnRpdHlUb2tlbiIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgYmFzZSB0 eXBlIGZvciBhIHVzZXIgaWRlbnRpdHkgdG9rZW4uPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlBvbGljeUlkIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBbm9ueW1v dXNJZGVudGl0eVRva2VuIiBCYXNlVHlwZT0idG5zOlVzZXJJZGVudGl0eVRva2VuIj4NCiAgICA8 b3BjOkRvY3VtZW50YXRpb24+QSB0b2tlbiByZXByZXNlbnRpbmcgYW4gYW5vbnltb3VzIHVzZXIu PC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlBvbGljeUlkIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5zOlVzZXJJZGVudGl0eVRva2VuIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlVz ZXJOYW1lSWRlbnRpdHlUb2tlbiIgQmFzZVR5cGU9InRuczpVc2VySWRlbnRpdHlUb2tlbiI+DQog ICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgdG9rZW4gcmVwcmVzZW50aW5nIGEgdXNlciBpZGVudGlm aWVkIGJ5IGEgdXNlciBuYW1lIGFuZCBwYXNzd29yZC48L29wYzpEb2N1bWVudGF0aW9uPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iUG9saWN5SWQiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBTb3VyY2VU eXBlPSJ0bnM6VXNlcklkZW50aXR5VG9rZW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2Vy TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQYXNz d29yZCIgVHlwZU5hbWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i RW5jcnlwdGlvbkFsZ29yaXRobSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogIDwvb3BjOlN0 cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iWDUwOUlkZW50aXR5 VG9rZW4iIEJhc2VUeXBlPSJ0bnM6VXNlcklkZW50aXR5VG9rZW4iPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5BIHRva2VuIHJlcHJlc2VudGluZyBhIHVzZXIgaWRlbnRpZmllZCBieSBhbiBYNTA5 IGNlcnRpZmljYXRlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQ b2xpY3lJZCIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIFNvdXJjZVR5cGU9InRuczpVc2VySWRlbnRp dHlUb2tlbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNlcnRpZmljYXRlRGF0YSIgVHlwZU5h bWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9Iklzc3VlZElkZW50aXR5VG9rZW4iIEJhc2VUeXBlPSJ0bnM6 VXNlcklkZW50aXR5VG9rZW4iPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHRva2VuIHJlcHJl c2VudGluZyBhIHVzZXIgaWRlbnRpZmllZCBieSBhIFdTLVNlY3VyaXR5IFhNTCB0b2tlbi48L29w YzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUG9saWN5SWQiIFR5cGVOYW1l PSJvcGM6U3RyaW5nIiBTb3VyY2VUeXBlPSJ0bnM6VXNlcklkZW50aXR5VG9rZW4iIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJUb2tlbkRhdGEiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuY3J5cHRpb25BbGdvcml0aG0iIFR5cGVOYW1lPSJvcGM6 U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IkFjdGl2YXRlU2Vzc2lvblJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BY3RpdmF0ZXMgYSBzZXNzaW9uIHdpdGgg dGhlIHNlcnZlci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVx dWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQ2xpZW50U2lnbmF0dXJlIiBUeXBlTmFtZT0idG5zOlNpZ25hdHVyZURhdGEiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQ2xpZW50U29mdHdhcmVDZXJ0aWZpY2F0ZXMiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDbGllbnRTb2Z0d2Fy ZUNlcnRpZmljYXRlcyIgVHlwZU5hbWU9InRuczpTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRlIiBM ZW5ndGhGaWVsZD0iTm9PZkNsaWVudFNvZnR3YXJlQ2VydGlmaWNhdGVzIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZkxvY2FsZUlkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkxvY2FsZUlkcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZp ZWxkPSJOb09mTG9jYWxlSWRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcklkZW50aXR5 VG9rZW4iIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJVc2VyVG9rZW5TaWduYXR1cmUiIFR5cGVOYW1lPSJ0bnM6U2lnbmF0dXJlRGF0YSIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJB Y3RpdmF0ZVNlc3Npb25SZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpEb2N1bWVudGF0aW9uPkFjdGl2YXRlcyBhIHNlc3Npb24gd2l0aCB0aGUgc2VydmVy Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRl ciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlNlcnZlck5vbmNlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhGaWVsZD0i Tm9PZlJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9z IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3Rp Y0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlh Z25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkNsb3NlU2Vzc2lvblJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNp b25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5DbG9zZXMgYSBzZXNzaW9uIHdpdGgg dGhlIHNlcnZlci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVx dWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iRGVsZXRlU3Vic2NyaXB0aW9ucyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNs b3NlU2Vzc2lvblJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8 b3BjOkRvY3VtZW50YXRpb24+Q2xvc2VzIGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIuPC9vcGM6 RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBl TmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNhbmNlbFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpF eHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5DYW5jZWxzIGFuIG91dHN0 YW5kaW5nIHJlcXVlc3QuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlJlcXVlc3RIYW5kbGUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNhbmNl bFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3Vt ZW50YXRpb24+Q2FuY2VscyBhbiBvdXRzdGFuZGluZyByZXF1ZXN0Ljwvb3BjOkRvY3VtZW50YXRp b24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNhbmNlbENvdW50IiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpF bnVtZXJhdGVkVHlwZSBOYW1lPSJOb2RlQXR0cmlidXRlc01hc2siIExlbmd0aEluQml0cz0iMzIi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYml0cyB1c2VkIHRvIHNwZWNpZnkgZGVmYXVs dCBhdHRyaWJ1dGVzIGZvciBhIG5ldyBub2RlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVt ZXJhdGVkVmFsdWUgTmFtZT0iQWNjZXNzTGV2ZWwiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IkFycmF5RGltZW5zaW9ucyIgVmFsdWU9IjIiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQnJvd3NlTmFtZSIgVmFsdWU9IjQiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ29udGFpbnNOb0xvb3BzIiBWYWx1ZT0iOCIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEYXRhVHlwZSIgVmFsdWU9IjE2IiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRlc2NyaXB0aW9uIiBWYWx1ZT0iMzIiIC8+DQog ICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGlzcGxheU5hbWUiIFZhbHVlPSI2NCIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJFdmVudE5vdGlmaWVyIiBWYWx1ZT0iMTI4 IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkV4ZWN1dGFibGUiIFZhbHVlPSIy NTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSGlzdG9yaXppbmciIFZhbHVl PSI1MTIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW52ZXJzZU5hbWUiIFZh bHVlPSIxMDI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IklzQWJzdHJhY3Qi IFZhbHVlPSIyMDQ4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik1pbmltdW1T YW1wbGluZ0ludGVydmFsIiBWYWx1ZT0iNDA5NiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJOb2RlQ2xhc3MiIFZhbHVlPSI4MTkyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9Ik5vZGVJZCIgVmFsdWU9IjE2Mzg0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9IlN5bW1ldHJpYyIgVmFsdWU9IjMyNzY4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IlVzZXJBY2Nlc3NMZXZlbCIgVmFsdWU9IjY1NTM2IiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IlVzZXJFeGVjdXRhYmxlIiBWYWx1ZT0iMTMxMDcyIiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlVzZXJXcml0ZU1hc2siIFZhbHVlPSIyNjIx NDQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVmFsdWVSYW5rIiBWYWx1ZT0i NTI0Mjg4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IldyaXRlTWFzayIgVmFs dWU9IjEwNDg1NzYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVmFsdWUiIFZh bHVlPSIyMDk3MTUyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRhdGFUeXBl RGVmaW5pdGlvbiIgVmFsdWU9IjQxOTQzMDQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iUm9sZVBlcm1pc3Npb25zIiBWYWx1ZT0iODM4ODYwOCIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJBY2Nlc3NSZXN0cmljdGlvbnMiIFZhbHVlPSIxNjc3NzIxNiIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBbGwiIFZhbHVlPSIzMzU1NDQzMSIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJCYXNlTm9kZSIgVmFsdWU9IjI2NTAxMjIw IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9iamVjdCIgVmFsdWU9IjI2NTAx MzQ4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9iamVjdFR5cGUiIFZhbHVl PSIyNjUwMzI2OCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJWYXJpYWJsZSIg VmFsdWU9IjI2NTcxMzgzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlZhcmlh YmxlVHlwZSIgVmFsdWU9IjI4NjAwNDM4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9Ik1ldGhvZCIgVmFsdWU9IjI2NjMyNTQ4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlJlZmVyZW5jZVR5cGUiIFZhbHVlPSIyNjUzNzA2MCIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJWaWV3IiBWYWx1ZT0iMjY1MDEzNTYiIC8+DQogIDwvb3BjOkVudW1l cmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTm9kZUF0dHJpYnV0ZXMi IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5U aGUgYmFzZSBhdHRyaWJ1dGVzIGZvciBhbGwgbm9kZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUlu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpM b2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNr IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0 ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik9iamVjdEF0dHJpYnV0ZXMiIEJhc2VUeXBl PSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYXR0cmli dXRlcyBmb3IgYW4gb2JqZWN0IG5vZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3Vy Y2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNw bGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2Rl QXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFt ZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291 cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNl cldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0 cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkV2ZW50Tm90aWZpZXIiIFR5cGVOYW1l PSJvcGM6Qnl0ZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJWYXJpYWJsZUF0dHJpYnV0ZXMiIEJhc2VUeXBlPSJ0bnM6Tm9kZUF0dHJp YnV0ZXMiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRlcyBmb3IgYSB2YXJp YWJsZSBub2RlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVj aWZpZWRBdHRyaWJ1dGVzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5v ZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXpl ZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpO b2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5 cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOlZhcmlhbnQiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZSIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlZhbHVlUmFuayIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6 VUludDMyIiBMZW5ndGhGaWVsZD0iTm9PZkFycmF5RGltZW5zaW9ucyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkFjY2Vzc0xldmVsIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJVc2VyQWNjZXNzTGV2ZWwiIFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik1pbmltdW1TYW1wbGluZ0ludGVydmFsIiBUeXBlTmFtZT0ib3BjOkRv dWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3Rvcml6aW5nIiBUeXBlTmFtZT0ib3Bj OkJvb2xlYW4iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iTWV0aG9kQXR0cmlidXRlcyIgQmFzZVR5cGU9InRuczpOb2RlQXR0cmlidXRl cyI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhIG1ldGhvZCBu b2RlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRB dHRyaWJ1dGVzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRy aWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQi IFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0 cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1l PSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFeGVjdXRhYmxlIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJVc2VyRXhlY3V0YWJsZSIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ik9iamVjdFR5cGVBdHRyaWJ1dGVzIiBCYXNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAg ICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIGF0dHJpYnV0ZXMgZm9yIGFuIG9iamVjdCB0eXBlIG5v ZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNwZWNpZmllZEF0 dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJp YnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVh OkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIg U291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i V3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRy aWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IklzQWJzdHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJWYXJpYWJs ZVR5cGVBdHRyaWJ1dGVzIiBCYXNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+VGhlIGF0dHJpYnV0ZXMgZm9yIGEgdmFyaWFibGUgdHlwZSBub2RlLjwv b3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRBdHRyaWJ1 dGVzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVz IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2Nh bGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJj ZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRl TWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6 VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOlZhcmlhbnQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEYXRhVHlwZSIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlZhbHVlUmFuayIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBMZW5n dGhGaWVsZD0iTm9PZkFycmF5RGltZW5zaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Iklz QWJzdHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5 cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWZlcmVuY2VUeXBlQXR0cmlidXRl cyIgQmFzZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9u PlRoZSBhdHRyaWJ1dGVzIGZvciBhIHJlZmVyZW5jZSB0eXBlIG5vZGUuPC9vcGM6RG9jdW1lbnRh dGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1l PSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNv dXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl c2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5v ZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFt ZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJj ZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklzQWJz dHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN5 bW1ldHJpYyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SW52ZXJzZU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFUeXBlQXR0cmli dXRlcyIgQmFzZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyI+DQogICAgPG9wYzpEb2N1bWVudGF0 aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhIGRhdGEgdHlwZSBub2RlLjwvb3BjOkRvY3VtZW50YXRp b24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRBdHRyaWJ1dGVzIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3Vy Y2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNj cmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2Rl QXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VU eXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc0Fic3Ry YWN0IiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVmlld0F0dHJpYnV0ZXMiIEJhc2VUeXBlPSJ0 bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRl cyBmb3IgYSB2aWV3IG5vZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBl PSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFt ZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmli dXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlw ZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRl TWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbnRhaW5zTm9Mb29wcyIgVHlwZU5hbWU9Im9w YzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnROb3RpZmllciIgVHlwZU5h bWU9Im9wYzpCeXRlIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdHRyaWJ1dGVJZCIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVh OlZhcmlhbnQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iR2VuZXJpY0F0dHJpYnV0ZXMiIEJhc2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0 ZXMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3BlY2lmaWVkQXR0cmlidXRlcyIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291 cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVz Y3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9k ZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJXcml0ZU1hc2siIFR5cGVOYW1l PSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNl VHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkF0 dHJpYnV0ZVZhbHVlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkF0dHJpYnV0ZVZhbHVlcyIgVHlwZU5hbWU9InRuczpHZW5lcmljQXR0cmlidXRlVmFsdWUi IExlbmd0aEZpZWxkPSJOb09mQXR0cmlidXRlVmFsdWVzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFkZE5vZGVzSXRlbSIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVz dCB0byBhZGQgYSBub2RlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVu dGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGFyZW50Tm9kZUlkIiBUeXBlTmFtZT0idWE6 RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VUeXBlSWQi IFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRO ZXdOb2RlSWQiIFR5cGVOYW1lPSJ1YTpFeHBhbmRlZE5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9kZUNsYXNzIiBUeXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVBdHRyaWJ1dGVzIiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9u T2JqZWN0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHlwZURlZmluaXRpb24iIFR5cGVOYW1l PSJ1YTpFeHBhbmRlZE5vZGVJZCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBZGROb2Rlc1Jlc3VsdCIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVzdWx0IG9mIGFuIGFkZCBu b2RlIG9wZXJhdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJBZGRlZE5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBZGROb2Rlc1JlcXVlc3Qi IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5B ZGRzIG9uZSBvciBtb3JlIG5vZGVzIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpE b2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5h bWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVz VG9BZGQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rl c1RvQWRkIiBUeXBlTmFtZT0idG5zOkFkZE5vZGVzSXRlbSIgTGVuZ3RoRmllbGQ9Ik5vT2ZOb2Rl c1RvQWRkIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IkFkZE5vZGVzUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BZGRzIG9uZSBvciBtb3JlIG5vZGVzIHRvIHRoZSBz ZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ0bnM6QWRkTm9kZXNSZXN1 bHQiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVu Z3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWRkUmVmZXJlbmNlc0l0ZW0iIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHJlcXVl c3QgdG8gYWRkIGEgcmVmZXJlbmNlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpE b2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU291cmNlTm9kZUlkIiBUeXBlTmFt ZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlVHlwZUlkIiBU eXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNGb3J3YXJkIiBU eXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUYXJnZXRTZXJ2 ZXJVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGFy Z2V0Tm9kZUlkIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJUYXJnZXROb2RlQ2xhc3MiIFR5cGVOYW1lPSJ0bnM6Tm9kZUNsYXNzIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFkZFJl ZmVyZW5jZXNSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+QWRkcyBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZXNUb0FkZCIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZXNUb0FkZCIgVHlwZU5hbWU9InRuczpBZGRS ZWZlcmVuY2VzSXRlbSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZWZlcmVuY2VzVG9BZGQiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWRkUmVm ZXJlbmNlc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+QWRkcyBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhG aWVsZD0iTm9PZlJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3Rp Y0luZm9zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlh Z25vc3RpY0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJO b09mRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRlbGV0ZU5vZGVzSXRlbSIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0byBkZWxldGUg YSBub2RlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iRGVsZXRlVGFyZ2V0UmVmZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpC b29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IkRlbGV0ZU5vZGVzUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVj dCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSBub2RlcyBmcm9t IHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVzVG9EZWxldGUiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rlc1RvRGVsZXRlIiBUeXBlTmFtZT0i dG5zOkRlbGV0ZU5vZGVzSXRlbSIgTGVuZ3RoRmllbGQ9Ik5vT2ZOb2Rlc1RvRGVsZXRlIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRl bGV0ZU5vZGVzUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5EZWxldGUgb25lIG9yIG1vcmUgbm9kZXMgZnJvbSB0aGUgc2VydmVy IGFkZHJlc3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3Ro RmllbGQ9Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0 aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRp YWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0i Tm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVSZWZlcmVuY2VzSXRlbSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0byBk ZWxldGUgYSBub2RlIGZyb20gdGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTb3VyY2VOb2RlSWQiIFR5cGVOYW1lPSJ1YTpO b2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VUeXBlSWQiIFR5cGVOYW1l PSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc0ZvcndhcmQiIFR5cGVOYW1l PSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRhcmdldE5vZGVJZCIgVHlw ZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVsZXRl QmlkaXJlY3Rpb25hbCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRlbGV0ZVJlZmVyZW5jZXNS ZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50 YXRpb24+RGVsZXRlIG9uZSBvciBtb3JlIHJlZmVyZW5jZXMgZnJvbSB0aGUgc2VydmVyIGFkZHJl c3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZSZWZlcmVuY2VzVG9EZWxldGUiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzVG9EZWxldGUiIFR5cGVOYW1lPSJ0bnM6RGVs ZXRlUmVmZXJlbmNlc0l0ZW0iIExlbmd0aEZpZWxkPSJOb09mUmVmZXJlbmNlc1RvRGVsZXRlIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IkRlbGV0ZVJlZmVyZW5jZXNSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIGZy b20gdGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRl ciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InVhOlN0YXR1 c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIg TGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iQXR0cmlidXRlV3JpdGVNYXNrIiBM ZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+RGVmaW5lIGJpdHMgdXNl ZCB0byBpbmRpY2F0ZSB3aGljaCBhdHRyaWJ1dGVzIGFyZSB3cml0YWJsZS48L29wYzpEb2N1bWVu dGF0aW9uPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5vbmUiIFZhbHVlPSIwIiAv Pg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkFjY2Vzc0xldmVsIiBWYWx1ZT0iMSIg Lz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBcnJheURpbWVuc2lvbnMiIFZhbHVl PSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkJyb3dzZU5hbWUiIFZhbHVl PSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkNvbnRhaW5zTm9Mb29wcyIg VmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVR5cGUiIFZh bHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEZXNjcmlwdGlvbiIg VmFsdWU9IjMyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRpc3BsYXlOYW1l IiBWYWx1ZT0iNjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRXZlbnROb3Rp ZmllciIgVmFsdWU9IjEyOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJFeGVj dXRhYmxlIiBWYWx1ZT0iMjU2IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ikhp c3Rvcml6aW5nIiBWYWx1ZT0iNTEyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 IkludmVyc2VOYW1lIiBWYWx1ZT0iMTAyNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJJc0Fic3RyYWN0IiBWYWx1ZT0iMjA0OCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJNaW5pbXVtU2FtcGxpbmdJbnRlcnZhbCIgVmFsdWU9IjQwOTYiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9kZUNsYXNzIiBWYWx1ZT0iODE5MiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb2RlSWQiIFZhbHVlPSIxNjM4NCIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTeW1tZXRyaWMiIFZhbHVlPSIzMjc2OCIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2VyQWNjZXNzTGV2ZWwiIFZhbHVlPSI2NTUz NiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2VyRXhlY3V0YWJsZSIgVmFs dWU9IjEzMTA3MiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2VyV3JpdGVN YXNrIiBWYWx1ZT0iMjYyMTQ0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlZh bHVlUmFuayIgVmFsdWU9IjUyNDI4OCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1l PSJXcml0ZU1hc2siIFZhbHVlPSIxMDQ4NTc2IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlZhbHVlRm9yVmFyaWFibGVUeXBlIiBWYWx1ZT0iMjA5NzE1MiIgLz4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEYXRhVHlwZURlZmluaXRpb24iIFZhbHVlPSI0MTk0MzA0 IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJvbGVQZXJtaXNzaW9ucyIgVmFs dWU9IjgzODg2MDgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQWNjZXNzUmVz dHJpY3Rpb25zIiBWYWx1ZT0iMTY3NzcyMTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iQWNjZXNzTGV2ZWxFeCIgVmFsdWU9IjMzNTU0NDMyIiAvPg0KICA8L29wYzpFbnVtZXJh dGVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkJyb3dzZURpcmVjdGlvbiIg TGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSBkaXJlY3Rpb25z IG9mIHRoZSByZWZlcmVuY2VzIHRvIHJldHVybi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkZvcndhcmQiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IkludmVyc2UiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IkJvdGgiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkludmFsaWQiIFZhbHVlPSIzIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZpZXdEZXNjcmlwdGlvbiIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSB2aWV3 IHRvIGJyb3dzZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmll d0lkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGltZXN0 YW1wIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmll d1ZlcnNpb24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb3dzZURlc2NyaXB0aW9uIiBCYXNl VHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSByZXF1 ZXN0IHRvIGJyb3dzZSB0aGUgdGhlIHJlZmVyZW5jZXMgZnJvbSBhIG5vZGUuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJ ZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJyb3dzZURpcmVjdGlvbiIgVHlwZU5hbWU9InRu czpCcm93c2VEaXJlY3Rpb24iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VUeXBl SWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJbmNsdWRl U3VidHlwZXMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5vZGVDbGFzc01hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVzdWx0TWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iQnJvd3NlUmVzdWx0TWFz ayIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgYml0IG1hc2sg d2hpY2ggc3BlY2lmaWVzIHdoYXQgc2hvdWxkIGJlIHJldHVybmVkIGluIGEgYnJvd3NlIHJlc3Bv bnNlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i Tm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUmVmZXJl bmNlVHlwZUlkIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJJ c0ZvcndhcmQiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5v ZGVDbGFzcyIgVmFsdWU9IjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQnJv d3NlTmFtZSIgVmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGlz cGxheU5hbWUiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJU eXBlRGVmaW5pdGlvbiIgVmFsdWU9IjMyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IkFsbCIgVmFsdWU9IjYzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJl ZmVyZW5jZVR5cGVJbmZvIiBWYWx1ZT0iMyIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJUYXJnZXRJbmZvIiBWYWx1ZT0iNjAiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVmZXJlbmNlRGVzY3JpcHRpb24iIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgZGVz Y3JpcHRpb24gb2YgYSByZWZlcmVuY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlZmVyZW5jZVR5cGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IklzRm9yd2FyZCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVk TmFtZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5h bWU9InRuczpOb2RlQ2xhc3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUeXBlRGVmaW5pdGlv biIgVHlwZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iQ29udGludWF0aW9uUG9pbnQiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5BbiBpZGVudGlmaWVyIGZvciBhIHN1c3BlbmRlZCBxdWVyeSBvciBi cm93c2Ugb3BlcmF0aW9uLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJCcm93c2VSZXN1bHQiIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgcmVzdWx0IG9m IGEgYnJvd3NlIG9wZXJhdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJDb250aW51YXRpb25Qb2ludCIgVHlwZU5hbWU9Im9wYzpCeXRlU3RyaW5nIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzIiBUeXBlTmFtZT0idG5zOlJl ZmVyZW5jZURlc2NyaXB0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJvd3Nl UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVu dGF0aW9uPkJyb3dzZSB0aGUgcmVmZXJlbmNlcyBmb3Igb25lIG9yIG1vcmUgbm9kZXMgZnJvbSB0 aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlZpZXciIFR5cGVOYW1lPSJ0bnM6Vmlld0Rlc2NyaXB0aW9u IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdGVkTWF4UmVmZXJlbmNlc1Blck5vZGUi IFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVz VG9Ccm93c2UiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b2Rlc1RvQnJvd3NlIiBUeXBlTmFtZT0idG5zOkJyb3dzZURlc2NyaXB0aW9uIiBMZW5ndGhGaWVs ZD0iTm9PZk5vZGVzVG9Ccm93c2UiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJvd3NlUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5Ccm93c2UgdGhlIHJlZmVyZW5j ZXMgZm9yIG9uZSBvciBtb3JlIG5vZGVzIGZyb20gdGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwv b3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIg VHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVzdWx0cyIgVHlwZU5hbWU9InRuczpCcm93c2VSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mUmVz dWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVO YW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3Mi IFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGlj SW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iQnJvd3NlTmV4dFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5Db250aW51ZXMgb25lIG9yIG1vcmUgYnJvd3NlIG9w ZXJhdGlvbnMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlJlbGVhc2VDb250aW51YXRpb25Qb2ludHMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZDb250aW51YXRpb25Qb2ludHMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDb250aW51YXRpb25Qb2ludHMi IFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZDb250aW51YXRpb25Q b2ludHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iQnJvd3NlTmV4dFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+Q29udGludWVzIG9uZSBvciBtb3JlIGJyb3dzZSBv cGVyYXRpb25zLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNw b25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InRuczpCcm93c2VSZXN1bHQiIExlbmd0aEZp ZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGlj SW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFn bm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5v T2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVsYXRpdmVQYXRoRWxlbWVudCIgQmFzZVR5cGU9InVhOkV4 dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkFuIGVsZW1lbnQgaW4gYSBy ZWxhdGl2ZSBwYXRoLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZWZlcmVuY2VUeXBlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJJc0ludmVyc2UiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkluY2x1ZGVTdWJ0eXBlcyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVGFyZ2V0TmFtZSIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5hbWUiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i UmVsYXRpdmVQYXRoIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRv Y3VtZW50YXRpb24+QSByZWxhdGl2ZSBwYXRoIGNvbnN0cnVjdGVkIGZyb20gcmVmZXJlbmNlIHR5 cGVzIGFuZCBicm93c2UgbmFtZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZFbGVtZW50cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVsZW1lbnRzIiBUeXBlTmFtZT0idG5zOlJlbGF0aXZlUGF0aEVsZW1lbnQiIExl bmd0aEZpZWxkPSJOb09mRWxlbWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJvd3NlUGF0aCIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0byB0cmFuc2xh dGUgYSBwYXRoIGludG8gYSBub2RlIGlkLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJTdGFydGluZ05vZGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZWxhdGl2ZVBhdGgiIFR5cGVOYW1lPSJ0bnM6UmVsYXRpdmVQYXRoIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IkJyb3dzZVBhdGhUYXJnZXQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5UaGUgdGFyZ2V0IG9mIHRoZSB0cmFuc2xhdGVkIHBhdGguPC9vcGM6 RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRhcmdldElkIiBUeXBlTmFtZT0i dWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZW1haW5pbmdQYXRo SW5kZXgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb3dzZVBhdGhSZXN1bHQiIEJhc2VUeXBl PSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgcmVzdWx0 IG9mIGEgdHJhbnNsYXRlIG9wZWFyYXRpb24uPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZlRhcmdldHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJUYXJnZXRzIiBUeXBlTmFtZT0idG5zOkJyb3dzZVBhdGhUYXJn ZXQiIExlbmd0aEZpZWxkPSJOb09mVGFyZ2V0cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUcmFuc2xhdGVCcm93c2VQYXRoc1RvTm9k ZUlkc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9j dW1lbnRhdGlvbj5UcmFuc2xhdGVzIG9uZSBvciBtb3JlIHBhdGhzIGluIHRoZSBzZXJ2ZXIgYWRk cmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVx dWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZkJyb3dzZVBhdGhzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iQnJvd3NlUGF0aHMiIFR5cGVOYW1lPSJ0bnM6QnJvd3NlUGF0aCIgTGVu Z3RoRmllbGQ9Ik5vT2ZCcm93c2VQYXRocyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUcmFuc2xhdGVCcm93c2VQYXRoc1RvTm9kZUlk c1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3Vt ZW50YXRpb24+VHJhbnNsYXRlcyBvbmUgb3IgbW9yZSBwYXRocyBpbiB0aGUgc2VydmVyIGFkZHJl c3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3Bv bnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idG5zOkJyb3dzZVBhdGhSZXN1bHQiIExlbmd0 aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9z dGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE aWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9 Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVnaXN0ZXJOb2Rlc1JlcXVlc3QiIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5SZWdpc3RlcnMgb25l IG9yIG1vcmUgbm9kZXMgZm9yIHJlcGVhdGVkIHVzZSB3aXRoaW4gYSBzZXNzaW9uLjwvb3BjOkRv Y3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFt ZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTm9kZXNU b1JlZ2lzdGVyIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i Tm9kZXNUb1JlZ2lzdGVyIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBMZW5ndGhGaWVsZD0iTm9PZk5v ZGVzVG9SZWdpc3RlciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3Rlck5vZGVzUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5SZWdpc3RlcnMgb25lIG9yIG1v cmUgbm9kZXMgZm9yIHJlcGVhdGVkIHVzZSB3aXRoaW4gYSBzZXNzaW9uLjwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRu czpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWdpc3RlcmVk Tm9kZUlkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJl Z2lzdGVyZWROb2RlSWRzIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBMZW5ndGhGaWVsZD0iTm9PZlJl Z2lzdGVyZWROb2RlSWRzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9IlVucmVnaXN0ZXJOb2Rlc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpF eHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5VbnJlZ2lzdGVycyBvbmUg b3IgbW9yZSBwcmV2aW91c2x5IHJlZ2lzdGVyZWQgbm9kZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVz dEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZOb2Rlc1RvVW5yZWdpc3RlciIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVzVG9VbnJl Z2lzdGVyIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBMZW5ndGhGaWVsZD0iTm9PZk5vZGVzVG9VbnJl Z2lzdGVyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IlVucmVnaXN0ZXJOb2Rlc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VW5yZWdpc3RlcnMgb25lIG9yIG1vcmUg cHJldmlvdXNseSByZWdpc3RlcmVkIG5vZGVzLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRl ciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9 IkNvdW50ZXIiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIG1vbm90b25pY2FsbHkgaW5jcmVh c2luZyB2YWx1ZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQog IDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJOdW1lcmljUmFuZ2UiPg0KICAgIDxvcGM6RG9jdW1lbnRh dGlvbj5TcGVjaWZpZXMgYSByYW5nZSBvZiBhcnJheSBpbmRleGVzLjwvb3BjOkRvY3VtZW50YXRp b24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9IlRpbWUi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHRpbWUgdmFsdWUgc3BlY2lmaWVkIGFzIEhIOk1N OlNTLlNTUy48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxv cGM6T3BhcXVlVHlwZSBOYW1lPSJEYXRlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBkYXRl IHZhbHVlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRwb2ludENvbmZpZ3VyYXRpb24iIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iT3BlcmF0aW9uVGltZW91 dCIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZUJpbmFy eUVuY29kaW5nIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJNYXhTdHJpbmdMZW5ndGgiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNYXhCeXRlU3RyaW5nTGVuZ3RoIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTWF4QXJyYXlMZW5ndGgiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhNZXNzYWdlU2l6ZSIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heEJ1ZmZlclNpemUiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDaGFubmVsTGlmZXRpbWUiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eVRva2VuTGlmZXRp bWUiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUXVlcnlEYXRhRGVzY3JpcHRpb24iIEJhc2VUeXBl PSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVsYXRpdmVQYXRo IiBUeXBlTmFtZT0idG5zOlJlbGF0aXZlUGF0aCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF0 dHJpYnV0ZUlkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkluZGV4UmFuZ2UiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik5vZGVUeXBlRGVzY3JpcHRpb24i IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHlw ZURlZmluaXRpb25Ob2RlIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJbmNsdWRlU3ViVHlwZXMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEYXRhVG9SZXR1cm4iIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVG9SZXR1cm4iIFR5cGVOYW1lPSJ0bnM6 UXVlcnlEYXRhRGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mRGF0YVRvUmV0dXJuIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkZp bHRlck9wZXJhdG9yIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJFcXVhbHMiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IklzTnVsbCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i R3JlYXRlclRoYW4iIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 Ikxlc3NUaGFuIiBWYWx1ZT0iMyIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJH cmVhdGVyVGhhbk9yRXF1YWwiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9Ikxlc3NUaGFuT3JFcXVhbCIgVmFsdWU9IjUiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iTGlrZSIgVmFsdWU9IjYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iTm90IiBWYWx1ZT0iNyIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJC ZXR3ZWVuIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJJbkxp c3QiIFZhbHVlPSI5IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkFuZCIgVmFs dWU9IjEwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9yIiBWYWx1ZT0iMTEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ2FzdCIgVmFsdWU9IjEyIiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkluVmlldyIgVmFsdWU9IjEzIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9mVHlwZSIgVmFsdWU9IjE0IiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJlbGF0ZWRUbyIgVmFsdWU9IjE1IiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkJpdHdpc2VBbmQiIFZhbHVlPSIxNiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJCaXR3aXNlT3IiIFZhbHVlPSIxNyIgLz4NCiAgPC9v cGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJRdWVyeURh dGFTZXQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJUeXBlRGVmaW5pdGlvbk5vZGUiIFR5cGVOYW1lPSJ1YTpFeHBhbmRlZE5vZGVJZCIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZWYWx1ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZXMiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiBM ZW5ndGhGaWVsZD0iTm9PZlZhbHVlcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAg PG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJOb2RlUmVmZXJlbmNlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVh Ok5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZVR5cGVJZCIgVHlwZU5h bWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklzRm9yd2FyZCIgVHlwZU5h bWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZWRO b2RlSWRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVm ZXJlbmNlZE5vZGVJZHMiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIExlbmd0aEZpZWxkPSJOb09mUmVm ZXJlbmNlZE5vZGVJZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnQiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRmlsdGVyT3BlcmF0b3IiIFR5cGVO YW1lPSJ0bnM6RmlsdGVyT3BlcmF0b3IiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRmls dGVyT3BlcmFuZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJGaWx0ZXJPcGVyYW5kcyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgTGVuZ3RoRmll bGQ9Ik5vT2ZGaWx0ZXJPcGVyYW5kcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAg PG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDb250ZW50RmlsdGVyIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZFbGVtZW50cyIgVHlwZU5h bWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVsZW1lbnRzIiBUeXBlTmFt ZT0idG5zOkNvbnRlbnRGaWx0ZXJFbGVtZW50IiBMZW5ndGhGaWVsZD0iTm9PZkVsZW1lbnRzIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IkZpbHRlck9wZXJhbmQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkVsZW1lbnRPcGVy YW5kIiBCYXNlVHlwZT0idG5zOkZpbHRlck9wZXJhbmQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SW5kZXgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkxpdGVyYWxPcGVyYW5kIiBCYXNlVHlwZT0i dG5zOkZpbHRlck9wZXJhbmQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1l PSJ1YTpWYXJpYW50IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkF0dHJpYnV0ZU9wZXJhbmQiIEJhc2VUeXBlPSJ0bnM6RmlsdGVyT3Bl cmFuZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBbGlhcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VQYXRoIiBUeXBlTmFtZT0idG5zOlJlbGF0aXZl UGF0aCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF0dHJpYnV0ZUlkIiBUeXBlTmFtZT0ib3Bj OlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkluZGV4UmFuZ2UiIFR5cGVOYW1lPSJv cGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIEJhc2VUeXBlPSJ0bnM6RmlsdGVy T3BlcmFuZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUeXBlRGVmaW5pdGlvbklkIiBUeXBlTmFt ZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkJyb3dzZVBhdGgiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VQYXRoIiBU eXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZCcm93c2VQYXRoIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1lPSJvcGM6VUludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5kZXhSYW5nZSIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnRSZXN1bHQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0 YXR1c0NvZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mT3BlcmFuZFN0YXR1c0NvZGVz IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iT3BlcmFuZFN0 YXR1c0NvZGVzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZPcGVy YW5kU3RhdHVzQ29kZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mT3BlcmFuZERpYWdu b3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik9wZXJhbmREaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVu Z3RoRmllbGQ9Ik5vT2ZPcGVyYW5kRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNvbnRlbnRGaWx0ZXJSZXN1 bHQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i Tm9PZkVsZW1lbnRSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iRWxlbWVudFJlc3VsdHMiIFR5cGVOYW1lPSJ0bnM6Q29udGVudEZpbHRlckVsZW1l bnRSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mRWxlbWVudFJlc3VsdHMiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJOb09mRWxlbWVudERpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVsZW1lbnREaWFnbm9zdGljSW5mb3MiIFR5cGVO YW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZFbGVtZW50RGlhZ25vc3Rp Y0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IlBhcnNpbmdSZXN1bHQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVN0YXR1c0NvZGVzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVN0YXR1c0NvZGVzIiBUeXBl TmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZEYXRhU3RhdHVzQ29kZXMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YURpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFEaWFnbm9zdGljSW5mb3Mi IFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEYXRhRGlhZ25v c3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlF1ZXJ5Rmlyc3RSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6 UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlZpZXciIFR5cGVOYW1lPSJ0 bnM6Vmlld0Rlc2NyaXB0aW9uIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVUeXBl cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVUeXBl cyIgVHlwZU5hbWU9InRuczpOb2RlVHlwZURlc2NyaXB0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZk5v ZGVUeXBlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRlciIgVHlwZU5hbWU9InRuczpD b250ZW50RmlsdGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4RGF0YVNldHNUb1JldHVy biIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhSZWZl cmVuY2VzVG9SZXR1cm4iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlF1ZXJ5Rmlyc3RSZXNwb25z ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZRdWVyeURhdGFTZXRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iUXVlcnlEYXRhU2V0cyIgVHlwZU5hbWU9InRuczpRdWVyeURh dGFTZXQiIExlbmd0aEZpZWxkPSJOb09mUXVlcnlEYXRhU2V0cyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkNvbnRpbnVhdGlvblBvaW50IiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUGFyc2luZ1Jlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQYXJzaW5nUmVzdWx0cyIgVHlwZU5hbWU9InRu czpQYXJzaW5nUmVzdWx0IiBMZW5ndGhGaWVsZD0iTm9PZlBhcnNpbmdSZXN1bHRzIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVh OkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRlclJlc3VsdCIgVHlwZU5hbWU9InRuczpDb250ZW50Rmls dGVyUmVzdWx0IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlF1ZXJ5TmV4dFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmpl Y3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVsZWFzZUNvbnRpbnVhdGlv blBvaW50IiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJD b250aW51YXRpb25Qb2ludCIgVHlwZU5hbWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlF1ZXJ5TmV4dFJl c3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZlF1ZXJ5RGF0YVNldHMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJRdWVyeURhdGFTZXRzIiBUeXBlTmFtZT0idG5zOlF1 ZXJ5RGF0YVNldCIgTGVuZ3RoRmllbGQ9Ik5vT2ZRdWVyeURhdGFTZXRzIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmV2aXNlZENvbnRpbnVhdGlvblBvaW50IiBUeXBlTmFtZT0ib3BjOkJ5dGVT dHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5 cGUgTmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTb3VyY2UiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlNlcnZlciIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iQm90aCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFs dWUgTmFtZT0iTmVpdGhlciIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iSW52YWxpZCIgVmFsdWU9IjQiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVhZFZhbHVlSWQiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6 Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5kZXhSYW5nZSIgVHlwZU5hbWU9 Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhRW5jb2RpbmciIFR5cGVO YW1lPSJ1YTpRdWFsaWZpZWROYW1lIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8 b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlYWRSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1l PSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heEFnZSIgVHlw ZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUaW1lc3RhbXBzVG9S ZXR1cm4iIFR5cGVOYW1lPSJ0bnM6VGltZXN0YW1wc1RvUmV0dXJuIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZk5vZGVzVG9SZWFkIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9kZXNUb1JlYWQiIFR5cGVOYW1lPSJ0bnM6UmVhZFZhbHVlSWQiIExl bmd0aEZpZWxkPSJOb09mTm9kZXNUb1JlYWQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVhZFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6 RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBU eXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9P ZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXN1bHRzIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBMZW5ndGhGaWVsZD0iTm9PZlJlc3VsdHMi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3RpY0luZm9zIiBUeXBl TmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlhZ25vc3RpY0luZm9z IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9Ikhpc3RvcnlSZWFkVmFsdWVJZCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJJbmRleFJhbmdlIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFFbmNvZGluZyIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5h bWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDb250aW51YXRpb25Qb2ludCIgVHlwZU5hbWU9 Im9wYzpCeXRlU3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlSZWFkUmVzdWx0IiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1 YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ29udGludWF0aW9uUG9pbnQi IFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3Rv cnlEYXRhIiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlSZWFkRGV0YWls cyIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVhZEV2ZW50RGV0YWlscyIgQmFzZVR5 cGU9InRuczpIaXN0b3J5UmVhZERldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTnVtVmFs dWVzUGVyTm9kZSIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJFbmRUaW1lIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRmlsdGVyIiBUeXBlTmFtZT0idG5zOkV2ZW50RmlsdGVyIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlYWRSYXdNb2RpZmll ZERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeVJlYWREZXRhaWxzIj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IklzUmVhZE1vZGlmaWVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJFbmRUaW1lIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTnVtVmFsdWVzUGVyTm9kZSIgVHlwZU5hbWU9Im9wYzpVSW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXR1cm5Cb3VuZHMiIFR5cGVOYW1lPSJvcGM6 Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJSZWFkUHJvY2Vzc2VkRGV0YWlscyIgQmFzZVR5cGU9InRuczpIaXN0b3J5UmVh ZERldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhcnRUaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5kVGltZSIgVHlwZU5hbWU9Im9w YzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2Nlc3NpbmdJbnRlcnZhbCIg VHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQWdncmVn YXRlVHlwZSIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFn Z3JlZ2F0ZVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIExlbmd0aEZpZWxkPSJOb09mQWdncmVn YXRlVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24i IFR5cGVOYW1lPSJ0bnM6QWdncmVnYXRlQ29uZmlndXJhdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWFkQXRUaW1lRGV0YWls cyIgQmFzZVR5cGU9InRuczpIaXN0b3J5UmVhZERldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZlJlcVRpbWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVxVGltZXMiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIExlbmd0aEZpZWxkPSJOb09m UmVxVGltZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VTaW1wbGVCb3VuZHMiIFR5cGVO YW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJIaXN0b3J5RGF0YSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVZhbHVlcyIgVHlwZU5hbWU9Im9w YzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFWYWx1ZXMiIFR5cGVOYW1lPSJ1 YTpEYXRhVmFsdWUiIExlbmd0aEZpZWxkPSJOb09mRGF0YVZhbHVlcyIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb2RpZmljYXRpb25J bmZvIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik1vZGlmaWNhdGlvblRpbWUiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJVcGRhdGVUeXBlIiBUeXBlTmFtZT0idG5zOkhpc3RvcnlVcGRhdGVUeXBlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlck5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ikhpc3RvcnlNb2RpZmllZERhdGEiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeURhdGEiPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9PZkRhdGFWYWx1ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVmFsdWVzIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBM ZW5ndGhGaWVsZD0iTm9PZkRhdGFWYWx1ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m TW9kaWZpY2F0aW9uSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNb2RpZmljYXRpb25JbmZvcyIgVHlwZU5hbWU9InRuczpNb2RpZmljYXRpb25JbmZv IiBMZW5ndGhGaWVsZD0iTm9PZk1vZGlmaWNhdGlvbkluZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlFdmVudCIgQmFz ZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZl bnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnRz IiBUeXBlTmFtZT0idG5zOkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZF dmVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iSGlzdG9yeVJlYWRSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVx dWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3RvcnlSZWFkRGV0YWlscyIg VHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRp bWVzdGFtcHNUb1JldHVybiIgVHlwZU5hbWU9InRuczpUaW1lc3RhbXBzVG9SZXR1cm4iIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZWxlYXNlQ29udGludWF0aW9uUG9pbnRzIiBUeXBlTmFtZT0i b3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTm9kZXNUb1JlYWQiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rlc1RvUmVhZCIg VHlwZU5hbWU9InRuczpIaXN0b3J5UmVhZFZhbHVlSWQiIExlbmd0aEZpZWxkPSJOb09mTm9kZXNU b1JlYWQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iSGlzdG9yeVJlYWRSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVj dCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5h bWU9InRuczpIaXN0b3J5UmVhZFJlc3VsdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZXN1bHRzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9 InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJX cml0ZVZhbHVlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkF0dHJpYnV0ZUlkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkluZGV4UmFuZ2UiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJ1YTpEYXRhVmFsdWUiIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVSZXF1ZXN0IiBC YXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZOb2Rlc1RvV3JpdGUiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb2Rlc1RvV3JpdGUiIFR5cGVOYW1lPSJ0bnM6V3JpdGVWYWx1ZSIgTGVu Z3RoRmllbGQ9Ik5vT2ZOb2Rlc1RvV3JpdGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVSZXNwb25zZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIg VHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVzdWx0cyIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0 cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5 cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5m b3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iSGlzdG9yeVVwZGF0ZURldGFpbHMiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9Ikhp c3RvcnlVcGRhdGVUeXBlIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJJbnNlcnQiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlJlcGxhY2UiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IlVwZGF0ZSIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i RGVsZXRlIiBWYWx1ZT0iNCIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpF bnVtZXJhdGVkVHlwZSBOYW1lPSJQZXJmb3JtVXBkYXRlVHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW5zZXJ0IiBWYWx1ZT0iMSIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJSZXBsYWNlIiBWYWx1ZT0iMiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVcGRhdGUiIFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJlbW92ZSIgVmFsdWU9IjQiIC8+DQogIDwvb3BjOkVudW1l cmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVXBkYXRlRGF0YURldGFp bHMiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9y eVVwZGF0ZURldGFpbHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQZXJmb3JtSW5zZXJ0UmVw bGFjZSIgVHlwZU5hbWU9InRuczpQZXJmb3JtVXBkYXRlVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZVcGRhdGVWYWx1ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJVcGRhdGVWYWx1ZXMiIFR5cGVOYW1lPSJ1YTpEYXRhVmFsdWUiIExlbmd0 aEZpZWxkPSJOb09mVXBkYXRlVmFsdWVzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlVwZGF0ZVN0cnVjdHVyZURhdGFEZXRhaWxzIiBC YXNlVHlwZT0idG5zOkhpc3RvcnlVcGRhdGVEZXRhaWxzIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlwZT0idG5zOkhpc3RvcnlVcGRh dGVEZXRhaWxzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGVyZm9ybUluc2VydFJlcGxhY2Ui IFR5cGVOYW1lPSJ0bnM6UGVyZm9ybVVwZGF0ZVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mVXBkYXRlVmFsdWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iVXBkYXRlVmFsdWVzIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBMZW5ndGhGaWVs ZD0iTm9PZlVwZGF0ZVZhbHVlcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVcGRhdGVFdmVudERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6 SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQZXJmb3JtSW5zZXJ0UmVwbGFjZSIgVHlwZU5hbWU9InRu czpQZXJmb3JtVXBkYXRlVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRlciIgVHlw ZU5hbWU9InRuczpFdmVudEZpbHRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZFdmVu dERhdGEiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVu dERhdGEiIFR5cGVOYW1lPSJ0bnM6SGlzdG9yeUV2ZW50RmllbGRMaXN0IiBMZW5ndGhGaWVsZD0i Tm9PZkV2ZW50RGF0YSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVSYXdNb2RpZmllZERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6 SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc0RlbGV0ZU1vZGlmaWVkIiBUeXBlTmFtZT0ib3BjOkJv b2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6 RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFbmRUaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IkRlbGV0ZUF0VGltZURldGFpbHMiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeVVw ZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6 Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb09mUmVxVGltZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXFUaW1lcyIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgTGVuZ3Ro RmllbGQ9Ik5vT2ZSZXFUaW1lcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVFdmVudERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6 SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZlbnRJZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVudElkcyIgVHlwZU5hbWU9Im9wYzpCeXRlU3Ry aW5nIiBMZW5ndGhGaWVsZD0iTm9PZkV2ZW50SWRzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlVcGRhdGVSZXN1bHQiIEJh c2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVz Q29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mT3BlcmF0aW9uUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik9wZXJhdGlvblJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5n dGhGaWVsZD0iTm9PZk9wZXJhdGlvblJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExl bmd0aEZpZWxkPSJOb09mRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlVcGRhdGVSZXF1ZXN0IiBC YXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZIaXN0b3J5VXBkYXRlRGV0YWlscyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3RvcnlVcGRhdGVEZXRhaWxzIiBUeXBlTmFtZT0idWE6 RXh0ZW5zaW9uT2JqZWN0IiBMZW5ndGhGaWVsZD0iTm9PZkhpc3RvcnlVcGRhdGVEZXRhaWxzIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ikhpc3RvcnlVcGRhdGVSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25z ZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InRu czpIaXN0b3J5VXBkYXRlUmVzdWx0IiBMZW5ndGhGaWVsZD0iTm9PZlJlc3VsdHMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0ib3BjOkludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0idWE6 RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNhbGxN ZXRob2RSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik9iamVjdElkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTWV0aG9kSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mSW5wdXRBcmd1bWVudHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJJbnB1dEFyZ3VtZW50cyIgVHlwZU5hbWU9InVhOlZhcmlhbnQiIExl bmd0aEZpZWxkPSJOb09mSW5wdXRBcmd1bWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQ2FsbE1ldGhvZFJlc3VsdCIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGF0dXNDb2Rl IiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZJ bnB1dEFyZ3VtZW50UmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IklucHV0QXJndW1lbnRSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIg TGVuZ3RoRmllbGQ9Ik5vT2ZJbnB1dEFyZ3VtZW50UmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZJbnB1dEFyZ3VtZW50RGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5wdXRBcmd1bWVudERpYWdub3N0aWNJbmZv cyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZklucHV0QXJn dW1lbnREaWFnbm9zdGljSW5mb3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mT3V0cHV0 QXJndW1lbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i T3V0cHV0QXJndW1lbnRzIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgTGVuZ3RoRmllbGQ9Ik5vT2ZP dXRwdXRBcmd1bWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iQ2FsbFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmpl Y3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk1ldGhvZHNUb0NhbGwi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXRob2RzVG9D YWxsIiBUeXBlTmFtZT0idG5zOkNhbGxNZXRob2RSZXF1ZXN0IiBMZW5ndGhGaWVsZD0iTm9PZk1l dGhvZHNUb0NhbGwiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iQ2FsbFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJl c3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVO YW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFt ZT0idG5zOkNhbGxNZXRob2RSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1 YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iTW9u aXRvcmluZ01vZGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IkRpc2FibGVkIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJTYW1wbGluZyIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFt ZT0iUmVwb3J0aW5nIiBWYWx1ZT0iMiIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAg PG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJEYXRhQ2hhbmdlVHJpZ2dlciIgTGVuZ3RoSW5CaXRz PSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU3RhdHVzIiBWYWx1ZT0iMCIg Lz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTdGF0dXNWYWx1ZSIgVmFsdWU9IjEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU3RhdHVzVmFsdWVUaW1lc3RhbXAi IFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0 ZWRUeXBlIE5hbWU9IkRlYWRiYW5kVHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpF bnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iQWJzb2x1dGUiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IlBlcmNlbnQiIFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik1vbml0b3JpbmdGaWx0ZXIiIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8 b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFDaGFuZ2VGaWx0ZXIiIEJhc2VUeXBlPSJ0bnM6 TW9uaXRvcmluZ0ZpbHRlciI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmlnZ2VyIiBUeXBlTmFt ZT0idG5zOkRhdGFDaGFuZ2VUcmlnZ2VyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVhZGJh bmRUeXBlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl YWRiYW5kVmFsdWUiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkV2ZW50RmlsdGVyIiBCYXNlVHlw ZT0idG5zOk1vbml0b3JpbmdGaWx0ZXIiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlbGVj dENsYXVzZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJT ZWxlY3RDbGF1c2VzIiBUeXBlTmFtZT0idG5zOlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIExlbmd0 aEZpZWxkPSJOb09mU2VsZWN0Q2xhdXNlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldoZXJl Q2xhdXNlIiBUeXBlTmFtZT0idG5zOkNvbnRlbnRGaWx0ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWdncmVnYXRlQ29uZmlndXJh dGlvbiIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VTZXJ2ZXJDYXBhYmlsaXRpZXNEZWZhdWx0cyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJlYXRVbmNlcnRhaW5Bc0JhZCIgVHlwZU5hbWU9Im9w YzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGVyY2VudERhdGFCYWQiIFR5cGVO YW1lPSJvcGM6Qnl0ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlBlcmNlbnREYXRhR29vZCIg VHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlU2xvcGVkRXh0 cmFwb2xhdGlvbiIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFnZ3JlZ2F0ZUZpbHRlciIgQmFz ZVR5cGU9InRuczpNb25pdG9yaW5nRmlsdGVyIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXJ0 VGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFn Z3JlZ2F0ZVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJQcm9jZXNzaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQWdncmVnYXRlQ29uZmlndXJhdGlvbiIgVHlwZU5hbWU9InRuczpBZ2dyZWdh dGVDb25maWd1cmF0aW9uIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9Ik1vbml0b3JpbmdGaWx0ZXJSZXN1bHQiIEJhc2VUeXBlPSJ1YTpF eHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkV2ZW50RmlsdGVyUmVzdWx0IiBCYXNlVHlwZT0idG5zOk1vbml0b3Jp bmdGaWx0ZXJSZXN1bHQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlbGVjdENsYXVzZVJl c3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWxl Y3RDbGF1c2VSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5v T2ZTZWxlY3RDbGF1c2VSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlbGVj dENsYXVzZURpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlbGVjdENsYXVzZURpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRp YWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZlNlbGVjdENsYXVzZURpYWdub3N0aWNJbmZv cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldoZXJlQ2xhdXNlUmVzdWx0IiBUeXBlTmFtZT0i dG5zOkNvbnRlbnRGaWx0ZXJSZXN1bHQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWdncmVnYXRlRmlsdGVyUmVzdWx0IiBCYXNlVHlw ZT0idG5zOk1vbml0b3JpbmdGaWx0ZXJSZXN1bHQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmV2 aXNlZFN0YXJ0VGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlJldmlzZWRQcm9jZXNzaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmV2aXNlZEFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24iIFR5 cGVOYW1lPSJ0bnM6QWdncmVnYXRlQ29uZmlndXJhdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJl ZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb25pdG9yaW5nUGFyYW1ldGVy cyIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJD bGllbnRIYW5kbGUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2FtcGxpbmdJbnRlcnZhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJGaWx0ZXIiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJRdWV1ZVNpemUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iRGlzY2FyZE9sZGVzdCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ik1vbml0b3JlZEl0ZW1DcmVhdGVSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikl0ZW1Ub01vbml0b3IiIFR5cGVOYW1lPSJ0bnM6UmVh ZFZhbHVlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNb25pdG9yaW5nTW9kZSIgVHlwZU5h bWU9InRuczpNb25pdG9yaW5nTW9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3Rl ZFBhcmFtZXRlcnMiIFR5cGVOYW1lPSJ0bnM6TW9uaXRvcmluZ1BhcmFtZXRlcnMiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTW9uaXRv cmVkSXRlbUNyZWF0ZVJlc3VsdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTdGF0dXNDb2RlIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1vbml0b3JlZEl0ZW1JZCIgVHlwZU5hbWU9Im9wYzpVSW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXZpc2VkU2FtcGxpbmdJbnRlcnZhbCIgVHlw ZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXZpc2VkUXVldWVT aXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRl clJlc3VsdCIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDcmVhdGVNb25pdG9yZWRJ dGVtc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU3Vic2NyaXB0aW9uSWQiIFR5cGVOYW1lPSJvcGM6VUludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIiBUeXBlTmFtZT0i dG5zOlRpbWVzdGFtcHNUb1JldHVybiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZJdGVt c1RvQ3JlYXRlIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SXRlbXNUb0NyZWF0ZSIgVHlwZU5hbWU9InRuczpNb25pdG9yZWRJdGVtQ3JlYXRlUmVxdWVzdCIg TGVuZ3RoRmllbGQ9Ik5vT2ZJdGVtc1RvQ3JlYXRlIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNyZWF0ZU1vbml0b3JlZEl0ZW1zUmVz cG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ0bnM6TW9uaXRvcmVkSXRlbUNy ZWF0ZVJlc3VsdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJ bmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb25pdG9yZWRJdGVtTW9k aWZ5UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNb25pdG9yZWRJdGVtSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmVxdWVzdGVkUGFyYW1ldGVycyIgVHlwZU5hbWU9InRuczpNb25pdG9y aW5nUGFyYW1ldGVycyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJNb25pdG9yZWRJdGVtTW9kaWZ5UmVzdWx0IiBCYXNlVHlwZT0idWE6 RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXR1c0NvZGUiIFR5cGVO YW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmV2aXNlZFNhbXBs aW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmV2aXNlZFF1ZXVlU2l6ZSIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJGaWx0ZXJSZXN1bHQiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i TW9kaWZ5TW9uaXRvcmVkSXRlbXNSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVx dWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRpbWVzdGFtcHNUb1Jl dHVybiIgVHlwZU5hbWU9InRuczpUaW1lc3RhbXBzVG9SZXR1cm4iIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mSXRlbXNUb01vZGlmeSIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ikl0ZW1zVG9Nb2RpZnkiIFR5cGVOYW1lPSJ0bnM6TW9uaXRvcmVkSXRl bU1vZGlmeVJlcXVlc3QiIExlbmd0aEZpZWxkPSJOb09mSXRlbXNUb01vZGlmeSIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb2RpZnlN b25pdG9yZWRJdGVtc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNl SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJv cGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idG5z Ok1vbml0b3JlZEl0ZW1Nb2RpZnlSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1l PSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i U2V0TW9uaXRvcmluZ01vZGVSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVz dEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBlTmFt ZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1vbml0b3JpbmdNb2RlIiBU eXBlTmFtZT0idG5zOk1vbml0b3JpbmdNb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9P Zk1vbml0b3JlZEl0ZW1JZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNb25pdG9yZWRJdGVtSWRzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmll bGQ9Ik5vT2ZNb25pdG9yZWRJdGVtSWRzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlNldE1vbml0b3JpbmdNb2RlUmVzcG9uc2UiIEJh c2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzcG9u c2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhGaWVsZD0i Tm9PZlJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9z IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3Rp Y0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlh Z25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlNldFRyaWdnZXJpbmdSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1l PSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlv bklkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyaWdn ZXJpbmdJdGVtSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZkxpbmtzVG9BZGQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJMaW5rc1RvQWRkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5v T2ZMaW5rc1RvQWRkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxpbmtzVG9SZW1vdmUi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMaW5rc1RvUmVt b3ZlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZMaW5rc1RvUmVtb3Zl IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IlNldFRyaWdnZXJpbmdSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNw b25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBZGRSZXN1bHRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWRkUmVzdWx0cyIgVHlw ZU5hbWU9InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mQWRkUmVzdWx0cyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBZGREaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBZGREaWFnbm9zdGljSW5mb3MiIFR5cGVO YW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZBZGREaWFnbm9zdGljSW5m b3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVtb3ZlUmVzdWx0cyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlbW92ZVJlc3VsdHMiIFR5cGVO YW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlbW92ZVJlc3VsdHMiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVtb3ZlRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVtb3ZlRGlhZ25vc3RpY0luZm9z IiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mUmVtb3ZlRGlh Z25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBU eXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdWJz Y3JpcHRpb25JZCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mTW9uaXRvcmVkSXRlbUlkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik1vbml0b3JlZEl0ZW1JZHMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBMZW5n dGhGaWVsZD0iTm9PZk1vbml0b3JlZEl0ZW1JZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGVsZXRlTW9uaXRvcmVkSXRlbXNSZXNw b25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIExlbmd0 aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9z dGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE aWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9 Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQ3JlYXRlU3Vic2NyaXB0aW9uUmVxdWVzdCIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVh ZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdGVkTGlmZXRpbWVDb3VudCIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRNYXhLZWVwQWxpdmVD b3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhO b3RpZmljYXRpb25zUGVyUHVibGlzaCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJQdWJsaXNoaW5nRW5hYmxlZCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJpb3JpdHkiIFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJD cmVhdGVTdWJzY3JpcHRpb25SZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNw b25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRQdWJsaXNo aW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmV2aXNlZExpZmV0aW1lQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmV2aXNlZE1heEtlZXBBbGl2ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJ bnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlw ZSBOYW1lPSJNb2RpZnlTdWJzY3JpcHRpb25SZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0 bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklk IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3Rl ZFB1Ymxpc2hpbmdJbnRlcnZhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXF1ZXN0ZWRMaWZldGltZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50IiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heE5vdGlmaWNhdGlv bnNQZXJQdWJsaXNoIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlByaW9yaXR5IiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTW9kaWZ5U3Vic2NyaXB0aW9uUmVz cG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXZpc2VkUHVibGlzaGluZ0ludGVydmFsIiBUeXBlTmFtZT0ib3Bj OkRvdWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRMaWZldGltZUNvdW50IiBU eXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRNYXhL ZWVwQWxpdmVDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2V0UHVibGlzaGluZ01vZGVS ZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hpbmdFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4i IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU3Vic2NyaXB0aW9uSWRzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3Vic2NyaXB0aW9uSWRzIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZTdWJzY3JpcHRpb25JZHMiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2V0 UHVibGlzaGluZ01vZGVSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25z ZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InVh OlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGlj SW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTm90aWZpY2F0aW9uTWVz c2FnZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJTZXF1ZW5jZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJQdWJsaXNoVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZOb3RpZmljYXRpb25EYXRhIiBUeXBlTmFtZT0ib3BjOkludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm90aWZpY2F0aW9uRGF0YSIgVHlwZU5hbWU9InVhOkV4 dGVuc2lvbk9iamVjdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZOb3RpZmljYXRpb25EYXRhIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik5vdGlm aWNhdGlvbkRhdGEiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFDaGFuZ2VOb3Rp ZmljYXRpb24iIEJhc2VUeXBlPSJ0bnM6Tm90aWZpY2F0aW9uRGF0YSI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mTW9uaXRvcmVkSXRlbXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJNb25pdG9yZWRJdGVtcyIgVHlwZU5hbWU9InRuczpNb25pdG9yZWRJ dGVtTm90aWZpY2F0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZk1vbml0b3JlZEl0ZW1zIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVh OkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb25p dG9yZWRJdGVtTm90aWZpY2F0aW9uIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudEhhbmRsZSIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOkRhdGFWYWx1ZSIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJF dmVudE5vdGlmaWNhdGlvbkxpc3QiIEJhc2VUeXBlPSJ0bnM6Tm90aWZpY2F0aW9uRGF0YSI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZlbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnRzIiBUeXBlTmFtZT0idG5zOkV2ZW50RmllbGRMaXN0 IiBMZW5ndGhGaWVsZD0iTm9PZkV2ZW50cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFdmVudEZpZWxkTGlzdCIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDbGllbnRIYW5kbGUiIFR5 cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkV2ZW50Rmll bGRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnRG aWVsZHMiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiBMZW5ndGhGaWVsZD0iTm9PZkV2ZW50RmllbGRz IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9Ikhpc3RvcnlFdmVudEZpZWxkTGlzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZlbnRGaWVsZHMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVudEZpZWxkcyIgVHlwZU5hbWU9InVhOlZh cmlhbnQiIExlbmd0aEZpZWxkPSJOb09mRXZlbnRGaWVsZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU3RhdHVzQ2hhbmdlTm90aWZp Y2F0aW9uIiBCYXNlVHlwZT0idG5zOk5vdGlmaWNhdGlvbkRhdGEiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU3RhdHVzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkRpYWdub3N0aWNJbmZvIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU3Vi c2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBlTmFtZT0ib3BjOlVJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcXVlbmNlTnVtYmVyIiBUeXBlTmFtZT0ib3Bj OlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJQdWJsaXNoUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVl c3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU3Vic2NyaXB0aW9uQWNrbm93 bGVkZ2VtZW50cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlN1YnNjcmlwdGlvbkFja25vd2xlZGdlbWVudHMiIFR5cGVOYW1lPSJ0bnM6U3Vic2NyaXB0aW9u QWNrbm93bGVkZ2VtZW50IiBMZW5ndGhGaWVsZD0iTm9PZlN1YnNjcmlwdGlvbkFja25vd2xlZGdl bWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iUHVibGlzaFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3Bv bnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3Vic2NyaXB0aW9uSWQiIFR5cGVO YW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkF2YWlsYWJsZVNl cXVlbmNlTnVtYmVycyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIExlbmd0 aEZpZWxkPSJOb09mQXZhaWxhYmxlU2VxdWVuY2VOdW1iZXJzIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTW9yZU5vdGlmaWNhdGlvbnMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vdGlmaWNhdGlvbk1lc3NhZ2UiIFR5cGVOYW1lPSJ0bnM6Tm90aWZp Y2F0aW9uTWVzc2FnZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5h bWU9InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFn bm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVwdWJsaXNo UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTdWJzY3JpcHRpb25JZCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXRyYW5zbWl0U2VxdWVuY2VOdW1iZXIiIFR5cGVOYW1l PSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlJlcHVibGlzaFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0i dG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm90aWZpY2F0aW9u TWVzc2FnZSIgVHlwZU5hbWU9InRuczpOb3RpZmljYXRpb25NZXNzYWdlIiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlRyYW5zZmVyUmVz dWx0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mQXZhaWxhYmxlU2VxdWVuY2VOdW1iZXJz IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IlRyYW5zZmVyU3Vic2NyaXB0aW9uc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRu czpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlN1YnNjcmlwdGlv bklkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNj cmlwdGlvbklkcyIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mU3Vic2Ny aXB0aW9uSWRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VuZEluaXRpYWxWYWx1ZXMiIFR5 cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUcmFuc2ZlclN1YnNjcmlwdGlvbnNSZXNwb25zZSIgQmFz ZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25z ZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InRuczpUcmFuc2ZlclJlc3VsdCIgTGVuZ3RoRmll bGQ9Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJ bmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdu b3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9P ZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVTdWJzY3JpcHRpb25zUmVxdWVzdCIgQmFzZVR5cGU9 InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVy IiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mU3Vic2NyaXB0aW9uSWRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iU3Vic2NyaXB0aW9uSWRzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmll bGQ9Ik5vT2ZTdWJzY3JpcHRpb25JZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGVsZXRlU3Vic2NyaXB0aW9uc1Jlc3BvbnNlIiBC YXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3Bv bnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9 Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZv cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0 aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRp YWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJCdWlsZEluZm8iIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJvZHVjdFVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmci IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYW51ZmFjdHVyZXJOYW1lIiBUeXBlTmFtZT0ib3Bj OlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2R1Y3ROYW1lIiBUeXBlTmFtZT0i b3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvZnR3YXJlVmVyc2lvbiIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCdWlsZE51bWJlciIg VHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCdWlsZERhdGUi IFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iUmVkdW5kYW5jeVN1cHBvcnQiIExlbmd0aEluQml0 cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5vbmUiIFZhbHVlPSIwIiAv Pg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkNvbGQiIFZhbHVlPSIxIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ildhcm0iIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IkhvdCIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iVHJhbnNwYXJlbnQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9IkhvdEFuZE1pcnJvcmVkIiBWYWx1ZT0iNSIgLz4NCiAgPC9vcGM6RW51 bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJTZXJ2ZXJTdGF0ZSIg TGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUnVubmlu ZyIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRmFpbGVkIiBW YWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb0NvbmZpZ3VyYXRp b24iIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlN1c3BlbmRl ZCIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU2h1dGRvd24i IFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlRlc3QiIFZhbHVl PSI1IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkNvbW11bmljYXRpb25GYXVs dCIgVmFsdWU9IjYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVW5rbm93biIg VmFsdWU9IjciIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNp b25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVySWQiIFR5cGVOYW1lPSJvcGM6 U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmljZUxldmVsIiBUeXBlTmFtZT0i b3BjOkJ5dGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJTdGF0ZSIgVHlwZU5hbWU9 InRuczpTZXJ2ZXJTdGF0ZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRwb2ludFVybExpc3REYXRhVHlwZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRW5kcG9pbnRVcmxM aXN0IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5kcG9p bnRVcmxMaXN0IiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZFbmRwb2lu dFVybExpc3QiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iTmV0d29ya0dyb3VwRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyVXJpIiBUeXBlTmFtZT0ib3BjOlN0 cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZOZXR3b3JrUGF0aHMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrUGF0aHMiIFR5cGVO YW1lPSJ0bnM6RW5kcG9pbnRVcmxMaXN0RGF0YVR5cGUiIExlbmd0aEZpZWxkPSJOb09mTmV0d29y a1BhdGhzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IlNhbXBsaW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNhbXBsaW5nSW50ZXJ2 YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTW9uaXRv cmVkSXRlbUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik1heE1vbml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEaXNhYmxlZE1vbml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iU2VydmVyRGlhZ25vc3RpY3NTdW1tYXJ5RGF0YVR5cGUiIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyVmlld0NvdW50 IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkN1cnJlbnRT ZXNzaW9uQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iQ3VtdWxhdGVkU2Vzc2lvbkNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5UmVqZWN0ZWRTZXNzaW9uQ291bnQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVqZWN0ZWRTZXNzaW9uQ291bnQi IFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2Vzc2lvblRp bWVvdXRDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJTZXNzaW9uQWJvcnRDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJDdXJyZW50U3Vic2NyaXB0aW9uQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3VtdWxhdGVkU3Vic2NyaXB0aW9uQ291bnQiIFR5 cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaGluZ0lu dGVydmFsQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VjdXJpdHlSZWplY3RlZFJlcXVlc3RzQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVqZWN0ZWRSZXF1ZXN0c0NvdW50IiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJTZXJ2ZXJTdGF0dXNEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lv bk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6 RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDdXJyZW50VGltZSIgVHlwZU5hbWU9 Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXRlIiBUeXBlTmFtZT0i dG5zOlNlcnZlclN0YXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQnVpbGRJbmZvIiBUeXBl TmFtZT0idG5zOkJ1aWxkSW5mbyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY29uZHNUaWxs U2h1dGRvd24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U2h1dGRvd25SZWFzb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlNlc3Npb25EaWFn bm9zdGljc0RhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlc3Npb25JZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlc3Npb25OYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkNsaWVudERlc2NyaXB0aW9uIiBUeXBlTmFtZT0idG5zOkFwcGxpY2F0 aW9uRGVzY3JpcHRpb24iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJVcmkiIFR5cGVO YW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5kcG9pbnRVcmwiIFR5 cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxvY2FsZUlk cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsZUlk cyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mTG9jYWxlSWRzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iQWN0dWFsU2Vzc2lvblRpbWVvdXQiIFR5cGVOYW1lPSJvcGM6 RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4UmVzcG9uc2VNZXNzYWdlU2l6ZSIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDbGllbnRDb25u ZWN0aW9uVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkNsaWVudExhc3RDb250YWN0VGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkN1cnJlbnRTdWJzY3JpcHRpb25zQ291bnQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3VycmVudE1vbml0b3JlZEl0ZW1z Q291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3Vy cmVudFB1Ymxpc2hSZXF1ZXN0c0luUXVldWUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iVG90YWxSZXF1ZXN0Q291bnQiIFR5cGVOYW1lPSJ0bnM6U2Vydmlj ZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVuYXV0aG9yaXplZFJl cXVlc3RDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZWFkQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3RvcnlSZWFkQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2Vydmlj ZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlQ291bnQiIFR5 cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ikhpc3RvcnlVcGRhdGVDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFU eXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ2FsbENvdW50IiBUeXBlTmFtZT0idG5zOlNl cnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDcmVhdGVNb25p dG9yZWRJdGVtc0NvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNb2RpZnlNb25pdG9yZWRJdGVtc0NvdW50IiBUeXBlTmFt ZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJT ZXRNb25pdG9yaW5nTW9kZUNvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5 cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXRUcmlnZ2VyaW5nQ291bnQiIFR5cGVOYW1l PSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl bGV0ZU1vbml0b3JlZEl0ZW1zQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRh VHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZVN1YnNjcmlwdGlvbkNvdW50IiBU eXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJNb2RpZnlTdWJzY3JpcHRpb25Db3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRl ckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2V0UHVibGlzaGluZ01vZGVDb3Vu dCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iUHVibGlzaENvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5 cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXB1Ymxpc2hDb3VudCIgVHlwZU5hbWU9InRu czpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJhbnNm ZXJTdWJzY3JpcHRpb25zQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlw ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlvbnNDb3VudCIgVHlw ZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iQWRkTm9kZXNDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWRkUmVmZXJlbmNlc0NvdW50IiBUeXBlTmFtZT0idG5z OlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZWxldGVO b2Rlc0NvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEZWxldGVSZWZlcmVuY2VzQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2Vy dmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJyb3dzZUNvdW50 IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJCcm93c2VOZXh0Q291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRh VHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyYW5zbGF0ZUJyb3dzZVBhdGhzVG9Ob2Rl SWRzQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlF1ZXJ5Rmlyc3RDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291 bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUXVlcnlOZXh0Q291bnQiIFR5 cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlZ2lzdGVyTm9kZXNDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFU eXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVW5yZWdpc3Rlck5vZGVzQ291bnQiIFR5cGVO YW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5 cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTZXNzaW9uU2VjdXJpdHlEaWFnbm9z dGljc0RhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlNlc3Npb25JZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkNsaWVudFVzZXJJZE9mU2Vzc2lvbiIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQ2xpZW50VXNlcklkSGlzdG9yeSIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudFVzZXJJZEhpc3Rvcnki IFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhGaWVsZD0iTm9PZkNsaWVudFVzZXJJZEhpc3Rv cnkiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdXRoZW50aWNhdGlvbk1lY2hhbmlzbSIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFbmNvZGluZyIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFuc3BvcnRQcm90 b2NvbCIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1 cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlY3VyaXR5UG9saWN5VXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudENlcnRpZmljYXRlIiBUeXBlTmFtZT0ib3BjOkJ5 dGVTdHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iU2VydmljZUNvdW50ZXJEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lv bk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUb3RhbENvdW50IiBUeXBlTmFtZT0ib3Bj OlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVycm9yQ291bnQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlN0YXR1c1Jlc3VsdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGF0dXNDb2RlIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29k ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvIiBUeXBlTmFtZT0idWE6 RGlhZ25vc3RpY0luZm8iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iU3Vic2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXNzaW9uSWQi IFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdWJzY3JpcHRp b25JZCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQcmlv cml0eSIgVHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlz aGluZ0ludGVydmFsIiBUeXBlTmFtZT0ib3BjOkRvdWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik1heEtlZXBBbGl2ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik1heExpZmV0aW1lQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2giIFR5cGVOYW1l PSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaGluZ0VuYWJsZWQi IFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1vZGlmeUNv dW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuYWJs ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRp c2FibGVDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZXB1Ymxpc2hSZXF1ZXN0Q291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmVwdWJsaXNoTWVzc2FnZVJlcXVlc3RDb3VudCIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXB1Ymxpc2hNZXNzYWdlQ291bnQi IFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJhbnNmZXJS ZXF1ZXN0Q291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iVHJhbnNmZXJyZWRUb0FsdENsaWVudENvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyYW5zZmVycmVkVG9TYW1lQ2xpZW50Q291bnQiIFR5cGVO YW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaFJlcXVlc3RD b3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRh Q2hhbmdlTm90aWZpY2F0aW9uc0NvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkV2ZW50Tm90aWZpY2F0aW9uc0NvdW50IiBUeXBlTmFtZT0ib3BjOlVJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vdGlmaWNhdGlvbnNDb3VudCIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXRlUHVibGlzaFJlcXVl c3RDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJD dXJyZW50S2VlcEFsaXZlQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQ3VycmVudExpZmV0aW1lQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVW5hY2tub3dsZWRnZWRNZXNzYWdlQ291bnQiIFR5cGVO YW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzY2FyZGVkTWVzc2Fn ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1v bml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaXNhYmxlZE1vbml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNb25pdG9yaW5nUXVldWVPdmVyZmxvd0NvdW50IiBU eXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5leHRTZXF1ZW5j ZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJF dmVudFF1ZXVlT3ZlckZsb3dDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iTW9kZWxDaGFu Z2VTdHJ1Y3R1cmVWZXJiTWFzayIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iTm9kZUFkZGVkIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJOb2RlRGVsZXRlZCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iUmVmZXJlbmNlQWRkZWQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlJlZmVyZW5jZURlbGV0ZWQiIFZhbHVlPSI4IiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRhdGFUeXBlQ2hhbmdlZCIgVmFsdWU9IjE2IiAvPg0K ICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik1v ZGVsQ2hhbmdlU3RydWN0dXJlRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWZmZWN0ZWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBZmZlY3RlZFR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWZXJiIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2Vt YW50aWNDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVj dCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBZmZlY3RlZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFmZmVjdGVkVHlwZSIgVHlwZU5hbWU9InVhOk5vZGVJ ZCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJSYW5nZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJMb3ciIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iSGlnaCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRVVJbmZvcm1hdGlvbiIgQmFzZVR5cGU9 InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VVcmki IFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVW5pdElkIiBU eXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUi IFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVz Y3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkF4aXNTY2FsZUVudW1lcmF0 aW9uIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJM aW5lYXIiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkxvZyIg VmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTG4iIFZhbHVlPSIy IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IkNvbXBsZXhOdW1iZXJUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlJlYWwiIFR5cGVOYW1lPSJvcGM6RmxvYXQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJbWFnaW5hcnkiIFR5cGVOYW1lPSJvcGM6RmxvYXQiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRG91YmxlQ29t cGxleE51bWJlclR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJJbWFnaW5hcnkiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkF4aXNJbmZvcm1hdGlv biIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJF bmdpbmVlcmluZ1VuaXRzIiBUeXBlTmFtZT0idG5zOkVVSW5mb3JtYXRpb24iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFVVJhbmdlIiBUeXBlTmFtZT0idG5zOlJhbmdlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVGl0bGUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iQXhpc1NjYWxlVHlwZSIgVHlwZU5hbWU9InRuczpBeGlzU2NhbGVFbnVt ZXJhdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBeGlzU3RlcHMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBeGlzU3RlcHMiIFR5cGVOYW1l PSJvcGM6RG91YmxlIiBMZW5ndGhGaWVsZD0iTm9PZkF4aXNTdGVwcyIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJYVlR5cGUiIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iWCIgVHlwZU5h bWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9 Im9wYzpGbG9hdCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJQcm9ncmFtRGlhZ25vc3RpY0RhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZVNlc3Npb25JZCIgVHlw ZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZUNsaWVudE5h bWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW52b2Nh dGlvbkNyZWF0aW9uVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ikxhc3RUcmFuc2l0aW9uVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RNZXRob2RDYWxsIiBUeXBlTmFtZT0ib3BjOlN0cmlu ZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RNZXRob2RTZXNzaW9uSWQiIFR5cGVOYW1l PSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTGFzdE1ldGhvZElucHV0 QXJndW1lbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TGFzdE1ldGhvZElucHV0QXJndW1lbnRzIiBUeXBlTmFtZT0idG5zOkFyZ3VtZW50IiBMZW5ndGhG aWVsZD0iTm9PZkxhc3RNZXRob2RJbnB1dEFyZ3VtZW50cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik5vT2ZMYXN0TWV0aG9kT3V0cHV0QXJndW1lbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZE91dHB1dEFyZ3VtZW50cyIgVHlwZU5h bWU9InRuczpBcmd1bWVudCIgTGVuZ3RoRmllbGQ9Ik5vT2ZMYXN0TWV0aG9kT3V0cHV0QXJndW1l bnRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZENhbGxUaW1lIiBUeXBlTmFt ZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZFJldHVy blN0YXR1cyIgVHlwZU5hbWU9InRuczpTdGF0dXNSZXN1bHQiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUHJvZ3JhbURpYWdub3N0aWMy RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iQ3JlYXRlU2Vzc2lvbklkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQ3JlYXRlQ2xpZW50TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJJbnZvY2F0aW9uQ3JlYXRpb25UaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdFRyYW5zaXRpb25UaW1lIiBU eXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhv ZENhbGwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFz dE1ldGhvZFNlc3Npb25JZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZMYXN0TWV0aG9kSW5wdXRBcmd1bWVudHMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0aG9kSW5wdXRBcmd1bWVudHMiIFR5cGVO YW1lPSJ0bnM6QXJndW1lbnQiIExlbmd0aEZpZWxkPSJOb09mTGFzdE1ldGhvZElucHV0QXJndW1l bnRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxhc3RNZXRob2RPdXRwdXRBcmd1bWVu dHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0 aG9kT3V0cHV0QXJndW1lbnRzIiBUeXBlTmFtZT0idG5zOkFyZ3VtZW50IiBMZW5ndGhGaWVsZD0i Tm9PZkxhc3RNZXRob2RPdXRwdXRBcmd1bWVudHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mTGFzdE1ldGhvZElucHV0VmFsdWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZElucHV0VmFsdWVzIiBUeXBlTmFtZT0idWE6VmFyaWFu dCIgTGVuZ3RoRmllbGQ9Ik5vT2ZMYXN0TWV0aG9kSW5wdXRWYWx1ZXMiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJOb09mTGFzdE1ldGhvZE91dHB1dFZhbHVlcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RNZXRob2RPdXRwdXRWYWx1ZXMiIFR5cGVO YW1lPSJ1YTpWYXJpYW50IiBMZW5ndGhGaWVsZD0iTm9PZkxhc3RNZXRob2RPdXRwdXRWYWx1ZXMi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0aG9kQ2FsbFRpbWUiIFR5cGVOYW1lPSJv cGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0aG9kUmV0dXJuU3Rh dHVzIiBUeXBlTmFtZT0idG5zOlN0YXR1c1Jlc3VsdCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5 cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBbm5vdGF0aW9uIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1lc3NhZ2UiIFR5cGVO YW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlck5hbWUiIFR5cGVO YW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQW5ub3RhdGlvblRpbWUi IFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iRXhjZXB0aW9uRGV2aWF0aW9uRm9ybWF0IiBMZW5n dGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBYnNvbHV0ZVZh bHVlIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJQZXJjZW50 T2ZWYWx1ZSIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUGVy Y2VudE9mUmFuZ2UiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 IlBlcmNlbnRPZkVVUmFuZ2UiIFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlVua25vd24iIFZhbHVlPSI0IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0K PC9vcGM6VHlwZURpY3Rpb25hcnk+ NamespaceUri A URI that uniquely identifies the dictionary. i=68 i=7617 http://opcfoundation.org/UA/ Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 i=7617 true KeyValuePair i=69 i=7617 KeyValuePair EndpointType i=69 i=7617 EndpointType IdentityMappingRuleType i=69 i=7617 IdentityMappingRuleType TrustListDataType i=69 i=7617 TrustListDataType DataTypeSchemaHeader i=69 i=7617 DataTypeSchemaHeader DataTypeDescription i=69 i=7617 DataTypeDescription StructureDescription i=69 i=7617 StructureDescription EnumDescription i=69 i=7617 EnumDescription SimpleTypeDescription i=69 i=7617 SimpleTypeDescription UABinaryFileDataType i=69 i=7617 UABinaryFileDataType DataSetMetaDataType i=69 i=7617 DataSetMetaDataType FieldMetaData i=69 i=7617 FieldMetaData ConfigurationVersionDataType i=69 i=7617 ConfigurationVersionDataType PublishedDataSetDataType i=69 i=7617 PublishedDataSetDataType PublishedDataSetSourceDataType i=69 i=7617 PublishedDataSetSourceDataType PublishedVariableDataType i=69 i=7617 PublishedVariableDataType PublishedDataItemsDataType i=69 i=7617 PublishedDataItemsDataType PublishedEventsDataType i=69 i=7617 PublishedEventsDataType DataSetWriterDataType i=69 i=7617 DataSetWriterDataType DataSetWriterTransportDataType i=69 i=7617 DataSetWriterTransportDataType DataSetWriterMessageDataType i=69 i=7617 DataSetWriterMessageDataType PubSubGroupDataType i=69 i=7617 PubSubGroupDataType WriterGroupDataType i=69 i=7617 WriterGroupDataType WriterGroupTransportDataType i=69 i=7617 WriterGroupTransportDataType WriterGroupMessageDataType i=69 i=7617 WriterGroupMessageDataType PubSubConnectionDataType i=69 i=7617 PubSubConnectionDataType ConnectionTransportDataType i=69 i=7617 ConnectionTransportDataType NetworkAddressDataType i=69 i=7617 NetworkAddressDataType NetworkAddressUrlDataType i=69 i=7617 NetworkAddressUrlDataType ReaderGroupDataType i=69 i=7617 ReaderGroupDataType ReaderGroupTransportDataType i=69 i=7617 ReaderGroupTransportDataType ReaderGroupMessageDataType i=69 i=7617 ReaderGroupMessageDataType DataSetReaderDataType i=69 i=7617 DataSetReaderDataType DataSetReaderTransportDataType i=69 i=7617 DataSetReaderTransportDataType DataSetReaderMessageDataType i=69 i=7617 DataSetReaderMessageDataType SubscribedDataSetDataType i=69 i=7617 SubscribedDataSetDataType TargetVariablesDataType i=69 i=7617 TargetVariablesDataType FieldTargetDataType i=69 i=7617 FieldTargetDataType SubscribedDataSetMirrorDataType i=69 i=7617 SubscribedDataSetMirrorDataType PubSubConfigurationDataType i=69 i=7617 PubSubConfigurationDataType UadpWriterGroupMessageDataType i=69 i=7617 UadpWriterGroupMessageDataType UadpDataSetWriterMessageDataType i=69 i=7617 UadpDataSetWriterMessageDataType UadpDataSetReaderMessageDataType i=69 i=7617 UadpDataSetReaderMessageDataType JsonWriterGroupMessageDataType i=69 i=7617 JsonWriterGroupMessageDataType JsonDataSetWriterMessageDataType i=69 i=7617 JsonDataSetWriterMessageDataType JsonDataSetReaderMessageDataType i=69 i=7617 JsonDataSetReaderMessageDataType DatagramConnectionTransportDataType i=69 i=7617 DatagramConnectionTransportDataType DatagramWriterGroupTransportDataType i=69 i=7617 DatagramWriterGroupTransportDataType BrokerConnectionTransportDataType i=69 i=7617 BrokerConnectionTransportDataType BrokerWriterGroupTransportDataType i=69 i=7617 BrokerWriterGroupTransportDataType BrokerDataSetWriterTransportDataType i=69 i=7617 BrokerDataSetWriterTransportDataType BrokerDataSetReaderTransportDataType i=69 i=7617 BrokerDataSetReaderTransportDataType RolePermissionType i=69 i=7617 RolePermissionType DataTypeDefinition i=69 i=7617 DataTypeDefinition StructureField i=69 i=7617 StructureField StructureDefinition i=69 i=7617 StructureDefinition EnumDefinition i=69 i=7617 EnumDefinition Argument i=69 i=7617 Argument EnumValueType i=69 i=7617 EnumValueType EnumField i=69 i=7617 EnumField OptionSet i=69 i=7617 OptionSet Union i=69 i=7617 Union TimeZoneDataType i=69 i=7617 TimeZoneDataType ApplicationDescription i=69 i=7617 ApplicationDescription ServerOnNetwork i=69 i=7617 ServerOnNetwork UserTokenPolicy i=69 i=7617 UserTokenPolicy EndpointDescription i=69 i=7617 EndpointDescription RegisteredServer i=69 i=7617 RegisteredServer DiscoveryConfiguration i=69 i=7617 DiscoveryConfiguration MdnsDiscoveryConfiguration i=69 i=7617 MdnsDiscoveryConfiguration SignedSoftwareCertificate i=69 i=7617 SignedSoftwareCertificate UserIdentityToken i=69 i=7617 UserIdentityToken AnonymousIdentityToken i=69 i=7617 AnonymousIdentityToken UserNameIdentityToken i=69 i=7617 UserNameIdentityToken X509IdentityToken i=69 i=7617 X509IdentityToken IssuedIdentityToken i=69 i=7617 IssuedIdentityToken AddNodesItem i=69 i=7617 AddNodesItem AddReferencesItem i=69 i=7617 AddReferencesItem DeleteNodesItem i=69 i=7617 DeleteNodesItem DeleteReferencesItem i=69 i=7617 DeleteReferencesItem RelativePathElement i=69 i=7617 RelativePathElement RelativePath i=69 i=7617 RelativePath EndpointConfiguration i=69 i=7617 EndpointConfiguration ContentFilterElement i=69 i=7617 ContentFilterElement ContentFilter i=69 i=7617 ContentFilter FilterOperand i=69 i=7617 FilterOperand ElementOperand i=69 i=7617 ElementOperand LiteralOperand i=69 i=7617 LiteralOperand AttributeOperand i=69 i=7617 AttributeOperand SimpleAttributeOperand i=69 i=7617 SimpleAttributeOperand HistoryEvent i=69 i=7617 HistoryEvent MonitoringFilter i=69 i=7617 MonitoringFilter EventFilter i=69 i=7617 EventFilter AggregateConfiguration i=69 i=7617 AggregateConfiguration HistoryEventFieldList i=69 i=7617 HistoryEventFieldList BuildInfo i=69 i=7617 BuildInfo RedundantServerDataType i=69 i=7617 RedundantServerDataType EndpointUrlListDataType i=69 i=7617 EndpointUrlListDataType NetworkGroupDataType i=69 i=7617 NetworkGroupDataType SamplingIntervalDiagnosticsDataType i=69 i=7617 SamplingIntervalDiagnosticsDataType ServerDiagnosticsSummaryDataType i=69 i=7617 ServerDiagnosticsSummaryDataType ServerStatusDataType i=69 i=7617 ServerStatusDataType SessionDiagnosticsDataType i=69 i=7617 SessionDiagnosticsDataType SessionSecurityDiagnosticsDataType i=69 i=7617 SessionSecurityDiagnosticsDataType ServiceCounterDataType i=69 i=7617 ServiceCounterDataType StatusResult i=69 i=7617 StatusResult SubscriptionDiagnosticsDataType i=69 i=7617 SubscriptionDiagnosticsDataType ModelChangeStructureDataType i=69 i=7617 ModelChangeStructureDataType SemanticChangeStructureDataType i=69 i=7617 SemanticChangeStructureDataType Range i=69 i=7617 Range EUInformation i=69 i=7617 EUInformation ComplexNumberType i=69 i=7617 ComplexNumberType DoubleComplexNumberType i=69 i=7617 DoubleComplexNumberType AxisInformation i=69 i=7617 AxisInformation XVType i=69 i=7617 XVType ProgramDiagnosticDataType i=69 i=7617 ProgramDiagnosticDataType ProgramDiagnostic2DataType i=69 i=7617 ProgramDiagnostic2DataType Annotation i=69 i=7617 Annotation Default XML i=14533 i=14829 i=76 Default XML i=15528 i=16024 i=76 Default XML i=15634 i=15730 i=76 Default XML i=338 i=8327 i=76 Default XML i=853 i=8843 i=76 Default XML i=11943 i=11951 i=76 Default XML i=11944 i=11954 i=76 Default XML i=856 i=8846 i=76 Default XML i=859 i=8849 i=76 Default XML i=862 i=8852 i=76 Default XML i=865 i=8855 i=76 Default XML i=868 i=8858 i=76 Default XML i=871 i=8861 i=76 Default XML i=299 i=8294 i=76 Default XML i=874 i=8864 i=76 Default XML i=877 i=8867 i=76 Default XML i=897 i=8870 i=76 Opc.Ua i=8254 i=15039 i=14829 i=16024 i=15730 i=12677 i=16027 i=14811 i=15591 i=15594 i=15585 i=15588 i=14805 i=14808 i=14832 i=16030 i=16033 i=14320 i=16037 i=16040 i=16047 i=16050 i=16053 i=16056 i=21180 i=16062 i=16065 i=16068 i=16071 i=21183 i=21186 i=21189 i=16077 i=16080 i=16083 i=16086 i=16089 i=16092 i=16095 i=14835 i=16098 i=21192 i=16104 i=16107 i=16110 i=16113 i=16116 i=16119 i=17473 i=21195 i=15640 i=16125 i=16144 i=16147 i=16127 i=18166 i=18169 i=18172 i=18175 i=8285 i=8291 i=14826 i=12759 i=12762 i=8918 i=8300 i=12201 i=8297 i=8303 i=8417 i=12894 i=12897 i=8333 i=8306 i=8309 i=8312 i=8315 i=8318 i=8363 i=8366 i=8369 i=8372 i=12712 i=12715 i=8321 i=8564 i=8567 i=8570 i=8573 i=8576 i=8579 i=8582 i=8639 i=8702 i=8708 i=8711 i=8807 i=8327 i=8843 i=11951 i=11954 i=8846 i=8849 i=8852 i=8855 i=8858 i=8861 i=8294 i=8864 i=8867 i=8870 i=8873 i=8876 i=12175 i=12178 i=12083 i=12086 i=8882 i=15402 i=8879 i=92 i=72 PHhzOnNjaGVtYQ0KICB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEi DQogIHhtbG5zOnVhPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvVUEvMjAwOC8wMi9UeXBlcy54 c2QiDQogIHhtbG5zOnRucz0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBLzIwMDgvMDIvVHlw ZXMueHNkIg0KICB0YXJnZXROYW1lc3BhY2U9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9yZy9VQS8y MDA4LzAyL1R5cGVzLnhzZCINCiAgZWxlbWVudEZvcm1EZWZhdWx0PSJxdWFsaWZpZWQiDQo+DQog IDx4czplbGVtZW50IG5hbWU9IkJvb2xlYW4iIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czpib29s ZWFuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCb29sZWFuIj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCb29sZWFuIiB0eXBlPSJ4czpi b29sZWFuIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RP ZkJvb2xlYW4iIHR5cGU9InRuczpMaXN0T2ZCb29sZWFuIiBuaWxsYWJsZT0idHJ1ZSI+PC94czpl bGVtZW50Pg0KDQogIDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiBuaWxsYWJsZT0idHJ1ZSIgdHlw ZT0ieHM6Ynl0ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU0J5dGUiPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiB0eXBlPSJ4 czpieXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RP ZlNCeXRlIiB0eXBlPSJ0bnM6TGlzdE9mU0J5dGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnl0ZSIgbmlsbGFibGU9InRydWUiIHR5cGU9Inhz OnVuc2lnbmVkQnl0ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQnl0ZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnl0ZSIgdHlwZT0i eHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZkJ5dGUiIHR5cGU9InRuczpMaXN0T2ZCeXRlIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czplbGVtZW50IG5hbWU9IkludDE2IiBuaWxsYWJsZT0idHJ1ZSIg dHlwZT0ieHM6c2hvcnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkludDE2 Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbnQxNiIgdHlw ZT0ieHM6c2hvcnQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mSW50MTYiIHR5cGU9InRuczpMaXN0T2ZJbnQxNiIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVSW50MTYiIG5pbGxhYmxlPSJ0cnVlIiB0 eXBlPSJ4czp1bnNpZ25lZFNob3J0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZVSW50MTYiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlVJ bnQxNiIgdHlwZT0ieHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZVSW50MTYiIHR5cGU9InRuczpMaXN0T2ZVSW50MTYiIG5p bGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iSW50MzIi IG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czppbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikxpc3RPZkludDMyIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbnQzMiIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3Vu ZGVkIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9Ikxpc3RPZkludDMyIiB0eXBlPSJ0bnM6TGlzdE9mSW50MzIiIG5pbGxhYmxl PSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iVUludDMyIiBuaWxs YWJsZT0idHJ1ZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZlVJbnQzMiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVUludDMyIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiBtYXhP Y2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZVSW50MzIiIHR5cGU9InRuczpMaXN0T2ZV SW50MzIiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFt ZT0iSW50NjQiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czpsb25nIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZJbnQ2NCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iSW50NjQiIHR5cGU9InhzOmxvbmciIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mSW50NjQiIHR5cGU9InRuczpMaXN0T2ZJbnQ2 NCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJV SW50NjQiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czp1bnNpZ25lZExvbmciIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlVJbnQ2NCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iVUludDY0IiB0eXBlPSJ4czp1bnNpZ25lZExvbmciIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mVUludDY0IiB0eXBl PSJ0bnM6TGlzdE9mVUludDY0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4 czplbGVtZW50IG5hbWU9IkZsb2F0IiBuaWxsYWJsZT0idHJ1ZSIgdHlwZT0ieHM6ZmxvYXQiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkZsb2F0Ij4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGbG9hdCIgdHlwZT0ieHM6ZmxvYXQiIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRmxvYXQiIHR5cGU9 InRuczpMaXN0T2ZGbG9hdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJEb3VibGUiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czpkb3VibGUiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkRvdWJsZSI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRG91YmxlIiB0eXBlPSJ4czpkb3VibGUiIG1p bk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRG91YmxlIiB0 eXBlPSJ0bnM6TGlzdE9mRG91YmxlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czplbGVtZW50IG5hbWU9IlN0cmluZyIgbmlsbGFibGU9InRydWUiIHR5cGU9InhzOnN0cmlu ZyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3RyaW5nIj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdHJpbmciIHR5cGU9InhzOnN0cmlu ZyIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVl bmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTdHJp bmciIHR5cGU9InRuczpMaXN0T2ZTdHJpbmciIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+ DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0ZVRpbWUiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4 czpkYXRlVGltZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0ZVRpbWUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGVUaW1lIiB0 eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZEYXRlVGltZSIgdHlwZT0idG5zOkxpc3RPZkRhdGVUaW1lIiBuaWxsYWJsZT0i dHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJHdWlkIj4NCiAg ICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czphcHBpbmZvPg0KICAgICAgICA8SXNWYWx1ZVR5 cGUgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vMjAwMy8xMC9TZXJpYWxpemF0 aW9uLyI+dHJ1ZTwvSXNWYWx1ZVR5cGU+DQogICAgICA8L3hzOmFwcGluZm8+DQogICAgPC94czph bm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0 cmluZyIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0iMSIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iR3VpZCIgdHlwZT0idG5zOkd1aWQiIG5pbGxhYmxlPSJ0cnVlIj48 L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkd1aWQiPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikd1aWQiIHR5cGU9InRuczpH dWlkIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkd1 aWQiIHR5cGU9InRuczpMaXN0T2ZHdWlkIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czplbGVtZW50IG5hbWU9IkJ5dGVTdHJpbmciIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4 czpiYXNlNjRCaW5hcnkiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJ5dGVT dHJpbmciPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGVT dHJpbmciIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQnl0ZVN0cmluZyIgdHlwZT0i dG5zOkxpc3RPZkJ5dGVTdHJpbmciIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlhtbEVsZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlhtbEVsZW1lbnQiIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAgPHhzOmNvbXBsZXhU eXBlPg0KICAgICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICAgIDx4czphbnkgbWluT2Nj dXJzPSIwIiBwcm9jZXNzQ29udGVudHM9ImxheCIvPg0KICAgICAgICAgIDwveHM6c2VxdWVuY2U+ DQogICAgICAgIDwveHM6Y29tcGxleFR5cGU+DQogICAgICA8L3hzOmVsZW1lbnQ+DQogICAgPC94 czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlz dE9mWG1sRWxlbWVudCIgdHlwZT0idG5zOkxpc3RPZlhtbEVsZW1lbnQiIG5pbGxhYmxlPSJ0cnVl Ij48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGVJZCI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSWRlbnRpZmllciIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0iMSIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTm9kZUlkIiB0eXBlPSJ0bnM6Tm9kZUlkIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZOb2RlSWQiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVJZCIgdHlwZT0idG5zOk5vZGVJ ZCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTGlzdE9mTm9kZUlkIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZUlkIiBuaWxsYWJsZT0idHJ1 ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFeHBhbmRlZE5vZGVJ ZCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSWRlbnRpZmll ciIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0iMSIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpFeHBhbmRlZE5vZGVJZCIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TGlzdE9mRXhwYW5kZWROb2RlSWQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkV4cGFuZGVkTm9kZUlkIiB0eXBlPSJ0bnM6RXhwYW5kZWROb2RlSWQiIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkV4cGFuZGVkTm9kZUlkIiB0eXBlPSJ0bnM6TGlzdE9mRXhwYW5kZWROb2RlSWQiIG5pbGxh YmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlN0YXR1 c0NvZGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmFwcGluZm8+DQogICAgICAg IDxJc1ZhbHVlVHlwZSB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS8yMDAzLzEw L1NlcmlhbGl6YXRpb24vIj50cnVlPC9Jc1ZhbHVlVHlwZT4NCiAgICAgIDwveHM6YXBwaW5mbz4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQ29kZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJTdGF0dXNDb2RlIiB0eXBlPSJ0bnM6U3RhdHVzQ29kZSIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3RhdHVzQ29kZSI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlw ZT0idG5zOlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+ DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTGlzdE9mU3RhdHVzQ29kZSIgdHlwZT0idG5zOkxpc3RPZlN0YXR1c0NvZGUiIG5pbGxh YmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRpYWdu b3N0aWNJbmZvIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJT eW1ib2xpY0lkIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Ik5hbWVzcGFjZVVyaSIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGUiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxpemVkVGV4dCIgdHlwZT0ieHM6aW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGRpdGlvbmFsSW5m byIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbm5lclN0YXR1c0NvZGUiIHR5cGU9InRuczpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbm5lckRpYWdub3N0aWNJbmZvIiB0eXBlPSJ0 bnM6RGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mbyIg dHlwZT0idG5zOkRpYWdub3N0aWNJbmZvIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZEaWFnbm9zdGljSW5mbyI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm8iIHR5cGU9 InRuczpEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGlhZ25vc3RpY0luZm8iIHR5cGU9InRuczpM aXN0T2ZEaWFnbm9zdGljSW5mbyIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTG9jYWxpemVkVGV4dCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxlIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUZXh0IiB0 eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxv Y2FsaXplZFRleHQiIHR5cGU9InRuczpMb2NhbGl6ZWRUZXh0IiBuaWxsYWJsZT0idHJ1ZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTG9jYWxpemVkVGV4dCI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxpemVkVGV4dCIgdHlwZT0i dG5zOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkxvY2FsaXplZFRleHQiIHR5cGU9InRuczpMaXN0 T2ZMb2NhbGl6ZWRUZXh0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJRdWFsaWZpZWROYW1lIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lc3BhY2VJbmRleCIgdHlwZT0ieHM6dW5zaWduZWRTaG9y dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlF1YWxpZmll ZE5hbWUiIHR5cGU9InRuczpRdWFsaWZpZWROYW1lIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUXVhbGlmaWVkTmFtZSI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVhbGlmaWVkTmFtZSIgdHlwZT0idG5zOlF1 YWxpZmllZE5hbWUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ikxpc3RPZlF1YWxpZmllZE5hbWUiIHR5cGU9InRuczpMaXN0T2ZRdWFs aWZpZWROYW1lIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDwhLS0NCiAgICBT b21lIGVudmlyb25tZW50cyByZXF1aXJlIGEgV1NETC9YU0Qgd2hpY2ggZXhwbGljaXRseSBkZWZp bmVzIGFsbCBwb3NzaWJsZSB0eXBlcy4NCiAgICBUaGUgVUEgV1NETC9YU0QgY2FuIGJlIG1vZGlm aWVkIHRvIHN1cHBvcnQgdGhlc2UgZW52aXJvbm1lbnRzIGJ5IHJlcGxhY2luZyB0aGUNCiAgICBk ZWZpbml0aW9ucyBvZiB0aGUgRXh0ZW5zaW9uT2JqZWN0Qm9keSBhbmQgVmFyaWFudFZhbHVlIGNv bXBsZXggdHlwZXMgd2l0aCB0aGUNCiAgICBkZWZpbml0aW9ucyBpbiB0aGUgY29tbWVudHMgc2hv d24gaGVyZS4gRGV2ZWxvcGVycyB3b3VsZCB0aGVuIGRlZmluZSBzdWJ0eXBlcw0KICAgIG9mIHRo ZSBFeHRlbnNpb25PYmplY3RCb2R5IHR5cGUgd2hpY2ggZXhwbGljaXRseSBkZWNsYXJlIGEgY2hv aWNlIGJldHdlZW4gYWxsIG9mIHRoZQ0KICAgIGNvbXBsZXggdHlwZXMgdXNlZCBieSB0aGUgc3lz dGVtLiBUaGUgRXhhbXBsZUV4dGVuc2lvbk9iamVjdEJvZHkgc3VidHlwZSBpcyBwcm92aWRlcw0K ICAgIGEgdGVtcGxhdGUgYmFzZWQgb24gYSBmZXcgY29tbW9uIFVBLWRlZmluZWQgY29tcGxleCB0 eXBlcy4NCiAgICAtLT4NCg0KICA8IS0tDQogICAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkV4dGVu c2lvbk9iamVjdEJvZHkiIC8+DQoNCiAgICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRXhhbXBsZUV4 dGVuc2lvbk9iamVjdEJvZHkiPg0KICAgICAgPHhzOmNvbXBsZXhDb250ZW50Pg0KICAgICAgICA8 eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpFeHRlbnNpb25PYmplY3RCb2R5Ij4NCiAgICAgICAgICA8 eHM6Y2hvaWNlPg0KICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXJndW1lbnQiIHR5cGU9 InRuczpBcmd1bWVudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAg ICAgIDx4czplbGVtZW50IG5hbWU9IlVzZXJJZGVudGl0eVRva2VuIiB0eXBlPSJ0bnM6VXNlcklk ZW50aXR5VG9rZW4iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyTmFtZUlkZW50aXR5VG9rZW4iIHR5cGU9InRuczpVc2Vy TmFtZUlkZW50aXR5VG9rZW4iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICAgICAgPC94czpjaG9pY2U+DQogICAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgICAgPC94czpj b21wbGV4Q29udGVudD4NCiAgICA8L3hzOmNvbXBsZXhUeXBlPg0KDQogICAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IkV4dGVuc2lvbk9iamVjdCI+DQogICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAg IDx4czplbGVtZW50IG5hbWU9IlR5cGVJZCIgdHlwZT0idG5zOkV4cGFuZGVkTm9kZUlkIiBtaW5P Y2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJC b2R5IiBtaW5PY2N1cnM9IjAiIHR5cGU9InRuczpFeHRlbnNpb25PYmplY3RCb2R5IiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgPC94czpjb21wbGV4VHlwZT4N CiAgICA8eHM6ZWxlbWVudCBuYW1lPSJFeHRlbnNpb25PYmplY3QiIHR5cGU9InRuczpFeHRlbnNp b25PYmplY3QiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIC0tPg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJFeHRlbnNpb25PYmplY3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlR5cGVJZCIgdHlwZT0idG5zOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJvZHkiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiPg0KICAgICAgICA8eHM6Y29tcGxleFR5cGU+DQogICAgICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICAgICAgPHhzOmFueSBtaW5PY2N1cnM9IjAiIHByb2Nlc3ND b250ZW50cz0ibGF4Ii8+DQogICAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgICAgPC94czpj b21wbGV4VHlwZT4NCiAgICAgIDwveHM6ZWxlbWVudD4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJFeHRlbnNpb25PYmplY3QiIHR5 cGU9InRuczpFeHRlbnNpb25PYmplY3QiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZFeHRlbnNpb25PYmplY3QiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkV4dGVuc2lvbk9iamVjdCIgdHlwZT0idG5zOkV4dGVu c2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mRXh0ZW5zaW9uT2JqZWN0IiB0eXBlPSJ0bnM6TGlzdE9mRXh0 ZW5zaW9uT2JqZWN0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDwhLS0NCiAg ICBTb21lIFdTREwvWE1MIGNvbXBpbGVycyBoYXZlIGlzc3VlcyB3aXRoIHRoZSB4czpjaG9pY2Ug Y29uc3RydWN0LiBGb3IgdGhhdCByZWFzb24NCiAgICB0aGUgZGVmYXVsdCBkZWNsYXJhdGlvbiBv ZiBhIFZhcmlhbnQgdXNlcyB4czphbnkgY29uc3RydWN0LiBUaGUgc2NoZW1hIGFjdXR1YWxseQ0K ICAgIGRlZmluZWQgYnkgdGhlIHNwZWNpZmljYXRpb24gaXMgcHJvdmlkZWQgYnkgdGhlIE1hdHJp eCBhbmQgVmFyaWFudFZhbHVlIGNvbXBsZXggdHlwZXMNCiAgICBzaG93biBpbiBjb21tZW50cyBi ZWxvdy4gQXBwbGljYXRpb24gZGV2ZWxvcGVycyBjYW4gcmVwbGFjZSB0aGUgVmFyaWFudFZhbHVl IGRlY2xhcmF0aW9uDQogICAgd2l0aCB0aGUgc3BlY2lmaWMgZGVjbGFyYXRpb24gaWYgdGhleSBo YXZlIGEgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgdGhhdCBjYW4gaGFuZGxlDQogICAgdGhlIHhz OmNob2ljZSBjb25zdHJ1Y3QgaW4gYSByZWFzb25hYmxlIHdheS4NCiAgICAtLT4NCg0KICA8IS0t DQogICAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1hdHJpeCI+DQogICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpbWVuc2lvbnMiIHR5cGU9InRuczpMaXN0T2ZV SW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDx4czplbGVt ZW50IG5hbWU9IlZhbHVlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAg ICA8eHM6Y29tcGxleFR5cGUgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgICAgICAgIDx4czpjaG9pY2Ug bWF4T2NjdXJzPSJ1bmJvdW5kZWQiPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJC b29sZWFuIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgICAg IDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiB0eXBlPSJ4czpieXRlIiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGUiIHR5cGU9InhzOnVuc2lnbmVk Qnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJ bnQxNiIgdHlwZT0ieHM6c2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iVUludDE2IiB0eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkludDMyIiB0eXBlPSJ4czpp bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVUlu dDMyIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJJbnQ2NCIgdHlwZT0ieHM6bG9uZyIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVSW50NjQiIHR5cGU9InhzOnVuc2ln bmVkTG9uZyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJGbG9hdCIgdHlwZT0ieHM6ZmxvYXQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRG91YmxlIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RyaW5nIiB0eXBlPSJ4czpzdHJp bmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0 ZVRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgICAg IDx4czplbGVtZW50IG5hbWU9Ikd1aWQiIHR5cGU9InRuczpHdWlkIiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGVTdHJpbmciIHR5cGU9InhzOmJh c2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJYbWxFbGVtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAg ICAgICAgICA8eHM6Y29tcGxleFR5cGU+DQogICAgICAgICAgICAgICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgICAgICAgICAgICAgIDx4czphbnkgbWluT2NjdXJzPSIwIiBwcm9jZXNzQ29udGVu dHM9ImxheCIgLz4NCiAgICAgICAgICAgICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICAgICAg ICAgICAgPC94czpjb21wbGV4VHlwZT4NCiAgICAgICAgICAgICAgPC94czplbGVtZW50Pg0KICAg ICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ0bnM6U3RhdHVz Q29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJO b2RlSWQiIHR5cGU9InRuczpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpFeHBhbmRlZE5vZGVJ ZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWFs aWZpZWROYW1lIiB0eXBlPSJ0bnM6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGl6ZWRUZXh0IiB0eXBlPSJ0bnM6TG9j YWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJFeHRlbnNpb25PYmplY3QiIHR5cGU9InRuczpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFudCIgdHlwZT0i dG5zOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgIDwveHM6Y2hvaWNlPg0K ICAgICAgICAgIDwveHM6Y29tcGxleFR5cGU+DQogICAgICAgIDwveHM6ZWxlbWVudD4NCiAgICAg IDwveHM6c2VxdWVuY2U+DQogICAgPC94czpjb21wbGV4VHlwZT4NCiAgICA8eHM6ZWxlbWVudCBu YW1lPSJNYXRyaXgiIHR5cGU9InRuczpNYXRyaXgiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KDQogICAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IlZhcmlhbnRWYWx1ZSI+DQogICAgICA8eHM6Y2hvaWNlPg0K ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCb29sZWFuIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiB0eXBlPSJ4czpi eXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGUiIHR5 cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJJbnQxNiIgdHlwZT0ieHM6c2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVUludDE2IiB0eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkludDMyIiB0eXBlPSJ4czppbnQi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVUludDMyIiB0eXBl PSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbnQ2NCIgdHlwZT0ieHM6bG9uZyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJVSW50NjQiIHR5cGU9InhzOnVuc2lnbmVkTG9uZyIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGbG9hdCIgdHlwZT0ieHM6ZmxvYXQiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRG91YmxlIiB0eXBlPSJ4 czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3Ry aW5nIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRGF0ZVRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikd1aWQiIHR5cGU9InRuczpHdWlkIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGVTdHJpbmciIHR5cGU9InhzOmJh c2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJY bWxFbGVtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAgICA8eHM6 Y29tcGxleFR5cGU+DQogICAgICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgICAgIDx4 czphbnkgbWluT2NjdXJzPSIwIiBwcm9jZXNzQ29udGVudHM9ImxheCIgLz4NCiAgICAgICAgICAg IDwveHM6c2VxdWVuY2U+DQogICAgICAgICAgPC94czpjb21wbGV4VHlwZT4NCiAgICAgICAgPC94 czplbGVtZW50Pg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ0 bnM6U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJOb2RlSWQiIHR5cGU9InRuczpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpFeHBhbmRlZE5vZGVJZCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWFsaWZpZWROYW1l IiB0eXBlPSJ0bnM6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJMb2NhbGl6ZWRUZXh0IiB0eXBlPSJ0bnM6TG9jYWxpemVkVGV4dCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFeHRlbnNpb25PYmplY3Qi IHR5cGU9InRuczpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mQm9vbGVhbiIgdHlwZT0idG5zOkxpc3RPZkJvb2xlYW4iIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mU0J5dGUiIHR5 cGU9InRuczpMaXN0T2ZTQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZCeXRlIiB0eXBlPSJ0bnM6TGlzdE9mQnl0ZSIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZJbnQxNiIgdHlwZT0idG5zOkxpc3RP ZkludDE2IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RP ZlVJbnQxNiIgdHlwZT0idG5zOkxpc3RPZlVJbnQxNiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZJbnQzMiIgdHlwZT0idG5zOkxpc3RPZkludDMyIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVJbnQzMiIg dHlwZT0idG5zOkxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJMaXN0T2ZJbnQ2NCIgdHlwZT0idG5zOkxpc3RPZkludDY0IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVJbnQ2NCIgdHlwZT0idG5z Okxpc3RPZlVJbnQ2NCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJMaXN0T2ZGbG9hdCIgdHlwZT0idG5zOkxpc3RPZkZsb2F0IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRvdWJsZSIgdHlwZT0idG5zOkxpc3RPZkRv dWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZT dHJpbmciIHR5cGU9InRuczpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0ZVRpbWUiIHR5cGU9InRuczpMaXN0T2ZEYXRlVGlt ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZHdWlk IiB0eXBlPSJ0bnM6TGlzdE9mR3VpZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJMaXN0T2ZCeXRlU3RyaW5nIiB0eXBlPSJ0bnM6TGlzdE9mQnl0ZVN0cmluZyIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZYbWxFbGVt ZW50IiB0eXBlPSJ0bnM6TGlzdE9mWG1sRWxlbWVudCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTdGF0dXNDb2RlIiB0eXBlPSJ0bnM6TGlzdE9mU3Rh dHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZOb2RlSWQiIHR5cGU9InRuczpMaXN0T2ZOb2RlSWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpMaXN0 T2ZFeHBhbmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZRdWFsaWZpZWROYW1lIiB0eXBlPSJ0bnM6TGlzdE9mUXVhbGlmaWVkTmFtZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZMb2NhbGl6 ZWRUZXh0IiB0eXBlPSJ0bnM6TGlzdE9mTG9jYWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZFeHRlbnNpb25PYmplY3QiIHR5cGU9InRu czpMaXN0T2ZFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mVmFyaWFudCIgdHlwZT0idG5zOkxpc3RPZlZhcmlhbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF0cml4IiB0eXBlPSJ0bnM6 TWF0cml4IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8L3hzOmNob2ljZT4NCiAgICA8L3hzOmNv bXBsZXhUeXBlPg0KDQogICAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlZhcmlhbnQiPg0KICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0idG5z OlZhcmlhbnRWYWx1ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDwv eHM6c2VxdWVuY2U+DQogICAgPC94czpjb21wbGV4VHlwZT4NCiAgICA8eHM6ZWxlbWVudCBuYW1l PSJWYXJpYW50IiB0eXBlPSJ0bnM6VmFyaWFudCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgLS0+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlZhcmlhbnQiPg0KICAgIDx4czphbm5vdGF0aW9u Pg0KICAgICAgPHhzOmFwcGluZm8+DQogICAgICAgIDxJc1ZhbHVlVHlwZSB4bWxucz0iaHR0cDov L3NjaGVtYXMubWljcm9zb2Z0LmNvbS8yMDAzLzEwL1NlcmlhbGl6YXRpb24vIj50cnVlPC9Jc1Zh bHVlVHlwZT4NCiAgICAgIDwveHM6YXBwaW5mbz4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiPg0KICAgICAgICA8eHM6Y29tcGxleFR5cGU+DQogICAgICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICAgICAgPHhzOmFueSBtaW5PY2N1cnM9IjAiIHByb2Nlc3ND b250ZW50cz0ibGF4IiAvPg0KICAgICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICAgIDwveHM6 Y29tcGxleFR5cGU+DQogICAgICA8L3hzOmVsZW1lbnQ+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFudCIgdHlwZT0idG5z OlZhcmlhbnQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJM aXN0T2ZWYXJpYW50Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJWYXJpYW50IiB0eXBlPSJ0bnM6VmFyaWFudCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZWYXJpYW50IiB0eXBlPSJ0bnM6TGlzdE9mVmFyaWFudCIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i RGF0YVZhbHVlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJW YWx1ZSIgdHlwZT0idG5zOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlN0YXR1c0NvZGUiIHR5cGU9InRuczpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTb3VyY2VUaW1lc3RhbXAiIHR5cGU9InhzOmRh dGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTb3VyY2VQ aWNvc2Vjb25kcyIgdHlwZT0ieHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyVGltZXN0YW1wIiB0eXBlPSJ4czpkYXRlVGltZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyUGljb3NlY29u ZHMiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVmFs dWUiIHR5cGU9InRuczpEYXRhVmFsdWUiIG5pbGxhYmxlPSJ0cnVlIi8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkRhdGFWYWx1ZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVZhbHVlIiB0eXBlPSJ0bnM6RGF0YVZhbHVlIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZEYXRhVmFsdWUiIHR5cGU9InRuczpMaXN0T2ZEYXRhVmFsdWUiIG5pbGxhYmxlPSJ0cnVlIj48 L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iSW52b2tlU2VydmljZVJlcXVlc3Qi IHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbmlsbGFibGU9InRydWUiIC8+DQogIDx4czplbGVtZW50 IG5hbWU9Ikludm9rZVNlcnZpY2VSZXNwb25zZSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBuaWxs YWJsZT0idHJ1ZSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJbWFnZUJNUCIgdHlwZT0ieHM6 YmFzZTY0QmluYXJ5IiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkltYWdlR0lGIiB0eXBlPSJ4 czpiYXNlNjRCaW5hcnkiIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iSW1hZ2VKUEciIHR5cGU9 InhzOmJhc2U2NEJpbmFyeSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJbWFnZVBORyIgdHlw ZT0ieHM6YmFzZTY0QmluYXJ5IiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkF1ZGlvRGF0YVR5 cGUiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJCaXRG aWVsZE1hc2tEYXRhVHlwZSIgdHlwZT0ieHM6dW5zaWduZWRMb25nIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJLZXlWYWx1ZVBhaXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IktleSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0eXBl PSJ1YTpWYXJpYW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iS2V5VmFsdWVQYWlyIiB0eXBlPSJ0 bnM6S2V5VmFsdWVQYWlyIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZLZXlW YWx1ZVBhaXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Iktl eVZhbHVlUGFpciIgdHlwZT0idG5zOktleVZhbHVlUGFpciIgbWluT2NjdXJzPSIwIiBtYXhPY2N1 cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mS2V5VmFsdWVQYWly IiB0eXBlPSJ0bnM6TGlzdE9mS2V5VmFsdWVQYWlyIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbmRwb2ludFR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpz dHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZWN1cml0eU1vZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eVBvbGljeVVyaSIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVHJhbnNwb3J0UHJvZmlsZVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkVuZHBvaW50VHlwZSIgdHlwZT0i dG5zOkVuZHBvaW50VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRW5k cG9pbnRUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJF bmRwb2ludFR5cGUiIHR5cGU9InRuczpFbmRwb2ludFR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkVuZHBvaW50VHlw ZSIgdHlwZT0idG5zOkxpc3RPZkVuZHBvaW50VHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iT3BlbkZpbGVNb2RlIj4NCiAgICA8eHM6 cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iUmVhZF8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJXcml0ZV8yIiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJFcmFzZUV4aXN0aW5nXzQiIC8+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFwcGVuZF84IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iT3BlbkZpbGVNb2RlIiB0 eXBlPSJ0bnM6T3BlbkZpbGVNb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZPcGVuRmlsZU1vZGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9Ik9wZW5GaWxlTW9kZSIgdHlwZT0idG5zOk9wZW5GaWxlTW9kZSIgbWluT2NjdXJzPSIwIiBt YXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZPcGVuRmlsZU1vZGUiIHR5cGU9InRu czpMaXN0T2ZPcGVuRmlsZU1vZGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOnNpbXBsZVR5cGUgIG5hbWU9IklkZW50aXR5Q3JpdGVyaWFUeXBlIj4NCiAgICA8eHM6cmVz dHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i VXNlck5hbWVfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVGh1bWJwcmludF8y IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSb2xlXzMiIC8+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9Ikdyb3VwSWRfNCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iQW5vbnltb3VzXzUiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkF1dGhl bnRpY2F0ZWRVc2VyXzYiIC8+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJZGVudGl0eUNyaXRlcmlhVHlwZSIgdHlwZT0idG5z OklkZW50aXR5Q3JpdGVyaWFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZJZGVudGl0eUNyaXRlcmlhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iSWRlbnRpdHlDcml0ZXJpYVR5cGUiIHR5cGU9InRuczpJZGVudGl0eUNyaXRl cmlhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZJZGVudGl0eUNyaXRlcmlhVHlwZSIgdHlwZT0idG5zOkxpc3RPZklkZW50aXR5Q3JpdGVyaWFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJJZGVudGl0eU1hcHBpbmdSdWxlVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iQ3JpdGVyaWFUeXBlIiB0eXBlPSJ0bnM6SWRlbnRpdHlDcml0ZXJp YVR5cGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNyaXRlcmlh IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i SWRlbnRpdHlNYXBwaW5nUnVsZVR5cGUiIHR5cGU9InRuczpJZGVudGl0eU1hcHBpbmdSdWxlVHlw ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mSWRlbnRpdHlNYXBwaW5nUnVs ZVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IklkZW50 aXR5TWFwcGluZ1J1bGVUeXBlIiB0eXBlPSJ0bnM6SWRlbnRpdHlNYXBwaW5nUnVsZVR5cGUiIG1p bk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikxpc3RPZklkZW50aXR5TWFwcGluZ1J1bGVUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mSWRlbnRpdHlN YXBwaW5nUnVsZVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNp bXBsZVR5cGUgIG5hbWU9IlRydXN0TGlzdE1hc2tzIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFz ZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9uZV8wIiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJUcnVzdGVkQ2VydGlmaWNhdGVzXzEiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlRydXN0ZWRDcmxzXzIiIC8+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9Iklzc3VlckNlcnRpZmljYXRlc180IiAvPg0KICAgICAgPHhzOmVu dW1lcmF0aW9uIHZhbHVlPSJJc3N1ZXJDcmxzXzgiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9IkFsbF8xNSIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRydXN0TGlzdE1hc2tzIiB0eXBlPSJ0bnM6VHJ1c3RM aXN0TWFza3MiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRydXN0TGlzdERhdGFUeXBl Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTcGVjaWZpZWRM aXN0cyIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlRydXN0ZWRDZXJ0aWZpY2F0ZXMiIHR5cGU9InVhOkxpc3RPZkJ5dGVTdHJp bmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJUcnVzdGVkQ3JscyIgdHlwZT0idWE6TGlzdE9mQnl0ZVN0cmluZyIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Iklzc3VlckNlcnRp ZmljYXRlcyIgdHlwZT0idWE6TGlzdE9mQnl0ZVN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Iklzc3VlckNybHMiIHR5cGU9InVh Okxpc3RPZkJ5dGVTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i VHJ1c3RMaXN0RGF0YVR5cGUiIHR5cGU9InRuczpUcnVzdExpc3REYXRhVHlwZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVHJ1c3RMaXN0RGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRydXN0TGlzdERhdGFUeXBlIiB0eXBl PSJ0bnM6VHJ1c3RMaXN0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlRydXN0TGlzdERhdGFUeXBlIiB0eXBl PSJ0bnM6TGlzdE9mVHJ1c3RMaXN0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlY2ltYWxEYXRhVHlwZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2NhbGUiIHR5cGU9InhzOnNob3J0 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0i eHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRl Y2ltYWxEYXRhVHlwZSIgdHlwZT0idG5zOkRlY2ltYWxEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iRGF0YVR5cGVTY2hlbWFIZWFkZXIiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWVzcGFjZXMiIHR5cGU9InVhOkxpc3RPZlN0cmlu ZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlN0cnVjdHVyZURhdGFUeXBlcyIgdHlwZT0idG5zOkxpc3RPZlN0cnVjdHVyZURlc2NyaXB0 aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRW51bURhdGFUeXBlcyIgdHlwZT0idG5zOkxpc3RPZkVudW1EZXNjcmlwdGlvbiIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNp bXBsZURhdGFUeXBlcyIgdHlwZT0idG5zOkxpc3RPZlNpbXBsZVR5cGVEZXNjcmlwdGlvbiIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlwZVNjaGVtYUhlYWRlciIg dHlwZT0idG5zOkRhdGFUeXBlU2NoZW1hSGVhZGVyIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJMaXN0T2ZEYXRhVHlwZVNjaGVtYUhlYWRlciI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGVTY2hlbWFIZWFkZXIiIHR5cGU9InRuczpEYXRh VHlwZVNjaGVtYUhlYWRlciIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmls bGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0YVR5cGVTY2hlbWFIZWFkZXIiIHR5cGU9InRu czpMaXN0T2ZEYXRhVHlwZVNjaGVtYUhlYWRlciIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRGF0YVR5cGVEZXNjcmlwdGlvbiI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGVJZCIgdHlwZT0i dWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlwZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6RGF0 YVR5cGVEZXNjcmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0 YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRGF0YVR5cGVEZXNjcmlwdGlvbiIgdHlwZT0idG5zOkRhdGFUeXBlRGVzY3JpcHRpb24i IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZkRhdGFUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpMaXN0T2ZEYXRhVHlwZURl c2NyaXB0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJTdHJ1Y3R1cmVEZXNjcmlwdGlvbiI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50 IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpEYXRhVHlwZURl c2NyaXB0aW9uIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IlN0cnVjdHVyZURlZmluaXRpb24iIHR5cGU9InRuczpTdHJ1Y3R1cmVEZWZpbml0aW9u IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNl Pg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU3RydWN0dXJlRGVzY3JpcHRpb24i IHR5cGU9InRuczpTdHJ1Y3R1cmVEZXNjcmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTGlzdE9mU3RydWN0dXJlRGVzY3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlN0cnVjdHVyZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6U3Ry dWN0dXJlRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN0cnVjdHVyZURlc2NyaXB0aW9uIiB0eXBlPSJ0 bnM6TGlzdE9mU3RydWN0dXJlRGVzY3JpcHRpb24iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVudW1EZXNjcmlwdGlvbiI+DQogICAgPHhz OmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9 InRuczpEYXRhVHlwZURlc2NyaXB0aW9uIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAg ICAgIDx4czplbGVtZW50IG5hbWU9IkVudW1EZWZpbml0aW9uIiB0eXBlPSJ0bnM6RW51bURlZmlu aXRpb24iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iQnVpbHRJblR5cGUiIHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iRW51bURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6RW51bURlc2NyaXB0aW9uIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZFbnVtRGVzY3JpcHRpb24iPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVudW1EZXNjcmlwdGlvbiIgdHlw ZT0idG5zOkVudW1EZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRl ZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRW51bURlc2NyaXB0aW9uIiB0eXBlPSJ0 bnM6TGlzdE9mRW51bURlc2NyaXB0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTaW1wbGVUeXBlRGVzY3JpcHRpb24iPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCYXNlRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJCdWlsdEluVHlwZSIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNv bXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJT aW1wbGVUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpTaW1wbGVUeXBlRGVzY3JpcHRpb24iIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNpbXBsZVR5cGVEZXNjcmlwdGlvbiI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2ltcGxlVHlwZURl c2NyaXB0aW9uIiB0eXBlPSJ0bnM6U2ltcGxlVHlwZURlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAi IG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVl bmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTaW1w bGVUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpMaXN0T2ZTaW1wbGVUeXBlRGVzY3JpcHRpb24i IG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IlVBQmluYXJ5RmlsZURhdGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZh bHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkRhdGFUeXBlU2NoZW1hSGVhZGVy Ij4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNj aGVtYUxvY2F0aW9uIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmlsZUhlYWRlciIgdHlwZT0idG5z Okxpc3RPZktleVZhbHVlUGFpciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCb2R5IiB0eXBlPSJ1YTpWYXJpYW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4N CiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJVQUJpbmFyeUZpbGVEYXRhVHlwZSIgdHlwZT0idG5zOlVBQmluYXJ5RmlsZURh dGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZVQUJpbmFyeUZpbGVE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVUFC aW5hcnlGaWxlRGF0YVR5cGUiIHR5cGU9InRuczpVQUJpbmFyeUZpbGVEYXRhVHlwZSIgbWluT2Nj dXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94 czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlz dE9mVUFCaW5hcnlGaWxlRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZVQUJpbmFyeUZpbGVEYXRh VHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAg bmFtZT0iUHViU3ViU3RhdGUiPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmci Pg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEaXNhYmxlZF8wIiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJQYXVzZWRfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iT3BlcmF0aW9uYWxfMiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iRXJy b3JfMyIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IlB1YlN1YlN0YXRlIiB0eXBlPSJ0bnM6UHViU3ViU3RhdGUiIC8+DQoN CiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlB1YlN1YlN0YXRlIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJTdWJTdGF0ZSIgdHlwZT0idG5zOlB1 YlN1YlN0YXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZlB1YlN1YlN0YXRlIiB0eXBlPSJ0bnM6TGlzdE9mUHViU3ViU3RhdGUiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRhdGFTZXRNZXRh RGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAg PHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6RGF0YVR5cGVTY2hlbWFIZWFkZXIiPg0KICAgICAgICA8 eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0ieHM6 c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9IkRlc2NyaXB0aW9uIiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkZp ZWxkcyIgdHlwZT0idG5zOkxpc3RPZkZpZWxkTWV0YURhdGEiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldENsYXNzSWQi IHR5cGU9InVhOkd1aWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJDb25maWd1cmF0aW9uVmVyc2lvbiIgdHlwZT0idG5zOkNvbmZpZ3VyYXRpb25WZXJzaW9u RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6 c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50 Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0TWV0YURh dGFUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldE1ldGFEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mRGF0YVNldE1ldGFEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldE1ldGFEYXRhVHlwZSIgdHlwZT0idG5z OkRhdGFTZXRNZXRhRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFTZXRNZXRhRGF0YVR5cGUiIHR5cGU9 InRuczpMaXN0T2ZEYXRhU2V0TWV0YURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJGaWVsZE1ldGFEYXRhIj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lIiB0eXBlPSJ4czpzdHJpbmci IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEZXNjcmlwdGlvbiIgdHlwZT0idWE6TG9jYWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpZWxkRmxhZ3MiIHR5cGU9 InRuczpEYXRhU2V0RmllbGRGbGFncyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQnVpbHRJblR5cGUiIHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IlZhbHVlUmFuayIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJBcnJheURpbWVuc2lvbnMiIHR5cGU9InVhOkxpc3RPZlVJbnQzMiIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1heFN0 cmluZ0xlbmd0aCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRGaWVsZElkIiB0eXBlPSJ1YTpHdWlkIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQcm9wZXJ0aWVzIiB0eXBlPSJ0bnM6 TGlzdE9mS2V5VmFsdWVQYWlyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IkZpZWxkTWV0YURhdGEiIHR5cGU9InRuczpGaWVsZE1ldGFEYXRhIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZGaWVsZE1ldGFEYXRhIj4NCiAgICA8eHM6c2VxdWVuY2U+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGaWVsZE1ldGFEYXRhIiB0eXBlPSJ0bnM6RmllbGRNZXRh RGF0YSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mRmllbGRNZXRhRGF0YSIgdHlwZT0idG5zOkxpc3RPZkZpZWxkTWV0YURh dGEiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5h bWU9IkRhdGFTZXRGaWVsZEZsYWdzIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5z aWduZWRTaG9ydCI+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0RmllbGRGbGFncyIgdHlwZT0idG5zOkRhdGFTZXRG aWVsZEZsYWdzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDb25maWd1cmF0aW9uVmVy c2lvbkRhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJNYWpvclZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNaW5vclZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29uZmlndXJhdGlvblZlcnNpb25EYXRhVHlwZSIgdHlw ZT0idG5zOkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9Ikxpc3RPZkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0 YVR5cGUiIHR5cGU9InRuczpDb25maWd1cmF0aW9uVmVyc2lvbkRhdGFUeXBlIiBtaW5PY2N1cnM9 IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZD b25maWd1cmF0aW9uVmVyc2lvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mQ29uZmlndXJhdGlv blZlcnNpb25EYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iUHVibGlzaGVkRGF0YVNldERhdGFUeXBlIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE YXRhU2V0Rm9sZGVyIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0TWV0YURhdGEiIHR5 cGU9InRuczpEYXRhU2V0TWV0YURhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXh0ZW5zaW9uRmllbGRzIiB0eXBlPSJ0bnM6 TGlzdE9mS2V5VmFsdWVQYWlyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFNvdXJjZSIgdHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFT ZXREYXRhVHlwZSIgdHlwZT0idG5zOlB1Ymxpc2hlZERhdGFTZXREYXRhVHlwZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUHVibGlzaGVkRGF0YVNldERhdGFUeXBlIj4NCiAg ICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWREYXRhU2V0 RGF0YVR5cGUiIHR5cGU9InRuczpQdWJsaXNoZWREYXRhU2V0RGF0YVR5cGUiIG1pbk9jY3Vycz0i MCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlB1 Ymxpc2hlZERhdGFTZXREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlB1Ymxpc2hlZERhdGFTZXRE YXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iUHVibGlzaGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUHVibGlzaGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiB0eXBlPSJ0bnM6UHVibGlz aGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJM aXN0T2ZQdWJsaXNoZWREYXRhU2V0U291cmNlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSIg dHlwZT0idG5zOlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBt YXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHVibGlz aGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mUHVibGlzaGVkRGF0YVNl dFNvdXJjZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJQdWJsaXNoZWRWYXJpYWJsZURhdGFUeXBlIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWRWYXJpYWJsZSIgdHlwZT0i dWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iQXR0cmlidXRlSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTYW1wbGluZ0ludGVydmFsSGludCIgdHlw ZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE ZWFkYmFuZFR5cGUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJEZWFkYmFuZFZhbHVlIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlN1YnN0aXR1dGVWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWV0YURhdGFQcm9wZXJ0aWVzIiB0eXBlPSJ1 YTpMaXN0T2ZRdWFsaWZpZWROYW1lIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9IlB1Ymxpc2hlZFZhcmlhYmxlRGF0YVR5cGUiIHR5cGU9InRuczpQdWJsaXNoZWRWYXJpYWJs ZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZQdWJsaXNoZWRW YXJpYWJsZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJQdWJsaXNoZWRWYXJpYWJsZURhdGFUeXBlIiB0eXBlPSJ0bnM6UHVibGlzaGVkVmFyaWFi bGVEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mUHVibGlzaGVkVmFyaWFibGVEYXRhVHlwZSIgdHlwZT0idG5z Okxpc3RPZlB1Ymxpc2hlZFZhcmlhYmxlRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVs ZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFU eXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpl eHRlbnNpb24gYmFzZT0idG5zOlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSI+DQogICAg ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWRE YXRhIiB0eXBlPSJ0bnM6TGlzdE9mUHVibGlzaGVkVmFyaWFibGVEYXRhVHlwZSIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwv eHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIiB0eXBl PSJ0bnM6UHVibGlzaGVkRGF0YUl0ZW1zRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWREYXRhSXRlbXNEYXRhVHlwZSIg dHlwZT0idG5zOlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9j Y3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZQdWJsaXNoZWRE YXRhSXRlbXNEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJQdWJsaXNoZWRFdmVudHNEYXRhVHlwZSI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1p eGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpQdWJsaXNoZWREYXRh U2V0U291cmNlRGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRXZlbnROb3RpZmllciIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlbGVj dGVkRmllbGRzIiB0eXBlPSJ0bnM6TGlzdE9mU2ltcGxlQXR0cmlidXRlT3BlcmFuZCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJG aWx0ZXIiIHR5cGU9InRuczpDb250ZW50RmlsdGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUHVibGlzaGVkRXZlbnRzRGF0YVR5cGUiIHR5cGU9InRuczpQdWJsaXNoZWRFdmVu dHNEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUHVibGlzaGVk RXZlbnRzRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlB1Ymxpc2hlZEV2ZW50c0RhdGFUeXBlIiB0eXBlPSJ0bnM6UHVibGlzaGVkRXZlbnRzRGF0 YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ikxpc3RPZlB1Ymxpc2hlZEV2ZW50c0RhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9m UHVibGlzaGVkRXZlbnRzRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoN CiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkRhdGFTZXRGaWVsZENvbnRlbnRNYXNrIj4NCiAgICA8 eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5zaWduZWRJbnQiPg0KICAgIDwveHM6cmVzdHJpY3Rp b24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldEZpZWxk Q29udGVudE1hc2siIHR5cGU9InRuczpEYXRhU2V0RmllbGRDb250ZW50TWFzayIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YVNldEZpZWxkQ29udGVudE1hc2siPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRGaWVsZENvbnRl bnRNYXNrIiB0eXBlPSJ0bnM6RGF0YVNldEZpZWxkQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIg bWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0YVNldEZpZWxkQ29udGVudE1h c2siIHR5cGU9InRuczpMaXN0T2ZEYXRhU2V0RmllbGRDb250ZW50TWFzayIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRGF0YVNldFdyaXRl ckRhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJO YW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmFibGVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0V3JpdGVySWQiIHR5cGU9 InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkRhdGFTZXRGaWVsZENvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6RGF0YVNldEZpZWxkQ29udGVu dE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IktleUZyYW1l Q291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJEYXRhU2V0TmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFdyaXRl clByb3BlcnRpZXMiIHR5cGU9InRuczpMaXN0T2ZLZXlWYWx1ZVBhaXIiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRTZXR0 aW5ncyIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWVzc2FnZVNldHRpbmdzIiB0eXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i RGF0YVNldFdyaXRlckRhdGFUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldFdyaXRlckRhdGFUeXBlIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZEYXRhU2V0V3JpdGVyRGF0YVR5cGUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRXcml0 ZXJEYXRhVHlwZSIgdHlwZT0idG5zOkRhdGFTZXRXcml0ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0 YVNldFdyaXRlckRhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YVNldFdyaXRlckRhdGFUeXBl IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhU2V0V3JpdGVy VHJhbnNwb3J0RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkRh dGFTZXRXcml0ZXJUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFdyaXRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0 bnM6RGF0YVNldFdyaXRlclRyYW5zcG9ydERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vy cz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZEYXRhU2V0V3JpdGVy VHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZEYXRhU2V0V3JpdGVyVHJhbnNwb3J0 RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldFdy aXRlck1lc3NhZ2VEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9m RGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5z OkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFTZXRXcml0ZXJNZXNz YWdlRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBl IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJQdWJTdWJHcm91cERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmFibGVkIiB0eXBlPSJ4czpib29s ZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eU1v ZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eUdyb3VwSWQiIHR5cGU9InhzOnN0cmluZyIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNl Y3VyaXR5S2V5U2VydmljZXMiIHR5cGU9InRuczpMaXN0T2ZFbmRwb2ludERlc2NyaXB0aW9uIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i TWF4TmV0d29ya01lc3NhZ2VTaXplIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iR3JvdXBQcm9wZXJ0aWVzIiB0eXBlPSJ0bnM6 TGlzdE9mS2V5VmFsdWVQYWlyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlB1YlN1Ykdyb3VwRGF0YVR5cGUiIHR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZQdWJTdWJHcm91cERhdGFUeXBlIj4NCiAg ICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJTdWJHcm91cERhdGFU eXBlIiB0eXBlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1 cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHViU3ViR3JvdXBE YXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlB1YlN1Ykdyb3VwRGF0YVR5cGUiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IldyaXRlckdyb3Vw RGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAg PHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSI+DQogICAgICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXcml0ZXJHcm91cElkIiB0 eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUHVibGlzaGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJLZWVwQWxpdmVUaW1lIiB0eXBl PSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJQcmlvcml0eSIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxlSWRzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmci IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iVHJhbnNwb3J0U2V0dGluZ3MiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJN ZXNzYWdlU2V0dGluZ3MiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0V3Jp dGVycyIgdHlwZT0idG5zOkxpc3RPZkRhdGFTZXRXcml0ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6 ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IldyaXRlckdyb3VwRGF0YVR5cGUiIHR5cGU9InRuczpXcml0 ZXJHcm91cERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZXcml0 ZXJHcm91cERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJXcml0ZXJHcm91cERhdGFUeXBlIiB0eXBlPSJ0bnM6V3JpdGVyR3JvdXBEYXRhVHlwZSIg bWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mV3JpdGVyR3JvdXBEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZldyaXRlckdyb3Vw RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6V3JpdGVyR3Jv dXBUcmFuc3BvcnREYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9m V3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5z OldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZldyaXRlckdyb3VwVHJhbnNw b3J0RGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBl IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ildy aXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6V3JpdGVyR3JvdXBNZXNzYWdlRGF0 YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZldyaXRlckdyb3VwTWVz c2FnZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5zOldyaXRlckdyb3VwTWVzc2Fn ZURhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJMaXN0T2ZXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5z Okxpc3RPZldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czpl bGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJQdWJTdWJDb25uZWN0aW9uRGF0YVR5 cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWUiIHR5 cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkVuYWJsZWQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlcklkIiB0eXBlPSJ1YTpWYXJpYW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRQcm9m aWxlVXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGRyZXNzIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmpl Y3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJDb25uZWN0aW9uUHJvcGVydGllcyIgdHlwZT0idG5zOkxpc3RPZktleVZhbHVlUGFpciIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IlRyYW5zcG9ydFNldHRpbmdzIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXcml0ZXJHcm91 cHMiIHR5cGU9InRuczpMaXN0T2ZXcml0ZXJHcm91cERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZGVyR3JvdXBzIiB0 eXBlPSJ0bnM6TGlzdE9mUmVhZGVyR3JvdXBEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJQdWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIHR5cGU9InRuczpQdWJT dWJDb25uZWN0aW9uRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RP ZlB1YlN1YkNvbm5lY3Rpb25EYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUHViU3ViQ29ubmVjdGlvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6UHViU3Vi Q29ubmVjdGlvbkRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZQdWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIHR5 cGU9InRuczpMaXN0T2ZQdWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48 L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNvbm5lY3Rpb25UcmFuc3Bv cnREYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNvbm5lY3Rpb25UcmFuc3BvcnRE YXRhVHlwZSIgdHlwZT0idG5zOkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDb25uZWN0aW9uVHJh bnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpDb25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5cGUiIG1p bk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikxpc3RPZkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkNvbm5l Y3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTmV0d29ya0FkZHJlc3NEYXRhVHlwZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0d29ya0ludGVyZmFjZSIgdHlw ZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik5ldHdv cmtBZGRyZXNzRGF0YVR5cGUiIHR5cGU9InRuczpOZXR3b3JrQWRkcmVzc0RhdGFUeXBlIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZOZXR3b3JrQWRkcmVzc0RhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOZXR3b3JrQWRkcmVz c0RhdGFUeXBlIiB0eXBlPSJ0bnM6TmV0d29ya0FkZHJlc3NEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTmV0 d29ya0FkZHJlc3NEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZk5ldHdvcmtBZGRyZXNzRGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ik5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBt aXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6TmV0d29ya0FkZHJl c3NEYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJVcmwiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAg IDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9Ik5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiIHR5cGU9InRuczpOZXR3b3JrQWRkcmVz c1VybERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZOZXR3b3Jr QWRkcmVzc1VybERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJOZXR3b3JrQWRkcmVzc1VybERhdGFUeXBlIiB0eXBlPSJ0bnM6TmV0d29ya0FkZHJl c3NVcmxEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTmV0d29ya0FkZHJlc3NVcmxEYXRhVHlwZSIgdHlwZT0i dG5zOkxpc3RPZk5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hz OmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlYWRlckdyb3VwRGF0YVR5cGUi Pg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVu c2lvbiBiYXNlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRTZXR0aW5ncyIgdHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2VTZXR0aW5ncyIgdHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4 czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJzIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YVNldFJl YWRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8 L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29u dGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZGVyR3Jv dXBEYXRhVHlwZSIgdHlwZT0idG5zOlJlYWRlckdyb3VwRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlJlYWRlckdyb3VwRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1 ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlYWRlckdyb3VwRGF0YVR5cGUiIHR5cGU9 InRuczpSZWFkZXJHcm91cERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3Vu ZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZSZWFkZXJHcm91cERhdGFUeXBlIiB0 eXBlPSJ0bnM6TGlzdE9mUmVhZGVyR3JvdXBEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZGVyR3JvdXBUcmFuc3BvcnRE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJlYWRlckdyb3VwVHJhbnNwb3J0RGF0 YVR5cGUiIHR5cGU9InRuczpSZWFkZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZSZWFkZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWFkZXJHcm91cFRy YW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6UmVhZGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIg bWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mUmVhZGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlJl YWRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlYWRlckdyb3VwTWVzc2FnZURhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiIHR5cGU9 InRuczpSZWFkZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTGlzdE9mUmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlYWRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0 eXBlPSJ0bnM6UmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlYWRlckdyb3Vw TWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mUmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkRhdGFTZXRSZWFkZXJEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5hYmxlZCIgdHlwZT0ieHM6 Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHVibGlz aGVySWQiIHR5cGU9InVhOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IldyaXRlckdyb3VwSWQiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRXcml0ZXJJZCIgdHlwZT0i eHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iRGF0YVNldE1ldGFEYXRhIiB0eXBlPSJ0bnM6RGF0YVNldE1ldGFEYXRhVHlwZSIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFT ZXRGaWVsZENvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6RGF0YVNldEZpZWxkQ29udGVudE1hc2siIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2VSZWNlaXZlVGlt ZW91dCIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZWN1cml0eU1vZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eUdyb3VwSWQiIHR5 cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNlY3VyaXR5S2V5U2VydmljZXMiIHR5cGU9InRuczpMaXN0T2ZFbmRw b2ludERlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFJlYWRlclByb3BlcnRpZXMiIHR5cGU9InRuczpMaXN0 T2ZLZXlWYWx1ZVBhaXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRTZXR0aW5ncyIgdHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTWVzc2FnZVNldHRpbmdzIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3Jp YmVkRGF0YVNldCIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJEYXRhVHlwZSIgdHlwZT0idG5zOkRhdGFT ZXRSZWFkZXJEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0 YVNldFJlYWRlckRhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJEYXRhU2V0UmVhZGVyRGF0YVR5cGUiIHR5cGU9InRuczpEYXRhU2V0UmVhZGVyRGF0 YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ikxpc3RPZkRhdGFTZXRSZWFkZXJEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkRh dGFTZXRSZWFkZXJEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIj4NCiAg ICA8eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBl PSJ0bnM6RGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZEYXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJUcmFuc3Bv cnREYXRhVHlwZSIgdHlwZT0idG5zOkRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSIgbWlu T2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0 YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50 Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBl Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSIg dHlwZT0idG5zOkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJNZXNzYWdl RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YVNldFJl YWRlck1lc3NhZ2VEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iU3Vic2NyaWJlZERhdGFTZXREYXRhVHlwZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiIHR5cGU9InRuczpTdWJz Y3JpYmVkRGF0YVNldERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZTdWJzY3JpYmVkRGF0YVNldERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpYmVkRGF0YVNldERhdGFUeXBlIiB0eXBlPSJ0bnM6U3Vi c2NyaWJlZERhdGFTZXREYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRl ZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mU3Vic2NyaWJlZERhdGFTZXREYXRhVHlw ZSIgdHlwZT0idG5zOkxpc3RPZlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRhcmdldFZhcmlh Ymxlc0RhdGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAg ICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiPg0K ICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGFyZ2V0 VmFyaWFibGVzIiB0eXBlPSJ0bnM6TGlzdE9mRmllbGRUYXJnZXREYXRhVHlwZSIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwv eHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRhcmdldFZhcmlhYmxlc0RhdGFUeXBlIiB0eXBlPSJ0 bnM6VGFyZ2V0VmFyaWFibGVzRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 Ikxpc3RPZlRhcmdldFZhcmlhYmxlc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXRWYXJpYWJsZXNEYXRhVHlwZSIgdHlwZT0idG5zOlRh cmdldFZhcmlhYmxlc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVk IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZUYXJnZXRWYXJpYWJsZXNEYXRhVHlwZSIg dHlwZT0idG5zOkxpc3RPZlRhcmdldFZhcmlhYmxlc0RhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+ PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJGaWVsZFRhcmdldERhdGFU eXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0 RmllbGRJZCIgdHlwZT0idWE6R3VpZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVjZWl2ZXJJbmRleFJhbmdlIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXROb2Rl SWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkF0dHJpYnV0ZUlkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVJbmRleFJhbmdl IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJPdmVycmlkZVZhbHVlSGFuZGxpbmciIHR5cGU9InRuczpPdmVy cmlkZVZhbHVlSGFuZGxpbmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9Ik92ZXJyaWRlVmFsdWUiIHR5cGU9InVhOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJGaWVsZFRhcmdldERhdGFUeXBlIiB0eXBlPSJ0bnM6RmllbGRUYXJnZXREYXRhVHlwZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRmllbGRUYXJnZXREYXRhVHlwZSI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmllbGRUYXJnZXREYXRh VHlwZSIgdHlwZT0idG5zOkZpZWxkVGFyZ2V0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkZpZWxkVGFyZ2V0 RGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZGaWVsZFRhcmdldERhdGFUeXBlIiBuaWxsYWJsZT0i dHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJPdmVycmlkZVZh bHVlSGFuZGxpbmciPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEaXNhYmxlZF8wIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJMYXN0VXNlYWJsZVZhbHVlXzEiIC8+DQogICAgICA8eHM6ZW51bWVyYXRp b24gdmFsdWU9Ik92ZXJyaWRlVmFsdWVfMiIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8 L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik92ZXJyaWRlVmFsdWVIYW5kbGlu ZyIgdHlwZT0idG5zOk92ZXJyaWRlVmFsdWVIYW5kbGluZyIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iTGlzdE9mT3ZlcnJpZGVWYWx1ZUhhbmRsaW5nIj4NCiAgICA8eHM6c2VxdWVuY2U+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJPdmVycmlkZVZhbHVlSGFuZGxpbmciIHR5cGU9InRu czpPdmVycmlkZVZhbHVlSGFuZGxpbmciIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mT3ZlcnJpZGVWYWx1ZUhhbmRsaW5nIiB0eXBlPSJ0bnM6TGlzdE9m T3ZlcnJpZGVWYWx1ZUhhbmRsaW5nIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdWJzY3JpYmVkRGF0YVNldE1pcnJvckRhdGFUeXBlIj4N CiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNp b24gYmFzZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2Vx dWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUGFyZW50Tm9kZU5hbWUiIHR5cGU9 InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSb2xlUGVybWlzc2lvbnMiIHR5cGU9InRuczpMaXN0T2ZSb2xlUGVy bWlzc2lvblR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwv eHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250 ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpYmVk RGF0YVNldE1pcnJvckRhdGFUeXBlIiB0eXBlPSJ0bnM6U3Vic2NyaWJlZERhdGFTZXRNaXJyb3JE YXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3Vic2NyaWJlZERh dGFTZXRNaXJyb3JEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iU3Vic2NyaWJlZERhdGFTZXRNaXJyb3JEYXRhVHlwZSIgdHlwZT0idG5zOlN1YnNj cmliZWREYXRhU2V0TWlycm9yRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJv dW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN1YnNjcmliZWREYXRhU2V0TWly cm9yRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZTdWJzY3JpYmVkRGF0YVNldE1pcnJvckRhdGFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJQdWJTdWJDb25maWd1cmF0aW9uRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFTZXRzIiB0eXBlPSJ0bnM6TGlzdE9m UHVibGlzaGVkRGF0YVNldERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29ubmVjdGlvbnMiIHR5cGU9InRuczpMaXN0T2ZQ dWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmFibGVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iUHViU3ViQ29uZmlndXJhdGlvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6 UHViU3ViQ29uZmlndXJhdGlvbkRhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJMaXN0T2ZQdWJTdWJDb25maWd1cmF0aW9uRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1YlN1YkNvbmZpZ3VyYXRpb25EYXRhVHlwZSIgdHlw ZT0idG5zOlB1YlN1YkNvbmZpZ3VyYXRpb25EYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1 cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHViU3ViQ29uZmln dXJhdGlvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mUHViU3ViQ29uZmlndXJhdGlvbkRhdGFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBu YW1lPSJEYXRhU2V0T3JkZXJpbmdUeXBlIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6 c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVW5kZWZpbmVkXzAiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFzY2VuZGluZ1dyaXRlcklkXzEiIC8+DQogICAg ICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFzY2VuZGluZ1dyaXRlcklkU2luZ2xlXzIiIC8+DQog ICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJEYXRhU2V0T3JkZXJpbmdUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldE9yZGVyaW5nVHlwZSIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YVNldE9yZGVyaW5nVHlwZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldE9yZGVy aW5nVHlwZSIgdHlwZT0idG5zOkRhdGFTZXRPcmRlcmluZ1R5cGUiIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0YVNldE9yZGVyaW5nVHlwZSIgdHlw ZT0idG5zOkxpc3RPZkRhdGFTZXRPcmRlcmluZ1R5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVs ZW1lbnQ+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRl bnRNYXNrIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5zaWduZWRJbnQiPg0KICAg IDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iVWFkcE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIHR5cGU9InRuczpVYWRwTmV0d29ya01l c3NhZ2VDb250ZW50TWFzayIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVWFk cE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6 VWFkcE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mVWFkcE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIHR5 cGU9InRuczpMaXN0T2ZVYWRwTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVWFkcFdyaXRlckdy b3VwTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNl Ij4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOldyaXRlckdyb3VwTWVzc2FnZURhdGFU eXBlIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9 Ikdyb3VwVmVyc2lvbiIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0T3JkZXJpbmciIHR5cGU9InRuczpEYXRh U2V0T3JkZXJpbmdUeXBlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOlVhZHBOZXR3b3JrTWVz c2FnZUNvbnRlbnRNYXNrIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iU2FtcGxpbmdPZmZzZXQiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hpbmdPZmZzZXQiIHR5cGU9InVhOkxp c3RPZkRvdWJsZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94 czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRl bnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlVhZHBXcml0ZXJH cm91cE1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5zOlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRh VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVWFkcFdyaXRlckdyb3Vw TWVzc2FnZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJVYWRwV3JpdGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpVYWRwV3JpdGVy R3JvdXBNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRh VHlwZSIgdHlwZT0idG5zOkxpc3RPZlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgbmls bGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iVWFk cERhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4 czp1bnNpZ25lZEludCI+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgdHlw ZT0idG5zOlVhZHBEYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVWFkcERhdGFTZXRNZXNzYWdlQ29u dGVudE1hc2siIHR5cGU9InRuczpVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgbWluT2Nj dXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZVYWRwRGF0YVNldE1l c3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOkxpc3RPZlVhZHBEYXRhU2V0TWVzc2FnZUNvbnRl bnRNYXNrIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpE YXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIHR5cGU9 InRuczpVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IkNvbmZpZ3VyZWRTaXplIiB0eXBlPSJ4czp1bnNpZ25l ZFNob3J0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0 d29ya01lc3NhZ2VOdW1iZXIiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0T2Zmc2V0IiB0eXBlPSJ4czp1 bnNpZ25lZFNob3J0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQog ICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VE YXRhVHlwZSIgdHlwZT0idG5zOlVhZHBEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVWFk cERhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpVYWRwRGF0YVNldFdyaXRl ck1lc3NhZ2VEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmls bGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mVWFkcERhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5 cGUiIHR5cGU9InRuczpMaXN0T2ZVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgbmls bGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVWFk cERhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBt aXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6RGF0YVNldFJlYWRl ck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJHcm91cFZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0d29ya01lc3NhZ2VOdW1i ZXIiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0T2Zmc2V0IiB0eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldENsYXNz SWQiIHR5cGU9InVhOkd1aWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6VWFkcE5ldHdvcmtN ZXNzYWdlQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJEYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6VWFkcERhdGFTZXRN ZXNzYWdlQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJQdWJsaXNoaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlY2VpdmVPZmZzZXQiIHR5cGU9Inhz OmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlBy b2Nlc3NpbmdPZmZzZXQiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAg ICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4 Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVWFkcERh dGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpVYWRwRGF0YVNldFJlYWRlck1l c3NhZ2VEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVWFkcERh dGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlVhZHBEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0 bnM6VWFkcERhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVhZHBEYXRhU2V0 UmVhZGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mVWFkcERhdGFTZXRSZWFkZXJN ZXNzYWdlRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNp bXBsZVR5cGUgIG5hbWU9Ikpzb25OZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIj4NCiAgICA8eHM6 cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5zaWduZWRJbnQiPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSnNvbk5ldHdvcmtNZXNz YWdlQ29udGVudE1hc2siIHR5cGU9InRuczpKc29uTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mSnNvbk5ldHdvcmtNZXNzYWdlQ29u dGVudE1hc2siPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikpz b25OZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbk5ldHdvcmtNZXNzYWdl Q29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mSnNvbk5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIHR5cGU9InRuczpMaXN0T2ZKc29u TmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSnNvbldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBl Ij4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRl bnNpb24gYmFzZT0idG5zOldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIj4NCiAgICAgICAgPHhz OnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5ldHdvcmtNZXNzYWdlQ29u dGVudE1hc2siIHR5cGU9InRuczpKc29uTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+ DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iSnNvbldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6SnNv bldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJMaXN0T2ZKc29uV3JpdGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikpzb25Xcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlw ZSIgdHlwZT0idG5zOkpzb25Xcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mSnNv bldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mSnNvbldyaXRlckdy b3VwTWVzc2FnZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4 czpzaW1wbGVUeXBlICBuYW1lPSJKc29uRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayI+DQogICAg PHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnVuc2lnbmVkSW50Ij4NCiAgICA8L3hzOnJlc3RyaWN0 aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikpzb25EYXRhU2V0 TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbkRhdGFTZXRNZXNzYWdlQ29udGVudE1h c2siIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkpzb25EYXRhU2V0TWVzc2Fn ZUNvbnRlbnRNYXNrIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJKc29uRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOkpzb25EYXRhU2V0TWVz c2FnZUNvbnRlbnRNYXNrIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZkpzb25EYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6TGlzdE9m SnNvbkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikpzb25EYXRhU2V0V3JpdGVyTWVzc2FnZURh dGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4 czpleHRlbnNpb24gYmFzZT0idG5zOkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldE1l c3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOkpzb25EYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNr IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4 dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgdHlw ZT0idG5zOkpzb25EYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSnNvbkRhdGFTZXRXcml0 ZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRh VHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mSnNvbkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRu czpMaXN0T2ZKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgbmlsbGFibGU9InRydWUi PjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSnNvbkRhdGFTZXRSZWFk ZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2Ui Pg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6RGF0YVNldFJlYWRlck1lc3NhZ2VEYXRh VHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbk5ldHdvcmtNZXNzYWdl Q29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbkRhdGFTZXRNZXNzYWdl Q29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAg ICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikpzb25EYXRhU2V0UmVhZGVyTWVzc2FnZURh dGFUeXBlIiB0eXBlPSJ0bnM6SnNvbkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIC8+DQoN CiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkpzb25EYXRhU2V0UmVhZGVyTWVzc2FnZURh dGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJKc29u RGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5zOkpzb25EYXRhU2V0UmVhZGVy TWVzc2FnZURhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZKc29uRGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlw ZSIgdHlwZT0idG5zOkxpc3RPZkpzb25EYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiBuaWxs YWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRh Z3JhbUNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50 IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpDb25uZWN0aW9u VHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRGlzY292ZXJ5QWRkcmVzcyIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNl Pg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YWdyYW1Db25uZWN0aW9uVHJh bnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhZ3JhbUNvbm5lY3Rpb25UcmFuc3BvcnREYXRh VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YWdyYW1Db25uZWN0 aW9uVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkRhdGFncmFtQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6 RGF0YWdyYW1Db25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFncmFtQ29u bmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YWdyYW1Db25uZWN0 aW9uVHJhbnNwb3J0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlw ZSI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0 ZW5zaW9uIGJhc2U9InRuczpXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIj4NCiAgICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2VSZXBlYXRD b3VudCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iTWVzc2FnZVJlcGVhdERlbGF5IiB0eXBlPSJ4czpkb3VibGUiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5z aW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgdHlw ZT0idG5zOkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YWdyYW1Xcml0ZXJHcm91cFRyYW5zcG9ydERhdGFU eXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhZ3Jh bVdyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhZ3JhbVdyaXRlckdy b3VwVHJhbnNwb3J0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3Bv cnREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnRE YXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIj4NCiAgICA8eHM6Y29t cGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5z OkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNvdXJjZVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5h bWU9IkF1dGhlbnRpY2F0aW9uUHJvZmlsZVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94 czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBl IiB0eXBlPSJ0bnM6QnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCcm9rZXJDb25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5 cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb2tlckNv bm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5zOkJyb2tlckNvbm5lY3Rpb25UcmFu c3BvcnREYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBl IiB0eXBlPSJ0bnM6TGlzdE9mQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiBuaWxs YWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJCcm9r ZXJUcmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0i eHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm90U3BlY2lmaWVkXzAi IC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkJlc3RFZmZvcnRfMSIgLz4NCiAgICAg IDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQXRMZWFzdE9uY2VfMiIgLz4NCiAgICAgIDx4czplbnVt ZXJhdGlvbiB2YWx1ZT0iQXRNb3N0T25jZV8zIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZh bHVlPSJFeGFjdGx5T25jZV80IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2lt cGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyVHJhbnNwb3J0UXVhbGl0eU9mU2Vy dmljZSIgdHlwZT0idG5zOkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIC8+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZp Y2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb2tlclRy YW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIHR5cGU9InRuczpCcm9rZXJUcmFuc3BvcnRRdWFsaXR5 T2ZTZXJ2aWNlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIHR5cGU9InRuczpMaXN0T2ZCcm9r ZXJUcmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50 Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERh dGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4 czpleHRlbnNpb24gYmFzZT0idG5zOldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVldWVOYW1l IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzb3VyY2VVcmkiIHR5cGU9InhzOnN0cmluZyIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJBdXRoZW50aWNhdGlvblByb2ZpbGVVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0 ZWREZWxpdmVyeUd1YXJhbnRlZSIgdHlwZT0idG5zOkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNl cnZpY2UiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwv eHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb2tlcldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5 cGUiIHR5cGU9InRuczpCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERh dGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCcm9r ZXJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6QnJva2VyV3JpdGVyR3Jv dXBUcmFuc3BvcnREYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQnJva2VyV3JpdGVyR3JvdXBUcmFuc3BvcnRE YXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkJyb2tlcldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkJyb2tlckRhdGFTZXRXcml0ZXJUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpE YXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVldWVOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzb3VyY2VVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdXRoZW50aWNhdGlvblByb2Zp bGVVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZXRhRGF0YVF1ZXVlTmFtZSIgdHlwZT0ieHM6 c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9Ik1ldGFEYXRhVXBkYXRlVGltZSIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4N CiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRu czpCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb2tlckRhdGFTZXRXcml0ZXJUcmFuc3BvcnREYXRhVHlwZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyRGF0YVNl dFdyaXRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6QnJva2VyRGF0YVNldFdyaXRlclRy YW5zcG9ydERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0 YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkJyb2tlckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpE YXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVldWVOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzb3VyY2VVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdXRoZW50aWNhdGlvblByb2Zp bGVVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0ZWREZWxpdmVyeUd1YXJhbnRlZSIg dHlwZT0idG5zOkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZXRhRGF0YVF1ZXVlTmFtZSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hz OnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVu dD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyRGF0YVNl dFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6QnJva2VyRGF0YVNldFJlYWRlclRy YW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCcm9r ZXJEYXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkJyb2tlckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlw ZSIgdHlwZT0idG5zOkJyb2tlckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSIgbWluT2Nj dXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94 czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlz dE9mQnJva2VyRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9m QnJva2VyRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJEaWFnbm9zdGljc0xldmVsIj4N CiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iQmFzaWNfMCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQWR2 YW5jZWRfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW5mb18yIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJMb2dfMyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlv biB2YWx1ZT0iRGVidWdfNCIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBs ZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNzTGV2ZWwiIHR5cGU9InRuczpE aWFnbm9zdGljc0xldmVsIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZEaWFn bm9zdGljc0xldmVsIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEaWFnbm9zdGljc0xldmVsIiB0eXBlPSJ0bnM6RGlhZ25vc3RpY3NMZXZlbCIgbWluT2NjdXJz PSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZEaWFnbm9zdGljc0xldmVs IiB0eXBlPSJ0bnM6TGlzdE9mRGlhZ25vc3RpY3NMZXZlbCIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iUHViU3ViRGlhZ25vc3RpY3NDb3Vu dGVyQ2xhc3NpZmljYXRpb24iPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmci Pg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJJbmZvcm1hdGlvbl8wIiAvPg0KICAgICAg PHhzOmVudW1lcmF0aW9uIHZhbHVlPSJFcnJvcl8xIiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUHViU3ViRGlhZ25vc3Rp Y3NDb3VudGVyQ2xhc3NpZmljYXRpb24iIHR5cGU9InRuczpQdWJTdWJEaWFnbm9zdGljc0NvdW50 ZXJDbGFzc2lmaWNhdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUHVi U3ViRGlhZ25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1YlN1YkRpYWdub3N0aWNzQ291bnRlckNsYXNzaWZp Y2F0aW9uIiB0eXBlPSJ0bnM6UHViU3ViRGlhZ25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24i IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHViU3Vi RGlhZ25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24iIHR5cGU9InRuczpMaXN0T2ZQdWJTdWJE aWFnbm9zdGljc0NvdW50ZXJDbGFzc2lmaWNhdGlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iSWRUeXBlIj4NCiAgICA8eHM6YW5ub3Rh dGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSB0eXBlIG9mIGlkZW50aWZpZXIgdXNl ZCBpbiBhIG5vZGUgaWQuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iTnVtZXJpY18wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJT dHJpbmdfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iR3VpZF8yIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJPcGFxdWVfMyIgLz4NCiAgICA8L3hzOnJlc3RyaWN0 aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IklkVHlwZSIgdHlw ZT0idG5zOklkVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mSWRUeXBl Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJZFR5cGUiIHR5 cGU9InRuczpJZFR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mSWRUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mSWRUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+ PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJOb2RlQ2xhc3MiPg0KICAg IDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSBtYXNrIHNwZWNpZnlp bmcgdGhlIGNsYXNzIG9mIHRoZSBub2RlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFu bm90YXRpb24+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9IlVuc3BlY2lmaWVkXzAiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9Ik9iamVjdF8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJW YXJpYWJsZV8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJNZXRob2RfNCIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iT2JqZWN0VHlwZV84IiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJWYXJpYWJsZVR5cGVfMTYiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9IlJlZmVyZW5jZVR5cGVfMzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9IkRhdGFUeXBlXzY0IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJWaWV3 XzEyOCIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ik5vZGVDbGFzcyIgdHlwZT0idG5zOk5vZGVDbGFzcyIgLz4NCg0KICA8 eHM6c2ltcGxlVHlwZSAgbmFtZT0iQWNjZXNzTGV2ZWxUeXBlIj4NCiAgICA8eHM6cmVzdHJpY3Rp b24gYmFzZT0ieHM6dW5zaWduZWRCeXRlIj4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hz OnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFjY2Vzc0xldmVsVHlwZSIgdHlwZT0i dG5zOkFjY2Vzc0xldmVsVHlwZSIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iQWNjZXNz TGV2ZWxFeFR5cGUiPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czp1bnNpZ25lZEludCI+ DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJBY2Nlc3NMZXZlbEV4VHlwZSIgdHlwZT0idG5zOkFjY2Vzc0xldmVsRXhUeXBlIiAv Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJFdmVudE5vdGlmaWVyVHlwZSI+DQogICAgPHhz OnJlc3RyaWN0aW9uIGJhc2U9InhzOnVuc2lnbmVkSW50Ij4NCiAgICA8L3hzOnJlc3RyaWN0aW9u Pg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV2ZW50Tm90aWZpZXJU eXBlIiB0eXBlPSJ0bnM6RXZlbnROb3RpZmllclR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9IlJvbGVQZXJtaXNzaW9uVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUm9sZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQZXJtaXNzaW9ucyIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSb2xlUGVybWlzc2lvblR5 cGUiIHR5cGU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZlJvbGVQZXJtaXNzaW9uVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUm9sZVBlcm1pc3Npb25UeXBlIiB0eXBlPSJ0bnM6Um9sZVBl cm1pc3Npb25UeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZSb2xlUGVybWlzc2lvblR5cGUiIHR5cGU9InRuczpMaXN0 T2ZSb2xlUGVybWlzc2lvblR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRhdGFUeXBlRGVmaW5pdGlvbiI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IkRhdGFUeXBlRGVmaW5pdGlvbiIgdHlwZT0idG5zOkRhdGFUeXBlRGVmaW5pdGlv biIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YVR5cGVEZWZpbml0aW9u Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlwZURl ZmluaXRpb24iIHR5cGU9InRuczpEYXRhVHlwZURlZmluaXRpb24iIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFUeXBl RGVmaW5pdGlvbiIgdHlwZT0idG5zOkxpc3RPZkRhdGFUeXBlRGVmaW5pdGlvbiIgbmlsbGFibGU9 InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iU3RydWN0dXJl VHlwZSI+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9IlN0cnVjdHVyZV8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJTdHJ1Y3R1cmVXaXRoT3B0aW9uYWxGaWVsZHNfMSIgLz4NCiAgICAgIDx4czplbnVt ZXJhdGlvbiB2YWx1ZT0iVW5pb25fMiIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hz OnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlN0cnVjdHVyZVR5cGUiIHR5cGU9InRu czpTdHJ1Y3R1cmVUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdHJ1Y3R1cmVG aWVsZCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE YXRhVHlwZSIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWVSYW5rIiB0eXBlPSJ4czppbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFycmF5RGltZW5zaW9ucyIgdHlw ZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4U3RyaW5nTGVuZ3RoIiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNPcHRpb25hbCIg dHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlN0cnVjdHVyZUZpZWxkIiB0 eXBlPSJ0bnM6U3RydWN0dXJlRmllbGQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxp c3RPZlN0cnVjdHVyZUZpZWxkIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTdHJ1Y3R1cmVGaWVsZCIgdHlwZT0idG5zOlN0cnVjdHVyZUZpZWxkIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZTdHJ1Y3R1cmVGaWVsZCIgdHlwZT0idG5zOkxpc3RPZlN0cnVjdHVyZUZpZWxkIiBuaWxsYWJs ZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdHJ1Y3R1 cmVEZWZpbml0aW9uIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAg ICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkRhdGFUeXBlRGVmaW5pdGlvbiI+DQogICAgICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEZWZhdWx0RW5jb2Rp bmdJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJhc2VEYXRhVHlwZSIgdHlwZT0idWE6Tm9kZUlk IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IlN0cnVjdHVyZVR5cGUiIHR5cGU9InRuczpTdHJ1Y3R1cmVUeXBlIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmllbGRzIiB0eXBlPSJ0bnM6TGlz dE9mU3RydWN0dXJlRmllbGQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBs ZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTdHJ1 Y3R1cmVEZWZpbml0aW9uIiB0eXBlPSJ0bnM6U3RydWN0dXJlRGVmaW5pdGlvbiIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3RydWN0dXJlRGVmaW5pdGlvbiI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RydWN0dXJlRGVmaW5pdGlvbiIg dHlwZT0idG5zOlN0cnVjdHVyZURlZmluaXRpb24iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN0cnVjdHVyZURlZmluaXRp b24iIHR5cGU9InRuczpMaXN0T2ZTdHJ1Y3R1cmVEZWZpbml0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+ PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbnVtRGVmaW5pdGlvbiI+ DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5z aW9uIGJhc2U9InRuczpEYXRhVHlwZURlZmluaXRpb24iPg0KICAgICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmllbGRzIiB0eXBlPSJ0bnM6TGlzdE9mRW51 bUZpZWxkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNl cXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRW51bURlZmluaXRpb24i IHR5cGU9InRuczpFbnVtRGVmaW5pdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TGlzdE9mRW51bURlZmluaXRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkVudW1EZWZpbml0aW9uIiB0eXBlPSJ0bnM6RW51bURlZmluaXRpb24iIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkVudW1EZWZpbml0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mRW51bURlZmluaXRpb24iIG5pbGxh YmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGUi Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+U3BlY2lmaWVz IHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBhbGwgbm9kZXMuPC94czpkb2N1bWVudGF0 aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVDbGFzcyIgdHlwZT0i dG5zOk5vZGVDbGFzcyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i QnJvd3NlTmFtZSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlOYW1lIiB0eXBlPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJX cml0ZU1hc2siIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJVc2VyV3JpdGVNYXNrIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUm9sZVBlcm1pc3Npb25zIiB0 eXBlPSJ0bnM6TGlzdE9mUm9sZVBlcm1pc3Npb25UeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlclJvbGVQZXJtaXNzaW9ucyIg dHlwZT0idG5zOkxpc3RPZlJvbGVQZXJtaXNzaW9uVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFjY2Vzc1Jlc3RyaWN0aW9ucyIg dHlwZT0ieHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVmZXJlbmNlcyIgdHlwZT0idG5zOkxpc3RPZlJlZmVyZW5jZU5vZGUiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZSIgdHlwZT0idG5zOk5vZGUiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZk5vZGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGUiIHR5cGU9InRuczpOb2RlIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZOb2RlIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSW5zdGFuY2VOb2RlIj4NCiAgICA8eHM6Y29t cGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5z Ok5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQog ICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJbnN0YW5jZU5vZGUiIHR5cGU9InRuczpJ bnN0YW5jZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlR5cGVOb2RlIj4NCiAg ICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24g YmFzZT0idG5zOk5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgIDwveHM6c2Vx dWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUeXBlTm9kZSIgdHlwZT0i dG5zOlR5cGVOb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJPYmplY3ROb2RlIj4N CiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0 aGUgYXR0cmlidXRlcyB3aGljaCBiZWxvbmcgdG8gb2JqZWN0IG5vZGVzLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpJbnN0YW5jZU5vZGUiPg0K ICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXZlbnRO b3RpZmllciIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAg IDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhD b250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJPYmplY3RO b2RlIiB0eXBlPSJ0bnM6T2JqZWN0Tm9kZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i T2JqZWN0VHlwZU5vZGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50 YXRpb24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBvYmplY3QgdHlw ZSBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6VHlwZU5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94 czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iT2JqZWN0VHlwZU5vZGUiIHR5cGU9InRuczpPYmplY3RUeXBlTm9kZSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iVmFyaWFibGVOb2RlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0aGUgYXR0cmlidXRlcyB3aGljaCBiZWxv bmcgdG8gdmFyaWFibGUgbm9kZXMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3Rh dGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpl eHRlbnNpb24gYmFzZT0idG5zOkluc3RhbmNlTm9kZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFUeXBlIiB0eXBl PSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVmFsdWVSYW5rIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBcnJheURpbWVuc2lvbnMiIHR5cGU9InVh Okxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJBY2Nlc3NMZXZlbCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlckFjY2Vzc0xl dmVsIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJNaW5pbXVtU2FtcGxpbmdJbnRlcnZhbCIgdHlwZT0ieHM6ZG91Ymxl IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yaXpp bmciIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJBY2Nlc3NMZXZlbEV4IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iVmFyaWFibGVOb2RlIiB0eXBlPSJ0bnM6VmFyaWFibGVOb2RlIiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJWYXJpYWJsZVR5cGVOb2RlIj4NCiAgICA8eHM6YW5ub3RhdGlv bj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0aGUgYXR0cmlidXRlcyB3aGlj aCBiZWxvbmcgdG8gdmFyaWFibGUgdHlwZSBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAg PC94czphbm5vdGF0aW9uPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0K ICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6VHlwZU5vZGUiPg0KICAgICAgICA8eHM6c2Vx dWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIHR5cGU9InVhOlZhcmlh bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlw ZSIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlUmFuayIgdHlwZT0ieHM6aW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXJyYXlEaW1lbnNpb25zIiB0 eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9vbGVhbiIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRl bnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFibGVUeXBlTm9kZSIgdHlwZT0idG5zOlZhcmlhYmxlVHlw ZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlZmVyZW5jZVR5cGVOb2RlIj4N CiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0 aGUgYXR0cmlidXRlcyB3aGljaCBiZWxvbmcgdG8gcmVmZXJlbmNlIHR5cGUgbm9kZXMuPC94czpk b2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRl bnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOlR5cGVOb2Rl Ij4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Iklz QWJzdHJhY3QiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJTeW1tZXRyaWMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbnZlcnNlTmFtZSIgdHlwZT0idWE6 TG9jYWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAg PC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENv bnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5j ZVR5cGVOb2RlIiB0eXBlPSJ0bnM6UmVmZXJlbmNlVHlwZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ik1ldGhvZE5vZGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhz OmRvY3VtZW50YXRpb24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBt ZXRob2Qgbm9kZXMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAg ICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24g YmFzZT0idG5zOkluc3RhbmNlTm9kZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJFeGVjdXRhYmxlIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlckV4ZWN1dGFibGUiIHR5 cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4N CiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1ldGhvZE5vZGUiIHR5cGU9InRuczpN ZXRob2ROb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJWaWV3Tm9kZSI+DQogICAg PHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJh c2U9InRuczpJbnN0YW5jZU5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iQ29udGFpbnNOb0xvb3BzIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXZlbnROb3RpZmllciIg dHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2Vx dWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJWaWV3Tm9kZSIgdHlwZT0i dG5zOlZpZXdOb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRhVHlwZU5vZGUi Pg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVu c2lvbiBiYXNlPSJ0bnM6VHlwZU5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFUeXBlRGVmaW5pdGlv biIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAg PC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iRGF0YVR5cGVOb2RlIiB0eXBlPSJ0bnM6RGF0YVR5cGVOb2RlIiAvPg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJSZWZlcmVuY2VOb2RlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyBhIHJlZmVyZW5jZSB3aGljaCBiZWxvbmdz IHRvIGEgbm9kZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZVR5cGVJZCIg dHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iSXNJbnZlcnNlIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXRJZCIgdHlwZT0idWE6RXhwYW5k ZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNl Tm9kZSIgdHlwZT0idG5zOlJlZmVyZW5jZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikxpc3RPZlJlZmVyZW5jZU5vZGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlZmVyZW5jZU5vZGUiIHR5cGU9InRuczpSZWZlcmVuY2VOb2RlIiBtaW5P Y2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJM aXN0T2ZSZWZlcmVuY2VOb2RlIiB0eXBlPSJ0bnM6TGlzdE9mUmVmZXJlbmNlTm9kZSIgbmlsbGFi bGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQXJndW1l bnQiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QW4gYXJn dW1lbnQgZm9yIGEgbWV0aG9kLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRp b24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlw ZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlUmFuayIgdHlw ZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBcnJh eURpbWVuc2lvbnMiIHR5cGU9InVhOkxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlc2NyaXB0aW9uIiB0eXBlPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFy Z3VtZW50IiB0eXBlPSJ0bnM6QXJndW1lbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 Ikxpc3RPZkFyZ3VtZW50Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJBcmd1bWVudCIgdHlwZT0idG5zOkFyZ3VtZW50IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vy cz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZBcmd1bWVudCIgdHlw ZT0idG5zOkxpc3RPZkFyZ3VtZW50IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbnVtVmFsdWVUeXBlIj4NCiAgICA8eHM6YW5ub3RhdGlv bj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgbWFwcGluZyBiZXR3ZWVuIGEgdmFsdWUgb2Yg YW4gZW51bWVyYXRlZCB0eXBlIGFuZCBhIG5hbWUgYW5kIGRlc2NyaXB0aW9uLjwveHM6ZG9jdW1l bnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIHR5cGU9InhzOmxvbmciIG1pbk9jY3Vycz0iMCIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlOYW1lIiB0eXBlPSJ1YTpMb2NhbGl6ZWRU ZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRW51bVZhbHVlVHlwZSIgdHlwZT0idG5zOkVudW1WYWx1 ZVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkVudW1WYWx1ZVR5cGUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVudW1WYWx1ZVR5 cGUiIHR5cGU9InRuczpFbnVtVmFsdWVUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5i b3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZFbnVtVmFsdWVUeXBlIiB0eXBl PSJ0bnM6TGlzdE9mRW51bVZhbHVlVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRW51bUZpZWxkIj4NCiAgICA8eHM6Y29tcGxleENv bnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkVudW1W YWx1ZVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAg PC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iRW51bUZpZWxkIiB0eXBlPSJ0bnM6RW51bUZpZWxkIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZFbnVtRmllbGQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkVudW1GaWVsZCIgdHlwZT0idG5zOkVudW1GaWVsZCIgbWluT2NjdXJz PSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpz ZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9m RW51bUZpZWxkIiB0eXBlPSJ0bnM6TGlzdE9mRW51bUZpZWxkIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJPcHRpb25TZXQiPg0KICAgIDx4 czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhpcyBhYnN0cmFjdCBTdHJ1 Y3R1cmVkIERhdGFUeXBlIGlzIHRoZSBiYXNlIERhdGFUeXBlIGZvciBhbGwgRGF0YVR5cGVzIHJl cHJlc2VudGluZyBhIGJpdCBtYXNrLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90 YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUi IHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbGlkQml0cyIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5 IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik9wdGlvblNldCIgdHlwZT0i dG5zOk9wdGlvblNldCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mT3B0aW9u U2V0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJPcHRpb25T ZXQiIHR5cGU9InRuczpPcHRpb25TZXQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZk9wdGlvblNldCIgdHlwZT0idG5zOkxp c3RPZk9wdGlvblNldCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iVW5pb24iPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRv Y3VtZW50YXRpb24+VGhpcyBhYnN0cmFjdCBEYXRhVHlwZSBpcyB0aGUgYmFzZSBEYXRhVHlwZSBm b3IgYWxsIHVuaW9uIERhdGFUeXBlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVbmlvbiIgdHlwZT0idG5zOlVuaW9uIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZVbmlvbiI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVW5pb24iIHR5cGU9InRuczpVbmlvbiIgbWlu T2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mVW5pb24iIHR5cGU9InRuczpMaXN0T2ZVbmlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJOb3JtYWxpemVkU3RyaW5nIiB0eXBlPSJ4 czpzdHJpbmciIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGVjaW1hbFN0cmluZyIgdHlwZT0i eHM6c3RyaW5nIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkR1cmF0aW9uU3RyaW5nIiB0eXBl PSJ4czpzdHJpbmciIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZVN0cmluZyIgdHlwZT0i eHM6c3RyaW5nIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkRhdGVTdHJpbmciIHR5cGU9Inhz OnN0cmluZyIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEdXJhdGlvbiIgdHlwZT0ieHM6ZG91 YmxlIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IlV0Y1RpbWUiIHR5cGU9InhzOmRhdGVUaW1l IiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkxvY2FsZUlkIiB0eXBlPSJ4czpzdHJpbmciIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRpbWVab25lRGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik9mZnNldCIgdHlwZT0ieHM6c2hvcnQi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRheWxpZ2h0U2F2aW5n SW5PZmZzZXQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1lWm9u ZURhdGFUeXBlIiB0eXBlPSJ0bnM6VGltZVpvbmVEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mVGltZVpvbmVEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZVpvbmVEYXRhVHlwZSIgdHlwZT0idG5zOlRpbWVa b25lRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ikxpc3RPZlRpbWVab25lRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZU aW1lWm9uZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpl bGVtZW50IG5hbWU9IkludGVnZXJJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIC8+DQoNCiAgPHhz OnNpbXBsZVR5cGUgIG5hbWU9IkFwcGxpY2F0aW9uVHlwZSI+DQogICAgPHhzOmFubm90YXRpb24+ DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgdHlwZXMgb2YgYXBwbGljYXRpb25zLjwveHM6 ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnJlc3RyaWN0aW9u IGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlNlcnZlcl8w IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJDbGllbnRfMSIgLz4NCiAgICAgIDx4 czplbnVtZXJhdGlvbiB2YWx1ZT0iQ2xpZW50QW5kU2VydmVyXzIiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IkRpc2NvdmVyeVNlcnZlcl8zIiAvPg0KICAgIDwveHM6cmVzdHJpY3Rp b24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25U eXBlIiB0eXBlPSJ0bnM6QXBwbGljYXRpb25UeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJBcHBsaWNhdGlvbkRlc2NyaXB0aW9uIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAg IDx4czpkb2N1bWVudGF0aW9uPkRlc2NyaWJlcyBhbiBhcHBsaWNhdGlvbiBhbmQgaG93IHRvIGZp bmQgaXQuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBcHBsaWNhdGlvblVyaSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUHJvZHVjdFVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25OYW1l IiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25UeXBlIiB0eXBlPSJ0bnM6QXBw bGljYXRpb25UeXBlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJH YXRld2F5U2VydmVyVXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjb3ZlcnlQcm9maWxlVXJpIiB0 eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEaXNjb3ZlcnlVcmxzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25EZXNjcmlwdGlv biIgdHlwZT0idG5zOkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9Ikxpc3RPZkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIHR5cGU9 InRuczpBcHBsaWNhdGlvbkRlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5i b3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZBcHBsaWNhdGlvbkRlc2NyaXB0 aW9uIiB0eXBlPSJ0bnM6TGlzdE9mQXBwbGljYXRpb25EZXNjcmlwdGlvbiIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVxdWVzdEhlYWRl ciI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgaGVh ZGVyIHBhc3NlZCB3aXRoIGV2ZXJ5IHNlcnZlciByZXF1ZXN0LjwveHM6ZG9jdW1lbnRhdGlvbj4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQXV0aGVudGljYXRpb25Ub2tlbiIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZXN0YW1w IiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdEhhbmRsZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldHVybkRpYWdub3N0aWNzIiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXVk aXRFbnRyeUlkIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1lb3V0SGludCIgdHlwZT0ieHM6dW5zaWdu ZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFkZGl0aW9u YWxIZWFkZXIiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVzcG9uc2VIZWFkZXIiPg0KICAgIDx4czph bm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhlIGhlYWRlciBwYXNzZWQgd2l0 aCBldmVyeSBzZXJ2ZXIgcmVzcG9uc2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5u b3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1l c3RhbXAiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJSZXF1ZXN0SGFuZGxlIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmljZVJlc3VsdCIgdHlwZT0idWE6 U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vy dmljZURpYWdub3N0aWNzIiB0eXBlPSJ1YTpEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0cmluZ1RhYmxlIiB0 eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGRpdGlvbmFsSGVhZGVyIiB0eXBlPSJ1YTpFeHRlbnNp b25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VI ZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1l PSJWZXJzaW9uVGltZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IlNlcnZpY2VGYXVsdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5UaGUgcmVzcG9uc2UgcmV0dXJuZWQgYnkgYWxsIHNlcnZpY2VzIHdoZW4g dGhlcmUgaXMgYSBzZXJ2aWNlIGxldmVsIGVycm9yLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8 L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2aWNlRmF1bHQiIHR5cGU9InRuczpTZXJ2aWNl RmF1bHQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlNlc3Npb25sZXNzSW52b2tlUmVx dWVzdFR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlVy aXNWZXJzaW9uIiB0eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lc3BhY2VVcmlzIiB0eXBlPSJ1 YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJVcmlzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2Nh bGVJZHMiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZpY2VJZCIgdHlwZT0ieHM6dW5zaWdu ZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9ubGVzc0ludm9rZVJlcXVlc3RUeXBl IiB0eXBlPSJ0bnM6U2Vzc2lvbmxlc3NJbnZva2VSZXF1ZXN0VHlwZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iU2Vzc2lvbmxlc3NJbnZva2VSZXNwb25zZVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWVzcGFjZVVyaXMiIHR5cGU9InVh Okxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNlcnZlclVyaXMiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZp Y2VJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9u bGVzc0ludm9rZVJlc3BvbnNlVHlwZSIgdHlwZT0idG5zOlNlc3Npb25sZXNzSW52b2tlUmVzcG9u c2VUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJGaW5kU2VydmVyc1JlcXVlc3Qi Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+RmluZHMgdGhl IHNlcnZlcnMga25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZHBv aW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGVJZHMiIHR5cGU9InVhOkxpc3RPZlN0cmlu ZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlNlcnZlclVyaXMiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJGaW5kU2VydmVyc1JlcXVlc3QiIHR5cGU9InRuczpGaW5kU2Vy dmVyc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkZpbmRTZXJ2ZXJzUmVz cG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Rmlu ZHMgdGhlIHNlcnZlcnMga25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC94czpkb2N1bWVu dGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVy IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2VydmVycyIgdHlwZT0idG5zOkxpc3RPZkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRmluZFNlcnZlcnNSZXNwb25zZSIgdHlw ZT0idG5zOkZpbmRTZXJ2ZXJzUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IlNlcnZlck9uTmV0d29yayI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVjb3JkSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNj b3ZlcnlVcmwiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgdHlwZT0idWE6 TGlzdE9mU3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNlcnZl ck9uTmV0d29yayIgdHlwZT0idG5zOlNlcnZlck9uTmV0d29yayIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mU2VydmVyT25OZXR3b3JrIj4NCiAgICA8eHM6c2VxdWVuY2U+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJPbk5ldHdvcmsiIHR5cGU9InRuczpTZXJ2ZXJP bk5ldHdvcmsiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9Ikxpc3RPZlNlcnZlck9uTmV0d29yayIgdHlwZT0idG5zOkxpc3RPZlNlcnZl ck9uTmV0d29yayIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iRmluZFNlcnZlcnNPbk5ldHdvcmtSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVx dWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlN0YXJ0aW5nUmVjb3JkSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhSZWNvcmRzVG9SZXR1cm4i IHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZXJ2ZXJDYXBhYmlsaXR5RmlsdGVyIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRmluZFNlcnZlcnNPbk5ldHdvcmtS ZXF1ZXN0IiB0eXBlPSJ0bnM6RmluZFNlcnZlcnNPbk5ldHdvcmtSZXF1ZXN0IiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJGaW5kU2VydmVyc09uTmV0d29ya1Jlc3BvbnNlIj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlw ZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGFzdENvdW50ZXJSZXNldFRpbWUiIHR5cGU9InhzOmRh dGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJz IiB0eXBlPSJ0bnM6TGlzdE9mU2VydmVyT25OZXR3b3JrIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IkZpbmRTZXJ2ZXJzT25OZXR3b3JrUmVzcG9uc2UiIHR5cGU9InRuczpG aW5kU2VydmVyc09uTmV0d29ya1Jlc3BvbnNlIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkFw cGxpY2F0aW9uSW5zdGFuY2VDZXJ0aWZpY2F0ZSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiAvPg0K DQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJNZXNzYWdlU2VjdXJpdHlNb2RlIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSB0eXBlIG9mIHNlY3VyaXR5 IHRvIHVzZSBvbiBhIG1lc3NhZ2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3Rh dGlvbj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iSW52YWxpZF8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZh bHVlPSJOb25lXzEiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlNpZ25fMiIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iU2lnbkFuZEVuY3J5cHRfMyIgLz4NCiAgICA8 L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ik1lc3NhZ2VTZWN1cml0eU1vZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiAvPg0K DQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJVc2VyVG9rZW5UeXBlIj4NCiAgICA8eHM6YW5ub3Rh dGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBwb3NzaWJsZSB1c2VyIHRva2VuIHR5 cGVzLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnJl c3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9 IkFub255bW91c18wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJVc2VyTmFtZV8x IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJDZXJ0aWZpY2F0ZV8yIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJJc3N1ZWRUb2tlbl8zIiAvPg0KICAgIDwveHM6cmVz dHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlclRv a2VuVHlwZSIgdHlwZT0idG5zOlVzZXJUb2tlblR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9IlVzZXJUb2tlblBvbGljeSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5EZXNjcmliZXMgYSB1c2VyIHRva2VuIHRoYXQgY2FuIGJlIHVzZWQgd2l0 aCBhIHNlcnZlci48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlBvbGljeUlkIiB0eXBlPSJ4 czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJUb2tlblR5cGUiIHR5cGU9InRuczpVc2VyVG9rZW5UeXBlIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc3N1ZWRUb2tlblR5cGUiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Iklzc3VlckVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eVBv bGljeVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IlVzZXJUb2tlblBvbGljeSIgdHlwZT0idG5zOlVzZXJUb2tlblBvbGljeSIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVXNlclRva2VuUG9saWN5Ij4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyVG9rZW5Qb2xpY3kiIHR5cGU9 InRuczpVc2VyVG9rZW5Qb2xpY3kiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVzZXJUb2tlblBvbGljeSIgdHlwZT0idG5z Okxpc3RPZlVzZXJUb2tlblBvbGljeSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRW5kcG9pbnREZXNjcmlwdGlvbiI+DQogICAgPHhzOmFu bm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgZGVzY3JpcHRpb24gb2YgYSBl bmRwb2ludCB0aGF0IGNhbiBiZSB1c2VkIHRvIGFjY2VzcyBhIHNlcnZlci48L3hzOmRvY3VtZW50 YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXIiIHR5 cGU9InRuczpBcHBsaWNhdGlvbkRlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyQ2VydGlmaWNhdGUiIHR5cGU9 InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5TW9kZSIgdHlwZT0idG5zOk1lc3NhZ2VTZWN1cml0 eU1vZGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5 UG9saWN5VXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VySWRlbnRpdHlUb2tlbnMiIHR5cGU9InRu czpMaXN0T2ZVc2VyVG9rZW5Qb2xpY3kiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRQcm9maWxlVXJpIiB0eXBlPSJ4czpz dHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZWN1cml0eUxldmVsIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJFbmRwb2ludERlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6RW5kcG9pbnREZXNjcmlw dGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRW5kcG9pbnREZXNjcmlw dGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5kcG9p bnREZXNjcmlwdGlvbiIgdHlwZT0idG5zOkVuZHBvaW50RGVzY3JpcHRpb24iIG1pbk9jY3Vycz0i MCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkVu ZHBvaW50RGVzY3JpcHRpb24iIHR5cGU9InRuczpMaXN0T2ZFbmRwb2ludERlc2NyaXB0aW9uIiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJH ZXRFbmRwb2ludHNSZXF1ZXN0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5IHRoZSBzZXJ2ZXIuPC94czpkb2N1 bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRl ciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGVJZHMiIHR5cGU9InVhOkxp c3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlByb2ZpbGVVcmlzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iR2V0RW5kcG9pbnRzUmVxdWVzdCIgdHlwZT0i dG5zOkdldEVuZHBvaW50c1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikdl dEVuZHBvaW50c1Jlc3BvbnNlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5IHRoZSBzZXJ2ZXIuPC94czpkb2N1 bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVh ZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRW5kcG9pbnRzIiB0eXBlPSJ0bnM6TGlzdE9mRW5kcG9pbnREZXNjcmlwdGlvbiIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJHZXRFbmRwb2ludHNSZXNwb25zZSIg dHlwZT0idG5zOkdldEVuZHBvaW50c1Jlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJSZWdpc3RlcmVkU2VydmVyIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpk b2N1bWVudGF0aW9uPlRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byByZWdpc3RlciBhIHNlcnZl ciB3aXRoIGEgZGlzY292ZXJ5IHNlcnZlci48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czph bm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNl cnZlclVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJvZHVjdFVyaSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i U2VydmVyTmFtZXMiIHR5cGU9InVhOkxpc3RPZkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJUeXBlIiB0 eXBlPSJ0bnM6QXBwbGljYXRpb25UeXBlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJHYXRld2F5U2VydmVyVXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjb3ZlcnlV cmxzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZW1hcGhvcmVGaWxlUGF0aCIgdHlwZT0ieHM6 c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iSXNPbmxpbmUiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJSZWdpc3RlcmVkU2VydmVyIiB0eXBlPSJ0bnM6UmVnaXN0ZXJlZFNlcnZlciIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUmVnaXN0ZXJlZFNlcnZlciI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVnaXN0ZXJlZFNlcnZlciIgdHlwZT0i dG5zOlJlZ2lzdGVyZWRTZXJ2ZXIiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlZ2lzdGVyZWRTZXJ2ZXIiIHR5cGU9InRu czpMaXN0T2ZSZWdpc3RlcmVkU2VydmVyIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdpc3RlclNlcnZlclJlcXVlc3QiPg0KICAgIDx4 czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+UmVnaXN0ZXJzIGEgc2VydmVy IHdpdGggdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6 YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlciIgdHlwZT0idG5z OlJlZ2lzdGVyZWRTZXJ2ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i UmVnaXN0ZXJTZXJ2ZXJSZXF1ZXN0IiB0eXBlPSJ0bnM6UmVnaXN0ZXJTZXJ2ZXJSZXF1ZXN0IiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdpc3RlclNlcnZlclJlc3BvbnNlIj4NCiAg ICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlJlZ2lzdGVycyBhIHNl cnZlciB3aXRoIHRoZSBkaXNjb3Zlcnkgc2VydmVyLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8 L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSZWdpc3RlclNlcnZlclJlc3BvbnNlIiB0eXBlPSJ0 bnM6UmVnaXN0ZXJTZXJ2ZXJSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i RGlzY292ZXJ5Q29uZmlndXJhdGlvbiI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5BIGJhc2UgdHlwZSBmb3IgZGlzY292ZXJ5IGNvbmZpZ3VyYXRpb24gaW5m b3JtYXRpb24uPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iRGlzY292ZXJ5Q29uZmlndXJhdGlvbiIgdHlwZT0idG5zOkRpc2Nv dmVyeUNvbmZpZ3VyYXRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1kbnNEaXNj b3ZlcnlDb25maWd1cmF0aW9uIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPlRoZSBkaXNjb3ZlcnkgaW5mb3JtYXRpb24gbmVlZGVkIGZvciBtRE5TIHJlZ2lz dHJhdGlvbi48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6RGlzY292ZXJ5Q29uZmlndXJhdGlvbiI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZG5zU2VydmVyTmFtZSIgdHlwZT0ieHM6c3RyaW5n IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgdHlwZT0idWE6TGlzdE9mU3RyaW5nIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAg PC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTWRuc0Rpc2NvdmVyeUNvbmZpZ3VyYXRpb24iIHR5 cGU9InRuczpNZG5zRGlzY292ZXJ5Q29uZmlndXJhdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iUmVnaXN0ZXJTZXJ2ZXIyUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFk ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTZXJ2ZXIiIHR5cGU9InRuczpSZWdpc3RlcmVkU2VydmVyIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlzY292ZXJ5Q29uZmln dXJhdGlvbiIgdHlwZT0idWE6TGlzdE9mRXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IlJlZ2lzdGVyU2VydmVyMlJlcXVlc3QiIHR5cGU9InRuczpS ZWdpc3RlclNlcnZlcjJSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdp c3RlclNlcnZlcjJSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNvbmZp Z3VyYXRpb25SZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0lu Zm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJSZWdpc3RlclNlcnZlcjJSZXNwb25zZSIgdHlwZT0idG5zOlJlZ2lz dGVyU2VydmVyMlJlc3BvbnNlIiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJTZWN1cml0 eVRva2VuUmVxdWVzdFR5cGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3Vt ZW50YXRpb24+SW5kaWNhdGVzIHdoZXRoZXIgYSB0b2tlbiBpZiBiZWluZyBjcmVhdGVkIG9yIHJl bmV3ZWQuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6 cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iSXNzdWVfMCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iUmVuZXdfMSIgLz4N CiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IlNlY3VyaXR5VG9rZW5SZXF1ZXN0VHlwZSIgdHlwZT0idG5zOlNlY3VyaXR5VG9rZW5S ZXF1ZXN0VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2hhbm5lbFNlY3VyaXR5 VG9rZW4iPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhl IHRva2VuIHRoYXQgaWRlbnRpZmllcyBhIHNldCBvZiBrZXlzIGZvciBhbiBhY3RpdmUgc2VjdXJl IGNoYW5uZWwuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDaGFubmVsSWQiIHR5cGU9Inhz OnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJU b2tlbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iQ3JlYXRlZEF0IiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZExpZmV0aW1lIiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNoYW5uZWxTZWN1cml0eVRva2VuIiB0 eXBlPSJ0bnM6Q2hhbm5lbFNlY3VyaXR5VG9rZW4iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ik9wZW5TZWN1cmVDaGFubmVsUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAg ICA8eHM6ZG9jdW1lbnRhdGlvbj5DcmVhdGVzIGEgc2VjdXJlIGNoYW5uZWwgd2l0aCBhIHNlcnZl ci48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1 ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpS ZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iQ2xpZW50UHJvdG9jb2xWZXJzaW9uIiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdFR5cGUi IHR5cGU9InRuczpTZWN1cml0eVRva2VuUmVxdWVzdFR5cGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5TW9kZSIgdHlwZT0idG5zOk1lc3NhZ2VTZWN1 cml0eU1vZGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVu dE5vbmNlIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0ZWRMaWZldGltZSIgdHlwZT0i eHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJPcGVuU2VjdXJlQ2hhbm5lbFJl cXVlc3QiIHR5cGU9InRuczpPcGVuU2VjdXJlQ2hhbm5lbFJlcXVlc3QiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9Ik9wZW5TZWN1cmVDaGFubmVsUmVzcG9uc2UiPg0KICAgIDx4czphbm5v dGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q3JlYXRlcyBhIHNlY3VyZSBjaGFubmVs IHdpdGggYSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRl ciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyUHJvdG9jb2xWZXJzaW9uIiB0eXBl PSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2VjdXJpdHlUb2tlbiIgdHlwZT0idG5zOkNoYW5uZWxTZWN1cml0eVRva2VuIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVy Tm9uY2UiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJPcGVuU2VjdXJlQ2hhbm5lbFJlc3BvbnNlIiB0eXBlPSJ0bnM6T3BlblNlY3Vy ZUNoYW5uZWxSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2xvc2VTZWN1 cmVDaGFubmVsUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1l bnRhdGlvbj5DbG9zZXMgYSBzZWN1cmUgY2hhbm5lbC48L3hzOmRvY3VtZW50YXRpb24+DQogICAg PC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNsb3NlU2VjdXJlQ2hhbm5lbFJlcXVlc3QiIHR5cGU9 InRuczpDbG9zZVNlY3VyZUNoYW5uZWxSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJDbG9zZVNlY3VyZUNoYW5uZWxSZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+DQog ICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5DbG9zZXMgYSBzZWN1cmUgY2hhbm5lbC48L3hzOmRvY3Vt ZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFk ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xvc2VTZWN1cmVDaGFu bmVsUmVzcG9uc2UiIHR5cGU9InRuczpDbG9zZVNlY3VyZUNoYW5uZWxSZXNwb25zZSIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU2lnbmVkU29mdHdhcmVDZXJ0aWZpY2F0ZSI+DQogICAg PHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHNvZnR3YXJlIGNlcnRp ZmljYXRlIHdpdGggYSBkaWdpdGFsIHNpZ25hdHVyZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAg PC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNlcnRpZmljYXRlRGF0YSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2lnbmF0dXJlIiB0 eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iU2lnbmVkU29mdHdhcmVDZXJ0aWZpY2F0ZSIgdHlwZT0idG5zOlNpZ25lZFNvZnR3YXJlQ2Vy dGlmaWNhdGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNpZ25lZFNvZnR3 YXJlQ2VydGlmaWNhdGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlNpZ25lZFNvZnR3YXJlQ2VydGlmaWNhdGUiIHR5cGU9InRuczpTaWduZWRTb2Z0d2FyZUNl cnRpZmljYXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJMaXN0T2ZTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRlIiB0eXBlPSJ0bnM6 TGlzdE9mU2lnbmVkU29mdHdhcmVDZXJ0aWZpY2F0ZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9uQXV0aGVudGljYXRpb25Ub2tlbiIg dHlwZT0idWE6Tm9kZUlkIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTaWduYXR1cmVE YXRhIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgZGln aXRhbCBzaWduYXR1cmUuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBbGdvcml0aG0iIHR5 cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNpZ25hdHVyZSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNpZ25hdHVyZURhdGEiIHR5cGU9InRuczpT aWduYXR1cmVEYXRhIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDcmVhdGVTZXNzaW9u UmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5D cmVhdGVzIGEgbmV3IHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwveHM6ZG9jdW1lbnRhdGlvbj4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDbGllbnRE ZXNjcmlwdGlvbiIgdHlwZT0idG5zOkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJVcmki IHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9u TmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50Tm9uY2UiIHR5cGU9InhzOmJhc2U2NEJpbmFy eSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNsaWVudENlcnRpZmljYXRlIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0ZWRT ZXNzaW9uVGltZW91dCIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJNYXhSZXNwb25zZU1lc3NhZ2VTaXplIiB0eXBlPSJ4czp1bnNpZ25l ZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNyZWF0ZVNlc3Npb25SZXF1ZXN0IiB0eXBlPSJ0 bnM6Q3JlYXRlU2Vzc2lvblJlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNy ZWF0ZVNlc3Npb25SZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9j dW1lbnRhdGlvbj5DcmVhdGVzIGEgbmV3IHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwveHM6ZG9j dW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhl YWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlNlc3Npb25JZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXV0aGVudGljYXRpb25Ub2tlbiIg dHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFNlc3Npb25UaW1lb3V0IiB0eXBlPSJ4czpkb3VibGUi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlck5vbmNlIiB0 eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJDZXJ0aWZpY2F0ZSIgdHlwZT0ieHM6YmFzZTY0 QmluYXJ5IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iU2VydmVyRW5kcG9pbnRzIiB0eXBlPSJ0bnM6TGlzdE9mRW5kcG9pbnREZXNjcmlw dGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlNlcnZlclNvZnR3YXJlQ2VydGlmaWNhdGVzIiB0eXBlPSJ0bnM6TGlzdE9mU2lnbmVk U29mdHdhcmVDZXJ0aWZpY2F0ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlclNpZ25hdHVyZSIgdHlwZT0idG5zOlNpZ25hdHVy ZURhdGEiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJNYXhSZXF1ZXN0TWVzc2FnZVNpemUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlU2Vzc2lvblJlc3BvbnNlIiB0eXBlPSJ0bnM6Q3JlYXRl U2Vzc2lvblJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJVc2VySWRlbnRp dHlUb2tlbiI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5B IGJhc2UgdHlwZSBmb3IgYSB1c2VyIGlkZW50aXR5IHRva2VuLjwveHM6ZG9jdW1lbnRhdGlvbj4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUG9saWN5SWQiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJVc2VySWRlbnRpdHlUb2tlbiIgdHlwZT0idG5zOlVzZXJJZGVudGl0 eVRva2VuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBbm9ueW1vdXNJZGVudGl0eVRv a2VuIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgdG9r ZW4gcmVwcmVzZW50aW5nIGFuIGFub255bW91cyB1c2VyLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAg ICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+ DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpVc2VySWRlbnRpdHlUb2tlbiI+DQogICAg ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0 ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IkFub255bW91c0lkZW50aXR5VG9rZW4iIHR5cGU9InRuczpBbm9u eW1vdXNJZGVudGl0eVRva2VuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJVc2VyTmFt ZUlkZW50aXR5VG9rZW4iPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50 YXRpb24+QSB0b2tlbiByZXByZXNlbnRpbmcgYSB1c2VyIGlkZW50aWZpZWQgYnkgYSB1c2VyIG5h bWUgYW5kIHBhc3N3b3JkLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+ DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5z aW9uIGJhc2U9InRuczpVc2VySWRlbnRpdHlUb2tlbiI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyTmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5h bWU9IlBhc3N3b3JkIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5jcnlwdGlvbkFsZ29y aXRobSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpj b21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i VXNlck5hbWVJZGVudGl0eVRva2VuIiB0eXBlPSJ0bnM6VXNlck5hbWVJZGVudGl0eVRva2VuIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJYNTA5SWRlbnRpdHlUb2tlbiI+DQogICAgPHhz OmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHRva2VuIHJlcHJlc2VudGlu ZyBhIHVzZXIgaWRlbnRpZmllZCBieSBhbiBYNTA5IGNlcnRpZmljYXRlLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpVc2VySWRlbnRpdHlUb2tl biI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJD ZXJ0aWZpY2F0ZURhdGEiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5z aW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ilg1MDlJZGVudGl0eVRva2VuIiB0eXBlPSJ0bnM6WDUwOUlkZW50aXR5 VG9rZW4iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Iklzc3VlZElkZW50aXR5VG9rZW4i Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSB0b2tlbiBy ZXByZXNlbnRpbmcgYSB1c2VyIGlkZW50aWZpZWQgYnkgYSBXUy1TZWN1cml0eSBYTUwgdG9rZW4u PC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxl eENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOlVz ZXJJZGVudGl0eVRva2VuIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9IlRva2VuRGF0YSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuY3J5 cHRpb25BbGdvcml0aG0iIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0K ICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Iklzc3VlZElkZW50aXR5VG9rZW4iIHR5cGU9InRuczpJc3N1ZWRJZGVudGl0eVRv a2VuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBY3RpdmF0ZVNlc3Npb25SZXF1ZXN0 Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkFjdGl2YXRl cyBhIHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hz OmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i UmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDbGllbnRTaWduYXR1cmUi IHR5cGU9InRuczpTaWduYXR1cmVEYXRhIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50U29mdHdhcmVDZXJ0aWZpY2F0ZXMiIHR5 cGU9InRuczpMaXN0T2ZTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxlSWRzIiB0eXBl PSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VySWRlbnRpdHlUb2tlbiIgdHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVXNlclRva2VuU2lnbmF0dXJlIiB0eXBlPSJ0bnM6U2lnbmF0dXJlRGF0YSIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJBY3RpdmF0ZVNlc3Npb25SZXF1ZXN0 IiB0eXBlPSJ0bnM6QWN0aXZhdGVTZXNzaW9uUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iQWN0aXZhdGVTZXNzaW9uUmVzcG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0K ICAgICAgPHhzOmRvY3VtZW50YXRpb24+QWN0aXZhdGVzIGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2 ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5z OlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyTm9uY2UiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJl c3VsdHMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9 InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IkFjdGl2YXRlU2Vzc2lvblJlc3BvbnNlIiB0eXBlPSJ0bnM6QWN0aXZhdGVTZXNzaW9u UmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNsb3NlU2Vzc2lvblJlcXVl c3QiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q2xvc2Vz IGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6 YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlv bnMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNl Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDbG9zZVNlc3Npb25S ZXF1ZXN0IiB0eXBlPSJ0bnM6Q2xvc2VTZXNzaW9uUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iQ2xvc2VTZXNzaW9uUmVzcG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0K ICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q2xvc2VzIGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIu PC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJl c3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNsb3Nl U2Vzc2lvblJlc3BvbnNlIiB0eXBlPSJ0bnM6Q2xvc2VTZXNzaW9uUmVzcG9uc2UiIC8+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNhbmNlbFJlcXVlc3QiPg0KICAgIDx4czphbm5vdGF0aW9u Pg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q2FuY2VscyBhbiBvdXRzdGFuZGluZyByZXF1ZXN0 LjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJl cXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGFuZGxlIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2Nj dXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IkNhbmNlbFJlcXVlc3QiIHR5cGU9InRuczpDYW5jZWxSZXF1ZXN0IiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDYW5jZWxSZXNwb25zZSI+DQogICAgPHhzOmFu bm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5DYW5jZWxzIGFuIG91dHN0YW5kaW5n IHJlcXVlc3QuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlw ZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2FuY2VsQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ2FuY2VsUmVzcG9uc2UiIHR5cGU9InRuczpDYW5jZWxS ZXNwb25zZSIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iTm9kZUF0dHJpYnV0ZXNNYXNr Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBiaXRz IHVzZWQgdG8gc3BlY2lmeSBkZWZhdWx0IGF0dHJpYnV0ZXMgZm9yIGEgbmV3IG5vZGUuPC94czpk b2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6cmVzdHJpY3Rpb24g YmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9uZV8wIiAv Pg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJBY2Nlc3NMZXZlbF8xIiAvPg0KICAgICAg PHhzOmVudW1lcmF0aW9uIHZhbHVlPSJBcnJheURpbWVuc2lvbnNfMiIgLz4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iQnJvd3NlTmFtZV80IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJDb250YWluc05vTG9vcHNfOCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iRGF0YVR5cGVfMTYiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkRlc2NyaXB0 aW9uXzMyIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEaXNwbGF5TmFtZV82NCIg Lz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iRXZlbnROb3RpZmllcl8xMjgiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkV4ZWN1dGFibGVfMjU2IiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJIaXN0b3JpemluZ181MTIiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9IkludmVyc2VOYW1lXzEwMjQiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9IklzQWJzdHJhY3RfMjA0OCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i TWluaW11bVNhbXBsaW5nSW50ZXJ2YWxfNDA5NiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iTm9kZUNsYXNzXzgxOTIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9Ik5v ZGVJZF8xNjM4NCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iU3ltbWV0cmljXzMy NzY4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJVc2VyQWNjZXNzTGV2ZWxfNjU1 MzYiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlVzZXJFeGVjdXRhYmxlXzEzMTA3 MiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVXNlcldyaXRlTWFza18yNjIxNDQi IC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlZhbHVlUmFua181MjQyODgiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IldyaXRlTWFza18xMDQ4NTc2IiAvPg0KICAgICAg PHhzOmVudW1lcmF0aW9uIHZhbHVlPSJWYWx1ZV8yMDk3MTUyIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJEYXRhVHlwZURlZmluaXRpb25fNDE5NDMwNCIgLz4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iUm9sZVBlcm1pc3Npb25zXzgzODg2MDgiIC8+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9IkFjY2Vzc1Jlc3RyaWN0aW9uc18xNjc3NzIxNiIgLz4NCiAgICAg IDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQWxsXzMzNTU0NDMxIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJCYXNlTm9kZV8yNjUwMTIyMCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlv biB2YWx1ZT0iT2JqZWN0XzI2NTAxMzQ4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVl PSJPYmplY3RUeXBlXzI2NTAzMjY4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJW YXJpYWJsZV8yNjU3MTM4MyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVmFyaWFi bGVUeXBlXzI4NjAwNDM4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJNZXRob2Rf MjY2MzI1NDgiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlZmVyZW5jZVR5cGVf MjY1MzcwNjAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlZpZXdfMjY1MDEzNTYi IC8+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJOb2RlQXR0cmlidXRlc01hc2siIHR5cGU9InRuczpOb2RlQXR0cmlidXRlc01h c2siIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGVBdHRyaWJ1dGVzIj4NCiAgICA8 eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBiYXNlIGF0dHJpYnV0 ZXMgZm9yIGFsbCBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9u Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNwZWNpZmllZEF0 dHJpYnV0ZXMiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEaXNwbGF5TmFtZSIgdHlwZT0idWE6TG9jYWxpemVkVGV4dCIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRl c2NyaXB0aW9uIiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVNYXNrIiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNl cldyaXRlTWFzayIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJO b2RlQXR0cmlidXRlcyIgdHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJPYmplY3RBdHRyaWJ1dGVzIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhbiBvYmplY3Qgbm9kZS48 L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpjb21wbGV4 Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6Tm9k ZUF0dHJpYnV0ZXMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRXZlbnROb3RpZmllciIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAg ICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJPYmplY3RBdHRyaWJ1dGVzIiB0eXBlPSJ0bnM6T2JqZWN0QXR0cmlidXRlcyIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVmFyaWFibGVBdHRyaWJ1dGVzIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBh IHZhcmlhYmxlIG5vZGUuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNp b24gYmFzZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0eXBlPSJ1YTpWYXJpYW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVh Ok5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJWYWx1ZVJhbmsiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkFycmF5RGltZW5zaW9ucyIgdHlwZT0idWE6TGlz dE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4 czplbGVtZW50IG5hbWU9IkFjY2Vzc0xldmVsIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyQWNjZXNzTGV2ZWwi IHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9Ik1pbmltdW1TYW1wbGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3JpemluZyIg dHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNl Pg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFibGVBdHRyaWJ1dGVzIiB0 eXBlPSJ0bnM6VmFyaWFibGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJNZXRob2RBdHRyaWJ1dGVzIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhIG1ldGhvZCBub2RlLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpOb2RlQXR0cmlidXRlcyI+ DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFeGVj dXRhYmxlIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iVXNlckV4ZWN1dGFibGUiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0K ICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ik1ldGhvZEF0dHJpYnV0ZXMiIHR5cGU9InRuczpNZXRob2RBdHRyaWJ1dGVzIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJPYmplY3RUeXBlQXR0cmlidXRlcyI+DQogICAg PHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRlcyBm b3IgYW4gb2JqZWN0IHR5cGUgbm9kZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhz OmV4dGVuc2lvbiBiYXNlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgICAgICA8eHM6c2VxdWVu Y2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9v bGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94 czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iT2JqZWN0VHlwZUF0dHJpYnV0ZXMiIHR5cGU9InRuczpP YmplY3RUeXBlQXR0cmlidXRlcyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVmFyaWFi bGVUeXBlQXR0cmlidXRlcyI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1l bnRhdGlvbj5UaGUgYXR0cmlidXRlcyBmb3IgYSB2YXJpYWJsZSB0eXBlIG5vZGUuPC94czpkb2N1 bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQg bWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk5vZGVBdHRyaWJ1 dGVzIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9 IlZhbHVlIiB0eXBlPSJ1YTpWYXJpYW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZVJhbmsi IHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5h bWU9IkFycmF5RGltZW5zaW9ucyIgdHlwZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IklzQWJzdHJh Y3QiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1 ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlZhcmlhYmxlVHlwZUF0dHJp YnV0ZXMiIHR5cGU9InRuczpWYXJpYWJsZVR5cGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJSZWZlcmVuY2VUeXBlQXR0cmlidXRlcyI+DQogICAgPHhzOmFubm90YXRp b24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRlcyBmb3IgYSByZWZlcmVu Y2UgdHlwZSBub2RlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQog ICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9u IGJhc2U9InRuczpOb2RlQXR0cmlidXRlcyI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0Fic3RyYWN0IiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3ltbWV0cmljIiB0eXBl PSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iSW52ZXJzZU5hbWUiIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVu c2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJSZWZlcmVuY2VUeXBlQXR0cmlidXRlcyIgdHlwZT0idG5zOlJlZmVy ZW5jZVR5cGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRhVHlw ZUF0dHJpYnV0ZXMiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRp b24+VGhlIGF0dHJpYnV0ZXMgZm9yIGEgZGF0YSB0eXBlIG5vZGUuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZh bHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAg ICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IklzQWJzdHJh Y3QiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1 ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRhdGFUeXBlQXR0cmlidXRl cyIgdHlwZT0idG5zOkRhdGFUeXBlQXR0cmlidXRlcyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iVmlld0F0dHJpYnV0ZXMiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRv Y3VtZW50YXRpb24+VGhlIGF0dHJpYnV0ZXMgZm9yIGEgdmlldyBub2RlLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpOb2RlQXR0cmlidXRlcyI+ DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDb250 YWluc05vTG9vcHMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJFdmVudE5vdGlmaWVyIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0 ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IlZpZXdBdHRyaWJ1dGVzIiB0eXBlPSJ0bnM6Vmlld0F0dHJpYnV0 ZXMiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXR0cmlidXRlSWQi IHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikdl bmVyaWNBdHRyaWJ1dGVWYWx1ZSIgdHlwZT0idG5zOkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mR2VuZXJpY0F0dHJpYnV0ZVZhbHVlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJHZW5lcmljQXR0cmli dXRlVmFsdWUiIHR5cGU9InRuczpHZW5lcmljQXR0cmlidXRlVmFsdWUiIG1pbk9jY3Vycz0iMCIg bWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkdlbmVy aWNBdHRyaWJ1dGVWYWx1ZSIgdHlwZT0idG5zOkxpc3RPZkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i R2VuZXJpY0F0dHJpYnV0ZXMiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2Ui Pg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgICAg ICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXR0cmlidXRlVmFs dWVzIiB0eXBlPSJ0bnM6TGlzdE9mR2VuZXJpY0F0dHJpYnV0ZVZhbHVlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpl eHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iR2VuZXJpY0F0dHJpYnV0ZXMiIHR5cGU9InRuczpHZW5lcmlj QXR0cmlidXRlcyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQWRkTm9kZXNJdGVtIj4N CiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0 byBhZGQgYSBub2RlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRp b24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlBhcmVudE5vZGVJZCIgdHlwZT0idWE6RXhwYW5kZWROb2RlSWQiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWZl cmVuY2VUeXBlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RlZE5ld05vZGVJZCIgdHlwZT0i dWE6RXhwYW5kZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJCcm93c2VOYW1lIiB0eXBlPSJ1YTpRdWFsaWZpZWROYW1lIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i Tm9kZUNsYXNzIiB0eXBlPSJ0bnM6Tm9kZUNsYXNzIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJOb2RlQXR0cmlidXRlcyIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iVHlwZURlZmluaXRpb24iIHR5cGU9InVhOkV4cGFuZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZE5vZGVzSXRlbSIgdHlwZT0idG5zOkFkZE5vZGVz SXRlbSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQWRkTm9kZXNJdGVtIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGROb2Rlc0l0ZW0i IHR5cGU9InRuczpBZGROb2Rlc0l0ZW0iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkFkZE5vZGVzSXRlbSIgdHlwZT0idG5z Okxpc3RPZkFkZE5vZGVzSXRlbSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iQWRkTm9kZXNSZXN1bHQiPg0KICAgIDx4czphbm5vdGF0aW9u Pg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSByZXN1bHQgb2YgYW4gYWRkIG5vZGUgb3BlcmF0 aW9uLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3Rh dHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWRkZWRO b2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJBZGROb2Rlc1Jlc3VsdCIgdHlwZT0idG5zOkFkZE5vZGVzUmVzdWx0IiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZBZGROb2Rlc1Jlc3VsdCI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWRkTm9kZXNSZXN1bHQiIHR5cGU9InRuczpB ZGROb2Rlc1Jlc3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQWRkTm9kZXNSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZB ZGROb2Rlc1Jlc3VsdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iQWRkTm9kZXNSZXF1ZXN0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPkFkZHMgb25lIG9yIG1vcmUgbm9kZXMgdG8gdGhlIHNlcnZl ciBhZGRyZXNzIHNwYWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRl ciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2Rlc1RvQWRkIiB0eXBlPSJ0bnM6TGlzdE9m QWRkTm9kZXNJdGVtIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZE5v ZGVzUmVxdWVzdCIgdHlwZT0idG5zOkFkZE5vZGVzUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iQWRkTm9kZXNSZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAg ICA8eHM6ZG9jdW1lbnRhdGlvbj5BZGRzIG9uZSBvciBtb3JlIG5vZGVzIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVy IiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ0bnM6TGlzdE9mQWRk Tm9kZXNSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJ bmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZE5vZGVzUmVzcG9u c2UiIHR5cGU9InRuczpBZGROb2Rlc1Jlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJBZGRSZWZlcmVuY2VzSXRlbSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5BIHJlcXVlc3QgdG8gYWRkIGEgcmVmZXJlbmNlIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNvdXJjZU5vZGVJZCIg dHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNlVHlwZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0Zv cndhcmQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlRhcmdldFNlcnZlclVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGFyZ2V0Tm9kZUlk IiB0eXBlPSJ1YTpFeHBhbmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRhcmdldE5vZGVDbGFzcyIgdHlwZT0idG5zOk5v ZGVDbGFzcyIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZFJlZmVyZW5jZXNJdGVtIiB0eXBlPSJ0 bnM6QWRkUmVmZXJlbmNlc0l0ZW0iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RP ZkFkZFJlZmVyZW5jZXNJdGVtIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJBZGRSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkFkZFJlZmVyZW5jZXNJdGVtIiBt aW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJMaXN0T2ZBZGRSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkxpc3RPZkFkZFJlZmVyZW5jZXNJ dGVtIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJBZGRSZWZlcmVuY2VzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8 eHM6ZG9jdW1lbnRhdGlvbj5BZGRzIG9uZSBvciBtb3JlIHJlZmVyZW5jZXMgdG8gdGhlIHNlcnZl ciBhZGRyZXNzIHNwYWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRl ciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWZlcmVuY2VzVG9BZGQiIHR5cGU9InRuczpM aXN0T2ZBZGRSZWZlcmVuY2VzSXRlbSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJBZGRSZWZlcmVuY2VzUmVxdWVzdCIgdHlwZT0idG5zOkFkZFJlZmVyZW5jZXNSZXF1ZXN0 IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBZGRSZWZlcmVuY2VzUmVzcG9uc2UiPg0K ICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QWRkcyBvbmUgb3Ig bW9yZSByZWZlcmVuY2VzIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50 YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJSZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0 eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJBZGRSZWZlcmVuY2VzUmVzcG9uc2UiIHR5cGU9InRuczpBZGRSZWZlcmVuY2Vz UmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZU5vZGVzSXRlbSI+ DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHJlcXVlc3Qg dG8gZGVsZXRlIGEgbm9kZSB0byB0aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVu dGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVRhcmdldFJl ZmVyZW5jZXMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVO b2Rlc0l0ZW0iIHR5cGU9InRuczpEZWxldGVOb2Rlc0l0ZW0iIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9Ikxpc3RPZkRlbGV0ZU5vZGVzSXRlbSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlTm9kZXNJdGVtIiB0eXBlPSJ0bnM6RGVsZXRlTm9k ZXNJdGVtIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJMaXN0T2ZEZWxldGVOb2Rlc0l0ZW0iIHR5cGU9InRuczpMaXN0T2ZEZWxldGVO b2Rlc0l0ZW0iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IkRlbGV0ZU5vZGVzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAg ICA8eHM6ZG9jdW1lbnRhdGlvbj5EZWxldGUgb25lIG9yIG1vcmUgbm9kZXMgZnJvbSB0aGUgc2Vy dmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlv bj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVh ZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVzVG9EZWxldGUiIHR5cGU9InRuczpM aXN0T2ZEZWxldGVOb2Rlc0l0ZW0iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iRGVsZXRlTm9kZXNSZXF1ZXN0IiB0eXBlPSJ0bnM6RGVsZXRlTm9kZXNSZXF1ZXN0IiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEZWxldGVOb2Rlc1Jlc3BvbnNlIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSBu b2RlcyBmcm9tIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQog ICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRz IiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpM aXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJEZWxldGVOb2Rlc1Jlc3BvbnNlIiB0eXBlPSJ0bnM6RGVsZXRlTm9kZXNSZXNwb25zZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRGVsZXRlUmVmZXJlbmNlc0l0ZW0iPg0KICAgIDx4 czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSByZXF1ZXN0IHRvIGRlbGV0 ZSBhIG5vZGUgZnJvbSB0aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJTb3VyY2VOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZVR5cGVJ ZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNGb3J3YXJkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXROb2RlSWQiIHR5cGU9InVh OkV4cGFuZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlQmlkaXJlY3Rpb25hbCIgdHlwZT0ieHM6Ym9vbGVhbiIg bWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVJlZmVyZW5jZXNJdGVtIiB0eXBlPSJ0bnM6RGVs ZXRlUmVmZXJlbmNlc0l0ZW0iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkRl bGV0ZVJlZmVyZW5jZXNJdGVtIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJEZWxldGVSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkRlbGV0ZVJlZmVyZW5jZXNJ dGVtIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZEZWxldGVSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkxpc3RPZkRlbGV0 ZVJlZmVyZW5jZXNJdGVtIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJEZWxldGVSZWZlcmVuY2VzUmVxdWVzdCI+DQogICAgPHhzOmFubm90 YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5EZWxldGUgb25lIG9yIG1vcmUgcmVmZXJl bmNlcyBmcm9tIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQog ICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNl c1RvRGVsZXRlIiB0eXBlPSJ0bnM6TGlzdE9mRGVsZXRlUmVmZXJlbmNlc0l0ZW0iIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlUmVmZXJlbmNlc1JlcXVlc3QiIHR5 cGU9InRuczpEZWxldGVSZWZlcmVuY2VzUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iRGVsZXRlUmVmZXJlbmNlc1Jlc3BvbnNlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIGZyb20g dGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFu bm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVz cG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3VsdHMiIHR5cGU9InVh Okxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdu b3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVJl ZmVyZW5jZXNSZXNwb25zZSIgdHlwZT0idG5zOkRlbGV0ZVJlZmVyZW5jZXNSZXNwb25zZSIgLz4N Cg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iQXR0cmlidXRlV3JpdGVNYXNrIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkRlZmluZSBiaXRzIHVzZWQgdG8g aW5kaWNhdGUgd2hpY2ggYXR0cmlidXRlcyBhcmUgd3JpdGFibGUuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5z aWduZWRJbnQiPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iQXR0cmlidXRlV3JpdGVNYXNrIiB0eXBlPSJ0bnM6QXR0cmlidXRl V3JpdGVNYXNrIiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJCcm93c2VEaXJlY3Rpb24i Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhlIGRpcmVj dGlvbnMgb2YgdGhlIHJlZmVyZW5jZXMgdG8gcmV0dXJuLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAg ICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkZvcndhcmRfMCIgLz4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iSW52ZXJzZV8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZh bHVlPSJCb3RoXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkludmFsaWRfMyIg Lz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IkJyb3dzZURpcmVjdGlvbiIgdHlwZT0idG5zOkJyb3dzZURpcmVjdGlvbiIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVmlld0Rlc2NyaXB0aW9uIj4NCiAgICA8eHM6YW5u b3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSB2aWV3IHRvIGJyb3dzZS48L3hz OmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZpZXdJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZXN0 YW1wIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVmlld1ZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iVmlld0Rlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6Vmlld0Rlc2NyaXB0aW9uIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJCcm93c2VEZXNjcmlwdGlvbiI+DQogICAgPHhzOmFu bm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHJlcXVlc3QgdG8gYnJvd3NlIHRo ZSB0aGUgcmVmZXJlbmNlcyBmcm9tIGEgbm9kZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94 czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 Ik5vZGVJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlRGlyZWN0aW9uIiB0eXBlPSJ0bnM6QnJv d3NlRGlyZWN0aW9uIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZWZlcmVuY2VUeXBlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluY2x1ZGVTdWJ0eXBlcyIgdHlwZT0i eHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9k ZUNsYXNzTWFzayIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlc3VsdE1hc2siIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlRGVzY3JpcHRpb24iIHR5cGU9InRuczpCcm93c2VEZXNj cmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQnJvd3NlRGVzY3Jp cHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dz ZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6QnJvd3NlRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0iMCIg bWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkJyb3dz ZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mQnJvd3NlRGVzY3JpcHRpb24iIG5pbGxhYmxl PSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkJyb3dzZVJl c3VsdE1hc2siPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+ QSBiaXQgbWFzayB3aGljaCBzcGVjaWZpZXMgd2hhdCBzaG91bGQgYmUgcmV0dXJuZWQgaW4gYSBi cm93c2UgcmVzcG9uc2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iTm9uZV8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSZWZl cmVuY2VUeXBlSWRfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSXNGb3J3YXJk XzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9Ik5vZGVDbGFzc180IiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJCcm93c2VOYW1lXzgiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IkRpc3BsYXlOYW1lXzE2IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJUeXBlRGVmaW5pdGlvbl8zMiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iQWxsXzYzIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSZWZlcmVuY2VUeXBl SW5mb18zIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJUYXJnZXRJbmZvXzYwIiAv Pg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iQnJvd3NlUmVzdWx0TWFzayIgdHlwZT0idG5zOkJyb3dzZVJlc3VsdE1hc2siIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlZmVyZW5jZURlc2NyaXB0aW9uIj4NCiAgICA8 eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBkZXNjcmlwdGlvbiBv ZiBhIHJlZmVyZW5jZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZVR5cGVJ ZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNGb3J3YXJkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOkV4cGFu ZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iQnJvd3NlTmFtZSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlO YW1lIiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZUNsYXNzIiB0eXBlPSJ0bnM6Tm9kZUNs YXNzIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUeXBlRGVmaW5p dGlvbiIgdHlwZT0idWE6RXhwYW5kZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iUmVmZXJlbmNlRGVzY3JpcHRpb24iIHR5cGU9InRuczpSZWZlcmVuY2VEZXNj cmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUmVmZXJlbmNlRGVz Y3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJl ZmVyZW5jZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6UmVmZXJlbmNlRGVzY3JpcHRpb24iIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZlJlZmVyZW5jZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mUmVmZXJlbmNlRGVzY3Jp cHRpb24iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFt ZT0iQ29udGludWF0aW9uUG9pbnQiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iQnJvd3NlUmVzdWx0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSByZXN1bHQgb2YgYSBicm93c2Ugb3BlcmF0aW9uLjwv eHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29k ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGludWF0aW9u UG9pbnQiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZXMiIHR5cGU9InRuczpMaXN0 T2ZSZWZlcmVuY2VEZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJCcm93c2VSZXN1bHQiIHR5cGU9InRuczpCcm93c2VSZXN1bHQiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb3dzZVJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlUmVzdWx0IiB0eXBlPSJ0bnM6QnJvd3NlUmVz dWx0IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZCcm93c2VSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZCcm93c2VSZXN1bHQi IG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IkJyb3dzZVJlcXVlc3QiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50 YXRpb24+QnJvd3NlIHRoZSByZWZlcmVuY2VzIGZvciBvbmUgb3IgbW9yZSBub2RlcyBmcm9tIHRo ZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVl c3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmlldyIgdHlwZT0idG5zOlZpZXdE ZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlcXVlc3RlZE1heFJlZmVyZW5jZXNQZXJOb2RlIiB0eXBlPSJ4czp1bnNp Z25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZXNU b0Jyb3dzZSIgdHlwZT0idG5zOkxpc3RPZkJyb3dzZURlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVJlcXVlc3QiIHR5cGU9InRuczpCcm93c2VS ZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJCcm93c2VSZXNwb25zZSI+DQog ICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5Ccm93c2UgdGhlIHJl ZmVyZW5jZXMgZm9yIG9uZSBvciBtb3JlIG5vZGVzIGZyb20gdGhlIHNlcnZlciBhZGRyZXNzIHNw YWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRu czpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZCcm93c2VSZXN1bHQi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVJlc3BvbnNlIiB0eXBlPSJ0bnM6 QnJvd3NlUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkJyb3dzZU5leHRS ZXF1ZXN0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkNv bnRpbnVlcyBvbmUgb3IgbW9yZSBicm93c2Ugb3BlcmF0aW9ucy48L3hzOmRvY3VtZW50YXRpb24+ DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVsZWFz ZUNvbnRpbnVhdGlvblBvaW50cyIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGludWF0aW9uUG9pbnRzIiB0eXBlPSJ1YTpMaXN0 T2ZCeXRlU3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb3dz ZU5leHRSZXF1ZXN0IiB0eXBlPSJ0bnM6QnJvd3NlTmV4dFJlcXVlc3QiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IkJyb3dzZU5leHRSZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+ DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5Db250aW51ZXMgb25lIG9yIG1vcmUgYnJvd3NlIG9w ZXJhdGlvbnMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlw ZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5zOkxpc3RPZkJyb3dzZVJl c3VsdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlTmV4dFJlc3BvbnNlIiB0 eXBlPSJ0bnM6QnJvd3NlTmV4dFJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJSZWxhdGl2ZVBhdGhFbGVtZW50Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpk b2N1bWVudGF0aW9uPkFuIGVsZW1lbnQgaW4gYSByZWxhdGl2ZSBwYXRoLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNlVHlwZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0ludmVy c2UiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkluY2x1ZGVTdWJ0eXBlcyIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGFyZ2V0TmFtZSIgdHlwZT0idWE6UXVhbGlmaWVk TmFtZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNl Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSZWxhdGl2ZVBhdGhF bGVtZW50IiB0eXBlPSJ0bnM6UmVsYXRpdmVQYXRoRWxlbWVudCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mUmVsYXRpdmVQYXRoRWxlbWVudCI+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVsYXRpdmVQYXRoRWxlbWVudCIgdHlwZT0idG5z OlJlbGF0aXZlUGF0aEVsZW1lbnQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlbGF0aXZlUGF0aEVsZW1lbnQiIHR5cGU9 InRuczpMaXN0T2ZSZWxhdGl2ZVBhdGhFbGVtZW50IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWxhdGl2ZVBhdGgiPg0KICAgIDx4czph bm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSByZWxhdGl2ZSBwYXRoIGNvbnN0 cnVjdGVkIGZyb20gcmVmZXJlbmNlIHR5cGVzIGFuZCBicm93c2UgbmFtZXMuPC94czpkb2N1bWVu dGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJFbGVtZW50cyIgdHlwZT0idG5zOkxpc3RPZlJlbGF0aXZlUGF0aEVs ZW1lbnQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVsYXRpdmVQYXRo IiB0eXBlPSJ0bnM6UmVsYXRpdmVQYXRoIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJC cm93c2VQYXRoIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9u PkEgcmVxdWVzdCB0byB0cmFuc2xhdGUgYSBwYXRoIGludG8gYSBub2RlIGlkLjwveHM6ZG9jdW1l bnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU3RhcnRpbmdOb2RlIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWxhdGl2 ZVBhdGgiIHR5cGU9InRuczpSZWxhdGl2ZVBhdGgiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iQnJvd3NlUGF0aCIgdHlwZT0idG5zOkJyb3dzZVBhdGgiIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb3dzZVBhdGgiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVBhdGgiIHR5cGU9InRuczpCcm93c2VQYXRo IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZCcm93c2VQYXRoIiB0eXBlPSJ0bnM6TGlzdE9mQnJvd3NlUGF0aCIgbmlsbGFi bGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQnJvd3Nl UGF0aFRhcmdldCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlv bj5UaGUgdGFyZ2V0IG9mIHRoZSB0cmFuc2xhdGVkIHBhdGguPC94czpkb2N1bWVudGF0aW9uPg0K ICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJUYXJnZXRJZCIgdHlwZT0idWE6RXhwYW5kZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZW1haW5pbmdQYXRo SW5kZXgiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpz ZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3Nl UGF0aFRhcmdldCIgdHlwZT0idG5zOkJyb3dzZVBhdGhUYXJnZXQiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb3dzZVBhdGhUYXJnZXQiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVBhdGhUYXJnZXQiIHR5cGU9InRuczpCcm93 c2VQYXRoVGFyZ2V0IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZCcm93c2VQYXRoVGFyZ2V0IiB0eXBlPSJ0bnM6TGlzdE9m QnJvd3NlUGF0aFRhcmdldCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iQnJvd3NlUGF0aFJlc3VsdCI+DQogICAgPHhzOmFubm90YXRpb24+ DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgcmVzdWx0IG9mIGEgdHJhbnNsYXRlIG9wZWFy YXRpb24uPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ1YTpT dGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJn ZXRzIiB0eXBlPSJ0bnM6TGlzdE9mQnJvd3NlUGF0aFRhcmdldCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJCcm93c2VQYXRoUmVzdWx0IiB0eXBlPSJ0bnM6QnJvd3NlUGF0 aFJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQnJvd3NlUGF0aFJl c3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3Nl UGF0aFJlc3VsdCIgdHlwZT0idG5zOkJyb3dzZVBhdGhSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkJyb3dzZVBh dGhSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZCcm93c2VQYXRoUmVzdWx0IiBuaWxsYWJsZT0idHJ1 ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJUcmFuc2xhdGVCcm93 c2VQYXRoc1RvTm9kZUlkc1JlcXVlc3QiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhz OmRvY3VtZW50YXRpb24+VHJhbnNsYXRlcyBvbmUgb3IgbW9yZSBwYXRocyBpbiB0aGUgc2VydmVy IGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVy IiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVBhdGhzIiB0eXBlPSJ0bnM6TGlzdE9m QnJvd3NlUGF0aCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc2xh dGVCcm93c2VQYXRoc1RvTm9kZUlkc1JlcXVlc3QiIHR5cGU9InRuczpUcmFuc2xhdGVCcm93c2VQ YXRoc1RvTm9kZUlkc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRyYW5z bGF0ZUJyb3dzZVBhdGhzVG9Ob2RlSWRzUmVzcG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0K ICAgICAgPHhzOmRvY3VtZW50YXRpb24+VHJhbnNsYXRlcyBvbmUgb3IgbW9yZSBwYXRocyBpbiB0 aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5u b3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNw b25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5z Okxpc3RPZkJyb3dzZVBhdGhSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RP ZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRy YW5zbGF0ZUJyb3dzZVBhdGhzVG9Ob2RlSWRzUmVzcG9uc2UiIHR5cGU9InRuczpUcmFuc2xhdGVC cm93c2VQYXRoc1RvTm9kZUlkc1Jlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJSZWdpc3Rlck5vZGVzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5SZWdpc3RlcnMgb25lIG9yIG1vcmUgbm9kZXMgZm9yIHJlcGVhdGVkIHVz ZSB3aXRoaW4gYSBzZXNzaW9uLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRp b24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhl YWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2Rlc1RvUmVnaXN0ZXIiIHR5cGU9InVh Okxpc3RPZk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSZWdp c3Rlck5vZGVzUmVxdWVzdCIgdHlwZT0idG5zOlJlZ2lzdGVyTm9kZXNSZXF1ZXN0IiAvPg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdpc3Rlck5vZGVzUmVzcG9uc2UiPg0KICAgIDx4czph bm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+UmVnaXN0ZXJzIG9uZSBvciBtb3Jl IG5vZGVzIGZvciByZXBlYXRlZCB1c2Ugd2l0aGluIGEgc2Vzc2lvbi48L3hzOmRvY3VtZW50YXRp b24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZWdpc3RlcmVkTm9kZUlkcyIgdHlwZT0idWE6TGlzdE9mTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IlJlZ2lzdGVyTm9kZXNSZXNwb25zZSIgdHlwZT0idG5zOlJl Z2lzdGVyTm9kZXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVW5yZWdp c3Rlck5vZGVzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1l bnRhdGlvbj5VbnJlZ2lzdGVycyBvbmUgb3IgbW9yZSBwcmV2aW91c2x5IHJlZ2lzdGVyZWQgbm9k ZXMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6 UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ik5vZGVzVG9VbnJlZ2lzdGVyIiB0eXBlPSJ1YTpMaXN0T2ZOb2RlSWQi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVW5yZWdpc3Rlck5vZGVzUmVx dWVzdCIgdHlwZT0idG5zOlVucmVnaXN0ZXJOb2Rlc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9IlVucmVnaXN0ZXJOb2Rlc1Jlc3BvbnNlIj4NCiAgICA8eHM6YW5ub3RhdGlv bj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlVucmVnaXN0ZXJzIG9uZSBvciBtb3JlIHByZXZp b3VzbHkgcmVnaXN0ZXJlZCBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3Bv bnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iVW5yZWdpc3Rlck5vZGVzUmVzcG9uc2UiIHR5cGU9InRuczpVbnJl Z2lzdGVyTm9kZXNSZXNwb25zZSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDb3VudGVyIiB0 eXBlPSJ4czp1bnNpZ25lZEludCIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJOdW1lcmljUmFu Z2UiIHR5cGU9InhzOnN0cmluZyIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1lIiB0eXBl PSJ4czpzdHJpbmciIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0ZSIgdHlwZT0ieHM6ZGF0 ZVRpbWUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVuZHBvaW50Q29uZmlndXJhdGlv biI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iT3BlcmF0aW9u VGltZW91dCIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJVc2VCaW5hcnlFbmNvZGluZyIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4U3RyaW5nTGVuZ3RoIiB0eXBlPSJ4czpp bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1heEJ5dGVTdHJp bmdMZW5ndGgiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iTWF4QXJyYXlMZW5ndGgiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4TWVzc2FnZVNpemUiIHR5cGU9InhzOmludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4QnVmZmVyU2l6ZSIgdHlw ZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDaGFu bmVsTGlmZXRpbWUiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iU2VjdXJpdHlUb2tlbkxpZmV0aW1lIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJFbmRwb2ludENvbmZpZ3VyYXRpb24iIHR5cGU9InRuczpFbmRwb2ludENv bmZpZ3VyYXRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkVuZHBvaW50 Q29uZmlndXJhdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iRW5kcG9pbnRDb25maWd1cmF0aW9uIiB0eXBlPSJ0bnM6RW5kcG9pbnRDb25maWd1cmF0aW9u IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZFbmRwb2ludENvbmZpZ3VyYXRpb24iIHR5cGU9InRuczpMaXN0T2ZFbmRwb2lu dENvbmZpZ3VyYXRpb24iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IlF1ZXJ5RGF0YURlc2NyaXB0aW9uIj4NCiAgICA8eHM6c2VxdWVuY2U+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWxhdGl2ZVBhdGgiIHR5cGU9InRuczpSZWxhdGl2 ZVBhdGgiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJBdHRyaWJ1dGVJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmluZyIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeURhdGFEZXNjcmlwdGlv biIgdHlwZT0idG5zOlF1ZXJ5RGF0YURlc2NyaXB0aW9uIiAvPg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJMaXN0T2ZRdWVyeURhdGFEZXNjcmlwdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVlcnlEYXRhRGVzY3JpcHRpb24iIHR5cGU9InRuczpR dWVyeURhdGFEZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUXVlcnlEYXRhRGVzY3JpcHRpb24iIHR5cGU9 InRuczpMaXN0T2ZRdWVyeURhdGFEZXNjcmlwdGlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTm9kZVR5cGVEZXNjcmlwdGlvbiI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHlwZURlZmluaXRpb25O b2RlIiB0eXBlPSJ1YTpFeHBhbmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluY2x1ZGVTdWJUeXBlcyIgdHlwZT0ieHM6 Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVRv UmV0dXJuIiB0eXBlPSJ0bnM6TGlzdE9mUXVlcnlEYXRhRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZVR5cGVEZXNjcmlwdGlvbiIgdHlwZT0idG5z Ok5vZGVUeXBlRGVzY3JpcHRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RP Zk5vZGVUeXBlRGVzY3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Ik5vZGVUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpOb2RlVHlwZURlc2NyaXB0 aW9uIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZOb2RlVHlwZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZVR5 cGVEZXNjcmlwdGlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2lt cGxlVHlwZSAgbmFtZT0iRmlsdGVyT3BlcmF0b3IiPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNl PSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJFcXVhbHNfMCIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSXNOdWxsXzEiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IkdyZWF0ZXJUaGFuXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9Ikxlc3NUaGFuXzMiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkdyZWF0 ZXJUaGFuT3JFcXVhbF80IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJMZXNzVGhh bk9yRXF1YWxfNSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTGlrZV82IiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJOb3RfNyIgLz4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iQmV0d2Vlbl84IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJJ bkxpc3RfOSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQW5kXzEwIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJPcl8xMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlv biB2YWx1ZT0iQ2FzdF8xMiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW5WaWV3 XzEzIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJPZlR5cGVfMTQiIC8+DQogICAg ICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlbGF0ZWRUb18xNSIgLz4NCiAgICAgIDx4czplbnVt ZXJhdGlvbiB2YWx1ZT0iQml0d2lzZUFuZF8xNiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iQml0d2lzZU9yXzE3IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2lt cGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRmlsdGVyT3BlcmF0b3IiIHR5cGU9InRuczpG aWx0ZXJPcGVyYXRvciIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUXVlcnlEYXRhU2V0 Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5 cGU9InVhOkV4cGFuZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHlwZURlZmluaXRpb25Ob2RlIiB0eXBlPSJ1YTpFeHBh bmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlZhbHVlcyIgdHlwZT0idWE6TGlzdE9mVmFyaWFudCIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeURhdGFTZXQiIHR5cGU9InRuczpRdWVyeURh dGFTZXQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlF1ZXJ5RGF0YVNldCI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVlcnlEYXRhU2V0 IiB0eXBlPSJ0bnM6UXVlcnlEYXRhU2V0IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3Vu ZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZRdWVyeURhdGFTZXQiIHR5cGU9InRu czpMaXN0T2ZRdWVyeURhdGFTZXQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGVSZWZlcmVuY2UiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJl bmNlVHlwZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0ZvcndhcmQiIHR5cGU9InhzOmJvb2xlYW4i IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZWROb2Rl SWRzIiB0eXBlPSJ1YTpMaXN0T2ZOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTm9kZVJlZmVyZW5jZSIgdHlwZT0idG5zOk5vZGVSZWZlcmVuY2UiIC8+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZk5vZGVSZWZlcmVuY2UiPg0KICAgIDx4czpzZXF1 ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVSZWZlcmVuY2UiIHR5cGU9InRuczpO b2RlUmVmZXJlbmNlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZOb2RlUmVmZXJlbmNlIiB0eXBlPSJ0bnM6TGlzdE9mTm9k ZVJlZmVyZW5jZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlck9wZXJhdG9yIiB0eXBlPSJ0bnM6RmlsdGVyT3Bl cmF0b3IiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlck9w ZXJhbmRzIiB0eXBlPSJ1YTpMaXN0T2ZFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnQiIHR5cGU9InRuczpDb250 ZW50RmlsdGVyRWxlbWVudCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQ29u dGVudEZpbHRlckVsZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkNvbnRlbnRGaWx0ZXJFbGVtZW50IiB0eXBlPSJ0bnM6Q29udGVudEZpbHRlckVsZW1l bnQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9Ikxpc3RPZkNvbnRlbnRGaWx0ZXJFbGVtZW50IiB0eXBlPSJ0bnM6TGlzdE9mQ29udGVu dEZpbHRlckVsZW1lbnQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IkNvbnRlbnRGaWx0ZXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkVsZW1lbnRzIiB0eXBlPSJ0bnM6TGlzdE9mQ29udGVudEZpbHRl ckVsZW1lbnQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGVudEZp bHRlciIgdHlwZT0idG5zOkNvbnRlbnRGaWx0ZXIiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikxpc3RPZkNvbnRlbnRGaWx0ZXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkNvbnRlbnRGaWx0ZXIiIHR5cGU9InRuczpDb250ZW50RmlsdGVyIiBtaW5P Y2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJM aXN0T2ZDb250ZW50RmlsdGVyIiB0eXBlPSJ0bnM6TGlzdE9mQ29udGVudEZpbHRlciIgbmlsbGFi bGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRmlsdGVy T3BlcmFuZCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkZpbHRlck9wZXJhbmQiIHR5cGU9InRu czpGaWx0ZXJPcGVyYW5kIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbGVtZW50T3Bl cmFuZCI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6 ZXh0ZW5zaW9uIGJhc2U9InRuczpGaWx0ZXJPcGVyYW5kIj4NCiAgICAgICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4IiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpl eHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iRWxlbWVudE9wZXJhbmQiIHR5cGU9InRuczpFbGVtZW50T3Bl cmFuZCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGl0ZXJhbE9wZXJhbmQiPg0KICAg IDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBi YXNlPSJ0bnM6RmlsdGVyT3BlcmFuZCI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAg PC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTGl0ZXJhbE9wZXJhbmQiIHR5cGU9InRuczpMaXRlcmFsT3BlcmFuZCIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iQXR0cmlidXRlT3BlcmFuZCI+DQogICAgPHhzOmNvbXBsZXhD b250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpGaWx0 ZXJPcGVyYW5kIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9Ik5vZGVJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkFsaWFzIiB0eXBlPSJ4czpzdHJp bmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQnJvd3NlUGF0aCIgdHlwZT0idG5zOlJlbGF0aXZlUGF0aCIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdHRyaWJ1 dGVJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJJbmRleFJhbmdlIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hz OmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJBdHRyaWJ1dGVPcGVyYW5kIiB0eXBlPSJ0bnM6QXR0cmli dXRlT3BlcmFuZCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU2ltcGxlQXR0cmlidXRl T3BlcmFuZCI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8 eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpGaWx0ZXJPcGVyYW5kIj4NCiAgICAgICAgPHhzOnNlcXVl bmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlR5cGVEZWZpbml0aW9uSWQiIHR5cGU9 InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJCcm93c2VQYXRoIiB0eXBlPSJ1YTpMaXN0T2ZRdWFsaWZpZWROYW1l IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IkF0dHJpYnV0ZUlkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmlu ZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5j ZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNpbXBsZUF0dHJpYnV0ZU9wZXJh bmQiIHR5cGU9InRuczpTaW1wbGVBdHRyaWJ1dGVPcGVyYW5kIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZTaW1wbGVBdHRyaWJ1dGVPcGVyYW5kIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTaW1wbGVBdHRyaWJ1dGVPcGVyYW5kIiB0eXBl PSJ0bnM6U2ltcGxlQXR0cmlidXRlT3BlcmFuZCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mU2ltcGxlQXR0cmlidXRlT3Bl cmFuZCIgdHlwZT0idG5zOkxpc3RPZlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNvbnRlbnRGaWx0 ZXJFbGVtZW50UmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ1YTpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJPcGVyYW5kU3RhdHVzQ29kZXMiIHR5cGU9InVhOkxpc3RP ZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJPcGVyYW5kRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFn bm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDb250ZW50 RmlsdGVyRWxlbWVudFJlc3VsdCIgdHlwZT0idG5zOkNvbnRlbnRGaWx0ZXJFbGVtZW50UmVzdWx0 IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZDb250ZW50RmlsdGVyRWxlbWVu dFJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29u dGVudEZpbHRlckVsZW1lbnRSZXN1bHQiIHR5cGU9InRuczpDb250ZW50RmlsdGVyRWxlbWVudFJl c3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mQ29udGVudEZpbHRlckVsZW1lbnRSZXN1bHQiIHR5cGU9InRuczpMaXN0 T2ZDb250ZW50RmlsdGVyRWxlbWVudFJlc3VsdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ29udGVudEZpbHRlclJlc3VsdCI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRWxlbWVudFJlc3VsdHMiIHR5 cGU9InRuczpMaXN0T2ZDb250ZW50RmlsdGVyRWxlbWVudFJlc3VsdCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVsZW1lbnREaWFnbm9z dGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IkNvbnRlbnRGaWx0ZXJSZXN1bHQiIHR5cGU9InRuczpDb250 ZW50RmlsdGVyUmVzdWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJQYXJzaW5nUmVz dWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXND b2RlIiB0eXBlPSJ1YTpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJEYXRhU3RhdHVzQ29kZXMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE YXRhRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJQYXJzaW5nUmVzdWx0IiB0eXBlPSJ0bnM6 UGFyc2luZ1Jlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUGFyc2lu Z1Jlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUGFy c2luZ1Jlc3VsdCIgdHlwZT0idG5zOlBhcnNpbmdSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlBhcnNpbmdSZXN1 bHQiIHR5cGU9InRuczpMaXN0T2ZQYXJzaW5nUmVzdWx0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czpl bGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJRdWVyeUZpcnN0UmVxdWVzdCI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIg dHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWaWV3IiB0eXBlPSJ0bnM6Vmlld0Rlc2NyaXB0aW9u IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iTm9kZVR5cGVzIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZVR5cGVEZXNjcmlwdGlvbiIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRl ciIgdHlwZT0idG5zOkNvbnRlbnRGaWx0ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhEYXRhU2V0c1RvUmV0dXJuIiB0eXBlPSJ4 czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i TWF4UmVmZXJlbmNlc1RvUmV0dXJuIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IlF1ZXJ5Rmlyc3RSZXF1ZXN0IiB0eXBlPSJ0bnM6UXVlcnlGaXJzdFJlcXVlc3Qi IC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlF1ZXJ5Rmlyc3RSZXNwb25zZSI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5 cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlF1ZXJ5RGF0YVNldHMiIHR5cGU9InRuczpMaXN0T2ZR dWVyeURhdGFTZXQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJDb250aW51YXRpb25Qb2ludCIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i UGFyc2luZ1Jlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZQYXJzaW5nUmVzdWx0IiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3Rp Y0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlclJlc3VsdCIgdHlw ZT0idG5zOkNvbnRlbnRGaWx0ZXJSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUXVlcnlGaXJzdFJlc3BvbnNlIiB0eXBlPSJ0bnM6UXVlcnlGaXJzdFJlc3BvbnNl IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJRdWVyeU5leHRSZXF1ZXN0Ij4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBl PSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlJlbGVhc2VDb250aW51YXRpb25Qb2ludCIgdHlwZT0ieHM6 Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGlu dWF0aW9uUG9pbnQiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJRdWVyeU5leHRSZXF1ZXN0IiB0eXBlPSJ0bnM6UXVlcnlOZXh0UmVx dWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUXVlcnlOZXh0UmVzcG9uc2UiPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVy IiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeURhdGFTZXRzIiB0eXBlPSJ0bnM6TGlz dE9mUXVlcnlEYXRhU2V0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZENvbnRpbnVhdGlvblBvaW50IiB0eXBlPSJ4czpiYXNl NjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUXVlcnlOZXh0 UmVzcG9uc2UiIHR5cGU9InRuczpRdWVyeU5leHRSZXNwb25zZSIgLz4NCg0KICA8eHM6c2ltcGxl VHlwZSAgbmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFz ZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iU291cmNlXzAiIC8+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlNlcnZlcl8xIiAvPg0KICAgICAgPHhzOmVu dW1lcmF0aW9uIHZhbHVlPSJCb3RoXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9 Ik5laXRoZXJfMyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW52YWxpZF80IiAv Pg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIiB0eXBlPSJ0bnM6VGltZXN0YW1wc1RvUmV0dXJu IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWFkVmFsdWVJZCI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZUlkIiB0eXBlPSJ1YTpOb2RlSWQi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJBdHRyaWJ1dGVJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmluZyIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFF bmNvZGluZyIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJSZWFkVmFsdWVJZCIgdHlwZT0idG5zOlJlYWRWYWx1ZUlkIiAvPg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZSZWFkVmFsdWVJZCI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZFZhbHVlSWQiIHR5cGU9InRuczpSZWFk VmFsdWVJZCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mUmVhZFZhbHVlSWQiIHR5cGU9InRuczpMaXN0T2ZSZWFkVmFsdWVJ ZCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iUmVhZFJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4QWdlIiB0eXBl PSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRp bWVzdGFtcHNUb1JldHVybiIgdHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZXNUb1JlYWQiIHR5cGU9InRuczpM aXN0T2ZSZWFkVmFsdWVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJS ZWFkUmVxdWVzdCIgdHlwZT0idG5zOlJlYWRSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJSZWFkUmVzcG9uc2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1 bHRzIiB0eXBlPSJ1YTpMaXN0T2ZEYXRhVmFsdWUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVh Okxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9IlJlYWRSZXNwb25zZSIgdHlwZT0idG5zOlJlYWRSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iSGlzdG9yeVJlYWRWYWx1ZUlkIj4NCiAgICA8eHM6c2VxdWVuY2U+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFu Z2UiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFFbmNvZGluZyIgdHlwZT0idWE6UXVhbGlmaWVkTmFt ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNvbnRpbnVhdGlvblBvaW50IiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeVJlYWRWYWx1ZUlkIiB0eXBlPSJ0bnM6 SGlzdG9yeVJlYWRWYWx1ZUlkIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZI aXN0b3J5UmVhZFZhbHVlSWQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9Ikhpc3RvcnlSZWFkVmFsdWVJZCIgdHlwZT0idG5zOkhpc3RvcnlSZWFkVmFsdWVJZCIg bWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mSGlzdG9yeVJlYWRWYWx1ZUlkIiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9yeVJlYWRW YWx1ZUlkIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJIaXN0b3J5UmVhZFJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGludWF0aW9uUG9pbnQiIHR5cGU9 InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlEYXRhIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeVJlYWRSZXN1bHQi IHR5cGU9InRuczpIaXN0b3J5UmVhZFJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iTGlzdE9mSGlzdG9yeVJlYWRSZXN1bHQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ikhpc3RvcnlSZWFkUmVzdWx0IiB0eXBlPSJ0bnM6SGlzdG9yeVJlYWRS ZXN1bHQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ikxpc3RPZkhpc3RvcnlSZWFkUmVzdWx0IiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9y eVJlYWRSZXN1bHQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikhpc3RvcnlSZWFkRGV0YWlscyI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikhpc3RvcnlSZWFkRGV0YWlscyIgdHlwZT0idG5zOkhpc3RvcnlSZWFkRGV0YWlscyIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZEV2ZW50RGV0YWlscyI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpI aXN0b3J5UmVhZERldGFpbHMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTnVtVmFsdWVzUGVyTm9kZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGFydFRpbWUiIHR5 cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRW5kVGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGaWx0ZXIiIHR5cGU9InRuczpFdmVudEZpbHRlciIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAg ICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJlYWRFdmVudERldGFpbHMiIHR5cGU9InRu czpSZWFkRXZlbnREZXRhaWxzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWFkUmF3 TW9kaWZpZWREZXRhaWxzIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4N CiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkhpc3RvcnlSZWFkRGV0YWlscyI+DQogICAg ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc1JlYWRNb2Rp ZmllZCIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9IlN0YXJ0VGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmRUaW1lIiB0eXBlPSJ4czpkYXRlVGlt ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik51bVZhbHVl c1Blck5vZGUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV0dXJuQm91bmRzIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lv bj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJSZWFkUmF3TW9kaWZpZWREZXRhaWxzIiB0eXBlPSJ0bnM6UmVhZFJhd01v ZGlmaWVkRGV0YWlscyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZFByb2Nlc3Nl ZERldGFpbHMiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAg PHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlzdG9yeVJlYWREZXRhaWxzIj4NCiAgICAgICAgPHhz OnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0YXJ0VGltZSIgdHlwZT0i eHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJFbmRUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAg IDx4czplbGVtZW50IG5hbWU9IlByb2Nlc3NpbmdJbnRlcnZhbCIgdHlwZT0ieHM6ZG91YmxlIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWdncmVnYXRlVHlw ZSIgdHlwZT0idWE6TGlzdE9mTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24iIHR5 cGU9InRuczpBZ2dyZWdhdGVDb25maWd1cmF0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUmVhZFByb2Nlc3NlZERldGFpbHMiIHR5cGU9InRuczpSZWFkUHJvY2Vzc2VkRGV0 YWlscyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZEF0VGltZURldGFpbHMiPg0K ICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lv biBiYXNlPSJ0bnM6SGlzdG9yeVJlYWREZXRhaWxzIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcVRpbWVzIiB0eXBlPSJ1YTpMaXN0T2ZEYXRl VGltZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJVc2VTaW1wbGVCb3VuZHMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAg IDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IlJlYWRBdFRpbWVEZXRhaWxzIiB0eXBlPSJ0bnM6UmVhZEF0VGltZURldGFpbHMiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikhpc3RvcnlEYXRhIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVmFsdWVzIiB0eXBlPSJ1YTpMaXN0T2ZE YXRhVmFsdWUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeURh dGEiIHR5cGU9InRuczpIaXN0b3J5RGF0YSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TW9kaWZpY2F0aW9uSW5mbyI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTW9kaWZpY2F0aW9uVGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlVwZGF0ZVR5cGUiIHR5cGU9InRuczpIaXN0b3J5 VXBkYXRlVHlwZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNl ck5hbWUiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJNb2RpZmljYXRpb25JbmZvIiB0eXBlPSJ0bnM6TW9kaWZpY2F0aW9uSW5mbyIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTW9kaWZpY2F0aW9uSW5mbyI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9kaWZpY2F0aW9uSW5mbyIgdHlw ZT0idG5zOk1vZGlmaWNhdGlvbkluZm8iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZk1vZGlmaWNhdGlvbkluZm8iIHR5cGU9 InRuczpMaXN0T2ZNb2RpZmljYXRpb25JbmZvIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50 Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJIaXN0b3J5TW9kaWZpZWREYXRhIj4NCiAgICA8 eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFz ZT0idG5zOkhpc3RvcnlEYXRhIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4 czplbGVtZW50IG5hbWU9Ik1vZGlmaWNhdGlvbkluZm9zIiB0eXBlPSJ0bnM6TGlzdE9mTW9kaWZp Y2F0aW9uSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94 czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRl bnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlNb2Rp ZmllZERhdGEiIHR5cGU9InRuczpIaXN0b3J5TW9kaWZpZWREYXRhIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJIaXN0b3J5RXZlbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkV2ZW50cyIgdHlwZT0idG5zOkxpc3RPZkhpc3RvcnlFdmVudEZpZWxk TGlzdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNl Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5RXZlbnQi IHR5cGU9InRuczpIaXN0b3J5RXZlbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikhp c3RvcnlSZWFkUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5UmVh ZERldGFpbHMiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRpbWVzdGFtcHNUb1JldHVybiIg dHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUmVsZWFzZUNvbnRpbnVhdGlvblBvaW50cyIgdHlwZT0ieHM6Ym9vbGVh biIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZXNUb1JlYWQi IHR5cGU9InRuczpMaXN0T2ZIaXN0b3J5UmVhZFZhbHVlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeVJlYWRSZXF1ZXN0IiB0eXBlPSJ0bnM6SGlzdG9yeVJl YWRSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJIaXN0b3J5UmVhZFJlc3Bv bnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25z ZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5zOkxp c3RPZkhpc3RvcnlSZWFkUmVzdWx0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZE aWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0 b3J5UmVhZFJlc3BvbnNlIiB0eXBlPSJ0bnM6SGlzdG9yeVJlYWRSZXNwb25zZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iV3JpdGVWYWx1ZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdHRyaWJ1dGVJ ZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0eXBlPSJ1YTpE YXRhVmFsdWUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVWYWx1 ZSIgdHlwZT0idG5zOldyaXRlVmFsdWUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxp c3RPZldyaXRlVmFsdWUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IldyaXRlVmFsdWUiIHR5cGU9InRuczpXcml0ZVZhbHVlIiBtaW5PY2N1cnM9IjAiIG1heE9j Y3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZXcml0ZVZhbHVl IiB0eXBlPSJ0bnM6TGlzdE9mV3JpdGVWYWx1ZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iV3JpdGVSZXF1ZXN0Ij4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6 UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ik5vZGVzVG9Xcml0ZSIgdHlwZT0idG5zOkxpc3RPZldyaXRlVmFsdWUi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVSZXF1ZXN0IiB0eXBl PSJ0bnM6V3JpdGVSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJXcml0ZVJl c3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNw b25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idWE6 TGlzdE9mU3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25v c3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVSZXNw b25zZSIgdHlwZT0idG5zOldyaXRlUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikhpc3RvcnlVcGRhdGVEZXRhaWxzIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5VXBkYXRlRGV0YWlscyIgdHlwZT0idG5zOkhpc3Rv cnlVcGRhdGVEZXRhaWxzIiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJIaXN0b3J5VXBk YXRlVHlwZSI+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9Ikluc2VydF8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJSZXBsYWNlXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlVwZGF0 ZV8zIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEZWxldGVfNCIgLz4NCiAgICA8 L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikhpc3RvcnlVcGRhdGVUeXBlIiB0eXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZVR5cGUiIC8+DQoNCiAg PHhzOnNpbXBsZVR5cGUgIG5hbWU9IlBlcmZvcm1VcGRhdGVUeXBlIj4NCiAgICA8eHM6cmVzdHJp Y3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW5z ZXJ0XzEiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlcGxhY2VfMiIgLz4NCiAg ICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVXBkYXRlXzMiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9IlJlbW92ZV80IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6 c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUGVyZm9ybVVwZGF0ZVR5cGUiIHR5cGU9 InRuczpQZXJmb3JtVXBkYXRlVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVXBk YXRlRGF0YURldGFpbHMiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0K ICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUGVyZm9ybUlu c2VydFJlcGxhY2UiIHR5cGU9InRuczpQZXJmb3JtVXBkYXRlVHlwZSIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlVwZGF0ZVZhbHVlcyIgdHlwZT0idWE6TGlz dE9mRGF0YVZhbHVlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8 L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29u dGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVXBkYXRlRGF0 YURldGFpbHMiIHR5cGU9InRuczpVcGRhdGVEYXRhRGV0YWlscyIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iVXBkYXRlU3RydWN0dXJlRGF0YURldGFpbHMiPg0KICAgIDx4czpjb21wbGV4 Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlz dG9yeVVwZGF0ZURldGFpbHMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUGVyZm9ybUluc2VydFJlcGxhY2UiIHR5cGU9InRuczpQZXJmb3JtVXBk YXRlVHlwZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlVw ZGF0ZVZhbHVlcyIgdHlwZT0idWE6TGlzdE9mRGF0YVZhbHVlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNp b24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iVXBkYXRlU3RydWN0dXJlRGF0YURldGFpbHMiIHR5cGU9InRuczpVcGRh dGVTdHJ1Y3R1cmVEYXRhRGV0YWlscyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVXBk YXRlRXZlbnREZXRhaWxzIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4N CiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkhpc3RvcnlVcGRhdGVEZXRhaWxzIj4NCiAg ICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlBlcmZvcm1J bnNlcnRSZXBsYWNlIiB0eXBlPSJ0bnM6UGVyZm9ybVVwZGF0ZVR5cGUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGaWx0ZXIiIHR5cGU9InRuczpFdmVudEZp bHRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJFdmVudERhdGEiIHR5cGU9InRuczpMaXN0T2ZIaXN0b3J5RXZlbnRGaWVsZExp c3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVu Y2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVcGRhdGVFdmVudERldGFpbHMi IHR5cGU9InRuczpVcGRhdGVFdmVudERldGFpbHMiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkRlbGV0ZVJhd01vZGlmaWVkRGV0YWlscyI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1p eGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpIaXN0b3J5VXBkYXRl RGV0YWlscyI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJc0RlbGV0ZU1vZGlmaWVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhcnRUaW1lIiB0eXBlPSJ4czpkYXRlVGlt ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZFRpbWUi IHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVu Y2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVSYXdNb2RpZmllZERl dGFpbHMiIHR5cGU9InRuczpEZWxldGVSYXdNb2RpZmllZERldGFpbHMiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IkRlbGV0ZUF0VGltZURldGFpbHMiPg0KICAgIDx4czpjb21wbGV4Q29u dGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlzdG9y eVVwZGF0ZURldGFpbHMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUmVxVGltZXMiIHR5cGU9InVhOkxpc3RPZkRhdGVUaW1lIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94 czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlQXRUaW1lRGV0YWlscyIgdHlwZT0idG5zOkRl bGV0ZUF0VGltZURldGFpbHMiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZUV2 ZW50RGV0YWlscyI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAg ICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpIaXN0b3J5VXBkYXRlRGV0YWlscyI+DQogICAgICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFdmVudElkcyIgdHlw ZT0idWE6TGlzdE9mQnl0ZVN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6 Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IkRlbGV0ZUV2ZW50RGV0YWlscyIgdHlwZT0idG5zOkRlbGV0ZUV2ZW50RGV0YWlscyIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSGlzdG9yeVVwZGF0ZVJlc3VsdCI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3Rh dHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iT3BlcmF0 aW9uUmVzdWx0cyIgdHlwZT0idWE6TGlzdE9mU3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIg dHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iSGlzdG9yeVVwZGF0ZVJlc3VsdCIgdHlwZT0idG5zOkhpc3RvcnlVcGRhdGVS ZXN1bHQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkhpc3RvcnlVcGRhdGVS ZXN1bHQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikhpc3Rv cnlVcGRhdGVSZXN1bHQiIHR5cGU9InRuczpIaXN0b3J5VXBkYXRlUmVzdWx0IiBtaW5PY2N1cnM9 IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZI aXN0b3J5VXBkYXRlUmVzdWx0IiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9yeVVwZGF0ZVJlc3VsdCIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i SGlzdG9yeVVwZGF0ZVJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9y eVVwZGF0ZURldGFpbHMiIHR5cGU9InVhOkxpc3RPZkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5VXBkYXRlUmVxdWVzdCIgdHlwZT0i dG5zOkhpc3RvcnlVcGRhdGVSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJI aXN0b3J5VXBkYXRlUmVzcG9uc2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1 bHRzIiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9yeVVwZGF0ZVJlc3VsdCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNJbmZv cyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iSGlzdG9yeVVwZGF0ZVJlc3BvbnNlIiB0eXBlPSJ0bnM6SGlzdG9yeVVw ZGF0ZVJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDYWxsTWV0aG9kUmVx dWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iT2JqZWN0 SWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ik1ldGhvZElkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbnB1dEFy Z3VtZW50cyIgdHlwZT0idWE6TGlzdE9mVmFyaWFudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJDYWxsTWV0aG9kUmVxdWVzdCIgdHlwZT0idG5zOkNhbGxNZXRob2RSZXF1 ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZDYWxsTWV0aG9kUmVxdWVz dCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2FsbE1ldGhv ZFJlcXVlc3QiIHR5cGU9InRuczpDYWxsTWV0aG9kUmVxdWVzdCIgbWluT2NjdXJzPSIwIiBtYXhP Y2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQ2FsbE1ldGhv ZFJlcXVlc3QiIHR5cGU9InRuczpMaXN0T2ZDYWxsTWV0aG9kUmVxdWVzdCIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2FsbE1ldGhvZFJl c3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVz Q29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iSW5wdXRBcmd1bWVudFJlc3VsdHMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0Nv ZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbnB1dEFyZ3VtZW50RGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9z dGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Ik91dHB1dEFyZ3VtZW50cyIgdHlwZT0idWE6TGlzdE9mVmFyaWFudCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDYWxsTWV0aG9kUmVzdWx0IiB0eXBlPSJ0 bnM6Q2FsbE1ldGhvZFJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9m Q2FsbE1ldGhvZFJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iQ2FsbE1ldGhvZFJlc3VsdCIgdHlwZT0idG5zOkNhbGxNZXRob2RSZXN1bHQiIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkNhbGxNZXRob2RSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZDYWxsTWV0aG9kUmVzdWx0IiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJD YWxsUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i UmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZXRob2RzVG9DYWxsIiB0 eXBlPSJ0bnM6TGlzdE9mQ2FsbE1ldGhvZFJlcXVlc3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iQ2FsbFJlcXVlc3QiIHR5cGU9InRuczpDYWxsUmVxdWVzdCIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2FsbFJlc3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3Bv bnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5zOkxpc3RPZkNhbGxNZXRob2RSZXN1bHQiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE aWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNhbGxSZXNwb25zZSIgdHlwZT0idG5zOkNhbGxS ZXNwb25zZSIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iTW9uaXRvcmluZ01vZGUiPg0K ICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0 aW9uIHZhbHVlPSJEaXNhYmxlZF8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJT YW1wbGluZ18xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSZXBvcnRpbmdfMiIg Lz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ik1vbml0b3JpbmdNb2RlIiB0eXBlPSJ0bnM6TW9uaXRvcmluZ01vZGUiIC8+DQoN CiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkRhdGFDaGFuZ2VUcmlnZ2VyIj4NCiAgICA8eHM6cmVz dHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i U3RhdHVzXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlN0YXR1c1ZhbHVlXzEi IC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlN0YXR1c1ZhbHVlVGltZXN0YW1wXzIi IC8+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJEYXRhQ2hhbmdlVHJpZ2dlciIgdHlwZT0idG5zOkRhdGFDaGFuZ2VUcmlnZ2Vy IiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJEZWFkYmFuZFR5cGUiPg0KICAgIDx4czpy ZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVl PSJOb25lXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFic29sdXRlXzEiIC8+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlBlcmNlbnRfMiIgLz4NCiAgICA8L3hzOnJl c3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRlYWRi YW5kVHlwZSIgdHlwZT0idG5zOkRlYWRiYW5kVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTW9uaXRvcmluZ0ZpbHRlciI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3Jp bmdGaWx0ZXIiIHR5cGU9InRuczpNb25pdG9yaW5nRmlsdGVyIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJEYXRhQ2hhbmdlRmlsdGVyIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4 ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk1vbml0b3JpbmdGaWx0 ZXIiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i VHJpZ2dlciIgdHlwZT0idG5zOkRhdGFDaGFuZ2VUcmlnZ2VyIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVhZGJhbmRUeXBlIiB0eXBlPSJ4czp1bnNpZ25l ZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlYWRi YW5kVmFsdWUiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hz OnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVu dD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YUNoYW5nZUZp bHRlciIgdHlwZT0idG5zOkRhdGFDaGFuZ2VGaWx0ZXIiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9IkV2ZW50RmlsdGVyIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNl Ij4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk1vbml0b3JpbmdGaWx0ZXIiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VsZWN0Q2xh dXNlcyIgdHlwZT0idG5zOkxpc3RPZlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iV2hlcmVD bGF1c2UiIHR5cGU9InRuczpDb250ZW50RmlsdGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iRXZlbnRGaWx0ZXIiIHR5cGU9InRuczpFdmVudEZpbHRlciIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iQWdncmVnYXRlQ29uZmlndXJhdGlvbiI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlU2VydmVyQ2FwYWJpbGl0aWVzRGVmYXVs dHMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlRyZWF0VW5jZXJ0YWluQXNCYWQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlBlcmNlbnREYXRhQmFkIiB0eXBlPSJ4czp1 bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlBl cmNlbnREYXRhR29vZCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VTbG9wZWRFeHRyYXBvbGF0aW9uIiB0eXBlPSJ4czpi b29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQWdncmVnYXRlQ29uZmlndXJhdGlvbiIgdHlw ZT0idG5zOkFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkFnZ3JlZ2F0ZUZpbHRlciI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxz ZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpNb25pdG9yaW5nRmlsdGVyIj4NCiAg ICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0YXJ0VGlt ZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJBZ2dyZWdhdGVUeXBlIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJvY2Vzc2lu Z0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJBZ2dyZWdhdGVDb25maWd1cmF0aW9uIiB0eXBlPSJ0bnM6QWdncmVn YXRlQ29uZmlndXJhdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg ICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxl eENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFnZ3Jl Z2F0ZUZpbHRlciIgdHlwZT0idG5zOkFnZ3JlZ2F0ZUZpbHRlciIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTW9uaXRvcmluZ0ZpbHRlclJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ik1vbml0b3JpbmdGaWx0ZXJSZXN1bHQiIHR5cGU9InRuczpNb25pdG9yaW5nRmlsdGVyUmVz dWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFdmVudEZpbHRlclJlc3VsdCI+DQog ICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9u IGJhc2U9InRuczpNb25pdG9yaW5nRmlsdGVyUmVzdWx0Ij4NCiAgICAgICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlbGVjdENsYXVzZVJlc3VsdHMiIHR5cGU9 InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VsZWN0Q2xhdXNlRGlhZ25vc3RpY0luZm9zIiB0 eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXaGVyZUNsYXVzZVJlc3VsdCIgdHlw ZT0idG5zOkNvbnRlbnRGaWx0ZXJSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8 L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJFdmVudEZpbHRlclJlc3VsdCIgdHlwZT0idG5zOkV2ZW50RmlsdGVyUmVzdWx0IiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBZ2dyZWdhdGVGaWx0ZXJSZXN1bHQiPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6TW9uaXRvcmluZ0ZpbHRlclJlc3VsdCI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXZpc2VkU3RhcnRUaW1lIiB0eXBlPSJ4czpkYXRl VGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldmlz ZWRQcm9jZXNzaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldmlzZWRBZ2dyZWdhdGVDb25maWd1cmF0aW9u IiB0eXBlPSJ0bnM6QWdncmVnYXRlQ29uZmlndXJhdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9u Pg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9IkFnZ3JlZ2F0ZUZpbHRlclJlc3VsdCIgdHlwZT0idG5zOkFnZ3JlZ2F0ZUZp bHRlclJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTW9uaXRvcmluZ1BhcmFt ZXRlcnMiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVu dEhhbmRsZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNhbXBsaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmlsdGVyIiB0eXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJRdWV1ZVNpemUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjYXJkT2xkZXN0IiB0eXBlPSJ4czpi b29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRvcmluZ1BhcmFtZXRlcnMiIHR5cGU9 InRuczpNb25pdG9yaW5nUGFyYW1ldGVycyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TW9uaXRvcmVkSXRlbUNyZWF0ZVJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ikl0ZW1Ub01vbml0b3IiIHR5cGU9InRuczpSZWFkVmFsdWVJZCIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1v bml0b3JpbmdNb2RlIiB0eXBlPSJ0bnM6TW9uaXRvcmluZ01vZGUiIG1pbk9jY3Vycz0iMCIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RlZFBhcmFtZXRlcnMiIHR5cGU9InRuczpN b25pdG9yaW5nUGFyYW1ldGVycyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJNb25pdG9yZWRJdGVtQ3JlYXRlUmVxdWVzdCIgdHlwZT0idG5zOk1vbml0b3JlZEl0ZW1DcmVh dGVSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJ dGVtQ3JlYXRlUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTW9uaXRvcmVkSXRlbUNyZWF0ZVJlcXVlc3QiIHR5cGU9InRuczpNb25pdG9yZWRJdGVt Q3JlYXRlUmVxdWVzdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbUNyZWF0ZVJlcXVlc3QiIHR5cGU9 InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtQ3JlYXRlUmVxdWVzdCIgbmlsbGFibGU9InRydWUiPjwv eHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTW9uaXRvcmVkSXRlbUNyZWF0 ZVJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3Rh dHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTW9uaXRvcmVkSXRlbUlkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFNhbXBsaW5nSW50 ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmV2aXNlZFF1ZXVlU2l6ZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlclJlc3VsdCIgdHlwZT0idWE6 RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1v bml0b3JlZEl0ZW1DcmVhdGVSZXN1bHQiIHR5cGU9InRuczpNb25pdG9yZWRJdGVtQ3JlYXRlUmVz dWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJdGVtQ3Jl YXRlUmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJN b25pdG9yZWRJdGVtQ3JlYXRlUmVzdWx0IiB0eXBlPSJ0bnM6TW9uaXRvcmVkSXRlbUNyZWF0ZVJl c3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbUNyZWF0ZVJlc3VsdCIgdHlwZT0idG5zOkxpc3RP Zk1vbml0b3JlZEl0ZW1DcmVhdGVSZXN1bHQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNyZWF0ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRl ciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZCIgdHlwZT0ieHM6dW5z aWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRpbWVz dGFtcHNUb1JldHVybiIgdHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXRlbXNUb0NyZWF0ZSIgdHlwZT0idG5zOkxp c3RPZk1vbml0b3JlZEl0ZW1DcmVhdGVSZXF1ZXN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9IkNyZWF0ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgdHlwZT0idG5zOkNyZWF0 ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ3Jl YXRlTW9uaXRvcmVkSXRlbXNSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IlJlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtQ3JlYXRlUmVzdWx0IiBtaW5P Y2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlh Z25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDcmVhdGVNb25pdG9yZWRJdGVtc1Jlc3BvbnNlIiB0 eXBlPSJ0bnM6Q3JlYXRlTW9uaXRvcmVkSXRlbXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTW9uaXRvcmVkSXRlbU1vZGlmeVJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3JlZEl0ZW1JZCIgdHlwZT0ieHM6dW5z aWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVl c3RlZFBhcmFtZXRlcnMiIHR5cGU9InRuczpNb25pdG9yaW5nUGFyYW1ldGVycyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJNb25pdG9yZWRJdGVtTW9kaWZ5UmVxdWVzdCIg dHlwZT0idG5zOk1vbml0b3JlZEl0ZW1Nb2RpZnlSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJdGVtTW9kaWZ5UmVxdWVzdCI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRvcmVkSXRlbU1vZGlmeVJlcXVl c3QiIHR5cGU9InRuczpNb25pdG9yZWRJdGVtTW9kaWZ5UmVxdWVzdCIgbWluT2NjdXJzPSIwIiBt YXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTW9uaXRv cmVkSXRlbU1vZGlmeVJlcXVlc3QiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtTW9kaWZ5 UmVxdWVzdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iTW9uaXRvcmVkSXRlbU1vZGlmeVJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFNhbXBsaW5n SW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUmV2aXNlZFF1ZXVlU2l6ZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlclJlc3VsdCIgdHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ik1vbml0b3JlZEl0ZW1Nb2RpZnlSZXN1bHQiIHR5cGU9InRuczpNb25pdG9yZWRJdGVtTW9kaWZ5 UmVzdWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJdGVt TW9kaWZ5UmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJNb25pdG9yZWRJdGVtTW9kaWZ5UmVzdWx0IiB0eXBlPSJ0bnM6TW9uaXRvcmVkSXRlbU1vZGlm eVJlc3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbU1vZGlmeVJlc3VsdCIgdHlwZT0idG5zOkxp c3RPZk1vbml0b3JlZEl0ZW1Nb2RpZnlSZXN1bHQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1vZGlmeU1vbml0b3JlZEl0ZW1zUmVxdWVz dCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhl YWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZCIgdHlwZT0ieHM6 dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRp bWVzdGFtcHNUb1JldHVybiIgdHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXRlbXNUb01vZGlmeSIgdHlwZT0idG5z Okxpc3RPZk1vbml0b3JlZEl0ZW1Nb2RpZnlSZXF1ZXN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ik1vZGlmeU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgdHlwZT0idG5zOk1v ZGlmeU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TW9kaWZ5TW9uaXRvcmVkSXRlbXNSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRl ciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtTW9kaWZ5UmVzdWx0IiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i RGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJNb2RpZnlNb25pdG9yZWRJdGVtc1Jlc3BvbnNl IiB0eXBlPSJ0bnM6TW9kaWZ5TW9uaXRvcmVkSXRlbXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iU2V0TW9uaXRvcmluZ01vZGVSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVx dWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRvcmluZ01vZGUiIHR5cGU9 InRuczpNb25pdG9yaW5nTW9kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTW9uaXRvcmVkSXRlbUlkcyIgdHlwZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNldE1vbml0b3JpbmdNb2RlUmVxdWVzdCIgdHlw ZT0idG5zOlNldE1vbml0b3JpbmdNb2RlUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iU2V0TW9uaXRvcmluZ01vZGVSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhl YWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlc3VsdHMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5m b3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IlNldE1vbml0b3JpbmdNb2RlUmVzcG9uc2UiIHR5cGU9InRuczpTZXRN b25pdG9yaW5nTW9kZVJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTZXRU cmlnZ2VyaW5nUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRp b25JZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlRyaWdnZXJpbmdJdGVtSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaW5rc1RvQWRkIiB0eXBlPSJ1 YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJMaW5rc1RvUmVtb3ZlIiB0eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2V0VHJpZ2dlcmluZ1JlcXVlc3Qi IHR5cGU9InRuczpTZXRUcmlnZ2VyaW5nUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iU2V0VHJpZ2dlcmluZ1Jlc3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVy IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iQWRkUmVzdWx0cyIgdHlwZT0idWE6TGlzdE9mU3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFkZERpYWdub3N0aWNJ bmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZW1vdmVSZXN1bHRzIiB0eXBl PSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVtb3ZlRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpM aXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJTZXRUcmlnZ2VyaW5nUmVzcG9uc2UiIHR5cGU9InRuczpTZXRUcmlnZ2VyaW5nUmVzcG9uc2Ui IC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1zUmVxdWVz dCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhl YWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZCIgdHlwZT0ieHM6 dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1v bml0b3JlZEl0ZW1JZHMiIHR5cGU9InVhOkxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVNb25pdG9yZWRJdGVtc1JlcXVlc3QiIHR5cGU9InRu czpEZWxldGVNb25pdG9yZWRJdGVtc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1zUmVzcG9uc2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VI ZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0lu Zm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVNb25pdG9yZWRJdGVtc1Jlc3BvbnNlIiB0eXBlPSJ0bnM6 RGVsZXRlTW9uaXRvcmVkSXRlbXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iQ3JlYXRlU3Vic2NyaXB0aW9uUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJSZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdGVkTGlmZXRpbWVDb3VudCIg dHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4Tm90aWZpY2F0aW9u c1BlclB1Ymxpc2giIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoaW5nRW5hYmxlZCIgdHlwZT0ieHM6Ym9vbGVhbiIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJpb3JpdHkiIHR5cGU9 InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNyZWF0ZVN1YnNjcmlwdGlv blJlcXVlc3QiIHR5cGU9InRuczpDcmVhdGVTdWJzY3JpcHRpb25SZXF1ZXN0IiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJDcmVhdGVTdWJzY3JpcHRpb25SZXNwb25zZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9 InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFB1Ymxp c2hpbmdJbnRlcnZhbCIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXZpc2VkTGlmZXRpbWVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJ bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldmlzZWRNYXhL ZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJDcmVhdGVTdWJzY3JpcHRpb25SZXNwb25zZSIgdHlwZT0idG5zOkNyZWF0ZVN1YnNjcmlwdGlv blJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJNb2RpZnlTdWJzY3JpcHRp b25SZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0 eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RlZExpZmV0aW1lQ291 bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJSZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJ bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1heE5vdGlmaWNh dGlvbnNQZXJQdWJsaXNoIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJpb3JpdHkiIHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ik1vZGlmeVN1YnNjcmlwdGlvblJlcXVlc3QiIHR5cGU9InRu czpNb2RpZnlTdWJzY3JpcHRpb25SZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJNb2RpZnlTdWJzY3JpcHRpb25SZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRl ciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJldmlzZWRQdWJsaXNoaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZExpZmV0aW1lQ291bnQiIHR5 cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJSZXZpc2VkTWF4S2VlcEFsaXZlQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTW9kaWZ5U3Vic2NyaXB0aW9uUmVzcG9uc2UiIHR5cGU9InRuczpN b2RpZnlTdWJzY3JpcHRpb25SZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i U2V0UHVibGlzaGluZ01vZGVSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1 Ymxpc2hpbmdFbmFibGVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZHMiIHR5cGU9InVhOkxpc3RPZlVJbnQz MiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXRQdWJsaXNoaW5nTW9k ZVJlcXVlc3QiIHR5cGU9InRuczpTZXRQdWJsaXNoaW5nTW9kZVJlcXVlc3QiIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9IlNldFB1Ymxpc2hpbmdNb2RlUmVzcG9uc2UiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0 bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i RGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXRQdWJsaXNoaW5nTW9kZVJlc3BvbnNlIiB0 eXBlPSJ0bnM6U2V0UHVibGlzaGluZ01vZGVSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iTm90aWZpY2F0aW9uTWVzc2FnZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU2VxdWVuY2VOdW1iZXIiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoVGltZSIgdHlw ZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 Ik5vdGlmaWNhdGlvbkRhdGEiIHR5cGU9InVhOkxpc3RPZkV4dGVuc2lvbk9iamVjdCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJOb3RpZmljYXRpb25NZXNzYWdlIiB0eXBl PSJ0bnM6Tm90aWZpY2F0aW9uTWVzc2FnZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i Tm90aWZpY2F0aW9uRGF0YSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik5vdGlmaWNhdGlvbkRh dGEiIHR5cGU9InRuczpOb3RpZmljYXRpb25EYXRhIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJEYXRhQ2hhbmdlTm90aWZpY2F0aW9uIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4 ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk5vdGlmaWNhdGlvbkRh dGEiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i TW9uaXRvcmVkSXRlbXMiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtTm90aWZpY2F0aW9u IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQog ICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhQ2hhbmdlTm90aWZpY2F0aW9uIiB0 eXBlPSJ0bnM6RGF0YUNoYW5nZU5vdGlmaWNhdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTW9uaXRvcmVkSXRlbU5vdGlmaWNhdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50SGFuZGxlIiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIHR5cGU9InVh OkRhdGFWYWx1ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJNb25pdG9y ZWRJdGVtTm90aWZpY2F0aW9uIiB0eXBlPSJ0bnM6TW9uaXRvcmVkSXRlbU5vdGlmaWNhdGlvbiIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbU5vdGlmaWNh dGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRv cmVkSXRlbU5vdGlmaWNhdGlvbiIgdHlwZT0idG5zOk1vbml0b3JlZEl0ZW1Ob3RpZmljYXRpb24i IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZk1vbml0b3JlZEl0ZW1Ob3RpZmljYXRpb24iIHR5cGU9InRuczpMaXN0T2ZNb25p dG9yZWRJdGVtTm90aWZpY2F0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJFdmVudE5vdGlmaWNhdGlvbkxpc3QiPg0KICAgIDx4czpj b21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0 bnM6Tm90aWZpY2F0aW9uRGF0YSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJFdmVudHMiIHR5cGU9InRuczpMaXN0T2ZFdmVudEZpZWxkTGlzdCIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4N CiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV2ZW50Tm90aWZpY2F0aW9uTGlzdCIg dHlwZT0idG5zOkV2ZW50Tm90aWZpY2F0aW9uTGlzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iRXZlbnRGaWVsZExpc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkNsaWVudEhhbmRsZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkV2ZW50RmllbGRzIiB0eXBlPSJ1YTpMaXN0 T2ZWYXJpYW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV2ZW50Rmll bGRMaXN0IiB0eXBlPSJ0bnM6RXZlbnRGaWVsZExpc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZkV2ZW50RmllbGRMaXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJFdmVudEZpZWxkTGlzdCIgdHlwZT0idG5zOkV2ZW50RmllbGRMaXN0 IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZFdmVudEZpZWxkTGlzdCIgdHlwZT0idG5zOkxpc3RPZkV2ZW50RmllbGRMaXN0 IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJIaXN0b3J5RXZlbnRGaWVsZExpc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkV2ZW50RmllbGRzIiB0eXBlPSJ1YTpMaXN0T2ZWYXJpYW50IiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlFdmVudEZpZWxkTGlzdCIgdHlw ZT0idG5zOkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iTGlzdE9mSGlzdG9yeUV2ZW50RmllbGRMaXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5RXZlbnRGaWVsZExpc3QiIHR5cGU9InRuczpIaXN0 b3J5RXZlbnRGaWVsZExpc3QiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgdHlwZT0i dG5zOkxpc3RPZkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU3RhdHVzQ2hhbmdlTm90aWZpY2F0aW9u Ij4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRl bnNpb24gYmFzZT0idG5zOk5vdGlmaWNhdGlvbkRhdGEiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzIiB0eXBlPSJ1YTpTdGF0dXNDb2Rl IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3Rp Y0luZm8iIHR5cGU9InVhOkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iU3RhdHVzQ2hhbmdlTm90aWZpY2F0aW9uIiB0eXBlPSJ0bnM6U3RhdHVzQ2hhbmdl Tm90aWZpY2F0aW9uIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdWJzY3JpcHRpb25B Y2tub3dsZWRnZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VxdWVuY2VOdW1iZXIiIHR5cGU9InhzOnVuc2ln bmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU3Vic2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50 IiB0eXBlPSJ0bnM6U3Vic2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50IiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZTdWJzY3JpcHRpb25BY2tub3dsZWRnZW1lbnQiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbkFja25vd2xl ZGdlbWVudCIgdHlwZT0idG5zOlN1YnNjcmlwdGlvbkFja25vd2xlZGdlbWVudCIgbWluT2NjdXJz PSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpz ZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9m U3Vic2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50IiB0eXBlPSJ0bnM6TGlzdE9mU3Vic2NyaXB0aW9u QWNrbm93bGVkZ2VtZW50IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJQdWJsaXNoUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFk ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTdWJzY3JpcHRpb25BY2tub3dsZWRnZW1lbnRzIiB0eXBlPSJ0bnM6TGlzdE9mU3Vic2Ny aXB0aW9uQWNrbm93bGVkZ2VtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9IlB1Ymxpc2hSZXF1ZXN0IiB0eXBlPSJ0bnM6UHVibGlzaFJlcXVlc3QiIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9IlB1Ymxpc2hSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25z ZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXZhaWxhYmxlU2VxdWVuY2VOdW1iZXJz IiB0eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb3JlTm90aWZpY2F0aW9ucyIgdHlwZT0ieHM6Ym9v bGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm90aWZpY2F0 aW9uTWVzc2FnZSIgdHlwZT0idG5zOk5vdGlmaWNhdGlvbk1lc3NhZ2UiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBl PSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZE aWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJs aXNoUmVzcG9uc2UiIHR5cGU9InRuczpQdWJsaXNoUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9IlJlcHVibGlzaFJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVy IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU3Vic2NyaXB0aW9uSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXRyYW5zbWl0U2VxdWVuY2VOdW1iZXIiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoUmVxdWVzdCIg dHlwZT0idG5zOlJlcHVibGlzaFJlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IlJlcHVibGlzaFJlc3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm90aWZp Y2F0aW9uTWVzc2FnZSIgdHlwZT0idG5zOk5vdGlmaWNhdGlvbk1lc3NhZ2UiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoUmVzcG9uc2UiIHR5cGU9InRuczpS ZXB1Ymxpc2hSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVHJhbnNmZXJS ZXN1bHQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0YXR1 c0NvZGUiIHR5cGU9InVhOlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgdHlwZT0idWE6TGlzdE9mVUlu dDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRyYW5zZmVyUmVzdWx0 IiB0eXBlPSJ0bnM6VHJhbnNmZXJSZXN1bHQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 Ikxpc3RPZlRyYW5zZmVyUmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJUcmFuc2ZlclJlc3VsdCIgdHlwZT0idG5zOlRyYW5zZmVyUmVzdWx0IiBtaW5P Y2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJM aXN0T2ZUcmFuc2ZlclJlc3VsdCIgdHlwZT0idG5zOkxpc3RPZlRyYW5zZmVyUmVzdWx0IiBuaWxs YWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJUcmFu c2ZlclN1YnNjcmlwdGlvbnNSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1 YnNjcmlwdGlvbklkcyIgdHlwZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VuZEluaXRpYWxWYWx1ZXMi IHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc2ZlclN1YnNjcmlw dGlvbnNSZXF1ZXN0IiB0eXBlPSJ0bnM6VHJhbnNmZXJTdWJzY3JpcHRpb25zUmVxdWVzdCIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVHJhbnNmZXJTdWJzY3JpcHRpb25zUmVzcG9uc2Ui Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVh ZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ0bnM6TGlzdE9m VHJhbnNmZXJSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0 aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRyYW5zZmVyU3Vi c2NyaXB0aW9uc1Jlc3BvbnNlIiB0eXBlPSJ0bnM6VHJhbnNmZXJTdWJzY3JpcHRpb25zUmVzcG9u c2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlvbnNSZXF1 ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0 SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkcyIgdHlwZT0i dWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRl bGV0ZVN1YnNjcmlwdGlvbnNSZXF1ZXN0IiB0eXBlPSJ0bnM6RGVsZXRlU3Vic2NyaXB0aW9uc1Jl cXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlvbnNS ZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVz cG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3VsdHMiIHR5cGU9InVh Okxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdu b3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVN1 YnNjcmlwdGlvbnNSZXNwb25zZSIgdHlwZT0idG5zOkRlbGV0ZVN1YnNjcmlwdGlvbnNSZXNwb25z ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQnVpbGRJbmZvIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQcm9kdWN0VXJpIiB0eXBlPSJ4czpzdHJp bmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJNYW51ZmFjdHVyZXJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQcm9kdWN0TmFtZSIgdHlw ZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iU29mdHdhcmVWZXJzaW9uIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCdWlsZE51 bWJlciIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnVpbGREYXRlIiB0eXBlPSJ4czpkYXRlVGltZSIgbWlu T2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IkJ1aWxkSW5mbyIgdHlwZT0idG5zOkJ1aWxkSW5mbyIgLz4NCg0K ICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iUmVkdW5kYW5jeVN1cHBvcnQiPg0KICAgIDx4czpyZXN0 cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJO b25lXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkNvbGRfMSIgLz4NCiAgICAg IDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iV2FybV8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJIb3RfMyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVHJhbnNwYXJl bnRfNCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSG90QW5kTWlycm9yZWRfNSIg Lz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IlJlZHVuZGFuY3lTdXBwb3J0IiB0eXBlPSJ0bnM6UmVkdW5kYW5jeVN1cHBvcnQi IC8+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IlNlcnZlclN0YXRlIj4NCiAgICA8eHM6cmVz dHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i UnVubmluZ18wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJGYWlsZWRfMSIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9Db25maWd1cmF0aW9uXzIiIC8+DQogICAg ICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlN1c3BlbmRlZF8zIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJTaHV0ZG93bl80IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVl PSJUZXN0XzUiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkNvbW11bmljYXRpb25G YXVsdF82IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJVbmtub3duXzciIC8+DQog ICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJTZXJ2ZXJTdGF0ZSIgdHlwZT0idG5zOlNlcnZlclN0YXRlIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJSZWR1bmRhbnRTZXJ2ZXJEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVySWQiIHR5cGU9InhzOnN0cmluZyIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNl cnZpY2VMZXZlbCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJTdGF0ZSIgdHlwZT0idG5zOlNlcnZlclN0YXRlIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiIHR5cGU9InRuczpS ZWR1bmRhbnRTZXJ2ZXJEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlz dE9mUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlJlZHVuZGFudFNlcnZlckRhdGFUeXBlIiB0eXBlPSJ0bnM6UmVkdW5k YW50U2VydmVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlZHVuZGFudFNlcnZlckRhdGFUeXBlIiB0eXBl PSJ0bnM6TGlzdE9mUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hz OmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVuZHBvaW50VXJsTGlzdERhdGFU eXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmRwb2lu dFVybExpc3QiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJFbmRwb2ludFVybExpc3REYXRhVHlwZSIgdHlwZT0idG5zOkVuZHBvaW50 VXJsTGlzdERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZFbmRw b2ludFVybExpc3REYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRW5kcG9pbnRVcmxMaXN0RGF0YVR5cGUiIHR5cGU9InRuczpFbmRwb2ludFVybExp c3REYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mRW5kcG9pbnRVcmxMaXN0RGF0YVR5cGUiIHR5cGU9InRuczpM aXN0T2ZFbmRwb2ludFVybExpc3REYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTmV0d29ya0dyb3VwRGF0YVR5cGUiPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlclVyaSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTmV0d29ya1BhdGhzIiB0eXBlPSJ0bnM6TGlzdE9mRW5kcG9pbnRVcmxMaXN0 RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0d29ya0dy b3VwRGF0YVR5cGUiIHR5cGU9InRuczpOZXR3b3JrR3JvdXBEYXRhVHlwZSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTmV0d29ya0dyb3VwRGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5ldHdvcmtHcm91cERhdGFUeXBlIiB0 eXBlPSJ0bnM6TmV0d29ya0dyb3VwRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZk5ldHdvcmtHcm91cERhdGFU eXBlIiB0eXBlPSJ0bnM6TGlzdE9mTmV0d29ya0dyb3VwRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVl Ij48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlNhbXBsaW5nSW50ZXJ2 YWxEaWFnbm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJTYW1wbGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3JlZEl0ZW1Db3VudCIgdHlwZT0i eHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 Ik1heE1vbml0b3JlZEl0ZW1Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc2FibGVkTW9uaXRvcmVkSXRlbUNvdW50 IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNhbXBsaW5nSW50 ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6U2FtcGxpbmdJbnRlcnZhbERpYWdu b3N0aWNzRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNhbXBs aW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTYW1wbGluZ0ludGVydmFsRGlhZ25vc3RpY3NEYXRhVHlwZSIg dHlwZT0idG5zOlNhbXBsaW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiBtaW5PY2N1cnM9 IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZT YW1wbGluZ0ludGVydmFsRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlNhbXBs aW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTZXJ2ZXJEaWFnbm9zdGljc1N1bW1hcnlE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vy dmVyVmlld0NvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3VycmVudFNlc3Npb25Db3VudCIgdHlwZT0ieHM6dW5zaWdu ZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkN1bXVsYXRl ZFNlc3Npb25Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5UmVqZWN0ZWRTZXNzaW9uQ291bnQiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJSZWplY3RlZFNlc3Npb25Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlc3Npb25UaW1lb3V0Q291bnQiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJTZXNzaW9uQWJvcnRDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkN1cnJlbnRTdWJzY3JpcHRpb25Db3VudCIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkN1bXVsYXRlZFN1YnNjcmlwdGlvbkNvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHVibGlzaGluZ0ludGVydmFs Q291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJTZWN1cml0eVJlamVjdGVkUmVxdWVzdHNDb3VudCIgdHlwZT0ieHM6dW5z aWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlamVj dGVkUmVxdWVzdHNDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJTZXJ2ZXJEaWFnbm9zdGljc1N1bW1hcnlEYXRhVHlwZSIgdHlwZT0idG5zOlNlcnZlckRp YWdub3N0aWNzU3VtbWFyeURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJT ZXJ2ZXJTdGF0dXNEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iU3RhcnRUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3VycmVudFRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0ZSIgdHlwZT0idG5z OlNlcnZlclN0YXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJC dWlsZEluZm8iIHR5cGU9InRuczpCdWlsZEluZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWNvbmRzVGlsbFNodXRkb3duIiB0eXBl PSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2h1dGRvd25SZWFzb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyU3RhdHVzRGF0YVR5cGUiIHR5cGU9InRuczpT ZXJ2ZXJTdGF0dXNEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU2Vzc2lv bkRpYWdub3N0aWNzRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlNlc3Npb25JZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vzc2lvbk5hbWUiIHR5cGU9 InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkNsaWVudERlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6QXBwbGljYXRpb25EZXNj cmlwdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlNlcnZlclVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5kcG9pbnRVcmwiIHR5cGU9 InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkxvY2FsZUlkcyIgdHlwZT0idWE6TGlzdE9mU3RyaW5nIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWN0dWFsU2Vz c2lvblRpbWVvdXQiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTWF4UmVzcG9uc2VNZXNzYWdlU2l6ZSIgdHlwZT0ieHM6dW5zaWduZWRJ bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVudENvbm5l Y3Rpb25UaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iQ2xpZW50TGFzdENvbnRhY3RUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3VycmVudFN1YnNjcmlw dGlvbnNDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkN1cnJlbnRNb25pdG9yZWRJdGVtc0NvdW50IiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3Vy cmVudFB1Ymxpc2hSZXF1ZXN0c0luUXVldWUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUb3RhbFJlcXVlc3RDb3VudCIgdHlw ZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVbmF1dGhvcml6ZWRSZXF1ZXN0Q291bnQi IHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJSZWFkQ291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5P Y2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSGlz dG9yeVJlYWRDb3VudCIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXcml0ZUNv dW50IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlVcGRhdGVDb3Vu dCIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDYWxsQ291bnQiIHR5cGU9InRu czpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlTW9uaXRvcmVkSXRlbXNDb3VudCIgdHlw ZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb2RpZnlNb25pdG9yZWRJdGVtc0NvdW50 IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNldE1vbml0b3JpbmdNb2RlQ291 bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2V0VHJpZ2dlcmluZ0NvdW50 IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1z Q291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlU3Vic2NyaXB0 aW9uQ291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9kaWZ5U3Vic2Ny aXB0aW9uQ291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2V0UHVibGlz aGluZ01vZGVDb3VudCIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNo Q291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoQ291bnQi IHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHJhbnNmZXJTdWJzY3JpcHRpb25z Q291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlU3Vic2NyaXB0 aW9uc0NvdW50IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFkZE5vZGVzQ291 bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWRkUmVmZXJlbmNlc0NvdW50 IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZU5vZGVzQ291bnQiIHR5 cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlUmVmZXJlbmNlc0NvdW50IiB0 eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZUNvdW50IiB0eXBlPSJ0bnM6 U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZU5leHRDb3VudCIgdHlwZT0idG5zOlNlcnZp Y2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc2xhdGVCcm93c2VQYXRoc1RvTm9kZUlkc0NvdW50IiB0 eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlF1ZXJ5Rmlyc3RDb3VudCIgdHlwZT0i dG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeU5leHRDb3VudCIgdHlwZT0idG5zOlNl cnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWdpc3Rlck5vZGVzQ291bnQiIHR5cGU9InRuczpTZXJ2 aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iVW5yZWdpc3Rlck5vZGVzQ291bnQiIHR5cGU9InRuczpTZXJ2 aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlNlc3Npb25EaWFnbm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6U2Vzc2lvbkRpYWdub3N0aWNz RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNlc3Npb25EaWFn bm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTZXNzaW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0idG5zOlNlc3Npb25EaWFnbm9z dGljc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTZXNzaW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0i dG5zOkxpc3RPZlNlc3Npb25EaWFnbm9zdGljc0RhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTZXNzaW9uU2VjdXJpdHlEaWFn bm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTZXNzaW9uSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVudFVzZXJJZE9mU2Vzc2lvbiIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50VXNlcklkSGlzdG9yeSIgdHlwZT0idWE6TGlzdE9mU3Ry aW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iQXV0aGVudGljYXRpb25NZWNoYW5pc20iIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuY29kaW5n IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRQcm90b2NvbCIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i U2VjdXJpdHlNb2RlIiB0eXBlPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VjdXJpdHlQb2xpY3lVcmkiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkNsaWVudENlcnRpZmljYXRlIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vzc2lvblNlY3VyaXR5RGlhZ25vc3Rp Y3NEYXRhVHlwZSIgdHlwZT0idG5zOlNlc3Npb25TZWN1cml0eURpYWdub3N0aWNzRGF0YVR5cGUi IC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNlc3Npb25TZWN1cml0eURpYWdu b3N0aWNzRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlNlc3Npb25TZWN1cml0eURpYWdub3N0aWNzRGF0YVR5cGUiIHR5cGU9InRuczpTZXNzaW9u U2VjdXJpdHlEaWFnbm9zdGljc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5i b3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTZXNzaW9uU2VjdXJpdHlEaWFn bm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mU2Vzc2lvblNlY3VyaXR5RGlhZ25vc3Rp Y3NEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iU2VydmljZUNvdW50ZXJEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVG90YWxDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVycm9yQ291bnQiIHR5 cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmljZUNvdW50ZXJE YXRhVHlwZSIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IlN0YXR1c1Jlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm8iIHR5cGU9 InVhOkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlN0YXR1c1Jlc3VsdCIgdHlwZT0idG5zOlN0YXR1c1Jlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mU3RhdHVzUmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNSZXN1bHQiIHR5cGU9InRuczpTdGF0dXNSZXN1bHQi IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZlN0YXR1c1Jlc3VsdCIgdHlwZT0idG5zOkxpc3RPZlN0YXR1c1Jlc3VsdCIgbmls bGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU3Vi c2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU2Vzc2lvbklkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRp b25JZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlByaW9yaXR5IiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hpbmdJbnRlcnZhbCIgdHlwZT0i eHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhL ZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ik1heExpZmV0aW1lQ291bnQiIHR5cGU9InhzOnVuc2lnbmVk SW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhOb3RpZmlj YXRpb25zUGVyUHVibGlzaCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hpbmdFbmFibGVkIiB0eXBlPSJ4czpib29s ZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb2RpZnlDb3Vu dCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkVuYWJsZUNvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlzYWJsZUNvdW50IiB0eXBlPSJ4czp1bnNp Z25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJs aXNoUmVxdWVzdENvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoTWVzc2FnZVJlcXVlc3RDb3VudCIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlcHVibGlzaE1lc3NhZ2VDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRyYW5zZmVyUmVxdWVzdENvdW50IiB0 eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iVHJhbnNmZXJyZWRUb0FsdENsaWVudENvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHJhbnNmZXJyZWRUb1Nh bWVDbGllbnRDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hSZXF1ZXN0Q291bnQiIHR5cGU9InhzOnVuc2ln bmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhQ2hh bmdlTm90aWZpY2F0aW9uc0NvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXZlbnROb3RpZmljYXRpb25zQ291bnQiIHR5 cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJOb3RpZmljYXRpb25zQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXRlUHVibGlzaFJlcXVlc3RDb3VudCIg dHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkN1cnJlbnRLZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkN1cnJlbnRMaWZldGltZUNvdW50 IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVW5hY2tub3dsZWRnZWRNZXNzYWdlQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjYXJkZWRNZXNz YWdlQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJNb25pdG9yZWRJdGVtQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNhYmxlZE1vbml0 b3JlZEl0ZW1Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3JpbmdRdWV1ZU92ZXJmbG93Q291bnQiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJOZXh0U2VxdWVuY2VOdW1iZXIiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFdmVudFF1ZXVlT3ZlckZsb3dDb3VudCIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25EaWFn bm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6U3Vic2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlw ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3Vic2NyaXB0aW9uRGlhZ25v c3RpY3NEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU3Vic2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0idG5zOlN1YnNjcmlwdGlv bkRpYWdub3N0aWNzRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN1YnNjcmlwdGlvbkRpYWdub3N0aWNzRGF0 YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZTdWJzY3JpcHRpb25EaWFnbm9zdGljc0RhdGFUeXBlIiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJN b2RlbENoYW5nZVN0cnVjdHVyZVZlcmJNYXNrIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0i eHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9kZUFkZGVkXzEiIC8+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9Ik5vZGVEZWxldGVkXzIiIC8+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlZmVyZW5jZUFkZGVkXzQiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IlJlZmVyZW5jZURlbGV0ZWRfOCIgLz4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iRGF0YVR5cGVDaGFuZ2VkXzE2IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTW9kZWxDaGFuZ2VTdHJ1 Y3R1cmVWZXJiTWFzayIgdHlwZT0idG5zOk1vZGVsQ2hhbmdlU3RydWN0dXJlVmVyYk1hc2siIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1vZGVsQ2hhbmdlU3RydWN0dXJlRGF0YVR5cGUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFmZmVjdGVkIiB0 eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJBZmZlY3RlZFR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZlcmIiIHR5 cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1vZGVsQ2hhbmdlU3Ry dWN0dXJlRGF0YVR5cGUiIHR5cGU9InRuczpNb2RlbENoYW5nZVN0cnVjdHVyZURhdGFUeXBlIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb2RlbENoYW5nZVN0cnVjdHVyZURh dGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb2Rl bENoYW5nZVN0cnVjdHVyZURhdGFUeXBlIiB0eXBlPSJ0bnM6TW9kZWxDaGFuZ2VTdHJ1Y3R1cmVE YXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mTW9kZWxDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlwZSIgdHlwZT0idG5z Okxpc3RPZk1vZGVsQ2hhbmdlU3RydWN0dXJlRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hz OmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlNlbWFudGljQ2hhbmdlU3RydWN0 dXJlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IkFmZmVjdGVkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZmZlY3RlZFR5cGUiIHR5cGU9InVhOk5vZGVJ ZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZW1hbnRpY0NoYW5nZVN0 cnVjdHVyZURhdGFUeXBlIiB0eXBlPSJ0bnM6U2VtYW50aWNDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlw ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU2VtYW50aWNDaGFuZ2VTdHJ1 Y3R1cmVEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2VtYW50aWNDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlwZSIgdHlwZT0idG5zOlNlbWFudGljQ2hh bmdlU3RydWN0dXJlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlNlbWFudGljQ2hhbmdlU3RydWN0dXJlRGF0 YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZTZW1hbnRpY0NoYW5nZVN0cnVjdHVyZURhdGFUeXBlIiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJS YW5nZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG93IiB0 eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IkhpZ2giIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJhbmdlIiB0eXBl PSJ0bnM6UmFuZ2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVVSW5mb3JtYXRpb24i Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWVzcGFjZVVy aSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iVW5pdElkIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlOYW1lIiB0eXBlPSJ1YTpMb2NhbGl6 ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRVVJbmZvcm1hdGlvbiIgdHlwZT0idG5zOkVVSW5m b3JtYXRpb24iIC8+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkF4aXNTY2FsZUVudW1lcmF0 aW9uIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iTGluZWFyXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFs dWU9IkxvZ18xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJMbl8yIiAvPg0KICAg IDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iQXhpc1NjYWxlRW51bWVyYXRpb24iIHR5cGU9InRuczpBeGlzU2NhbGVFbnVtZXJhdGlvbiIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ29tcGxleE51bWJlclR5cGUiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlYWwiIHR5cGU9InhzOmZsb2F0 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbWFnaW5hcnkiIHR5 cGU9InhzOmZsb2F0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29tcGxleE51bWJlclR5cGUiIHR5 cGU9InRuczpDb21wbGV4TnVtYmVyVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i RG91YmxlQ29tcGxleE51bWJlclR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlYWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSW1hZ2luYXJ5IiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJEb3VibGVDb21wbGV4TnVtYmVyVHlwZSIgdHlwZT0idG5zOkRvdWJsZUNv bXBsZXhOdW1iZXJUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBeGlzSW5mb3Jt YXRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZ2lu ZWVyaW5nVW5pdHMiIHR5cGU9InRuczpFVUluZm9ybWF0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRVVSYW5nZSIgdHlwZT0idG5z OlJhbmdlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVGl0bGUiIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBeGlzU2NhbGVUeXBlIiB0 eXBlPSJ0bnM6QXhpc1NjYWxlRW51bWVyYXRpb24iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkF4aXNTdGVwcyIgdHlwZT0idWE6TGlzdE9mRG91YmxlIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkF4aXNJbmZvcm1hdGlvbiIgdHlwZT0idG5z OkF4aXNJbmZvcm1hdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iWFZUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJYIiB0eXBlPSJ4czpk b3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0 eXBlPSJ4czpmbG9hdCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlhWVHlwZSIgdHlwZT0idG5zOlhW VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUHJvZ3JhbURpYWdub3N0aWNEYXRh VHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRl U2Vzc2lvbklkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDcmVhdGVDbGllbnROYW1lIiB0eXBlPSJ4czpz dHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJJbnZvY2F0aW9uQ3JlYXRpb25UaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGFzdFRyYW5zaXRpb25UaW1lIiB0 eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iTGFzdE1ldGhvZENhbGwiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RTZXNzaW9uSWQi IHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RJbnB1dEFyZ3VtZW50cyIgdHlwZT0idG5zOkxp c3RPZkFyZ3VtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTGFzdE1ldGhvZE91dHB1dEFyZ3VtZW50cyIgdHlwZT0idG5zOkxpc3RP ZkFyZ3VtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTGFzdE1ldGhvZENhbGxUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGFzdE1ldGhvZFJldHVyblN0YXR1 cyIgdHlwZT0idG5zOlN0YXR1c1Jlc3VsdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJQcm9ncmFtRGlhZ25vc3RpY0RhdGFUeXBlIiB0eXBlPSJ0bnM6UHJvZ3JhbURpYWdu b3N0aWNEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUHJvZ3JhbURpYWdu b3N0aWMyRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNyZWF0ZVNlc3Npb25JZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlQ2xpZW50TmFtZSIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iSW52b2NhdGlvbkNyZWF0aW9uVGltZSIgdHlwZT0ieHM6ZGF0ZVRp bWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RUcmFuc2l0 aW9uVGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9Ikxhc3RNZXRob2RDYWxsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXN0TWV0aG9k U2Vzc2lvbklkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXN0TWV0aG9kSW5wdXRBcmd1bWVudHMiIHR5 cGU9InRuczpMaXN0T2ZBcmd1bWVudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RPdXRwdXRBcmd1bWVudHMiIHR5cGU9 InRuczpMaXN0T2ZBcmd1bWVudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RJbnB1dFZhbHVlcyIgdHlwZT0idWE6TGlz dE9mVmFyaWFudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9Ikxhc3RNZXRob2RPdXRwdXRWYWx1ZXMiIHR5cGU9InVhOkxpc3RPZlZhcmlh bnQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJMYXN0TWV0aG9kQ2FsbFRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXN0TWV0aG9kUmV0dXJuU3RhdHVzIiB0eXBl PSJ0bnM6U3RhdHVzUmVzdWx0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlByb2dyYW1EaWFnbm9zdGljMkRhdGFUeXBlIiB0eXBlPSJ0bnM6UHJvZ3JhbURpYWdub3N0aWMy RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkFubm90YXRpb24iPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2UiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlVzZXJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBbm5vdGF0aW9uVGltZSIgdHlw ZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJBbm5vdGF0aW9uIiB0eXBlPSJ0 bnM6QW5ub3RhdGlvbiIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iRXhjZXB0aW9uRGV2 aWF0aW9uRm9ybWF0Ij4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAg ICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQWJzb2x1dGVWYWx1ZV8wIiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJQZXJjZW50T2ZWYWx1ZV8xIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJQZXJjZW50T2ZSYW5nZV8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJQZXJjZW50T2ZFVVJhbmdlXzMiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFs dWU9IlVua25vd25fNCIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV4Y2VwdGlvbkRldmlhdGlvbkZvcm1hdCIgdHlwZT0i dG5zOkV4Y2VwdGlvbkRldmlhdGlvbkZvcm1hdCIgLz4NCg0KPC94czpzY2hlbWE+ NamespaceUri A URI that uniquely identifies the dictionary. i=68 i=8252 http://opcfoundation.org/UA/2008/02/Types.xsd Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 i=8252 true KeyValuePair i=69 i=8252 //xs:element[@name='KeyValuePair'] EndpointType i=69 i=8252 //xs:element[@name='EndpointType'] IdentityMappingRuleType i=69 i=8252 //xs:element[@name='IdentityMappingRuleType'] TrustListDataType i=69 i=8252 //xs:element[@name='TrustListDataType'] DataTypeSchemaHeader i=69 i=8252 //xs:element[@name='DataTypeSchemaHeader'] DataTypeDescription i=69 i=8252 //xs:element[@name='DataTypeDescription'] StructureDescription i=69 i=8252 //xs:element[@name='StructureDescription'] EnumDescription i=69 i=8252 //xs:element[@name='EnumDescription'] SimpleTypeDescription i=69 i=8252 //xs:element[@name='SimpleTypeDescription'] UABinaryFileDataType i=69 i=8252 //xs:element[@name='UABinaryFileDataType'] DataSetMetaDataType i=69 i=8252 //xs:element[@name='DataSetMetaDataType'] FieldMetaData i=69 i=8252 //xs:element[@name='FieldMetaData'] ConfigurationVersionDataType i=69 i=8252 //xs:element[@name='ConfigurationVersionDataType'] PublishedDataSetDataType i=69 i=8252 //xs:element[@name='PublishedDataSetDataType'] PublishedDataSetSourceDataType i=69 i=8252 //xs:element[@name='PublishedDataSetSourceDataType'] PublishedVariableDataType i=69 i=8252 //xs:element[@name='PublishedVariableDataType'] PublishedDataItemsDataType i=69 i=8252 //xs:element[@name='PublishedDataItemsDataType'] PublishedEventsDataType i=69 i=8252 //xs:element[@name='PublishedEventsDataType'] DataSetWriterDataType i=69 i=8252 //xs:element[@name='DataSetWriterDataType'] DataSetWriterTransportDataType i=69 i=8252 //xs:element[@name='DataSetWriterTransportDataType'] DataSetWriterMessageDataType i=69 i=8252 //xs:element[@name='DataSetWriterMessageDataType'] PubSubGroupDataType i=69 i=8252 //xs:element[@name='PubSubGroupDataType'] WriterGroupDataType i=69 i=8252 //xs:element[@name='WriterGroupDataType'] WriterGroupTransportDataType i=69 i=8252 //xs:element[@name='WriterGroupTransportDataType'] WriterGroupMessageDataType i=69 i=8252 //xs:element[@name='WriterGroupMessageDataType'] PubSubConnectionDataType i=69 i=8252 //xs:element[@name='PubSubConnectionDataType'] ConnectionTransportDataType i=69 i=8252 //xs:element[@name='ConnectionTransportDataType'] NetworkAddressDataType i=69 i=8252 //xs:element[@name='NetworkAddressDataType'] NetworkAddressUrlDataType i=69 i=8252 //xs:element[@name='NetworkAddressUrlDataType'] ReaderGroupDataType i=69 i=8252 //xs:element[@name='ReaderGroupDataType'] ReaderGroupTransportDataType i=69 i=8252 //xs:element[@name='ReaderGroupTransportDataType'] ReaderGroupMessageDataType i=69 i=8252 //xs:element[@name='ReaderGroupMessageDataType'] DataSetReaderDataType i=69 i=8252 //xs:element[@name='DataSetReaderDataType'] DataSetReaderTransportDataType i=69 i=8252 //xs:element[@name='DataSetReaderTransportDataType'] DataSetReaderMessageDataType i=69 i=8252 //xs:element[@name='DataSetReaderMessageDataType'] SubscribedDataSetDataType i=69 i=8252 //xs:element[@name='SubscribedDataSetDataType'] TargetVariablesDataType i=69 i=8252 //xs:element[@name='TargetVariablesDataType'] FieldTargetDataType i=69 i=8252 //xs:element[@name='FieldTargetDataType'] SubscribedDataSetMirrorDataType i=69 i=8252 //xs:element[@name='SubscribedDataSetMirrorDataType'] PubSubConfigurationDataType i=69 i=8252 //xs:element[@name='PubSubConfigurationDataType'] UadpWriterGroupMessageDataType i=69 i=8252 //xs:element[@name='UadpWriterGroupMessageDataType'] UadpDataSetWriterMessageDataType i=69 i=8252 //xs:element[@name='UadpDataSetWriterMessageDataType'] UadpDataSetReaderMessageDataType i=69 i=8252 //xs:element[@name='UadpDataSetReaderMessageDataType'] JsonWriterGroupMessageDataType i=69 i=8252 //xs:element[@name='JsonWriterGroupMessageDataType'] JsonDataSetWriterMessageDataType i=69 i=8252 //xs:element[@name='JsonDataSetWriterMessageDataType'] JsonDataSetReaderMessageDataType i=69 i=8252 //xs:element[@name='JsonDataSetReaderMessageDataType'] DatagramConnectionTransportDataType i=69 i=8252 //xs:element[@name='DatagramConnectionTransportDataType'] DatagramWriterGroupTransportDataType i=69 i=8252 //xs:element[@name='DatagramWriterGroupTransportDataType'] BrokerConnectionTransportDataType i=69 i=8252 //xs:element[@name='BrokerConnectionTransportDataType'] BrokerWriterGroupTransportDataType i=69 i=8252 //xs:element[@name='BrokerWriterGroupTransportDataType'] BrokerDataSetWriterTransportDataType i=69 i=8252 //xs:element[@name='BrokerDataSetWriterTransportDataType'] BrokerDataSetReaderTransportDataType i=69 i=8252 //xs:element[@name='BrokerDataSetReaderTransportDataType'] RolePermissionType i=69 i=8252 //xs:element[@name='RolePermissionType'] DataTypeDefinition i=69 i=8252 //xs:element[@name='DataTypeDefinition'] StructureField i=69 i=8252 //xs:element[@name='StructureField'] StructureDefinition i=69 i=8252 //xs:element[@name='StructureDefinition'] EnumDefinition i=69 i=8252 //xs:element[@name='EnumDefinition'] Argument i=69 i=8252 //xs:element[@name='Argument'] EnumValueType i=69 i=8252 //xs:element[@name='EnumValueType'] EnumField i=69 i=8252 //xs:element[@name='EnumField'] OptionSet i=69 i=8252 //xs:element[@name='OptionSet'] Union i=69 i=8252 //xs:element[@name='Union'] TimeZoneDataType i=69 i=8252 //xs:element[@name='TimeZoneDataType'] ApplicationDescription i=69 i=8252 //xs:element[@name='ApplicationDescription'] ServerOnNetwork i=69 i=8252 //xs:element[@name='ServerOnNetwork'] UserTokenPolicy i=69 i=8252 //xs:element[@name='UserTokenPolicy'] EndpointDescription i=69 i=8252 //xs:element[@name='EndpointDescription'] RegisteredServer i=69 i=8252 //xs:element[@name='RegisteredServer'] DiscoveryConfiguration i=69 i=8252 //xs:element[@name='DiscoveryConfiguration'] MdnsDiscoveryConfiguration i=69 i=8252 //xs:element[@name='MdnsDiscoveryConfiguration'] SignedSoftwareCertificate i=69 i=8252 //xs:element[@name='SignedSoftwareCertificate'] UserIdentityToken i=69 i=8252 //xs:element[@name='UserIdentityToken'] AnonymousIdentityToken i=69 i=8252 //xs:element[@name='AnonymousIdentityToken'] UserNameIdentityToken i=69 i=8252 //xs:element[@name='UserNameIdentityToken'] X509IdentityToken i=69 i=8252 //xs:element[@name='X509IdentityToken'] IssuedIdentityToken i=69 i=8252 //xs:element[@name='IssuedIdentityToken'] AddNodesItem i=69 i=8252 //xs:element[@name='AddNodesItem'] AddReferencesItem i=69 i=8252 //xs:element[@name='AddReferencesItem'] DeleteNodesItem i=69 i=8252 //xs:element[@name='DeleteNodesItem'] DeleteReferencesItem i=69 i=8252 //xs:element[@name='DeleteReferencesItem'] RelativePathElement i=69 i=8252 //xs:element[@name='RelativePathElement'] RelativePath i=69 i=8252 //xs:element[@name='RelativePath'] EndpointConfiguration i=69 i=8252 //xs:element[@name='EndpointConfiguration'] ContentFilterElement i=69 i=8252 //xs:element[@name='ContentFilterElement'] ContentFilter i=69 i=8252 //xs:element[@name='ContentFilter'] FilterOperand i=69 i=8252 //xs:element[@name='FilterOperand'] ElementOperand i=69 i=8252 //xs:element[@name='ElementOperand'] LiteralOperand i=69 i=8252 //xs:element[@name='LiteralOperand'] AttributeOperand i=69 i=8252 //xs:element[@name='AttributeOperand'] SimpleAttributeOperand i=69 i=8252 //xs:element[@name='SimpleAttributeOperand'] HistoryEvent i=69 i=8252 //xs:element[@name='HistoryEvent'] MonitoringFilter i=69 i=8252 //xs:element[@name='MonitoringFilter'] EventFilter i=69 i=8252 //xs:element[@name='EventFilter'] AggregateConfiguration i=69 i=8252 //xs:element[@name='AggregateConfiguration'] HistoryEventFieldList i=69 i=8252 //xs:element[@name='HistoryEventFieldList'] BuildInfo i=69 i=8252 //xs:element[@name='BuildInfo'] RedundantServerDataType i=69 i=8252 //xs:element[@name='RedundantServerDataType'] EndpointUrlListDataType i=69 i=8252 //xs:element[@name='EndpointUrlListDataType'] NetworkGroupDataType i=69 i=8252 //xs:element[@name='NetworkGroupDataType'] SamplingIntervalDiagnosticsDataType i=69 i=8252 //xs:element[@name='SamplingIntervalDiagnosticsDataType'] ServerDiagnosticsSummaryDataType i=69 i=8252 //xs:element[@name='ServerDiagnosticsSummaryDataType'] ServerStatusDataType i=69 i=8252 //xs:element[@name='ServerStatusDataType'] SessionDiagnosticsDataType i=69 i=8252 //xs:element[@name='SessionDiagnosticsDataType'] SessionSecurityDiagnosticsDataType i=69 i=8252 //xs:element[@name='SessionSecurityDiagnosticsDataType'] ServiceCounterDataType i=69 i=8252 //xs:element[@name='ServiceCounterDataType'] StatusResult i=69 i=8252 //xs:element[@name='StatusResult'] SubscriptionDiagnosticsDataType i=69 i=8252 //xs:element[@name='SubscriptionDiagnosticsDataType'] ModelChangeStructureDataType i=69 i=8252 //xs:element[@name='ModelChangeStructureDataType'] SemanticChangeStructureDataType i=69 i=8252 //xs:element[@name='SemanticChangeStructureDataType'] Range i=69 i=8252 //xs:element[@name='Range'] EUInformation i=69 i=8252 //xs:element[@name='EUInformation'] ComplexNumberType i=69 i=8252 //xs:element[@name='ComplexNumberType'] DoubleComplexNumberType i=69 i=8252 //xs:element[@name='DoubleComplexNumberType'] AxisInformation i=69 i=8252 //xs:element[@name='AxisInformation'] XVType i=69 i=8252 //xs:element[@name='XVType'] ProgramDiagnosticDataType i=69 i=8252 //xs:element[@name='ProgramDiagnosticDataType'] ProgramDiagnostic2DataType i=69 i=8252 //xs:element[@name='ProgramDiagnostic2DataType'] Annotation i=69 i=8252 //xs:element[@name='Annotation'] Default JSON i=14533 i=76 Default JSON i=15528 i=76 Default JSON i=15634 i=76 Default JSON i=338 i=76 Default JSON i=853 i=76 Default JSON i=11943 i=76 Default JSON i=11944 i=76 Default JSON i=856 i=76 Default JSON i=859 i=76 Default JSON i=862 i=76 Default JSON i=865 i=76 Default JSON i=868 i=76 Default JSON i=871 i=76 Default JSON i=299 i=76 Default JSON i=874 i=76 Default JSON i=877 i=76 Default JSON i=897 i=76 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part8.xml000066400000000000000000000677441357637245100221570ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 DataItemType A variable that contains live automation data. i=2366 i=2367 i=63 Definition A vendor-specific, human readable string that specifies how the value of this DataItem is calculated. i=68 i=80 i=2365 ValuePrecision The maximum precision that the server can maintain for the item based on restrictions in the target environment. i=68 i=80 i=2365 AnalogItemType i=2370 i=2369 i=2371 i=2365 InstrumentRange i=68 i=80 i=2368 EURange i=68 i=78 i=2368 EngineeringUnits i=68 i=80 i=2368 DiscreteItemType i=2365 TwoStateDiscreteType i=2374 i=2375 i=2372 FalseState i=68 i=78 i=2373 TrueState i=68 i=78 i=2373 MultiStateDiscreteType i=2377 i=2372 EnumStrings i=68 i=78 i=2376 MultiStateValueDiscreteType i=11241 i=11461 i=2372 EnumValues i=68 i=78 i=11238 ValueAsText i=68 i=78 i=11238 ArrayItemType i=12024 i=12025 i=12026 i=12027 i=12028 i=2365 InstrumentRange i=68 i=80 i=12021 EURange i=68 i=78 i=12021 EngineeringUnits i=68 i=78 i=12021 Title i=68 i=78 i=12021 AxisScaleType i=68 i=78 i=12021 YArrayItemType i=12037 i=12021 XAxisDefinition i=68 i=78 i=12029 XYArrayItemType i=12046 i=12021 XAxisDefinition i=68 i=78 i=12038 ImageItemType i=12055 i=12056 i=12021 XAxisDefinition i=68 i=78 i=12047 YAxisDefinition i=68 i=78 i=12047 CubeItemType i=12065 i=12066 i=12067 i=12021 XAxisDefinition i=68 i=78 i=12057 YAxisDefinition i=68 i=78 i=12057 ZAxisDefinition i=68 i=78 i=12057 NDimensionArrayItemType i=12076 i=12021 AxisDefinition i=68 i=78 i=12068 Range i=22 EUInformation i=22 AxisScaleEnumeration i=12078 i=29 EnumStrings i=68 i=78 i=12077 Linear Log Ln ComplexNumberType i=22 DoubleComplexNumberType i=22 AxisInformation i=22 XVType i=22 Default Binary i=884 i=8238 i=76 Default Binary i=887 i=8241 i=76 Default Binary i=12171 i=12183 i=76 Default Binary i=12172 i=12186 i=76 Default Binary i=12079 i=12091 i=76 Default Binary i=12080 i=12094 i=76 Default XML i=884 i=8873 i=76 Default XML i=887 i=8876 i=76 Default XML i=12171 i=12175 i=76 Default XML i=12172 i=12178 i=76 Default XML i=12079 i=12083 i=76 Default XML i=12080 i=12086 i=76 Default JSON i=884 i=76 Default JSON i=887 i=76 Default JSON i=12171 i=76 Default JSON i=12172 i=76 Default JSON i=12079 i=76 Default JSON i=12080 i=76 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.Part9.xml000066400000000000000000005121151357637245100221430ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 TwoStateVariableType i=8996 i=9000 i=9001 i=11110 i=11111 i=2755 Id i=68 i=78 i=8995 TransitionTime i=68 i=80 i=8995 EffectiveTransitionTime i=68 i=80 i=8995 TrueState i=68 i=80 i=8995 FalseState i=68 i=80 i=8995 ConditionVariableType i=9003 i=63 SourceTimestamp i=68 i=78 i=9002 HasTrueSubState i=32 IsTrueSubStateOf HasFalseSubState i=32 IsFalseSubStateOf HasAlarmSuppressionGroup i=47 IsAlarmSuppressionGroupOf AlarmGroupMember i=35 MemberOfAlarmGroup ConditionType i=11112 i=11113 i=16363 i=16364 i=9009 i=9010 i=3874 i=9011 i=9020 i=9022 i=9024 i=9026 i=9028 i=9027 i=9029 i=3875 i=12912 i=2041 ConditionClassId i=68 i=78 i=2782 ConditionClassName i=68 i=78 i=2782 ConditionSubClassId i=68 i=80 i=2782 ConditionSubClassName i=68 i=80 i=2782 ConditionName i=68 i=78 i=2782 BranchId i=68 i=78 i=2782 Retain i=68 i=78 i=2782 EnabledState i=9012 i=9015 i=9016 i=9017 i=9018 i=9019 i=8995 i=78 i=2782 Id i=68 i=78 i=9011 EffectiveDisplayName i=68 i=80 i=9011 TransitionTime i=68 i=80 i=9011 EffectiveTransitionTime i=68 i=80 i=9011 TrueState i=68 i=80 i=9011 en Enabled FalseState i=68 i=80 i=9011 en Disabled Quality i=9021 i=9002 i=78 i=2782 SourceTimestamp i=68 i=78 i=9020 LastSeverity i=9023 i=9002 i=78 i=2782 SourceTimestamp i=68 i=78 i=9022 Comment i=9025 i=9002 i=78 i=2782 SourceTimestamp i=68 i=78 i=9024 ClientUserId i=68 i=78 i=2782 Disable i=2803 i=78 i=2782 Enable i=2803 i=78 i=2782 AddComment i=9030 i=2829 i=78 i=2782 InputArguments i=68 i=78 i=9029 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. ConditionRefresh i=3876 i=2787 i=2788 i=2782 InputArguments i=68 i=78 i=3875 i=297 SubscriptionId i=288 -1 The identifier for the suscription to refresh. ConditionRefresh2 i=12913 i=2787 i=2788 i=2782 InputArguments i=68 i=78 i=12912 i=297 SubscriptionId i=288 -1 The identifier for the suscription to refresh. i=297 MonitoredItemId i=288 -1 The identifier for the monitored item to refresh. DialogConditionType i=9035 i=9055 i=2831 i=9064 i=9065 i=9066 i=9067 i=9068 i=9069 i=2782 EnabledState i=9036 i=9055 i=8995 i=78 i=2830 Id i=68 i=78 i=9035 DialogState i=9056 i=9060 i=9062 i=9063 i=9035 i=8995 i=78 i=2830 Id i=68 i=78 i=9055 TransitionTime i=68 i=80 i=9055 TrueState i=68 i=80 i=9055 en Active FalseState i=68 i=80 i=9055 en Inactive Prompt i=68 i=78 i=2830 ResponseOptionSet i=68 i=78 i=2830 DefaultResponse i=68 i=78 i=2830 OkResponse i=68 i=78 i=2830 CancelResponse i=68 i=78 i=2830 LastResponse i=68 i=78 i=2830 Respond i=9070 i=8927 i=78 i=2830 InputArguments i=68 i=78 i=9069 i=297 SelectedResponse i=6 -1 The response to the dialog condition. AcknowledgeableConditionType i=9073 i=9093 i=9102 i=9111 i=9113 i=2782 EnabledState i=9074 i=9093 i=9102 i=8995 i=78 i=2881 Id i=68 i=78 i=9073 AckedState i=9094 i=9098 i=9100 i=9101 i=9073 i=8995 i=78 i=2881 Id i=68 i=78 i=9093 TransitionTime i=68 i=80 i=9093 TrueState i=68 i=80 i=9093 en Acknowledged FalseState i=68 i=80 i=9093 en Unacknowledged ConfirmedState i=9103 i=9107 i=9109 i=9110 i=9073 i=8995 i=80 i=2881 Id i=68 i=78 i=9102 TransitionTime i=68 i=80 i=9102 TrueState i=68 i=80 i=9102 en Confirmed FalseState i=68 i=80 i=9102 en Unconfirmed Acknowledge i=9112 i=8944 i=78 i=2881 InputArguments i=68 i=78 i=9111 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. Confirm i=9114 i=8961 i=80 i=2881 InputArguments i=68 i=78 i=9113 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. AlarmConditionType i=9118 i=9160 i=11120 i=9169 i=16371 i=9178 i=9215 i=9216 i=16389 i=16390 i=16380 i=16395 i=16396 i=16397 i=16398 i=18190 i=16399 i=16400 i=16401 i=16402 i=16403 i=17868 i=17869 i=17870 i=18199 i=2881 EnabledState i=9119 i=9160 i=9169 i=9178 i=8995 i=78 i=2915 Id i=68 i=78 i=9118 ActiveState i=9161 i=9164 i=9165 i=9166 i=9167 i=9168 i=9118 i=8995 i=78 i=2915 Id i=68 i=78 i=9160 EffectiveDisplayName i=68 i=80 i=9160 TransitionTime i=68 i=80 i=9160 EffectiveTransitionTime i=68 i=80 i=9160 TrueState i=68 i=80 i=9160 en Active FalseState i=68 i=80 i=9160 en Inactive InputNode i=68 i=78 i=2915 SuppressedState i=9170 i=9174 i=9176 i=9177 i=9118 i=8995 i=80 i=2915 Id i=68 i=78 i=9169 TransitionTime i=68 i=80 i=9169 TrueState i=68 i=80 i=9169 en Suppressed FalseState i=68 i=80 i=9169 en Unsuppressed OutOfServiceState i=16372 i=16376 i=16378 i=16379 i=8995 i=80 i=2915 Id i=68 i=78 i=16371 TransitionTime i=68 i=80 i=16371 TrueState i=68 i=80 i=16371 en Out of Service FalseState i=68 i=80 i=16371 en In Service ShelvingState i=9179 i=9184 i=9189 i=9213 i=9211 i=9212 i=9118 i=2929 i=80 i=2915 CurrentState i=9180 i=2760 i=78 i=9178 Id i=68 i=78 i=9179 LastTransition i=9185 i=9188 i=2767 i=80 i=9178 Id i=68 i=78 i=9184 TransitionTime i=68 i=80 i=9184 UnshelveTime i=68 i=78 i=9178 TimedShelve i=9214 i=11093 i=78 i=9178 InputArguments i=68 i=78 i=9213 i=297 ShelvingTime i=290 -1 If not 0, this parameter specifies a fixed time for which the Alarm is to be shelved. Unshelve i=11093 i=78 i=9178 OneShotShelve i=11093 i=78 i=9178 SuppressedOrShelved i=68 i=78 i=2915 MaxTimeShelved i=68 i=80 i=2915 AudibleEnabled i=68 i=80 i=2915 AudibleSound i=17986 i=80 i=2915 SilenceState i=16381 i=16385 i=16387 i=16388 i=8995 i=80 i=2915 Id i=68 i=78 i=16380 TransitionTime i=68 i=80 i=16380 TrueState i=68 i=80 i=16380 en Silenced FalseState i=68 i=80 i=16380 en Not Silenced OnDelay i=68 i=80 i=2915 OffDelay i=68 i=80 i=2915 FirstInGroupFlag i=68 i=80 i=2915 FirstInGroup i=16405 i=80 i=2915 LatchedState i=18191 i=18195 i=18197 i=18198 i=8995 i=80 i=2915 Id i=68 i=78 i=18190 TransitionTime i=68 i=80 i=18190 TrueState i=68 i=80 i=18190 en Latched FalseState i=68 i=80 i=18190 en Unlatched <AlarmGroup> i=16405 i=11508 i=2915 ReAlarmTime i=68 i=80 i=2915 ReAlarmRepeatCount i=68 i=80 i=2915 Silence i=17242 i=80 i=2915 Suppress i=17225 i=80 i=2915 Unsuppress i=17225 i=80 i=2915 RemoveFromService i=17259 i=80 i=2915 PlaceInService i=17259 i=80 i=2915 Reset i=17259 i=80 i=2915 AlarmGroupType i=16406 i=61 <AlarmConditionInstance> i=16407 i=16408 i=16409 i=16410 i=16411 i=16412 i=16413 i=16414 i=16415 i=16416 i=16417 i=16420 i=16421 i=16422 i=16423 i=16432 i=16434 i=16436 i=16438 i=16439 i=16440 i=16441 i=16443 i=16461 i=16465 i=16474 i=16519 i=2915 i=11508 i=16405 EventId A globally unique identifier for the event. i=68 i=78 i=16406 EventType The identifier for the event type. i=68 i=78 i=16406 SourceNode The source of the event. i=68 i=78 i=16406 SourceName A description of the source of the event. i=68 i=78 i=16406 Time When the event occurred. i=68 i=78 i=16406 ReceiveTime When the server received the event from the underlying system. i=68 i=78 i=16406 LocalTime Information about the local time where the event originated. i=68 i=78 i=16406 Message A localized description of the event. i=68 i=78 i=16406 Severity Indicates how urgent an event is. i=68 i=78 i=16406 ConditionClassId i=68 i=78 i=16406 ConditionClassName i=68 i=78 i=16406 ConditionName i=68 i=78 i=16406 BranchId i=68 i=78 i=16406 Retain i=68 i=78 i=16406 EnabledState i=16424 i=8995 i=78 i=16406 Id i=68 i=78 i=16423 Quality i=16433 i=9002 i=78 i=16406 SourceTimestamp i=68 i=78 i=16432 LastSeverity i=16435 i=9002 i=78 i=16406 SourceTimestamp i=68 i=78 i=16434 Comment i=16437 i=9002 i=78 i=16406 SourceTimestamp i=68 i=78 i=16436 ClientUserId i=68 i=78 i=16406 Disable i=2803 i=78 i=16406 Enable i=2803 i=78 i=16406 AddComment i=16442 i=2829 i=78 i=16406 InputArguments i=68 i=78 i=16441 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. AckedState i=16444 i=8995 i=78 i=16406 Id i=68 i=78 i=16443 Acknowledge i=16462 i=8944 i=78 i=16406 InputArguments i=68 i=78 i=16461 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. ActiveState i=16466 i=8995 i=78 i=16406 Id i=68 i=78 i=16465 InputNode i=68 i=78 i=16406 SuppressedOrShelved i=68 i=78 i=16406 ShelvedStateMachineType i=9115 i=2930 i=2932 i=2933 i=2935 i=2936 i=2940 i=2942 i=2943 i=2945 i=2949 i=2947 i=2948 i=2771 UnshelveTime i=68 i=78 i=2929 Unshelved i=6098 i=2935 i=2936 i=2940 i=2943 i=2307 i=2929 StateNumber i=68 i=78 i=2930 Timed Shelved i=6100 i=2935 i=2940 i=2942 i=2945 i=2307 i=2929 StateNumber i=68 i=78 i=2932 One Shot Shelved i=6101 i=2936 i=2942 i=2943 i=2945 i=2307 i=2929 StateNumber i=68 i=78 i=2933 UnshelvedToTimedShelved i=11322 i=2930 i=2932 i=2915 i=2949 i=2310 i=2929 TransitionNumber i=68 i=78 i=2935 UnshelvedToOneShotShelved i=11323 i=2930 i=2933 i=2915 i=2948 i=2310 i=2929 TransitionNumber i=68 i=78 i=2936 TimedShelvedToUnshelved i=11324 i=2932 i=2930 i=2915 i=2947 i=2310 i=2929 TransitionNumber i=68 i=78 i=2940 TimedShelvedToOneShotShelved i=11325 i=2932 i=2933 i=2915 i=2948 i=2310 i=2929 TransitionNumber i=68 i=78 i=2942 OneShotShelvedToUnshelved i=11326 i=2933 i=2930 i=2915 i=2947 i=2310 i=2929 TransitionNumber i=68 i=78 i=2943 OneShotShelvedToTimedShelved i=11327 i=2933 i=2932 i=2915 i=2949 i=2310 i=2929 TransitionNumber i=68 i=78 i=2945 TimedShelve i=2991 i=2935 i=2945 i=11093 i=78 i=2929 InputArguments i=68 i=78 i=2949 i=297 ShelvingTime i=290 -1 If not 0, this parameter specifies a fixed time for which the Alarm is to be shelved. Unshelve i=2940 i=2943 i=11093 i=78 i=2929 OneShotShelve i=2936 i=2942 i=11093 i=78 i=2929 LimitAlarmType i=11124 i=11125 i=11126 i=11127 i=16572 i=16573 i=16574 i=16575 i=2915 HighHighLimit i=68 i=80 i=2955 HighLimit i=68 i=80 i=2955 LowLimit i=68 i=80 i=2955 LowLowLimit i=68 i=80 i=2955 BaseHighHighLimit i=68 i=80 i=2955 BaseHighLimit i=68 i=80 i=2955 BaseLowLimit i=68 i=80 i=2955 BaseLowLowLimit i=68 i=80 i=2955 ExclusiveLimitStateMachineType i=9329 i=9331 i=9333 i=9335 i=9337 i=9338 i=9339 i=9340 i=2771 HighHigh i=9330 i=9339 i=9340 i=2307 i=9318 StateNumber i=68 i=78 i=9329 High i=9332 i=9339 i=9340 i=2307 i=9318 StateNumber i=68 i=78 i=9331 Low i=9334 i=9337 i=9338 i=2307 i=9318 StateNumber i=68 i=78 i=9333 LowLow i=9336 i=9337 i=9338 i=2307 i=9318 StateNumber i=68 i=78 i=9335 LowLowToLow i=11340 i=9335 i=9333 i=2310 i=9318 TransitionNumber i=68 i=78 i=9337 LowToLowLow i=11341 i=9333 i=9335 i=2310 i=9318 TransitionNumber i=68 i=78 i=9338 HighHighToHigh i=11342 i=9329 i=9331 i=2310 i=9318 TransitionNumber i=68 i=78 i=9339 HighToHighHigh i=11343 i=9331 i=9329 i=2310 i=9318 TransitionNumber i=68 i=78 i=9340 ExclusiveLimitAlarmType i=9398 i=9455 i=2955 ActiveState i=9399 i=9455 i=8995 i=78 i=9341 Id i=68 i=78 i=9398 LimitState i=9456 i=9461 i=9398 i=9318 i=78 i=9341 CurrentState i=9457 i=2760 i=78 i=9455 Id i=68 i=78 i=9456 LastTransition i=9462 i=9465 i=2767 i=80 i=9455 Id i=68 i=78 i=9461 TransitionTime i=68 i=80 i=9461 NonExclusiveLimitAlarmType i=9963 i=10020 i=10029 i=10038 i=10047 i=2955 ActiveState i=9964 i=10020 i=10029 i=10038 i=10047 i=8995 i=78 i=9906 Id i=68 i=78 i=9963 HighHighState i=10021 i=10025 i=10027 i=10028 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10020 TransitionTime i=68 i=80 i=10020 TrueState i=68 i=80 i=10020 en HighHigh active FalseState i=68 i=80 i=10020 en HighHigh inactive HighState i=10030 i=10034 i=10036 i=10037 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10029 TransitionTime i=68 i=80 i=10029 TrueState i=68 i=80 i=10029 en High active FalseState i=68 i=80 i=10029 en High inactive LowState i=10039 i=10043 i=10045 i=10046 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10038 TransitionTime i=68 i=80 i=10038 TrueState i=68 i=80 i=10038 en Low active FalseState i=68 i=80 i=10038 en Low inactive LowLowState i=10048 i=10052 i=10054 i=10055 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10047 TransitionTime i=68 i=80 i=10047 TrueState i=68 i=80 i=10047 en LowLow active FalseState i=68 i=80 i=10047 en LowLow inactive NonExclusiveLevelAlarmType i=9906 ExclusiveLevelAlarmType i=9341 NonExclusiveDeviationAlarmType i=10522 i=16776 i=9906 SetpointNode i=68 i=78 i=10368 BaseSetpointNode i=68 i=80 i=10368 NonExclusiveRateOfChangeAlarmType i=16858 i=9906 EngineeringUnits i=68 i=80 i=10214 ExclusiveDeviationAlarmType i=9905 i=16817 i=9341 SetpointNode i=68 i=78 i=9764 BaseSetpointNode i=68 i=80 i=9764 ExclusiveRateOfChangeAlarmType i=16899 i=9341 EngineeringUnits i=68 i=80 i=9623 DiscreteAlarmType i=2915 OffNormalAlarmType i=11158 i=10523 NormalState i=68 i=78 i=10637 SystemOffNormalAlarmType i=10637 TripAlarmType i=10637 InstrumentDiagnosticAlarmType i=10637 SystemDiagnosticAlarmType i=10637 CertificateExpirationAlarmType i=13325 i=14900 i=13326 i=13327 i=11753 ExpirationDate i=68 i=78 i=13225 ExpirationLimit i=68 i=80 i=13225 CertificateType i=68 i=78 i=13225 Certificate i=68 i=78 i=13225 DiscrepancyAlarmType i=17215 i=17216 i=17217 i=2915 TargetValueNode i=68 i=78 i=17080 ExpectedTime i=68 i=78 i=17080 Tolerance i=68 i=80 i=17080 BaseConditionClassType i=58 ProcessConditionClassType i=11163 MaintenanceConditionClassType i=11163 SystemConditionClassType i=11163 SafetyConditionClassType i=11163 HighlyManagedAlarmConditionClassType i=11163 TrainingConditionClassType i=11163 StatisticalConditionClassType i=11163 TestingConditionClassType i=11163 AuditConditionEventType i=2127 AuditConditionEnableEventType i=2790 AuditConditionCommentEventType i=17222 i=11851 i=2790 ConditionEventId i=68 i=78 i=2829 Comment i=68 i=78 i=2829 AuditConditionRespondEventType i=11852 i=2790 SelectedResponse i=68 i=78 i=8927 AuditConditionAcknowledgeEventType i=17223 i=11853 i=2790 ConditionEventId i=68 i=78 i=8944 Comment i=68 i=78 i=8944 AuditConditionConfirmEventType i=17224 i=11854 i=2790 ConditionEventId i=68 i=78 i=8961 Comment i=68 i=78 i=8961 AuditConditionShelvingEventType i=11855 i=2790 ShelvingTime i=68 i=78 i=11093 AuditConditionSuppressEventType i=2790 AuditConditionSilenceEventType i=2790 AuditConditionResetEventType i=2790 AuditConditionOutOfServiceEventType i=2790 RefreshStartEventType i=2130 RefreshEndEventType i=2130 RefreshRequiredEventType i=2130 HasCondition i=32 IsConditionOf HasEffectDisable i=54 MayBeDisabledBy HasEffectEnable i=54 MayBeEnabledBy HasEffectSuppressed i=54 MayBeSuppressedBy HasEffectUnsuppressed i=54 MayBeUnsuppressedBy AlarmMetricsType i=17280 i=17991 i=17281 i=17282 i=17284 i=17286 i=17283 i=17288 i=18666 i=58 AlarmCount i=68 i=78 i=17279 StartTime i=68 i=78 i=17279 MaximumActiveState i=68 i=78 i=17279 MaximumUnAck i=68 i=78 i=17279 CurrentAlarmRate i=17285 i=17277 i=78 i=17279 Rate i=68 i=78 i=17284 MaximumAlarmRate i=17287 i=17277 i=78 i=17279 Rate i=68 i=78 i=17286 MaximumReAlarmCount i=68 i=78 i=17279 AverageAlarmRate i=17289 i=17277 i=78 i=17279 Rate i=68 i=78 i=17288 Reset i=78 i=17279 AlarmRateVariableType i=17278 i=63 Rate i=68 i=78 i=17277 python-opcua-0.98.9/schemas/Opc.Ua.NodeSet2.xml000066400000000000000000126337751357637245100211700ustar00rootroot00000000000000 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 i=11 i=13 i=12 i=15 i=14 i=16 i=17 i=18 i=20 i=21 i=19 i=22 i=26 i=27 i=28 i=47 i=46 i=35 i=36 i=48 i=45 i=40 i=37 i=38 i=39 Default Binary The default binary encoding for a data type. i=58 Default XML The default XML encoding for a data type. i=58 BaseDataType Describes a value that can have any valid DataType. Number Describes a value that can have any numeric DataType. i=24 Integer Describes a value that can have any integer DataType. i=26 UInteger Describes a value that can have any unsigned integer DataType. i=26 Enumeration Describes a value that is an enumerated DataType. i=24 Boolean Describes a value that is either TRUE or FALSE. i=24 SByte Describes a value that is an integer between -128 and 127. i=27 Byte Describes a value that is an integer between 0 and 255. i=28 Int16 Describes a value that is an integer between −32,768 and 32,767. i=27 UInt16 Describes a value that is an integer between 0 and 65535. i=28 Int32 Describes a value that is an integer between −2,147,483,648 and 2,147,483,647. i=27 UInt32 Describes a value that is an integer between 0 and 4,294,967,295. i=28 Int64 Describes a value that is an integer between −9,223,372,036,854,775,808 and 9,223,372,036,854,775,807. i=27 UInt64 Describes a value that is an integer between 0 and 18,446,744,073,709,551,615. i=28 Float Describes a value that is an IEEE 754-1985 single precision floating point number. i=26 Double Describes a value that is an IEEE 754-1985 double precision floating point number. i=26 String Describes a value that is a sequence of printable Unicode characters. i=24 DateTime Describes a value that is a Gregorian calender date and time. i=24 Guid Describes a value that is a 128-bit globally unique identifier. i=24 ByteString Describes a value that is a sequence of bytes. i=24 XmlElement Describes a value that is an XML element. i=24 NodeId Describes a value that is an identifier for a node within a Server address space. i=24 ExpandedNodeId Describes a value that is an absolute identifier for a node. i=24 StatusCode Describes a value that is a code representing the outcome of an operation by a Server. i=24 QualifiedName Describes a value that is a name qualified by a namespace. i=24 LocalizedText Describes a value that is human readable Unicode text with a locale identifier. i=24 Structure Describes a value that is any type of structure that can be described with a data encoding. i=24 DataValue Describes a value that is a structure containing a value, a status code and timestamps. i=24 DiagnosticInfo Describes a value that is a structure containing diagnostics associated with a StatusCode. i=24 Image Describes a value that is an image encoded as a string of bytes. i=15 Decimal Describes an arbitrary precision decimal value. i=26 References The abstract base type for all references. NonHierarchicalReferences The abstract base type for all non-hierarchical references. i=31 NonHierarchicalReferences HierarchicalReferences The abstract base type for all hierarchical references. i=31 HierarchicalReferences HasChild The abstract base type for all non-looping hierarchical references. i=33 ChildOf Organizes The type for hierarchical references that are used to organize nodes. i=33 OrganizedBy HasEventSource The type for non-looping hierarchical references that are used to organize event sources. i=33 EventSourceOf HasModellingRule The type for references from instance declarations to modelling rule nodes. i=32 ModellingRuleOf HasEncoding The type for references from data type nodes to to data type encoding nodes. i=32 EncodingOf HasDescription The type for references from data type encoding nodes to data type description nodes. i=32 DescriptionOf HasTypeDefinition The type for references from a instance node its type defintion node. i=32 TypeDefinitionOf GeneratesEvent The type for references from a node to an event type that is raised by node. i=32 GeneratedBy AlwaysGeneratesEvent The type for references from a node to an event type that is always raised by node. i=41 AlwaysGeneratedBy Aggregates The type for non-looping hierarchical references that are used to aggregate nodes into complex types. i=34 AggregatedBy HasSubtype The type for non-looping hierarchical references that are used to define sub types. i=34 SubtypeOf HasProperty The type for non-looping hierarchical reference from a node to its property. i=44 PropertyOf HasComponent The type for non-looping hierarchical reference from a node to its component. i=44 ComponentOf HasNotifier The type for non-looping hierarchical references that are used to indicate how events propagate from node to node. i=36 NotifierOf HasOrderedComponent The type for non-looping hierarchical reference from a node to its component when the order of references matters. i=47 OrderedComponentOf FromState The type for a reference to the state before a transition. i=32 ToTransition ToState The type for a reference to the state after a transition. i=32 FromTransition HasCause The type for a reference to a method that can cause a transition to occur. i=32 MayBeCausedBy HasEffect The type for a reference to an event that may be raised when a transition occurs. i=32 MayBeEffectedBy HasSubStateMachine The type for a reference to a substate for a state. i=32 SubStateMachineOf HasHistoricalConfiguration The type for a reference to the historical configuration for a data variable. i=44 HistoricalConfigurationOf BaseObjectType The base type for all object nodes. FolderType The type for objects that organize other nodes. i=58 BaseVariableType The abstract base type for all variable nodes. BaseDataVariableType The type for variable that represents a process value. i=62 PropertyType The type for variable that represents a property of another node. i=62 DataTypeDescriptionType The type for variable that represents the description of a data type encoding. i=104 i=105 i=63 DataTypeVersion The version number for the data type description. i=68 i=80 i=69 DictionaryFragment A fragment of a data type dictionary that defines the data type. i=68 i=80 i=69 DataTypeDictionaryType The type for variable that represents the collection of data type decriptions. i=106 i=107 i=15001 i=63 DataTypeVersion The version number for the data type dictionary. i=68 i=80 i=72 NamespaceUri A URI that uniquely identifies the dictionary. i=68 i=80 i=72 Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 i=80 i=72 DataTypeSystemType i=58 DataTypeEncodingType i=58 NamingRuleType Describes a value that specifies the significance of the BrowseName for an instance declaration. i=12169 i=29 The BrowseName must appear in all instances of the type. The BrowseName may appear in an instance of the type. The modelling rule defines a constraint and the BrowseName is not used in an instance of the type. EnumValues i=68 i=78 i=120 i=7616 1 Mandatory The BrowseName must appear in all instances of the type. i=7616 2 Optional The BrowseName may appear in an instance of the type. i=7616 3 Constraint The modelling rule defines a constraint and the BrowseName is not used in an instance of the type. ModellingRuleType The type for an object that describes how an instance declaration is used when a type is instantiated. i=111 i=58 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=78 i=77 1 Mandatory Specifies that an instance with the attributes and references of the instance declaration must appear when a type is instantiated. i=112 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=78 1 Optional Specifies that an instance with the attributes and references of the instance declaration may appear when a type is instantiated. i=113 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=80 2 ExposesItsArray Specifies that an instance appears for each element of the containing array variable. i=114 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=83 3 MandatoryShared Specifies that a reference to a shared instance must appear in when a type is instantiated. i=116 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=79 1 OptionalPlaceholder Specifies that zero or more instances with the attributes and references of the instance declaration may appear when a type is instantiated. i=11509 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=11508 2 MandatoryPlaceholder Specifies that one or more instances with the attributes and references of the instance declaration must appear when a type is instantiated. i=11511 i=77 NamingRule Specified the significances of the BrowseName when a type is instantiated. i=68 i=11510 1 Root The root of the server address space. i=61 Objects The browse entry point when looking for objects in the server address space. i=84 i=61 Types The browse entry point when looking for types in the server address space. i=84 i=61 Views The browse entry point when looking for views in the server address space. i=84 i=61 ObjectTypes The browse entry point when looking for object types in the server address space. i=86 i=58 i=61 VariableTypes The browse entry point when looking for variable types in the server address space. i=86 i=62 i=61 DataTypes The browse entry point when looking for data types in the server address space. i=86 i=24 i=61 ReferenceTypes The browse entry point when looking for reference types in the server address space. i=86 i=31 i=61 XML Schema A type system which uses XML schema to describe the encoding of data types. i=90 i=75 OPC Binary A type system which uses OPC binary schema to describe the encoding of data types. i=90 i=75 http://opcfoundation.org/UA/ i=15958 i=15959 i=15960 i=15961 i=15962 i=15963 i=15964 i=16134 i=16135 i=16136 i=11715 i=11616 NamespaceUri The URI of the namespace. i=68 i=15957 http://opcfoundation.org/UA/ NamespaceVersion The human readable string representing version of the namespace. i=68 i=15957 1.04 NamespacePublicationDate The publication date for the namespace. i=68 i=15957 2017-11-22 IsNamespaceSubset If TRUE then the server only supports a subset of the namespace. i=68 i=15957 false StaticNodeIdTypes A list of IdTypes for nodes which are the same in every server that exposes them. i=68 i=15957 0 StaticNumericNodeIdRange A list of ranges for numeric node ids which are the same in every server that exposes them. i=68 i=15957 1:65535 StaticStringNodeIdPattern A regular expression which matches string node ids are the same in every server that exposes them. i=68 i=15957 DefaultRolePermissions i=68 i=15957 DefaultUserRolePermissions i=68 i=15957 DefaultAccessRestrictions i=68 i=15957 NodeVersion The version number of the node (used to indicate changes to references of the owning node). i=68 ViewVersion The version number of the view. i=68 Icon A small image representing the object. i=68 LocalTime The local time where the owning variable value was collected. i=68 AllowNulls Whether the value of the owning variable is allowed to be null. i=68 ValueAsText The string representation of the current value for a variable with an enumerated data type. i=68 MaxStringLength The maximum number of bytes supported by the DataVariable. i=68 MaxCharacters The maximum number of Unicode characters supported by the DataVariable. i=68 MaxByteStringLength The maximum length for a byte string that can be stored in the owning variable. i=68 MaxArrayLength The maximum length for an array that can be stored in the owning variable. i=68 EngineeringUnits The engineering units for the value of the owning variable. i=68 EnumStrings The human readable strings associated with the values of an enumerated value (when values are sequential). i=68 EnumValues The human readable strings associated with the values of an enumerated value (when values have no sequence). i=68 OptionSetValues Contains the human-readable representation for each bit of the bit mask. i=68 InputArguments The input arguments for a method. i=68 OutputArguments The output arguments for a method. i=68 DefaultInputValues Specifies the default values for optional input arguments. i=68 ImageBMP An image encoded in BMP format. i=30 ImageGIF An image encoded in GIF format. i=30 ImageJPG An image encoded in JPEG format. i=30 ImagePNG An image encoded in PNG format. i=30 AudioDataType An image encoded in PNG format. i=15 ServerType Specifies the current status and capabilities of the server. i=2005 i=2006 i=15003 i=2007 i=2008 i=2742 i=12882 i=17612 i=2009 i=2010 i=2011 i=2012 i=11527 i=11489 i=12871 i=12746 i=12883 i=58 ServerArray The list of server URIs used by the server. i=68 i=78 i=2004 NamespaceArray The list of namespace URIs used by the server. i=68 i=78 i=2004 UrisVersion Defines the version of the ServerArray and the NamespaceArray. i=68 i=80 i=2004 ServerStatus The current status of the server. i=3074 i=3075 i=3076 i=3077 i=3084 i=3085 i=2138 i=78 i=2004 StartTime i=63 i=78 i=2007 CurrentTime i=63 i=78 i=2007 State i=63 i=78 i=2007 BuildInfo i=3078 i=3079 i=3080 i=3081 i=3082 i=3083 i=3051 i=78 i=2007 ProductUri i=63 i=78 i=3077 ManufacturerName i=63 i=78 i=3077 ProductName i=63 i=78 i=3077 SoftwareVersion i=63 i=78 i=3077 BuildNumber i=63 i=78 i=3077 BuildDate i=63 i=78 i=3077 SecondsTillShutdown i=63 i=78 i=2007 ShutdownReason i=63 i=78 i=2007 ServiceLevel A value indicating the level of service the server can provide. 255 indicates the best. i=68 i=78 i=2004 Auditing A flag indicating whether the server is currently generating audit events. i=68 i=78 i=2004 EstimatedReturnTime Indicates the time at which the Server is expected to be available in the state RUNNING. i=68 i=80 i=2004 LocalTime Indicates the time zone the Server is is running in. i=68 i=80 i=2004 ServerCapabilities Describes capabilities supported by the server. i=3086 i=3087 i=3088 i=3089 i=3090 i=3091 i=3092 i=3093 i=3094 i=2013 i=78 i=2004 ServerProfileArray A list of profiles supported by the server. i=68 i=78 i=2009 LocaleIdArray A list of locales supported by the server. i=68 i=78 i=2009 MinSupportedSampleRate The minimum sampling interval supported by the server. i=68 i=78 i=2009 MaxBrowseContinuationPoints The maximum number of continuation points for Browse operations per session. i=68 i=78 i=2009 MaxQueryContinuationPoints The maximum number of continuation points for Query operations per session. i=68 i=78 i=2009 MaxHistoryContinuationPoints The maximum number of continuation points for ReadHistory operations per session. i=68 i=78 i=2009 SoftwareCertificates The software certificates owned by the server. i=68 i=78 i=2009 ModellingRules A folder for the modelling rules supported by the server. i=61 i=78 i=2009 AggregateFunctions A folder for the real time aggregates supported by the server. i=61 i=78 i=2009 ServerDiagnostics Reports diagnostics about the server. i=3095 i=3110 i=3111 i=3114 i=2020 i=78 i=2004 ServerDiagnosticsSummary A summary of server level diagnostics. i=3096 i=3097 i=3098 i=3099 i=3100 i=3101 i=3102 i=3104 i=3105 i=3106 i=3107 i=3108 i=2150 i=78 i=2010 ServerViewCount i=63 i=78 i=3095 CurrentSessionCount i=63 i=78 i=3095 CumulatedSessionCount i=63 i=78 i=3095 SecurityRejectedSessionCount i=63 i=78 i=3095 RejectedSessionCount i=63 i=78 i=3095 SessionTimeoutCount i=63 i=78 i=3095 SessionAbortCount i=63 i=78 i=3095 PublishingIntervalCount i=63 i=78 i=3095 CurrentSubscriptionCount i=63 i=78 i=3095 CumulatedSubscriptionCount i=63 i=78 i=3095 SecurityRejectedRequestsCount i=63 i=78 i=3095 RejectedRequestsCount i=63 i=78 i=3095 SubscriptionDiagnosticsArray A list of diagnostics for each active subscription. i=2171 i=78 i=2010 SessionsDiagnosticsSummary A summary of session level diagnostics. i=3112 i=3113 i=2026 i=78 i=2010 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=78 i=3111 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=78 i=3111 EnabledFlag If TRUE the diagnostics collection is enabled. i=68 i=78 i=2010 VendorServerInfo Server information provided by the vendor. i=2033 i=78 i=2004 ServerRedundancy Describes the redundancy capabilities of the server. i=3115 i=2034 i=78 i=2004 RedundancySupport Indicates what style of redundancy is supported by the server. i=68 i=78 i=2012 Namespaces Describes the namespaces supported by the server. i=11645 i=80 i=2004 GetMonitoredItems i=11490 i=11491 i=80 i=2004 InputArguments i=68 i=78 i=11489 i=297 SubscriptionId i=7 -1 OutputArguments i=68 i=78 i=11489 i=297 ServerHandles i=7 1 i=297 ClientHandles i=7 1 ResendData i=12872 i=80 i=2004 InputArguments i=68 i=78 i=12871 i=297 SubscriptionId i=7 -1 SetSubscriptionDurable i=12747 i=12748 i=80 i=2004 InputArguments i=68 i=78 i=12746 i=297 SubscriptionId i=7 -1 i=297 LifetimeInHours i=7 -1 OutputArguments i=68 i=78 i=12746 i=297 RevisedLifetimeInHours i=7 -1 RequestServerStateChange i=12884 i=80 i=2004 InputArguments i=68 i=78 i=12883 i=297 State i=852 -1 i=297 EstimatedReturnTime i=13 -1 i=297 SecondsTillShutdown i=7 -1 i=297 Reason i=21 -1 i=297 Restart i=1 -1 ServerCapabilitiesType Describes the capabilities supported by the server. i=2014 i=2016 i=2017 i=2732 i=2733 i=2734 i=3049 i=11549 i=11550 i=12910 i=11551 i=2019 i=2754 i=11562 i=16295 i=58 ServerProfileArray A list of profiles supported by the server. i=68 i=78 i=2013 LocaleIdArray A list of locales supported by the server. i=68 i=78 i=2013 MinSupportedSampleRate The minimum sampling interval supported by the server. i=68 i=78 i=2013 MaxBrowseContinuationPoints The maximum number of continuation points for Browse operations per session. i=68 i=78 i=2013 MaxQueryContinuationPoints The maximum number of continuation points for Query operations per session. i=68 i=78 i=2013 MaxHistoryContinuationPoints The maximum number of continuation points for ReadHistory operations per session. i=68 i=78 i=2013 SoftwareCertificates The software certificates owned by the server. i=68 i=78 i=2013 MaxArrayLength The maximum length for an array value supported by the server. i=68 i=80 i=2013 MaxStringLength The maximum length for a string value supported by the server. i=68 i=80 i=2013 MaxByteStringLength The maximum length for a byte string value supported by the server. i=68 i=80 i=2013 OperationLimits Defines the limits supported by the server for different operations. i=11564 i=80 i=2013 ModellingRules A folder for the modelling rules supported by the server. i=61 i=78 i=2013 AggregateFunctions A folder for the real time aggregates supported by the server. i=61 i=78 i=2013 <VendorCapability> i=2137 i=11508 i=2013 Roles Describes the roles supported by the server. i=16296 i=16299 i=15607 i=80 i=2013 AddRole i=16297 i=16298 i=78 i=16295 InputArguments i=68 i=78 i=16296 i=297 RoleName i=12 -1 i=297 NamespaceUri i=12 -1 OutputArguments i=68 i=78 i=16296 i=297 RoleNodeId i=17 -1 RemoveRole i=16300 i=78 i=16295 InputArguments i=68 i=78 i=16299 i=297 RoleNodeId i=17 -1 ServerDiagnosticsType The diagnostics information for a server. i=2021 i=2022 i=2023 i=2744 i=2025 i=58 ServerDiagnosticsSummary A summary of server level diagnostics. i=3116 i=3117 i=3118 i=3119 i=3120 i=3121 i=3122 i=3124 i=3125 i=3126 i=3127 i=3128 i=2150 i=78 i=2020 ServerViewCount i=63 i=78 i=2021 CurrentSessionCount i=63 i=78 i=2021 CumulatedSessionCount i=63 i=78 i=2021 SecurityRejectedSessionCount i=63 i=78 i=2021 RejectedSessionCount i=63 i=78 i=2021 SessionTimeoutCount i=63 i=78 i=2021 SessionAbortCount i=63 i=78 i=2021 PublishingIntervalCount i=63 i=78 i=2021 CurrentSubscriptionCount i=63 i=78 i=2021 CumulatedSubscriptionCount i=63 i=78 i=2021 SecurityRejectedRequestsCount i=63 i=78 i=2021 RejectedRequestsCount i=63 i=78 i=2021 SamplingIntervalDiagnosticsArray A list of diagnostics for each sampling interval supported by the server. i=2164 i=80 i=2020 SubscriptionDiagnosticsArray A list of diagnostics for each active subscription. i=2171 i=78 i=2020 SessionsDiagnosticsSummary A summary of session level diagnostics. i=3129 i=3130 i=2026 i=78 i=2020 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=78 i=2744 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=78 i=2744 EnabledFlag If TRUE the diagnostics collection is enabled. i=68 i=78 i=2020 SessionsDiagnosticsSummaryType Provides a summary of session level diagnostics. i=2027 i=2028 i=12097 i=58 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=78 i=2026 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=78 i=2026 <ClientName> i=12098 i=12142 i=12152 i=2029 i=11508 i=2026 SessionDiagnostics Diagnostics information for an active session. i=12099 i=12100 i=12101 i=12102 i=12103 i=12104 i=12105 i=12106 i=12107 i=12108 i=12109 i=12110 i=12111 i=12112 i=12113 i=12114 i=12115 i=12116 i=12117 i=12118 i=12119 i=12120 i=12121 i=12122 i=12123 i=12124 i=12125 i=12126 i=12127 i=12128 i=12129 i=12130 i=12131 i=12132 i=12133 i=12134 i=12135 i=12136 i=12137 i=12138 i=12139 i=12140 i=12141 i=2197 i=78 i=12097 SessionId i=63 i=78 i=12098 SessionName i=63 i=78 i=12098 ClientDescription i=63 i=78 i=12098 ServerUri i=63 i=78 i=12098 EndpointUrl i=63 i=78 i=12098 LocaleIds i=63 i=78 i=12098 ActualSessionTimeout i=63 i=78 i=12098 MaxResponseMessageSize i=63 i=78 i=12098 ClientConnectionTime i=63 i=78 i=12098 ClientLastContactTime i=63 i=78 i=12098 CurrentSubscriptionsCount i=63 i=78 i=12098 CurrentMonitoredItemsCount i=63 i=78 i=12098 CurrentPublishRequestsInQueue i=63 i=78 i=12098 TotalRequestCount i=63 i=78 i=12098 UnauthorizedRequestCount i=63 i=78 i=12098 ReadCount i=63 i=78 i=12098 HistoryReadCount i=63 i=78 i=12098 WriteCount i=63 i=78 i=12098 HistoryUpdateCount i=63 i=78 i=12098 CallCount i=63 i=78 i=12098 CreateMonitoredItemsCount i=63 i=78 i=12098 ModifyMonitoredItemsCount i=63 i=78 i=12098 SetMonitoringModeCount i=63 i=78 i=12098 SetTriggeringCount i=63 i=78 i=12098 DeleteMonitoredItemsCount i=63 i=78 i=12098 CreateSubscriptionCount i=63 i=78 i=12098 ModifySubscriptionCount i=63 i=78 i=12098 SetPublishingModeCount i=63 i=78 i=12098 PublishCount i=63 i=78 i=12098 RepublishCount i=63 i=78 i=12098 TransferSubscriptionsCount i=63 i=78 i=12098 DeleteSubscriptionsCount i=63 i=78 i=12098 AddNodesCount i=63 i=78 i=12098 AddReferencesCount i=63 i=78 i=12098 DeleteNodesCount i=63 i=78 i=12098 DeleteReferencesCount i=63 i=78 i=12098 BrowseCount i=63 i=78 i=12098 BrowseNextCount i=63 i=78 i=12098 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=12098 QueryFirstCount i=63 i=78 i=12098 QueryNextCount i=63 i=78 i=12098 RegisterNodesCount i=63 i=78 i=12098 UnregisterNodesCount i=63 i=78 i=12098 SessionSecurityDiagnostics Security related diagnostics information for an active session. i=12143 i=12144 i=12145 i=12146 i=12147 i=12148 i=12149 i=12150 i=12151 i=2244 i=78 i=12097 SessionId i=63 i=78 i=12142 ClientUserIdOfSession i=63 i=78 i=12142 ClientUserIdHistory i=63 i=78 i=12142 AuthenticationMechanism i=63 i=78 i=12142 Encoding i=63 i=78 i=12142 TransportProtocol i=63 i=78 i=12142 SecurityMode i=63 i=78 i=12142 SecurityPolicyUri i=63 i=78 i=12142 ClientCertificate i=63 i=78 i=12142 SubscriptionDiagnosticsArray A list of diagnostics for each subscription owned by the session. i=2171 i=78 i=12097 SessionDiagnosticsObjectType A container for session level diagnostics information. i=2030 i=2031 i=2032 i=58 SessionDiagnostics Diagnostics information for an active session. i=3131 i=3132 i=3133 i=3134 i=3135 i=3136 i=3137 i=3138 i=3139 i=3140 i=3141 i=3142 i=3143 i=8898 i=11891 i=3151 i=3152 i=3153 i=3154 i=3155 i=3156 i=3157 i=3158 i=3159 i=3160 i=3161 i=3162 i=3163 i=3164 i=3165 i=3166 i=3167 i=3168 i=3169 i=3170 i=3171 i=3172 i=3173 i=3174 i=3175 i=3176 i=3177 i=3178 i=2197 i=78 i=2029 SessionId i=63 i=78 i=2030 SessionName i=63 i=78 i=2030 ClientDescription i=63 i=78 i=2030 ServerUri i=63 i=78 i=2030 EndpointUrl i=63 i=78 i=2030 LocaleIds i=63 i=78 i=2030 ActualSessionTimeout i=63 i=78 i=2030 MaxResponseMessageSize i=63 i=78 i=2030 ClientConnectionTime i=63 i=78 i=2030 ClientLastContactTime i=63 i=78 i=2030 CurrentSubscriptionsCount i=63 i=78 i=2030 CurrentMonitoredItemsCount i=63 i=78 i=2030 CurrentPublishRequestsInQueue i=63 i=78 i=2030 TotalRequestCount i=63 i=78 i=2030 UnauthorizedRequestCount i=63 i=78 i=2030 ReadCount i=63 i=78 i=2030 HistoryReadCount i=63 i=78 i=2030 WriteCount i=63 i=78 i=2030 HistoryUpdateCount i=63 i=78 i=2030 CallCount i=63 i=78 i=2030 CreateMonitoredItemsCount i=63 i=78 i=2030 ModifyMonitoredItemsCount i=63 i=78 i=2030 SetMonitoringModeCount i=63 i=78 i=2030 SetTriggeringCount i=63 i=78 i=2030 DeleteMonitoredItemsCount i=63 i=78 i=2030 CreateSubscriptionCount i=63 i=78 i=2030 ModifySubscriptionCount i=63 i=78 i=2030 SetPublishingModeCount i=63 i=78 i=2030 PublishCount i=63 i=78 i=2030 RepublishCount i=63 i=78 i=2030 TransferSubscriptionsCount i=63 i=78 i=2030 DeleteSubscriptionsCount i=63 i=78 i=2030 AddNodesCount i=63 i=78 i=2030 AddReferencesCount i=63 i=78 i=2030 DeleteNodesCount i=63 i=78 i=2030 DeleteReferencesCount i=63 i=78 i=2030 BrowseCount i=63 i=78 i=2030 BrowseNextCount i=63 i=78 i=2030 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=2030 QueryFirstCount i=63 i=78 i=2030 QueryNextCount i=63 i=78 i=2030 RegisterNodesCount i=63 i=78 i=2030 UnregisterNodesCount i=63 i=78 i=2030 SessionSecurityDiagnostics Security related diagnostics information for an active session. i=3179 i=3180 i=3181 i=3182 i=3183 i=3184 i=3185 i=3186 i=3187 i=2244 i=78 i=2029 SessionId i=63 i=78 i=2031 ClientUserIdOfSession i=63 i=78 i=2031 ClientUserIdHistory i=63 i=78 i=2031 AuthenticationMechanism i=63 i=78 i=2031 Encoding i=63 i=78 i=2031 TransportProtocol i=63 i=78 i=2031 SecurityMode i=63 i=78 i=2031 SecurityPolicyUri i=63 i=78 i=2031 ClientCertificate i=63 i=78 i=2031 SubscriptionDiagnosticsArray A list of diagnostics for each subscription owned by the session. i=2171 i=78 i=2029 VendorServerInfoType A base type for vendor specific server information. i=58 ServerRedundancyType A base type for an object that describe how a server supports redundancy. i=2035 i=58 RedundancySupport Indicates what style of redundancy is supported by the server. i=68 i=78 i=2034 TransparentRedundancyType Identifies the capabilties of server that supports transparent redundancy. i=2037 i=2038 i=2034 CurrentServerId The ID of the server that is currently in use. i=68 i=78 i=2036 RedundantServerArray A list of servers in the same redundant set. i=68 i=78 i=2036 NonTransparentRedundancyType Identifies the capabilties of server that supports non-transparent redundancy. i=2040 i=2034 ServerUriArray A list of servers in the same redundant set. i=68 i=78 i=2039 NonTransparentNetworkRedundancyType i=11948 i=2039 ServerNetworkGroups i=68 i=78 i=11945 OperationLimitsType Identifies the operation limits imposed by the server. i=11565 i=12161 i=12162 i=11567 i=12163 i=12164 i=11569 i=11570 i=11571 i=11572 i=11573 i=11574 i=61 MaxNodesPerRead The maximum number of operations in a single Read request. i=68 i=80 i=11564 MaxNodesPerHistoryReadData The maximum number of operations in a single data HistoryRead request. i=68 i=80 i=11564 MaxNodesPerHistoryReadEvents The maximum number of operations in a single event HistoryRead request. i=68 i=80 i=11564 MaxNodesPerWrite The maximum number of operations in a single Write request. i=68 i=80 i=11564 MaxNodesPerHistoryUpdateData The maximum number of operations in a single data HistoryUpdate request. i=68 i=80 i=11564 MaxNodesPerHistoryUpdateEvents The maximum number of operations in a single event HistoryUpdate request. i=68 i=80 i=11564 MaxNodesPerMethodCall The maximum number of operations in a single Call request. i=68 i=80 i=11564 MaxNodesPerBrowse The maximum number of operations in a single Browse request. i=68 i=80 i=11564 MaxNodesPerRegisterNodes The maximum number of operations in a single RegisterNodes request. i=68 i=80 i=11564 MaxNodesPerTranslateBrowsePathsToNodeIds The maximum number of operations in a single TranslateBrowsePathsToNodeIds request. i=68 i=80 i=11564 MaxNodesPerNodeManagement The maximum number of operations in a single AddNodes, AddReferences, DeleteNodes or DeleteReferences request. i=68 i=80 i=11564 MaxMonitoredItemsPerCall The maximum number of operations in a single MonitoredItem related request. i=68 i=80 i=11564 FileType An object that represents a file that can be accessed via the server. i=11576 i=12686 i=12687 i=11579 i=13341 i=11580 i=11583 i=11585 i=11588 i=11590 i=11593 i=58 Size The size of the file in bytes. i=68 i=78 i=11575 Writable Whether the file is writable. i=68 i=78 i=11575 UserWritable Whether the file is writable by the current user. i=68 i=78 i=11575 OpenCount The current number of open file handles. i=68 i=78 i=11575 MimeType The content of the file. i=68 i=80 i=11575 Open i=11581 i=11582 i=78 i=11575 InputArguments i=68 i=78 i=11580 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=11580 i=297 FileHandle i=7 -1 Close i=11584 i=78 i=11575 InputArguments i=68 i=78 i=11583 i=297 FileHandle i=7 -1 Read i=11586 i=11587 i=78 i=11575 InputArguments i=68 i=78 i=11585 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=11585 i=297 Data i=15 -1 Write i=11589 i=78 i=11575 InputArguments i=68 i=78 i=11588 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=11591 i=11592 i=78 i=11575 InputArguments i=68 i=78 i=11590 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=11590 i=297 Position i=9 -1 SetPosition i=11594 i=78 i=11575 InputArguments i=68 i=78 i=11593 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 AddressSpaceFileType A file used to store a namespace exported from the server. i=11615 i=11575 ExportNamespace Updates the file by exporting the server namespace. i=80 i=11595 NamespaceMetadataType Provides the metadata for a namespace used by the server. i=11617 i=11618 i=11619 i=11620 i=11621 i=11622 i=11623 i=11624 i=16137 i=16138 i=16139 i=58 NamespaceUri The URI of the namespace. i=68 i=78 i=11616 NamespaceVersion The human readable string representing version of the namespace. i=68 i=78 i=11616 NamespacePublicationDate The publication date for the namespace. i=68 i=78 i=11616 IsNamespaceSubset If TRUE then the server only supports a subset of the namespace. i=68 i=78 i=11616 StaticNodeIdTypes A list of IdTypes for nodes which are the same in every server that exposes them. i=68 i=78 i=11616 StaticNumericNodeIdRange A list of ranges for numeric node ids which are the same in every server that exposes them. i=68 i=78 i=11616 StaticStringNodeIdPattern A regular expression which matches string node ids are the same in every server that exposes them. i=68 i=78 i=11616 NamespaceFile A file containing the nodes of the namespace. i=11625 i=12690 i=12691 i=11628 i=11629 i=11632 i=11634 i=11637 i=11639 i=11642 i=11595 i=80 i=11616 Size The size of the file in bytes. i=68 i=78 i=11624 Writable Whether the file is writable. i=68 i=78 i=11624 UserWritable Whether the file is writable by the current user. i=68 i=78 i=11624 OpenCount The current number of open file handles. i=68 i=78 i=11624 Open i=11630 i=11631 i=78 i=11624 InputArguments i=68 i=78 i=11629 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=11629 i=297 FileHandle i=7 -1 Close i=11633 i=78 i=11624 InputArguments i=68 i=78 i=11632 i=297 FileHandle i=7 -1 Read i=11635 i=11636 i=78 i=11624 InputArguments i=68 i=78 i=11634 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=11634 i=297 Data i=15 -1 Write i=11638 i=78 i=11624 InputArguments i=68 i=78 i=11637 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=11640 i=11641 i=78 i=11624 InputArguments i=68 i=78 i=11639 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=11639 i=297 Position i=9 -1 SetPosition i=11643 i=78 i=11624 InputArguments i=68 i=78 i=11642 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 DefaultRolePermissions i=68 i=80 i=11616 DefaultUserRolePermissions i=68 i=80 i=11616 DefaultAccessRestrictions i=68 i=80 i=11616 NamespacesType A container for the namespace metadata provided by the server. i=11646 i=58 <NamespaceIdentifier> i=11647 i=11648 i=11649 i=11650 i=11651 i=11652 i=11653 i=11616 i=11508 i=11645 NamespaceUri The URI of the namespace. i=68 i=78 i=11646 NamespaceVersion The human readable string representing version of the namespace. i=68 i=78 i=11646 NamespacePublicationDate The publication date for the namespace. i=68 i=78 i=11646 IsNamespaceSubset If TRUE then the server only supports a subset of the namespace. i=68 i=78 i=11646 StaticNodeIdTypes A list of IdTypes for nodes which are the same in every server that exposes them. i=68 i=78 i=11646 StaticNumericNodeIdRange A list of ranges for numeric node ids which are the same in every server that exposes them. i=68 i=78 i=11646 StaticStringNodeIdPattern A regular expression which matches string node ids are the same in every server that exposes them. i=68 i=78 i=11646 BaseEventType The base type for all events. i=2042 i=2043 i=2044 i=2045 i=2046 i=2047 i=3190 i=2050 i=2051 i=58 EventId A globally unique identifier for the event. i=68 i=78 i=2041 EventType The identifier for the event type. i=68 i=78 i=2041 SourceNode The source of the event. i=68 i=78 i=2041 SourceName A description of the source of the event. i=68 i=78 i=2041 Time When the event occurred. i=68 i=78 i=2041 ReceiveTime When the server received the event from the underlying system. i=68 i=78 i=2041 LocalTime Information about the local time where the event originated. i=68 i=78 i=2041 Message A localized description of the event. i=68 i=78 i=2041 Severity Indicates how urgent an event is. i=68 i=78 i=2041 AuditEventType A base type for events used to track client initiated changes to the server state. i=2053 i=2054 i=2055 i=2056 i=2057 i=2041 ActionTimeStamp When the action triggering the event occurred. i=68 i=78 i=2052 Status If TRUE the action was performed. If FALSE the action failed and the server state did not change. i=68 i=78 i=2052 ServerId The unique identifier for the server generating the event. i=68 i=78 i=2052 ClientAuditEntryId The log entry id provided in the request that initiated the action. i=68 i=78 i=2052 ClientUserId The user identity associated with the session that initiated the action. i=68 i=78 i=2052 AuditSecurityEventType A base type for events used to track security related changes. i=17615 i=2052 StatusCodeId i=68 i=80 i=2058 AuditChannelEventType A base type for events used to track related changes to a secure channel. i=2745 i=2058 SecureChannelId The identifier for the secure channel that was changed. i=68 i=78 i=2059 AuditOpenSecureChannelEventType An event that is raised when a secure channel is opened. i=2061 i=2746 i=2062 i=2063 i=2065 i=2066 i=2059 ClientCertificate The certificate provided by the client. i=68 i=78 i=2060 ClientCertificateThumbprint The thumbprint for certificate provided by the client. i=68 i=78 i=2060 RequestType The type of request (NEW or RENEW). i=68 i=78 i=2060 SecurityPolicyUri The security policy used by the channel. i=68 i=78 i=2060 SecurityMode The security mode used by the channel. i=68 i=78 i=2060 RequestedLifetime The lifetime of the channel requested by the client. i=68 i=78 i=2060 AuditSessionEventType A base type for events used to track related changes to a session. i=2070 i=2058 SessionId The unique identifier for the session,. i=68 i=78 i=2069 AuditCreateSessionEventType An event that is raised when a session is created. i=2072 i=2073 i=2747 i=2074 i=2069 SecureChannelId The secure channel associated with the session. i=68 i=78 i=2071 ClientCertificate The certificate provided by the client. i=68 i=78 i=2071 ClientCertificateThumbprint The thumbprint of the certificate provided by the client. i=68 i=78 i=2071 RevisedSessionTimeout The timeout for the session. i=68 i=78 i=2071 AuditUrlMismatchEventType i=2749 i=2071 EndpointUrl i=68 i=78 i=2748 AuditActivateSessionEventType i=2076 i=2077 i=11485 i=2069 ClientSoftwareCertificates i=68 i=78 i=2075 UserIdentityToken i=68 i=78 i=2075 SecureChannelId i=68 i=78 i=2075 AuditCancelEventType i=2079 i=2069 RequestHandle i=68 i=78 i=2078 AuditCertificateEventType i=2081 i=2058 Certificate i=68 i=78 i=2080 AuditCertificateDataMismatchEventType i=2083 i=2084 i=2080 InvalidHostname i=68 i=78 i=2082 InvalidUri i=68 i=78 i=2082 AuditCertificateExpiredEventType i=2080 AuditCertificateInvalidEventType i=2080 AuditCertificateUntrustedEventType i=2080 AuditCertificateRevokedEventType i=2080 AuditCertificateMismatchEventType i=2080 AuditNodeManagementEventType i=2052 AuditAddNodesEventType i=2092 i=2090 NodesToAdd i=68 i=78 i=2091 AuditDeleteNodesEventType i=2094 i=2090 NodesToDelete i=68 i=78 i=2093 AuditAddReferencesEventType i=2096 i=2090 ReferencesToAdd i=68 i=78 i=2095 AuditDeleteReferencesEventType i=2098 i=2090 ReferencesToDelete i=68 i=78 i=2097 AuditUpdateEventType i=2052 AuditWriteUpdateEventType i=2750 i=2101 i=2102 i=2103 i=2099 AttributeId i=68 i=78 i=2100 IndexRange i=68 i=78 i=2100 OldValue i=68 i=78 i=2100 NewValue i=68 i=78 i=2100 AuditHistoryUpdateEventType i=2751 i=2099 ParameterDataTypeId i=68 i=78 i=2104 AuditUpdateMethodEventType i=2128 i=2129 i=2052 MethodId i=68 i=78 i=2127 InputArguments i=68 i=78 i=2127 SystemEventType i=2041 DeviceFailureEventType i=2130 SystemStatusChangeEventType i=11696 i=2130 SystemState i=68 i=78 i=11446 BaseModelChangeEventType i=2041 GeneralModelChangeEventType i=2134 i=2132 Changes i=68 i=78 i=2133 SemanticChangeEventType i=2739 i=2132 Changes i=68 i=78 i=2738 EventQueueOverflowEventType i=2041 ProgressEventType i=12502 i=12503 i=2041 Context i=68 i=78 i=11436 Progress i=68 i=78 i=11436 AggregateFunctionType i=58 ServerVendorCapabilityType i=63 ServerStatusType i=2139 i=2140 i=2141 i=2142 i=2752 i=2753 i=63 StartTime i=63 i=78 i=2138 CurrentTime i=63 i=78 i=2138 State i=63 i=78 i=2138 BuildInfo i=3698 i=3699 i=3700 i=3701 i=3702 i=3703 i=3051 i=78 i=2138 ProductUri i=63 i=78 i=2142 ManufacturerName i=63 i=78 i=2142 ProductName i=63 i=78 i=2142 SoftwareVersion i=63 i=78 i=2142 BuildNumber i=63 i=78 i=2142 BuildDate i=63 i=78 i=2142 SecondsTillShutdown i=63 i=78 i=2138 ShutdownReason i=63 i=78 i=2138 BuildInfoType i=3052 i=3053 i=3054 i=3055 i=3056 i=3057 i=63 ProductUri i=63 i=78 i=3051 ManufacturerName i=63 i=78 i=3051 ProductName i=63 i=78 i=3051 SoftwareVersion i=63 i=78 i=3051 BuildNumber i=63 i=78 i=3051 BuildDate i=63 i=78 i=3051 ServerDiagnosticsSummaryType i=2151 i=2152 i=2153 i=2154 i=2155 i=2156 i=2157 i=2159 i=2160 i=2161 i=2162 i=2163 i=63 ServerViewCount i=63 i=78 i=2150 CurrentSessionCount i=63 i=78 i=2150 CumulatedSessionCount i=63 i=78 i=2150 SecurityRejectedSessionCount i=63 i=78 i=2150 RejectedSessionCount i=63 i=78 i=2150 SessionTimeoutCount i=63 i=78 i=2150 SessionAbortCount i=63 i=78 i=2150 PublishingIntervalCount i=63 i=78 i=2150 CurrentSubscriptionCount i=63 i=78 i=2150 CumulatedSubscriptionCount i=63 i=78 i=2150 SecurityRejectedRequestsCount i=63 i=78 i=2150 RejectedRequestsCount i=63 i=78 i=2150 SamplingIntervalDiagnosticsArrayType i=12779 i=63 SamplingIntervalDiagnostics i=12780 i=12781 i=12782 i=12783 i=2165 i=83 i=2164 SamplingInterval i=63 i=78 i=12779 SampledMonitoredItemsCount i=63 i=78 i=12779 MaxSampledMonitoredItemsCount i=63 i=78 i=12779 DisabledMonitoredItemsSamplingCount i=63 i=78 i=12779 SamplingIntervalDiagnosticsType i=2166 i=11697 i=11698 i=11699 i=63 SamplingInterval i=63 i=78 i=2165 SampledMonitoredItemsCount i=63 i=78 i=2165 MaxSampledMonitoredItemsCount i=63 i=78 i=2165 DisabledMonitoredItemsSamplingCount i=63 i=78 i=2165 SubscriptionDiagnosticsArrayType i=12784 i=63 SubscriptionDiagnostics i=12785 i=12786 i=12787 i=12788 i=12789 i=12790 i=12791 i=12792 i=12793 i=12794 i=12795 i=12796 i=12797 i=12798 i=12799 i=12800 i=12801 i=12802 i=12803 i=12804 i=12805 i=12806 i=12807 i=12808 i=12809 i=12810 i=12811 i=12812 i=12813 i=12814 i=12815 i=2172 i=83 i=2171 SessionId i=63 i=78 i=12784 SubscriptionId i=63 i=78 i=12784 Priority i=63 i=78 i=12784 PublishingInterval i=63 i=78 i=12784 MaxKeepAliveCount i=63 i=78 i=12784 MaxLifetimeCount i=63 i=78 i=12784 MaxNotificationsPerPublish i=63 i=78 i=12784 PublishingEnabled i=63 i=78 i=12784 ModifyCount i=63 i=78 i=12784 EnableCount i=63 i=78 i=12784 DisableCount i=63 i=78 i=12784 RepublishRequestCount i=63 i=78 i=12784 RepublishMessageRequestCount i=63 i=78 i=12784 RepublishMessageCount i=63 i=78 i=12784 TransferRequestCount i=63 i=78 i=12784 TransferredToAltClientCount i=63 i=78 i=12784 TransferredToSameClientCount i=63 i=78 i=12784 PublishRequestCount i=63 i=78 i=12784 DataChangeNotificationsCount i=63 i=78 i=12784 EventNotificationsCount i=63 i=78 i=12784 NotificationsCount i=63 i=78 i=12784 LatePublishRequestCount i=63 i=78 i=12784 CurrentKeepAliveCount i=63 i=78 i=12784 CurrentLifetimeCount i=63 i=78 i=12784 UnacknowledgedMessageCount i=63 i=78 i=12784 DiscardedMessageCount i=63 i=78 i=12784 MonitoredItemCount i=63 i=78 i=12784 DisabledMonitoredItemCount i=63 i=78 i=12784 MonitoringQueueOverflowCount i=63 i=78 i=12784 NextSequenceNumber i=63 i=78 i=12784 EventQueueOverflowCount i=63 i=78 i=12784 SubscriptionDiagnosticsType i=2173 i=2174 i=2175 i=2176 i=2177 i=8888 i=2179 i=2180 i=2181 i=2182 i=2183 i=2184 i=2185 i=2186 i=2187 i=2188 i=2189 i=2190 i=2191 i=2998 i=2193 i=8889 i=8890 i=8891 i=8892 i=8893 i=8894 i=8895 i=8896 i=8897 i=8902 i=63 SessionId i=63 i=78 i=2172 SubscriptionId i=63 i=78 i=2172 Priority i=63 i=78 i=2172 PublishingInterval i=63 i=78 i=2172 MaxKeepAliveCount i=63 i=78 i=2172 MaxLifetimeCount i=63 i=78 i=2172 MaxNotificationsPerPublish i=63 i=78 i=2172 PublishingEnabled i=63 i=78 i=2172 ModifyCount i=63 i=78 i=2172 EnableCount i=63 i=78 i=2172 DisableCount i=63 i=78 i=2172 RepublishRequestCount i=63 i=78 i=2172 RepublishMessageRequestCount i=63 i=78 i=2172 RepublishMessageCount i=63 i=78 i=2172 TransferRequestCount i=63 i=78 i=2172 TransferredToAltClientCount i=63 i=78 i=2172 TransferredToSameClientCount i=63 i=78 i=2172 PublishRequestCount i=63 i=78 i=2172 DataChangeNotificationsCount i=63 i=78 i=2172 EventNotificationsCount i=63 i=78 i=2172 NotificationsCount i=63 i=78 i=2172 LatePublishRequestCount i=63 i=78 i=2172 CurrentKeepAliveCount i=63 i=78 i=2172 CurrentLifetimeCount i=63 i=78 i=2172 UnacknowledgedMessageCount i=63 i=78 i=2172 DiscardedMessageCount i=63 i=78 i=2172 MonitoredItemCount i=63 i=78 i=2172 DisabledMonitoredItemCount i=63 i=78 i=2172 MonitoringQueueOverflowCount i=63 i=78 i=2172 NextSequenceNumber i=63 i=78 i=2172 EventQueueOverflowCount i=63 i=78 i=2172 SessionDiagnosticsArrayType i=12816 i=63 SessionDiagnostics i=12817 i=12818 i=12819 i=12820 i=12821 i=12822 i=12823 i=12824 i=12825 i=12826 i=12827 i=12828 i=12829 i=12830 i=12831 i=12832 i=12833 i=12834 i=12835 i=12836 i=12837 i=12838 i=12839 i=12840 i=12841 i=12842 i=12843 i=12844 i=12845 i=12846 i=12847 i=12848 i=12849 i=12850 i=12851 i=12852 i=12853 i=12854 i=12855 i=12856 i=12857 i=12858 i=12859 i=2197 i=83 i=2196 SessionId i=63 i=78 i=12816 SessionName i=63 i=78 i=12816 ClientDescription i=63 i=78 i=12816 ServerUri i=63 i=78 i=12816 EndpointUrl i=63 i=78 i=12816 LocaleIds i=63 i=78 i=12816 ActualSessionTimeout i=63 i=78 i=12816 MaxResponseMessageSize i=63 i=78 i=12816 ClientConnectionTime i=63 i=78 i=12816 ClientLastContactTime i=63 i=78 i=12816 CurrentSubscriptionsCount i=63 i=78 i=12816 CurrentMonitoredItemsCount i=63 i=78 i=12816 CurrentPublishRequestsInQueue i=63 i=78 i=12816 TotalRequestCount i=63 i=78 i=12816 UnauthorizedRequestCount i=63 i=78 i=12816 ReadCount i=63 i=78 i=12816 HistoryReadCount i=63 i=78 i=12816 WriteCount i=63 i=78 i=12816 HistoryUpdateCount i=63 i=78 i=12816 CallCount i=63 i=78 i=12816 CreateMonitoredItemsCount i=63 i=78 i=12816 ModifyMonitoredItemsCount i=63 i=78 i=12816 SetMonitoringModeCount i=63 i=78 i=12816 SetTriggeringCount i=63 i=78 i=12816 DeleteMonitoredItemsCount i=63 i=78 i=12816 CreateSubscriptionCount i=63 i=78 i=12816 ModifySubscriptionCount i=63 i=78 i=12816 SetPublishingModeCount i=63 i=78 i=12816 PublishCount i=63 i=78 i=12816 RepublishCount i=63 i=78 i=12816 TransferSubscriptionsCount i=63 i=78 i=12816 DeleteSubscriptionsCount i=63 i=78 i=12816 AddNodesCount i=63 i=78 i=12816 AddReferencesCount i=63 i=78 i=12816 DeleteNodesCount i=63 i=78 i=12816 DeleteReferencesCount i=63 i=78 i=12816 BrowseCount i=63 i=78 i=12816 BrowseNextCount i=63 i=78 i=12816 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=12816 QueryFirstCount i=63 i=78 i=12816 QueryNextCount i=63 i=78 i=12816 RegisterNodesCount i=63 i=78 i=12816 UnregisterNodesCount i=63 i=78 i=12816 SessionDiagnosticsVariableType i=2198 i=2199 i=2200 i=2201 i=2202 i=2203 i=2204 i=3050 i=2205 i=2206 i=2207 i=2208 i=2209 i=8900 i=11892 i=2217 i=2218 i=2219 i=2220 i=2221 i=2222 i=2223 i=2224 i=2225 i=2226 i=2227 i=2228 i=2229 i=2230 i=2231 i=2232 i=2233 i=2234 i=2235 i=2236 i=2237 i=2238 i=2239 i=2240 i=2241 i=2242 i=2730 i=2731 i=63 SessionId i=63 i=78 i=2197 SessionName i=63 i=78 i=2197 ClientDescription i=63 i=78 i=2197 ServerUri i=63 i=78 i=2197 EndpointUrl i=63 i=78 i=2197 LocaleIds i=63 i=78 i=2197 ActualSessionTimeout i=63 i=78 i=2197 MaxResponseMessageSize i=63 i=78 i=2197 ClientConnectionTime i=63 i=78 i=2197 ClientLastContactTime i=63 i=78 i=2197 CurrentSubscriptionsCount i=63 i=78 i=2197 CurrentMonitoredItemsCount i=63 i=78 i=2197 CurrentPublishRequestsInQueue i=63 i=78 i=2197 TotalRequestCount i=63 i=78 i=2197 UnauthorizedRequestCount i=63 i=78 i=2197 ReadCount i=63 i=78 i=2197 HistoryReadCount i=63 i=78 i=2197 WriteCount i=63 i=78 i=2197 HistoryUpdateCount i=63 i=78 i=2197 CallCount i=63 i=78 i=2197 CreateMonitoredItemsCount i=63 i=78 i=2197 ModifyMonitoredItemsCount i=63 i=78 i=2197 SetMonitoringModeCount i=63 i=78 i=2197 SetTriggeringCount i=63 i=78 i=2197 DeleteMonitoredItemsCount i=63 i=78 i=2197 CreateSubscriptionCount i=63 i=78 i=2197 ModifySubscriptionCount i=63 i=78 i=2197 SetPublishingModeCount i=63 i=78 i=2197 PublishCount i=63 i=78 i=2197 RepublishCount i=63 i=78 i=2197 TransferSubscriptionsCount i=63 i=78 i=2197 DeleteSubscriptionsCount i=63 i=78 i=2197 AddNodesCount i=63 i=78 i=2197 AddReferencesCount i=63 i=78 i=2197 DeleteNodesCount i=63 i=78 i=2197 DeleteReferencesCount i=63 i=78 i=2197 BrowseCount i=63 i=78 i=2197 BrowseNextCount i=63 i=78 i=2197 TranslateBrowsePathsToNodeIdsCount i=63 i=78 i=2197 QueryFirstCount i=63 i=78 i=2197 QueryNextCount i=63 i=78 i=2197 RegisterNodesCount i=63 i=78 i=2197 UnregisterNodesCount i=63 i=78 i=2197 SessionSecurityDiagnosticsArrayType i=12860 i=63 SessionSecurityDiagnostics i=12861 i=12862 i=12863 i=12864 i=12865 i=12866 i=12867 i=12868 i=12869 i=2244 i=83 i=2243 SessionId i=63 i=78 i=12860 ClientUserIdOfSession i=63 i=78 i=12860 ClientUserIdHistory i=63 i=78 i=12860 AuthenticationMechanism i=63 i=78 i=12860 Encoding i=63 i=78 i=12860 TransportProtocol i=63 i=78 i=12860 SecurityMode i=63 i=78 i=12860 SecurityPolicyUri i=63 i=78 i=12860 ClientCertificate i=63 i=78 i=12860 SessionSecurityDiagnosticsType i=2245 i=2246 i=2247 i=2248 i=2249 i=2250 i=2251 i=2252 i=3058 i=63 SessionId i=63 i=78 i=2244 ClientUserIdOfSession i=63 i=78 i=2244 ClientUserIdHistory i=63 i=78 i=2244 AuthenticationMechanism i=63 i=78 i=2244 Encoding i=63 i=78 i=2244 TransportProtocol i=63 i=78 i=2244 SecurityMode i=63 i=78 i=2244 SecurityPolicyUri i=63 i=78 i=2244 ClientCertificate i=63 i=78 i=2244 OptionSetType i=11488 i=11701 i=63 OptionSetValues i=68 i=78 i=11487 BitMask i=68 i=80 i=11487 SelectionListType i=17632 i=17633 i=16312 i=63 Selections i=68 i=78 i=16309 SelectionDescriptions i=68 i=80 i=16309 RestrictToList i=68 i=80 i=16309 AudioVariableType i=17988 i=17989 i=17990 i=63 ListId i=68 i=80 i=17986 AgencyId i=68 i=80 i=17986 VersionId i=68 i=80 i=17986 EventTypes i=86 i=2041 i=61 Server i=2254 i=2255 i=2256 i=2267 i=2994 i=12885 i=2268 i=2274 i=2295 i=2296 i=11715 i=11492 i=12873 i=12749 i=12886 i=16313 i=85 i=2004 ServerArray The list of server URIs used by the server. i=68 i=2253 NamespaceArray The list of namespace URIs used by the server. i=68 i=2253 ServerStatus The current status of the server. i=2257 i=2258 i=2259 i=2260 i=2992 i=2993 i=2138 i=2253 StartTime i=63 i=2256 CurrentTime i=63 i=2256 State i=63 i=2256 BuildInfo i=2262 i=2263 i=2261 i=2264 i=2265 i=2266 i=3051 i=2256 ProductUri i=63 i=2260 ManufacturerName i=63 i=2260 ProductName i=63 i=2260 SoftwareVersion i=63 i=2260 BuildNumber i=63 i=2260 BuildDate i=63 i=2260 SecondsTillShutdown i=63 i=2256 ShutdownReason i=63 i=2256 ServiceLevel A value indicating the level of service the server can provide. 255 indicates the best. i=68 i=2253 Auditing A flag indicating whether the server is currently generating audit events. i=68 i=2253 EstimatedReturnTime Indicates the time at which the Server is expected to be available in the state RUNNING. i=68 i=2253 ServerCapabilities Describes capabilities supported by the server. i=2269 i=2271 i=2272 i=2735 i=2736 i=2737 i=3704 i=11702 i=11703 i=12911 i=11704 i=2996 i=2997 i=15606 i=2013 i=2253 ServerProfileArray A list of profiles supported by the server. i=68 i=2268 LocaleIdArray A list of locales supported by the server. i=68 i=2268 MinSupportedSampleRate The minimum sampling interval supported by the server. i=68 i=2268 MaxBrowseContinuationPoints The maximum number of continuation points for Browse operations per session. i=68 i=2268 MaxQueryContinuationPoints The maximum number of continuation points for Query operations per session. i=68 i=2268 MaxHistoryContinuationPoints The maximum number of continuation points for ReadHistory operations per session. i=68 i=2268 SoftwareCertificates The software certificates owned by the server. i=68 i=2268 MaxArrayLength The maximum length for an array value supported by the server. i=68 i=2268 MaxStringLength The maximum length for a string value supported by the server. i=68 i=2268 MaxByteStringLength The maximum length for a byte string value supported by the server. i=68 i=2268 OperationLimits Defines the limits supported by the server for different operations. i=11705 i=12165 i=12166 i=11707 i=12167 i=12168 i=11709 i=11710 i=11711 i=11712 i=11713 i=11714 i=11564 i=2268 MaxNodesPerRead The maximum number of operations in a single Read request. i=68 i=11704 MaxNodesPerHistoryReadData The maximum number of operations in a single data HistoryRead request. i=68 i=11704 MaxNodesPerHistoryReadEvents The maximum number of operations in a single event HistoryRead request. i=68 i=11704 MaxNodesPerWrite The maximum number of operations in a single Write request. i=68 i=11704 MaxNodesPerHistoryUpdateData The maximum number of operations in a single data HistoryUpdate request. i=68 i=11704 MaxNodesPerHistoryUpdateEvents The maximum number of operations in a single event HistoryUpdate request. i=68 i=11704 MaxNodesPerMethodCall The maximum number of operations in a single Call request. i=68 i=11704 MaxNodesPerBrowse The maximum number of operations in a single Browse request. i=68 i=11704 MaxNodesPerRegisterNodes The maximum number of operations in a single RegisterNodes request. i=68 i=11704 MaxNodesPerTranslateBrowsePathsToNodeIds The maximum number of operations in a single TranslateBrowsePathsToNodeIds request. i=68 i=11704 MaxNodesPerNodeManagement The maximum number of operations in a single AddNodes, AddReferences, DeleteNodes or DeleteReferences request. i=68 i=11704 MaxMonitoredItemsPerCall The maximum number of operations in a single MonitoredItem related request. i=68 i=11704 ModellingRules A folder for the modelling rules supported by the server. i=61 i=2268 AggregateFunctions A folder for the real time aggregates supported by the server. i=61 i=2268 Roles Describes the roles supported by the server. i=16301 i=16304 i=15607 i=2268 AddRole i=16302 i=16303 i=15606 InputArguments i=68 i=16301 i=297 RoleName i=12 -1 i=297 NamespaceUri i=12 -1 OutputArguments i=68 i=16301 i=297 RoleNodeId i=17 -1 RemoveRole i=16305 i=15606 InputArguments i=68 i=16304 i=297 RoleNodeId i=17 -1 ServerDiagnostics Reports diagnostics about the server. i=2275 i=2289 i=2290 i=3706 i=2294 i=2020 i=2253 ServerDiagnosticsSummary A summary of server level diagnostics. i=2276 i=2277 i=2278 i=2279 i=3705 i=2281 i=2282 i=2284 i=2285 i=2286 i=2287 i=2288 i=2150 i=2274 ServerViewCount i=63 i=2275 CurrentSessionCount i=63 i=2275 CumulatedSessionCount i=63 i=2275 SecurityRejectedSessionCount i=63 i=2275 RejectedSessionCount i=63 i=2275 SessionTimeoutCount i=63 i=2275 SessionAbortCount i=63 i=2275 PublishingIntervalCount i=63 i=2275 CurrentSubscriptionCount i=63 i=2275 CumulatedSubscriptionCount i=63 i=2275 SecurityRejectedRequestsCount i=63 i=2275 RejectedRequestsCount i=63 i=2275 SamplingIntervalDiagnosticsArray A list of diagnostics for each sampling interval supported by the server. i=2164 i=2274 SubscriptionDiagnosticsArray A list of diagnostics for each active subscription. i=2171 i=2274 SessionsDiagnosticsSummary A summary of session level diagnostics. i=3707 i=3708 i=2026 i=2274 SessionDiagnosticsArray A list of diagnostics for each active session. i=2196 i=3706 SessionSecurityDiagnosticsArray A list of security related diagnostics for each active session. i=2243 i=3706 EnabledFlag If TRUE the diagnostics collection is enabled. i=68 i=2274 VendorServerInfo Server information provided by the vendor. i=2033 i=2253 ServerRedundancy Describes the redundancy capabilities of the server. i=3709 i=11312 i=11313 i=11314 i=14415 i=2034 i=2253 RedundancySupport Indicates what style of redundancy is supported by the server. i=68 i=2296 CurrentServerId i=68 i=2296 RedundantServerArray i=68 i=2296 ServerUriArray i=68 i=2296 ServerNetworkGroups i=68 i=2296 Namespaces Describes the namespaces supported by the server. i=11645 i=2253 GetMonitoredItems i=11493 i=11494 i=2253 InputArguments i=68 i=11492 i=297 SubscriptionId i=7 -1 OutputArguments i=68 i=11492 i=297 ServerHandles i=7 1 i=297 ClientHandles i=7 1 ResendData i=12874 i=2253 InputArguments i=68 i=12873 i=297 SubscriptionId i=7 -1 SetSubscriptionDurable i=12750 i=12751 i=2253 InputArguments i=68 i=12749 i=297 SubscriptionId i=7 -1 i=297 LifetimeInHours i=7 -1 OutputArguments i=68 i=12749 i=297 RevisedLifetimeInHours i=7 -1 RequestServerStateChange i=12887 i=2253 InputArguments i=68 i=12886 i=297 State i=852 -1 i=297 EstimatedReturnTime i=13 -1 i=297 SecondsTillShutdown i=7 -1 i=297 Reason i=21 -1 i=297 Restart i=1 -1 CurrentTimeZone i=68 i=2253 HistoryServerCapabilities i=11193 i=11242 i=11273 i=11274 i=11196 i=11197 i=11198 i=11199 i=11200 i=11281 i=11282 i=11283 i=11502 i=11275 i=11201 i=2268 i=2330 AccessHistoryDataCapability i=68 i=11192 AccessHistoryEventsCapability i=68 i=11192 MaxReturnDataValues i=68 i=11192 MaxReturnEventValues i=68 i=11192 InsertDataCapability i=68 i=11192 ReplaceDataCapability i=68 i=11192 UpdateDataCapability i=68 i=11192 DeleteRawCapability i=68 i=11192 DeleteAtTimeCapability i=68 i=11192 InsertEventCapability i=68 i=11192 ReplaceEventCapability i=68 i=11192 UpdateEventCapability i=68 i=11192 DeleteEventCapability i=68 i=11192 InsertAnnotationCapability i=68 i=11192 AggregateFunctions i=61 i=11192 BitFieldMaskDataType A mask of 32 bits that can be updated individually by using the top 32 bits as a mask. i=9 KeyValuePair i=22 EndpointType i=22 StateMachineType i=2769 i=2770 i=58 CurrentState i=3720 i=2755 i=78 i=2299 Id i=68 i=78 i=2769 LastTransition i=3724 i=2762 i=80 i=2299 Id i=68 i=78 i=2770 StateVariableType i=2756 i=2757 i=2758 i=2759 i=63 Id i=68 i=78 i=2755 Name i=68 i=80 i=2755 Number i=68 i=80 i=2755 EffectiveDisplayName i=68 i=80 i=2755 TransitionVariableType i=2763 i=2764 i=2765 i=2766 i=11456 i=63 Id i=68 i=78 i=2762 Name i=68 i=80 i=2762 Number i=68 i=80 i=2762 TransitionTime i=68 i=80 i=2762 EffectiveTransitionTime i=68 i=80 i=2762 FiniteStateMachineType i=2772 i=2773 i=17635 i=17636 i=2299 CurrentState i=3728 i=2760 i=78 i=2771 Id i=68 i=78 i=2772 LastTransition i=3732 i=2767 i=80 i=2771 Id i=68 i=78 i=2773 AvailableStates i=63 i=80 i=2771 AvailableTransitions i=63 i=80 i=2771 FiniteStateVariableType i=2761 i=2755 Id i=68 i=78 i=2760 FiniteTransitionVariableType i=2768 i=2762 Id i=68 i=78 i=2767 StateType i=2308 i=58 StateNumber i=68 i=78 i=2307 InitialStateType i=2307 TransitionType i=2312 i=58 TransitionNumber i=68 i=78 i=2310 TransitionEventType i=2774 i=2775 i=2776 i=2041 Transition i=3754 i=2762 i=78 i=2311 Id i=68 i=78 i=2774 FromState i=3746 i=2755 i=78 i=2311 Id i=68 i=78 i=2775 ToState i=3750 i=2755 i=78 i=2311 Id i=68 i=78 i=2776 AuditUpdateStateEventType i=2777 i=2778 i=2127 OldStateId i=68 i=78 i=2315 NewStateId i=68 i=78 i=2315 OpenFileMode i=11940 i=29 EnumValues i=68 i=78 i=11939 i=7616 1 Read i=7616 2 Write i=7616 4 EraseExisting i=7616 8 Append FileDirectoryType i=13354 i=13366 i=13387 i=13390 i=13393 i=13395 i=61 <FileDirectoryName> i=13355 i=13358 i=17718 i=13363 i=13353 i=11508 i=13353 CreateDirectory i=13356 i=13357 i=78 i=13354 InputArguments i=68 i=78 i=13355 i=297 DirectoryName i=12 -1 OutputArguments i=68 i=78 i=13355 i=297 DirectoryNodeId i=17 -1 CreateFile i=13359 i=13360 i=78 i=13354 InputArguments i=68 i=78 i=13358 i=297 FileName i=12 -1 i=297 RequestFileOpen i=1 -1 OutputArguments i=68 i=78 i=13358 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 Delete i=17719 i=78 i=13354 InputArguments i=68 i=78 i=17718 i=297 ObjectToDelete i=17 -1 MoveOrCopy i=13364 i=13365 i=78 i=13354 InputArguments i=68 i=78 i=13363 i=297 ObjectToMoveOrCopy i=17 -1 i=297 TargetDirectory i=17 -1 i=297 CreateCopy i=1 -1 i=297 NewName i=12 -1 OutputArguments i=68 i=78 i=13363 i=297 NewNodeId i=17 -1 <FileName> i=13367 i=13368 i=13369 i=13370 i=13372 i=13375 i=13377 i=13380 i=13382 i=13385 i=11575 i=11508 i=13353 Size The size of the file in bytes. i=68 i=78 i=13366 Writable Whether the file is writable. i=68 i=78 i=13366 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13366 OpenCount The current number of open file handles. i=68 i=78 i=13366 Open i=13373 i=13374 i=78 i=13366 InputArguments i=68 i=78 i=13372 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13372 i=297 FileHandle i=7 -1 Close i=13376 i=78 i=13366 InputArguments i=68 i=78 i=13375 i=297 FileHandle i=7 -1 Read i=13378 i=13379 i=78 i=13366 InputArguments i=68 i=78 i=13377 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13377 i=297 Data i=15 -1 Write i=13381 i=78 i=13366 InputArguments i=68 i=78 i=13380 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13383 i=13384 i=78 i=13366 InputArguments i=68 i=78 i=13382 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13382 i=297 Position i=9 -1 SetPosition i=13386 i=78 i=13366 InputArguments i=68 i=78 i=13385 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 CreateDirectory i=13388 i=13389 i=78 i=13353 InputArguments i=68 i=78 i=13387 i=297 DirectoryName i=12 -1 OutputArguments i=68 i=78 i=13387 i=297 DirectoryNodeId i=17 -1 CreateFile i=13391 i=13392 i=78 i=13353 InputArguments i=68 i=78 i=13390 i=297 FileName i=12 -1 i=297 RequestFileOpen i=1 -1 OutputArguments i=68 i=78 i=13390 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 Delete i=13394 i=78 i=13353 InputArguments i=68 i=78 i=13393 i=297 ObjectToDelete i=17 -1 MoveOrCopy i=13396 i=13397 i=78 i=13353 InputArguments i=68 i=78 i=13395 i=297 ObjectToMoveOrCopy i=17 -1 i=297 TargetDirectory i=17 -1 i=297 CreateCopy i=1 -1 i=297 NewName i=12 -1 OutputArguments i=68 i=78 i=13395 i=297 NewNodeId i=17 -1 FileSystem i=16348 i=16351 i=16354 i=16356 i=13353 CreateDirectory i=16349 i=16350 i=16314 InputArguments i=68 i=16348 i=297 DirectoryName i=12 -1 OutputArguments i=68 i=16348 i=297 DirectoryNodeId i=17 -1 CreateFile i=16352 i=16353 i=16314 InputArguments i=68 i=16351 i=297 FileName i=12 -1 i=297 RequestFileOpen i=1 -1 OutputArguments i=68 i=16351 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 Delete i=16355 i=16314 InputArguments i=68 i=16354 i=297 ObjectToDelete i=17 -1 MoveOrCopy i=16357 i=16358 i=16314 InputArguments i=68 i=16356 i=297 ObjectToMoveOrCopy i=17 -1 i=297 TargetDirectory i=17 -1 i=297 CreateCopy i=1 -1 i=297 NewName i=12 -1 OutputArguments i=68 i=16356 i=297 NewNodeId i=17 -1 TemporaryFileTransferType i=15745 i=15746 i=15749 i=15751 i=15754 i=58 ClientProcessingTimeout i=68 i=78 i=15744 GenerateFileForRead i=15747 i=15748 i=78 i=15744 InputArguments i=68 i=78 i=15746 i=297 GenerateOptions i=24 -1 OutputArguments i=68 i=78 i=15746 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 i=297 CompletionStateMachine i=17 -1 GenerateFileForWrite i=16359 i=15750 i=78 i=15744 InputArguments i=68 i=78 i=15749 i=297 GenerateOptions i=24 -1 OutputArguments i=68 i=78 i=15749 i=297 FileNodeId i=17 -1 i=297 FileHandle i=7 -1 CloseAndCommit i=15752 i=15753 i=78 i=15744 InputArguments i=68 i=78 i=15751 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=15751 i=297 CompletionStateMachine i=17 -1 <TransferState> i=15755 i=15794 i=15803 i=11508 i=15744 CurrentState i=15756 i=2760 i=78 i=15754 Id i=68 i=78 i=15755 Reset i=78 i=15754 FileTransferStateMachineType i=15815 i=15817 i=15819 i=15821 i=15823 i=15825 i=15827 i=15829 i=15831 i=15833 i=15835 i=15837 i=15839 i=15841 i=15843 i=2771 Idle i=15816 i=2309 i=15803 StateNumber i=68 i=78 i=15815 ReadPrepare i=15818 i=2307 i=15803 StateNumber i=68 i=78 i=15817 ReadTransfer i=15820 i=2307 i=15803 StateNumber i=68 i=78 i=15819 ApplyWrite i=15822 i=2307 i=15803 StateNumber i=68 i=78 i=15821 Error i=15824 i=2307 i=15803 StateNumber i=68 i=78 i=15823 IdleToReadPrepare i=15826 i=2310 i=15803 TransitionNumber i=68 i=78 i=15825 ReadPrepareToReadTransfer i=15828 i=2310 i=15803 TransitionNumber i=68 i=78 i=15827 ReadTransferToIdle i=15830 i=2310 i=15803 TransitionNumber i=68 i=78 i=15829 IdleToApplyWrite i=15832 i=2310 i=15803 TransitionNumber i=68 i=78 i=15831 ApplyWriteToIdle i=15834 i=2310 i=15803 TransitionNumber i=68 i=78 i=15833 ReadPrepareToError i=15836 i=2310 i=15803 TransitionNumber i=68 i=78 i=15835 ReadTransferToError i=15838 i=2310 i=15803 TransitionNumber i=68 i=78 i=15837 ApplyWriteToError i=15840 i=2310 i=15803 TransitionNumber i=68 i=78 i=15839 ErrorToIdle i=15842 i=2310 i=15803 TransitionNumber i=68 i=78 i=15841 Reset i=78 i=15803 RoleSetType A container for the roles supported by the server. i=15608 i=15997 i=16000 i=58 <RoleName> i=16162 i=15620 i=11508 i=15607 Identities i=68 i=78 i=15608 AddRole i=15998 i=15999 i=78 i=15607 InputArguments i=68 i=78 i=15997 i=297 RoleName i=12 -1 i=297 NamespaceUri i=12 -1 OutputArguments i=68 i=78 i=15997 i=297 RoleNodeId i=17 -1 RemoveRole i=16001 i=78 i=15607 InputArguments i=68 i=78 i=16000 i=297 RoleNodeId i=17 -1 RoleType i=16173 i=16174 i=15410 i=16175 i=15411 i=15624 i=15626 i=16176 i=16178 i=16180 i=16182 i=58 Identities i=68 i=78 i=15620 Applications i=68 i=80 i=15620 ApplicationsExclude i=68 i=80 i=15620 Endpoints i=68 i=80 i=15620 EndpointsExclude i=68 i=80 i=15620 AddIdentity i=15625 i=80 i=15620 InputArguments i=68 i=78 i=15624 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15627 i=80 i=15620 InputArguments i=68 i=78 i=15626 i=297 RuleToRemove i=15634 -1 AddApplication i=16177 i=80 i=15620 InputArguments i=68 i=78 i=16176 i=297 RuleToAdd i=12 -1 RemoveApplication i=16179 i=80 i=15620 InputArguments i=68 i=78 i=16178 i=297 RuleToRemove i=12 -1 AddEndpoint i=16181 i=80 i=15620 InputArguments i=68 i=78 i=16180 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16183 i=80 i=15620 InputArguments i=68 i=78 i=16182 i=297 RuleToRemove i=12 -1 IdentityCriteriaType i=15633 i=29 EnumValues i=68 i=78 i=15632 i=7616 1 UserName i=7616 2 Thumbprint i=7616 3 Role i=7616 4 GroupId i=7616 5 Anonymous i=7616 6 AuthenticatedUser IdentityMappingRuleType i=22 RoleMappingRuleChangedAuditEventType i=2127 Anonymous The Role has very limited access for use when a Session has anonymous credentials. i=16192 i=16193 i=15412 i=16194 i=15413 i=15648 i=15650 i=16195 i=16197 i=16199 i=16201 i=15606 i=15620 Identities i=68 i=15644 Applications i=68 i=15644 ApplicationsExclude i=68 i=15644 Endpoints i=68 i=15644 EndpointsExclude i=68 i=15644 AddIdentity i=15649 i=15644 InputArguments i=68 i=15648 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15651 i=15644 InputArguments i=68 i=15650 i=297 RuleToRemove i=15634 -1 AddApplication i=16196 i=15644 InputArguments i=68 i=16195 i=297 RuleToAdd i=12 -1 RemoveApplication i=16198 i=15644 InputArguments i=68 i=16197 i=297 RuleToRemove i=12 -1 AddEndpoint i=16200 i=15644 InputArguments i=68 i=16199 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16202 i=15644 InputArguments i=68 i=16201 i=297 RuleToRemove i=12 -1 AuthenticatedUser The Role has limited access for use when a Session has valid non-anonymous credentials but has not been explicity granted access to a Role. i=16203 i=16204 i=15414 i=16205 i=15415 i=15660 i=15662 i=16206 i=16208 i=16210 i=16212 i=15606 i=15620 Identities i=68 i=15656 Applications i=68 i=15656 ApplicationsExclude i=68 i=15656 Endpoints i=68 i=15656 EndpointsExclude i=68 i=15656 AddIdentity i=15661 i=15656 InputArguments i=68 i=15660 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15663 i=15656 InputArguments i=68 i=15662 i=297 RuleToRemove i=15634 -1 AddApplication i=16207 i=15656 InputArguments i=68 i=16206 i=297 RuleToAdd i=12 -1 RemoveApplication i=16209 i=15656 InputArguments i=68 i=16208 i=297 RuleToRemove i=12 -1 AddEndpoint i=16211 i=15656 InputArguments i=68 i=16210 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16213 i=15656 InputArguments i=68 i=16212 i=297 RuleToRemove i=12 -1 Observer The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events. i=16214 i=16215 i=15416 i=16216 i=15417 i=15672 i=15674 i=16217 i=16219 i=16221 i=16223 i=15606 i=15620 Identities i=68 i=15668 Applications i=68 i=15668 ApplicationsExclude i=68 i=15668 Endpoints i=68 i=15668 EndpointsExclude i=68 i=15668 AddIdentity i=15673 i=15668 InputArguments i=68 i=15672 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15675 i=15668 InputArguments i=68 i=15674 i=297 RuleToRemove i=15634 -1 AddApplication i=16218 i=15668 InputArguments i=68 i=16217 i=297 RuleToAdd i=12 -1 RemoveApplication i=16220 i=15668 InputArguments i=68 i=16219 i=297 RuleToRemove i=12 -1 AddEndpoint i=16222 i=15668 InputArguments i=68 i=16221 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16224 i=15668 InputArguments i=68 i=16223 i=297 RuleToRemove i=12 -1 Operator The Role is allowed to browse, read live data, read historical data/events or subscribe to data/events. i=16225 i=16226 i=15418 i=16227 i=15423 i=15684 i=15686 i=16228 i=16230 i=16232 i=16234 i=15606 i=15620 Identities i=68 i=15680 Applications i=68 i=15680 ApplicationsExclude i=68 i=15680 Endpoints i=68 i=15680 EndpointsExclude i=68 i=15680 AddIdentity i=15685 i=15680 InputArguments i=68 i=15684 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15687 i=15680 InputArguments i=68 i=15686 i=297 RuleToRemove i=15634 -1 AddApplication i=16229 i=15680 InputArguments i=68 i=16228 i=297 RuleToAdd i=12 -1 RemoveApplication i=16231 i=15680 InputArguments i=68 i=16230 i=297 RuleToRemove i=12 -1 AddEndpoint i=16233 i=15680 InputArguments i=68 i=16232 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16235 i=15680 InputArguments i=68 i=16234 i=297 RuleToRemove i=12 -1 Engineer The Role is allowed to browse, read live data, read and update historical data/events, call methods or subscribe to data/events. i=16236 i=16237 i=15424 i=16238 i=15425 i=16041 i=16043 i=16239 i=16241 i=16243 i=16245 i=15606 i=15620 Identities i=68 i=16036 Applications i=68 i=16036 ApplicationsExclude i=68 i=16036 Endpoints i=68 i=16036 EndpointsExclude i=68 i=16036 AddIdentity i=16042 i=16036 InputArguments i=68 i=16041 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=16044 i=16036 InputArguments i=68 i=16043 i=297 RuleToRemove i=15634 -1 AddApplication i=16240 i=16036 InputArguments i=68 i=16239 i=297 RuleToAdd i=12 -1 RemoveApplication i=16242 i=16036 InputArguments i=68 i=16241 i=297 RuleToRemove i=12 -1 AddEndpoint i=16244 i=16036 InputArguments i=68 i=16243 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16246 i=16036 InputArguments i=68 i=16245 i=297 RuleToRemove i=12 -1 Supervisor The Role is allowed to browse, read live data, read and historical data/events, call methods or subscribe to data/events. i=16247 i=16248 i=15426 i=16249 i=15427 i=15696 i=15698 i=16250 i=16252 i=16254 i=16256 i=15606 i=15620 Identities i=68 i=15692 Applications i=68 i=15692 ApplicationsExclude i=68 i=15692 Endpoints i=68 i=15692 EndpointsExclude i=68 i=15692 AddIdentity i=15697 i=15692 InputArguments i=68 i=15696 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15699 i=15692 InputArguments i=68 i=15698 i=297 RuleToRemove i=15634 -1 AddApplication i=16251 i=15692 InputArguments i=68 i=16250 i=297 RuleToAdd i=12 -1 RemoveApplication i=16253 i=15692 InputArguments i=68 i=16252 i=297 RuleToRemove i=12 -1 AddEndpoint i=16255 i=15692 InputArguments i=68 i=16254 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16257 i=15692 InputArguments i=68 i=16256 i=297 RuleToRemove i=12 -1 ConfigureAdmin The Role is allowed to change the non-security related configuration settings. i=16269 i=16270 i=15428 i=16271 i=15429 i=15720 i=15722 i=16272 i=16274 i=16276 i=16278 i=15606 i=15620 Identities i=68 i=15716 Applications i=68 i=15716 ApplicationsExclude i=68 i=15716 Endpoints i=68 i=15716 EndpointsExclude i=68 i=15716 AddIdentity i=15721 i=15716 InputArguments i=68 i=15720 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15723 i=15716 InputArguments i=68 i=15722 i=297 RuleToRemove i=15634 -1 AddApplication i=16273 i=15716 InputArguments i=68 i=16272 i=297 RuleToAdd i=12 -1 RemoveApplication i=16275 i=15716 InputArguments i=68 i=16274 i=297 RuleToRemove i=12 -1 AddEndpoint i=16277 i=15716 InputArguments i=68 i=16276 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16279 i=15716 InputArguments i=68 i=16278 i=297 RuleToRemove i=12 -1 SecurityAdmin The Role is allowed to change security related settings. i=16258 i=16259 i=15430 i=16260 i=15527 i=15708 i=15710 i=16261 i=16263 i=16265 i=16267 i=15606 i=15620 Identities i=68 i=15704 Applications i=68 i=15704 ApplicationsExclude i=68 i=15704 Endpoints i=68 i=15704 EndpointsExclude i=68 i=15704 AddIdentity i=15709 i=15704 InputArguments i=68 i=15708 i=297 RuleToAdd i=15634 -1 RemoveIdentity i=15711 i=15704 InputArguments i=68 i=15710 i=297 RuleToRemove i=15634 -1 AddApplication i=16262 i=15704 InputArguments i=68 i=16261 i=297 RuleToAdd i=12 -1 RemoveApplication i=16264 i=15704 InputArguments i=68 i=16263 i=297 RuleToRemove i=12 -1 AddEndpoint i=16266 i=15704 InputArguments i=68 i=16265 i=297 RuleToAdd i=12 -1 RemoveEndpoint i=16268 i=15704 InputArguments i=68 i=16267 i=297 RuleToRemove i=12 -1 DataItemType A variable that contains live automation data. i=2366 i=2367 i=63 Definition A vendor-specific, human readable string that specifies how the value of this DataItem is calculated. i=68 i=80 i=2365 ValuePrecision The maximum precision that the server can maintain for the item based on restrictions in the target environment. i=68 i=80 i=2365 AnalogItemType i=2370 i=2369 i=2371 i=2365 InstrumentRange i=68 i=80 i=2368 EURange i=68 i=78 i=2368 EngineeringUnits i=68 i=80 i=2368 DiscreteItemType i=2365 TwoStateDiscreteType i=2374 i=2375 i=2372 FalseState i=68 i=78 i=2373 TrueState i=68 i=78 i=2373 MultiStateDiscreteType i=2377 i=2372 EnumStrings i=68 i=78 i=2376 MultiStateValueDiscreteType i=11241 i=11461 i=2372 EnumValues i=68 i=78 i=11238 ValueAsText i=68 i=78 i=11238 ArrayItemType i=12024 i=12025 i=12026 i=12027 i=12028 i=2365 InstrumentRange i=68 i=80 i=12021 EURange i=68 i=78 i=12021 EngineeringUnits i=68 i=78 i=12021 Title i=68 i=78 i=12021 AxisScaleType i=68 i=78 i=12021 YArrayItemType i=12037 i=12021 XAxisDefinition i=68 i=78 i=12029 XYArrayItemType i=12046 i=12021 XAxisDefinition i=68 i=78 i=12038 ImageItemType i=12055 i=12056 i=12021 XAxisDefinition i=68 i=78 i=12047 YAxisDefinition i=68 i=78 i=12047 CubeItemType i=12065 i=12066 i=12067 i=12021 XAxisDefinition i=68 i=78 i=12057 YAxisDefinition i=68 i=78 i=12057 ZAxisDefinition i=68 i=78 i=12057 NDimensionArrayItemType i=12076 i=12021 AxisDefinition i=68 i=78 i=12068 TwoStateVariableType i=8996 i=9000 i=9001 i=11110 i=11111 i=2755 Id i=68 i=78 i=8995 TransitionTime i=68 i=80 i=8995 EffectiveTransitionTime i=68 i=80 i=8995 TrueState i=68 i=80 i=8995 FalseState i=68 i=80 i=8995 ConditionVariableType i=9003 i=63 SourceTimestamp i=68 i=78 i=9002 HasTrueSubState i=32 IsTrueSubStateOf HasFalseSubState i=32 IsFalseSubStateOf HasAlarmSuppressionGroup i=47 IsAlarmSuppressionGroupOf AlarmGroupMember i=35 MemberOfAlarmGroup ConditionType i=11112 i=11113 i=16363 i=16364 i=9009 i=9010 i=3874 i=9011 i=9020 i=9022 i=9024 i=9026 i=9028 i=9027 i=9029 i=3875 i=12912 i=2041 ConditionClassId i=68 i=78 i=2782 ConditionClassName i=68 i=78 i=2782 ConditionSubClassId i=68 i=80 i=2782 ConditionSubClassName i=68 i=80 i=2782 ConditionName i=68 i=78 i=2782 BranchId i=68 i=78 i=2782 Retain i=68 i=78 i=2782 EnabledState i=9012 i=9015 i=9016 i=9017 i=9018 i=9019 i=8995 i=78 i=2782 Id i=68 i=78 i=9011 EffectiveDisplayName i=68 i=80 i=9011 TransitionTime i=68 i=80 i=9011 EffectiveTransitionTime i=68 i=80 i=9011 TrueState i=68 i=80 i=9011 en Enabled FalseState i=68 i=80 i=9011 en Disabled Quality i=9021 i=9002 i=78 i=2782 SourceTimestamp i=68 i=78 i=9020 LastSeverity i=9023 i=9002 i=78 i=2782 SourceTimestamp i=68 i=78 i=9022 Comment i=9025 i=9002 i=78 i=2782 SourceTimestamp i=68 i=78 i=9024 ClientUserId i=68 i=78 i=2782 Disable i=2803 i=78 i=2782 Enable i=2803 i=78 i=2782 AddComment i=9030 i=2829 i=78 i=2782 InputArguments i=68 i=78 i=9029 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. ConditionRefresh i=3876 i=2787 i=2788 i=2782 InputArguments i=68 i=78 i=3875 i=297 SubscriptionId i=288 -1 The identifier for the suscription to refresh. ConditionRefresh2 i=12913 i=2787 i=2788 i=2782 InputArguments i=68 i=78 i=12912 i=297 SubscriptionId i=288 -1 The identifier for the suscription to refresh. i=297 MonitoredItemId i=288 -1 The identifier for the monitored item to refresh. DialogConditionType i=9035 i=9055 i=2831 i=9064 i=9065 i=9066 i=9067 i=9068 i=9069 i=2782 EnabledState i=9036 i=9055 i=8995 i=78 i=2830 Id i=68 i=78 i=9035 DialogState i=9056 i=9060 i=9062 i=9063 i=9035 i=8995 i=78 i=2830 Id i=68 i=78 i=9055 TransitionTime i=68 i=80 i=9055 TrueState i=68 i=80 i=9055 en Active FalseState i=68 i=80 i=9055 en Inactive Prompt i=68 i=78 i=2830 ResponseOptionSet i=68 i=78 i=2830 DefaultResponse i=68 i=78 i=2830 OkResponse i=68 i=78 i=2830 CancelResponse i=68 i=78 i=2830 LastResponse i=68 i=78 i=2830 Respond i=9070 i=8927 i=78 i=2830 InputArguments i=68 i=78 i=9069 i=297 SelectedResponse i=6 -1 The response to the dialog condition. AcknowledgeableConditionType i=9073 i=9093 i=9102 i=9111 i=9113 i=2782 EnabledState i=9074 i=9093 i=9102 i=8995 i=78 i=2881 Id i=68 i=78 i=9073 AckedState i=9094 i=9098 i=9100 i=9101 i=9073 i=8995 i=78 i=2881 Id i=68 i=78 i=9093 TransitionTime i=68 i=80 i=9093 TrueState i=68 i=80 i=9093 en Acknowledged FalseState i=68 i=80 i=9093 en Unacknowledged ConfirmedState i=9103 i=9107 i=9109 i=9110 i=9073 i=8995 i=80 i=2881 Id i=68 i=78 i=9102 TransitionTime i=68 i=80 i=9102 TrueState i=68 i=80 i=9102 en Confirmed FalseState i=68 i=80 i=9102 en Unconfirmed Acknowledge i=9112 i=8944 i=78 i=2881 InputArguments i=68 i=78 i=9111 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. Confirm i=9114 i=8961 i=80 i=2881 InputArguments i=68 i=78 i=9113 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. AlarmConditionType i=9118 i=9160 i=11120 i=9169 i=16371 i=9178 i=9215 i=9216 i=16389 i=16390 i=16380 i=16395 i=16396 i=16397 i=16398 i=18190 i=16399 i=16400 i=16401 i=16402 i=16403 i=17868 i=17869 i=17870 i=18199 i=2881 EnabledState i=9119 i=9160 i=9169 i=9178 i=8995 i=78 i=2915 Id i=68 i=78 i=9118 ActiveState i=9161 i=9164 i=9165 i=9166 i=9167 i=9168 i=9118 i=8995 i=78 i=2915 Id i=68 i=78 i=9160 EffectiveDisplayName i=68 i=80 i=9160 TransitionTime i=68 i=80 i=9160 EffectiveTransitionTime i=68 i=80 i=9160 TrueState i=68 i=80 i=9160 en Active FalseState i=68 i=80 i=9160 en Inactive InputNode i=68 i=78 i=2915 SuppressedState i=9170 i=9174 i=9176 i=9177 i=9118 i=8995 i=80 i=2915 Id i=68 i=78 i=9169 TransitionTime i=68 i=80 i=9169 TrueState i=68 i=80 i=9169 en Suppressed FalseState i=68 i=80 i=9169 en Unsuppressed OutOfServiceState i=16372 i=16376 i=16378 i=16379 i=8995 i=80 i=2915 Id i=68 i=78 i=16371 TransitionTime i=68 i=80 i=16371 TrueState i=68 i=80 i=16371 en Out of Service FalseState i=68 i=80 i=16371 en In Service ShelvingState i=9179 i=9184 i=9189 i=9213 i=9211 i=9212 i=9118 i=2929 i=80 i=2915 CurrentState i=9180 i=2760 i=78 i=9178 Id i=68 i=78 i=9179 LastTransition i=9185 i=9188 i=2767 i=80 i=9178 Id i=68 i=78 i=9184 TransitionTime i=68 i=80 i=9184 UnshelveTime i=68 i=78 i=9178 TimedShelve i=9214 i=11093 i=78 i=9178 InputArguments i=68 i=78 i=9213 i=297 ShelvingTime i=290 -1 If not 0, this parameter specifies a fixed time for which the Alarm is to be shelved. Unshelve i=11093 i=78 i=9178 OneShotShelve i=11093 i=78 i=9178 SuppressedOrShelved i=68 i=78 i=2915 MaxTimeShelved i=68 i=80 i=2915 AudibleEnabled i=68 i=80 i=2915 AudibleSound i=17986 i=80 i=2915 SilenceState i=16381 i=16385 i=16387 i=16388 i=8995 i=80 i=2915 Id i=68 i=78 i=16380 TransitionTime i=68 i=80 i=16380 TrueState i=68 i=80 i=16380 en Silenced FalseState i=68 i=80 i=16380 en Not Silenced OnDelay i=68 i=80 i=2915 OffDelay i=68 i=80 i=2915 FirstInGroupFlag i=68 i=80 i=2915 FirstInGroup i=16405 i=80 i=2915 LatchedState i=18191 i=18195 i=18197 i=18198 i=8995 i=80 i=2915 Id i=68 i=78 i=18190 TransitionTime i=68 i=80 i=18190 TrueState i=68 i=80 i=18190 en Latched FalseState i=68 i=80 i=18190 en Unlatched <AlarmGroup> i=16405 i=11508 i=2915 ReAlarmTime i=68 i=80 i=2915 ReAlarmRepeatCount i=68 i=80 i=2915 Silence i=17242 i=80 i=2915 Suppress i=17225 i=80 i=2915 Unsuppress i=17225 i=80 i=2915 RemoveFromService i=17259 i=80 i=2915 PlaceInService i=17259 i=80 i=2915 Reset i=17259 i=80 i=2915 AlarmGroupType i=16406 i=61 <AlarmConditionInstance> i=16407 i=16408 i=16409 i=16410 i=16411 i=16412 i=16413 i=16414 i=16415 i=16416 i=16417 i=16420 i=16421 i=16422 i=16423 i=16432 i=16434 i=16436 i=16438 i=16439 i=16440 i=16441 i=16443 i=16461 i=16465 i=16474 i=16519 i=2915 i=11508 i=16405 EventId A globally unique identifier for the event. i=68 i=78 i=16406 EventType The identifier for the event type. i=68 i=78 i=16406 SourceNode The source of the event. i=68 i=78 i=16406 SourceName A description of the source of the event. i=68 i=78 i=16406 Time When the event occurred. i=68 i=78 i=16406 ReceiveTime When the server received the event from the underlying system. i=68 i=78 i=16406 LocalTime Information about the local time where the event originated. i=68 i=78 i=16406 Message A localized description of the event. i=68 i=78 i=16406 Severity Indicates how urgent an event is. i=68 i=78 i=16406 ConditionClassId i=68 i=78 i=16406 ConditionClassName i=68 i=78 i=16406 ConditionName i=68 i=78 i=16406 BranchId i=68 i=78 i=16406 Retain i=68 i=78 i=16406 EnabledState i=16424 i=8995 i=78 i=16406 Id i=68 i=78 i=16423 Quality i=16433 i=9002 i=78 i=16406 SourceTimestamp i=68 i=78 i=16432 LastSeverity i=16435 i=9002 i=78 i=16406 SourceTimestamp i=68 i=78 i=16434 Comment i=16437 i=9002 i=78 i=16406 SourceTimestamp i=68 i=78 i=16436 ClientUserId i=68 i=78 i=16406 Disable i=2803 i=78 i=16406 Enable i=2803 i=78 i=16406 AddComment i=16442 i=2829 i=78 i=16406 InputArguments i=68 i=78 i=16441 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. AckedState i=16444 i=8995 i=78 i=16406 Id i=68 i=78 i=16443 Acknowledge i=16462 i=8944 i=78 i=16406 InputArguments i=68 i=78 i=16461 i=297 EventId i=15 -1 The identifier for the event to comment. i=297 Comment i=21 -1 The comment to add to the condition. ActiveState i=16466 i=8995 i=78 i=16406 Id i=68 i=78 i=16465 InputNode i=68 i=78 i=16406 SuppressedOrShelved i=68 i=78 i=16406 ShelvedStateMachineType i=9115 i=2930 i=2932 i=2933 i=2935 i=2936 i=2940 i=2942 i=2943 i=2945 i=2949 i=2947 i=2948 i=2771 UnshelveTime i=68 i=78 i=2929 Unshelved i=6098 i=2935 i=2936 i=2940 i=2943 i=2307 i=2929 StateNumber i=68 i=78 i=2930 Timed Shelved i=6100 i=2935 i=2940 i=2942 i=2945 i=2307 i=2929 StateNumber i=68 i=78 i=2932 One Shot Shelved i=6101 i=2936 i=2942 i=2943 i=2945 i=2307 i=2929 StateNumber i=68 i=78 i=2933 UnshelvedToTimedShelved i=11322 i=2930 i=2932 i=2915 i=2949 i=2310 i=2929 TransitionNumber i=68 i=78 i=2935 UnshelvedToOneShotShelved i=11323 i=2930 i=2933 i=2915 i=2948 i=2310 i=2929 TransitionNumber i=68 i=78 i=2936 TimedShelvedToUnshelved i=11324 i=2932 i=2930 i=2915 i=2947 i=2310 i=2929 TransitionNumber i=68 i=78 i=2940 TimedShelvedToOneShotShelved i=11325 i=2932 i=2933 i=2915 i=2948 i=2310 i=2929 TransitionNumber i=68 i=78 i=2942 OneShotShelvedToUnshelved i=11326 i=2933 i=2930 i=2915 i=2947 i=2310 i=2929 TransitionNumber i=68 i=78 i=2943 OneShotShelvedToTimedShelved i=11327 i=2933 i=2932 i=2915 i=2949 i=2310 i=2929 TransitionNumber i=68 i=78 i=2945 TimedShelve i=2991 i=2935 i=2945 i=11093 i=78 i=2929 InputArguments i=68 i=78 i=2949 i=297 ShelvingTime i=290 -1 If not 0, this parameter specifies a fixed time for which the Alarm is to be shelved. Unshelve i=2940 i=2943 i=11093 i=78 i=2929 OneShotShelve i=2936 i=2942 i=11093 i=78 i=2929 LimitAlarmType i=11124 i=11125 i=11126 i=11127 i=16572 i=16573 i=16574 i=16575 i=2915 HighHighLimit i=68 i=80 i=2955 HighLimit i=68 i=80 i=2955 LowLimit i=68 i=80 i=2955 LowLowLimit i=68 i=80 i=2955 BaseHighHighLimit i=68 i=80 i=2955 BaseHighLimit i=68 i=80 i=2955 BaseLowLimit i=68 i=80 i=2955 BaseLowLowLimit i=68 i=80 i=2955 ExclusiveLimitStateMachineType i=9329 i=9331 i=9333 i=9335 i=9337 i=9338 i=9339 i=9340 i=2771 HighHigh i=9330 i=9339 i=9340 i=2307 i=9318 StateNumber i=68 i=78 i=9329 High i=9332 i=9339 i=9340 i=2307 i=9318 StateNumber i=68 i=78 i=9331 Low i=9334 i=9337 i=9338 i=2307 i=9318 StateNumber i=68 i=78 i=9333 LowLow i=9336 i=9337 i=9338 i=2307 i=9318 StateNumber i=68 i=78 i=9335 LowLowToLow i=11340 i=9335 i=9333 i=2310 i=9318 TransitionNumber i=68 i=78 i=9337 LowToLowLow i=11341 i=9333 i=9335 i=2310 i=9318 TransitionNumber i=68 i=78 i=9338 HighHighToHigh i=11342 i=9329 i=9331 i=2310 i=9318 TransitionNumber i=68 i=78 i=9339 HighToHighHigh i=11343 i=9331 i=9329 i=2310 i=9318 TransitionNumber i=68 i=78 i=9340 ExclusiveLimitAlarmType i=9398 i=9455 i=2955 ActiveState i=9399 i=9455 i=8995 i=78 i=9341 Id i=68 i=78 i=9398 LimitState i=9456 i=9461 i=9398 i=9318 i=78 i=9341 CurrentState i=9457 i=2760 i=78 i=9455 Id i=68 i=78 i=9456 LastTransition i=9462 i=9465 i=2767 i=80 i=9455 Id i=68 i=78 i=9461 TransitionTime i=68 i=80 i=9461 NonExclusiveLimitAlarmType i=9963 i=10020 i=10029 i=10038 i=10047 i=2955 ActiveState i=9964 i=10020 i=10029 i=10038 i=10047 i=8995 i=78 i=9906 Id i=68 i=78 i=9963 HighHighState i=10021 i=10025 i=10027 i=10028 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10020 TransitionTime i=68 i=80 i=10020 TrueState i=68 i=80 i=10020 en HighHigh active FalseState i=68 i=80 i=10020 en HighHigh inactive HighState i=10030 i=10034 i=10036 i=10037 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10029 TransitionTime i=68 i=80 i=10029 TrueState i=68 i=80 i=10029 en High active FalseState i=68 i=80 i=10029 en High inactive LowState i=10039 i=10043 i=10045 i=10046 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10038 TransitionTime i=68 i=80 i=10038 TrueState i=68 i=80 i=10038 en Low active FalseState i=68 i=80 i=10038 en Low inactive LowLowState i=10048 i=10052 i=10054 i=10055 i=9963 i=8995 i=80 i=9906 Id i=68 i=78 i=10047 TransitionTime i=68 i=80 i=10047 TrueState i=68 i=80 i=10047 en LowLow active FalseState i=68 i=80 i=10047 en LowLow inactive NonExclusiveLevelAlarmType i=9906 ExclusiveLevelAlarmType i=9341 NonExclusiveDeviationAlarmType i=10522 i=16776 i=9906 SetpointNode i=68 i=78 i=10368 BaseSetpointNode i=68 i=80 i=10368 NonExclusiveRateOfChangeAlarmType i=16858 i=9906 EngineeringUnits i=68 i=80 i=10214 ExclusiveDeviationAlarmType i=9905 i=16817 i=9341 SetpointNode i=68 i=78 i=9764 BaseSetpointNode i=68 i=80 i=9764 ExclusiveRateOfChangeAlarmType i=16899 i=9341 EngineeringUnits i=68 i=80 i=9623 DiscreteAlarmType i=2915 OffNormalAlarmType i=11158 i=10523 NormalState i=68 i=78 i=10637 SystemOffNormalAlarmType i=10637 TripAlarmType i=10637 InstrumentDiagnosticAlarmType i=10637 SystemDiagnosticAlarmType i=10637 CertificateExpirationAlarmType i=13325 i=14900 i=13326 i=13327 i=11753 ExpirationDate i=68 i=78 i=13225 ExpirationLimit i=68 i=80 i=13225 CertificateType i=68 i=78 i=13225 Certificate i=68 i=78 i=13225 DiscrepancyAlarmType i=17215 i=17216 i=17217 i=2915 TargetValueNode i=68 i=78 i=17080 ExpectedTime i=68 i=78 i=17080 Tolerance i=68 i=80 i=17080 BaseConditionClassType i=58 ProcessConditionClassType i=11163 MaintenanceConditionClassType i=11163 SystemConditionClassType i=11163 SafetyConditionClassType i=11163 HighlyManagedAlarmConditionClassType i=11163 TrainingConditionClassType i=11163 StatisticalConditionClassType i=11163 TestingConditionClassType i=11163 AuditConditionEventType i=2127 AuditConditionEnableEventType i=2790 AuditConditionCommentEventType i=17222 i=11851 i=2790 ConditionEventId i=68 i=78 i=2829 Comment i=68 i=78 i=2829 AuditConditionRespondEventType i=11852 i=2790 SelectedResponse i=68 i=78 i=8927 AuditConditionAcknowledgeEventType i=17223 i=11853 i=2790 ConditionEventId i=68 i=78 i=8944 Comment i=68 i=78 i=8944 AuditConditionConfirmEventType i=17224 i=11854 i=2790 ConditionEventId i=68 i=78 i=8961 Comment i=68 i=78 i=8961 AuditConditionShelvingEventType i=11855 i=2790 ShelvingTime i=68 i=78 i=11093 AuditConditionSuppressEventType i=2790 AuditConditionSilenceEventType i=2790 AuditConditionResetEventType i=2790 AuditConditionOutOfServiceEventType i=2790 RefreshStartEventType i=2130 RefreshEndEventType i=2130 RefreshRequiredEventType i=2130 HasCondition i=32 IsConditionOf HasEffectDisable i=54 MayBeDisabledBy HasEffectEnable i=54 MayBeEnabledBy HasEffectSuppressed i=54 MayBeSuppressedBy HasEffectUnsuppressed i=54 MayBeUnsuppressedBy AlarmMetricsType i=17280 i=17991 i=17281 i=17282 i=17284 i=17286 i=17283 i=17288 i=18666 i=58 AlarmCount i=68 i=78 i=17279 StartTime i=68 i=78 i=17279 MaximumActiveState i=68 i=78 i=17279 MaximumUnAck i=68 i=78 i=17279 CurrentAlarmRate i=17285 i=17277 i=78 i=17279 Rate i=68 i=78 i=17284 MaximumAlarmRate i=17287 i=17277 i=78 i=17279 Rate i=68 i=78 i=17286 MaximumReAlarmCount i=68 i=78 i=17279 AverageAlarmRate i=17289 i=17277 i=78 i=17279 Rate i=68 i=78 i=17288 Reset i=78 i=17279 AlarmRateVariableType i=17278 i=63 Rate i=68 i=78 i=17277 ProgramStateMachineType A state machine for a program. i=3830 i=3835 i=2392 i=2393 i=2394 i=2395 i=2396 i=2397 i=2398 i=2399 i=3850 i=2406 i=2400 i=2402 i=2404 i=2408 i=2410 i=2412 i=2414 i=2416 i=2418 i=2420 i=2422 i=2424 i=2426 i=2427 i=2428 i=2429 i=2430 i=2771 CurrentState i=3831 i=3833 i=2760 i=78 i=2391 Id i=68 i=78 i=3830 Number i=68 i=78 i=3830 LastTransition i=3836 i=3838 i=3839 i=2767 i=78 i=2391 Id i=68 i=78 i=3835 Number i=68 i=78 i=3835 TransitionTime i=68 i=78 i=3835 Creatable i=68 i=2391 Deletable i=68 i=78 i=2391 AutoDelete i=68 i=78 i=2391 RecycleCount i=68 i=78 i=2391 InstanceCount i=68 i=2391 MaxInstanceCount i=68 i=2391 MaxRecycleCount i=68 i=2391 ProgramDiagnostics i=3840 i=3841 i=3842 i=3843 i=3844 i=3845 i=3846 i=3847 i=15038 i=15040 i=3848 i=3849 i=15383 i=80 i=2391 CreateSessionId i=68 i=78 i=2399 CreateClientName i=68 i=78 i=2399 InvocationCreationTime i=68 i=78 i=2399 LastTransitionTime i=68 i=78 i=2399 LastMethodCall i=68 i=78 i=2399 LastMethodSessionId i=68 i=78 i=2399 LastMethodInputArguments i=68 i=78 i=2399 LastMethodOutputArguments i=68 i=78 i=2399 LastMethodInputValues i=68 i=78 i=2399 LastMethodOutputValues i=68 i=78 i=2399 LastMethodCallTime i=68 i=78 i=2399 LastMethodReturnStatus i=68 i=78 i=2399 FinalResultData i=58 i=80 i=2391 Halted The Program is in a terminal or failed state, and it cannot be started or resumed without being reset. i=2407 i=2408 i=2412 i=2420 i=2424 i=2307 i=2391 StateNumber i=68 i=78 i=2406 11 Ready The Program is properly initialized and may be started. i=2401 i=2408 i=2410 i=2414 i=2422 i=2424 i=2307 i=2391 StateNumber i=68 i=78 i=2400 12 Running The Program is executing making progress towards completion. i=2403 i=2410 i=2412 i=2414 i=2416 i=2418 i=2307 i=2391 StateNumber i=68 i=78 i=2402 13 Suspended The Program has been stopped prior to reaching a terminal state but may be resumed. i=2405 i=2416 i=2418 i=2420 i=2422 i=2307 i=2391 StateNumber i=68 i=78 i=2404 14 HaltedToReady i=2409 i=2406 i=2400 i=2430 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2408 1 ReadyToRunning i=2411 i=2400 i=2402 i=2426 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2410 2 RunningToHalted i=2413 i=2402 i=2406 i=2429 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2412 3 RunningToReady i=2415 i=2402 i=2400 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2414 4 RunningToSuspended i=2417 i=2402 i=2404 i=2427 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2416 5 SuspendedToRunning i=2419 i=2404 i=2402 i=2428 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2418 6 SuspendedToHalted i=2421 i=2404 i=2406 i=2429 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2420 7 SuspendedToReady i=2423 i=2404 i=2400 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2422 8 ReadyToHalted i=2425 i=2400 i=2406 i=2429 i=2378 i=2310 i=2391 TransitionNumber i=68 i=78 i=2424 9 Start Causes the Program to transition from the Ready state to the Running state. i=2410 i=11508 i=2391 Suspend Causes the Program to transition from the Running state to the Suspended state. i=2416 i=11508 i=2391 Resume Causes the Program to transition from the Suspended state to the Running state. i=2418 i=11508 i=2391 Halt Causes the Program to transition from the Ready, Running or Suspended state to the Halted state. i=2412 i=2420 i=2424 i=11508 i=2391 Reset Causes the Program to transition from the Halted state to the Ready state. i=2408 i=11508 i=2391 ProgramTransitionEventType i=2379 i=2311 IntermediateResult i=68 i=78 i=2378 AuditProgramTransitionEventType i=11875 i=2315 TransitionNumber i=68 i=78 i=11856 ProgramTransitionAuditEventType i=3825 i=2315 Transition i=3826 i=2767 i=78 i=3806 Id i=68 i=78 i=3825 ProgramDiagnosticType i=2381 i=2382 i=2383 i=2384 i=2385 i=2386 i=2387 i=2388 i=2389 i=2390 i=63 CreateSessionId i=68 i=78 i=2380 CreateClientName i=68 i=78 i=2380 InvocationCreationTime i=68 i=78 i=2380 LastTransitionTime i=68 i=78 i=2380 LastMethodCall i=68 i=78 i=2380 LastMethodSessionId i=68 i=78 i=2380 LastMethodInputArguments i=68 i=78 i=2380 LastMethodOutputArguments i=68 i=78 i=2380 LastMethodCallTime i=68 i=78 i=2380 LastMethodReturnStatus i=68 i=78 i=2380 ProgramDiagnostic2Type i=15384 i=15385 i=15386 i=15387 i=15388 i=15389 i=15390 i=15391 i=15392 i=15393 i=15394 i=15395 i=63 CreateSessionId i=68 i=78 i=15383 CreateClientName i=68 i=78 i=15383 InvocationCreationTime i=68 i=78 i=15383 LastTransitionTime i=68 i=78 i=15383 LastMethodCall i=68 i=78 i=15383 LastMethodSessionId i=68 i=78 i=15383 LastMethodInputArguments i=68 i=78 i=15383 LastMethodOutputArguments i=68 i=78 i=15383 LastMethodInputValues i=68 i=78 i=15383 LastMethodOutputValues i=68 i=78 i=15383 LastMethodCallTime i=68 i=78 i=15383 LastMethodReturnStatus i=68 i=78 i=15383 Annotations i=68 HistoricalDataConfigurationType i=3059 i=11876 i=2323 i=2324 i=2325 i=2326 i=2327 i=2328 i=11499 i=11500 i=58 AggregateConfiguration i=11168 i=11169 i=11170 i=11171 i=11187 i=78 i=2318 TreatUncertainAsBad i=68 i=78 i=3059 PercentDataBad i=68 i=78 i=3059 PercentDataGood i=68 i=78 i=3059 UseSlopedExtrapolation i=68 i=78 i=3059 AggregateFunctions i=61 i=80 i=2318 Stepped i=68 i=78 i=2318 Definition i=68 i=80 i=2318 MaxTimeInterval i=68 i=80 i=2318 MinTimeInterval i=68 i=80 i=2318 ExceptionDeviation i=68 i=80 i=2318 ExceptionDeviationFormat i=68 i=80 i=2318 StartOfArchive i=68 i=80 i=2318 StartOfOnlineArchive i=68 i=80 i=2318 HA Configuration i=11203 i=11208 i=2318 AggregateConfiguration i=11204 i=11205 i=11206 i=11207 i=11187 i=11202 TreatUncertainAsBad i=68 i=11203 PercentDataBad i=68 i=11203 PercentDataGood i=68 i=11203 UseSlopedExtrapolation i=68 i=11203 Stepped i=68 i=11202 HistoricalEventFilter i=68 HistoryServerCapabilitiesType i=2331 i=2332 i=11268 i=11269 i=2334 i=2335 i=2336 i=2337 i=2338 i=11278 i=11279 i=11280 i=11501 i=11270 i=11172 i=58 AccessHistoryDataCapability i=68 i=78 i=2330 AccessHistoryEventsCapability i=68 i=78 i=2330 MaxReturnDataValues i=68 i=78 i=2330 MaxReturnEventValues i=68 i=78 i=2330 InsertDataCapability i=68 i=78 i=2330 ReplaceDataCapability i=68 i=78 i=2330 UpdateDataCapability i=68 i=78 i=2330 DeleteRawCapability i=68 i=78 i=2330 DeleteAtTimeCapability i=68 i=78 i=2330 InsertEventCapability i=68 i=78 i=2330 ReplaceEventCapability i=68 i=78 i=2330 UpdateEventCapability i=68 i=78 i=2330 DeleteEventCapability i=68 i=78 i=2330 InsertAnnotationCapability i=68 i=78 i=2330 AggregateFunctions i=61 i=78 i=2330 AuditHistoryEventUpdateEventType i=3025 i=3028 i=3003 i=3029 i=3030 i=2104 UpdatedNode i=68 i=78 i=2999 PerformInsertReplace i=68 i=78 i=2999 Filter i=68 i=78 i=2999 NewValues i=68 i=78 i=2999 OldValues i=68 i=78 i=2999 AuditHistoryValueUpdateEventType i=3026 i=3031 i=3032 i=3033 i=2104 UpdatedNode i=68 i=78 i=3006 PerformInsertReplace i=68 i=78 i=3006 NewValues i=68 i=78 i=3006 OldValues i=68 i=78 i=3006 AuditHistoryDeleteEventType i=3027 i=2104 UpdatedNode i=68 i=78 i=3012 AuditHistoryRawModifyDeleteEventType i=3015 i=3016 i=3017 i=3034 i=3012 IsDeleteModified i=68 i=78 i=3014 StartTime i=68 i=78 i=3014 EndTime i=68 i=78 i=3014 OldValues i=68 i=78 i=3014 AuditHistoryAtTimeDeleteEventType i=3020 i=3021 i=3012 ReqTimes i=68 i=78 i=3019 OldValues i=68 i=78 i=3019 AuditHistoryEventDeleteEventType i=3023 i=3024 i=3012 EventIds i=68 i=78 i=3022 OldValues i=68 i=78 i=3022 TrustListType i=12542 i=12543 i=12546 i=12548 i=12550 i=11575 LastUpdateTime i=68 i=78 i=12522 OpenWithMasks i=12544 i=12545 i=78 i=12522 InputArguments i=68 i=78 i=12543 i=297 Masks i=7 -1 OutputArguments i=68 i=78 i=12543 i=297 FileHandle i=7 -1 CloseAndUpdate i=12705 i=12547 i=80 i=12522 InputArguments i=68 i=78 i=12546 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=12546 i=297 ApplyChangesRequired i=1 -1 AddCertificate i=12549 i=80 i=12522 InputArguments i=68 i=78 i=12548 i=297 Certificate i=15 -1 i=297 IsTrustedCertificate i=1 -1 RemoveCertificate i=12551 i=80 i=12522 InputArguments i=68 i=78 i=12550 i=297 Thumbprint i=12 -1 i=297 IsTrustedCertificate i=1 -1 TrustListMasks i=12553 i=29 EnumValues i=68 i=78 i=12552 i=7616 0 None i=7616 1 TrustedCertificates i=7616 2 TrustedCrls i=7616 4 IssuerCertificates i=7616 8 IssuerCrls i=7616 15 All TrustListDataType i=22 CertificateGroupType i=13599 i=13631 i=58 TrustList i=13600 i=13601 i=13602 i=13603 i=13605 i=13608 i=13610 i=13613 i=13615 i=13618 i=13620 i=13621 i=12522 i=78 i=12555 Size The size of the file in bytes. i=68 i=78 i=13599 Writable Whether the file is writable. i=68 i=78 i=13599 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13599 OpenCount The current number of open file handles. i=68 i=78 i=13599 Open i=13606 i=13607 i=78 i=13599 InputArguments i=68 i=78 i=13605 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13605 i=297 FileHandle i=7 -1 Close i=13609 i=78 i=13599 InputArguments i=68 i=78 i=13608 i=297 FileHandle i=7 -1 Read i=13611 i=13612 i=78 i=13599 InputArguments i=68 i=78 i=13610 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13610 i=297 Data i=15 -1 Write i=13614 i=78 i=13599 InputArguments i=68 i=78 i=13613 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13616 i=13617 i=78 i=13599 InputArguments i=68 i=78 i=13615 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13615 i=297 Position i=9 -1 SetPosition i=13619 i=78 i=13599 InputArguments i=68 i=78 i=13618 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=78 i=13599 OpenWithMasks i=13622 i=13623 i=78 i=13599 InputArguments i=68 i=78 i=13621 i=297 Masks i=7 -1 OutputArguments i=68 i=78 i=13621 i=297 FileHandle i=7 -1 CertificateTypes i=68 i=78 i=12555 CertificateGroupFolderType i=13814 i=13848 i=13882 i=13916 i=61 DefaultApplicationGroup i=13815 i=13847 i=12555 i=78 i=13813 TrustList i=13816 i=13817 i=13818 i=13819 i=13821 i=13824 i=13826 i=13829 i=13831 i=13834 i=13836 i=13837 i=12522 i=78 i=13814 Size The size of the file in bytes. i=68 i=78 i=13815 Writable Whether the file is writable. i=68 i=78 i=13815 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13815 OpenCount The current number of open file handles. i=68 i=78 i=13815 Open i=13822 i=13823 i=78 i=13815 InputArguments i=68 i=78 i=13821 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13821 i=297 FileHandle i=7 -1 Close i=13825 i=78 i=13815 InputArguments i=68 i=78 i=13824 i=297 FileHandle i=7 -1 Read i=13827 i=13828 i=78 i=13815 InputArguments i=68 i=78 i=13826 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13826 i=297 Data i=15 -1 Write i=13830 i=78 i=13815 InputArguments i=68 i=78 i=13829 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13832 i=13833 i=78 i=13815 InputArguments i=68 i=78 i=13831 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13831 i=297 Position i=9 -1 SetPosition i=13835 i=78 i=13815 InputArguments i=68 i=78 i=13834 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=78 i=13815 OpenWithMasks i=13838 i=13839 i=78 i=13815 InputArguments i=68 i=78 i=13837 i=297 Masks i=7 -1 OutputArguments i=68 i=78 i=13837 i=297 FileHandle i=7 -1 CertificateTypes i=68 i=78 i=13814 DefaultHttpsGroup i=13849 i=13881 i=12555 i=80 i=13813 TrustList i=13850 i=13851 i=13852 i=13853 i=13855 i=13858 i=13860 i=13863 i=13865 i=13868 i=13870 i=13871 i=12522 i=78 i=13848 Size The size of the file in bytes. i=68 i=78 i=13849 Writable Whether the file is writable. i=68 i=78 i=13849 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13849 OpenCount The current number of open file handles. i=68 i=78 i=13849 Open i=13856 i=13857 i=78 i=13849 InputArguments i=68 i=78 i=13855 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13855 i=297 FileHandle i=7 -1 Close i=13859 i=78 i=13849 InputArguments i=68 i=78 i=13858 i=297 FileHandle i=7 -1 Read i=13861 i=13862 i=78 i=13849 InputArguments i=68 i=78 i=13860 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13860 i=297 Data i=15 -1 Write i=13864 i=78 i=13849 InputArguments i=68 i=78 i=13863 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13866 i=13867 i=78 i=13849 InputArguments i=68 i=78 i=13865 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13865 i=297 Position i=9 -1 SetPosition i=13869 i=78 i=13849 InputArguments i=68 i=78 i=13868 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=78 i=13849 OpenWithMasks i=13872 i=13873 i=78 i=13849 InputArguments i=68 i=78 i=13871 i=297 Masks i=7 -1 OutputArguments i=68 i=78 i=13871 i=297 FileHandle i=7 -1 CertificateTypes i=68 i=78 i=13848 DefaultUserTokenGroup i=13883 i=13915 i=12555 i=80 i=13813 TrustList i=13884 i=13885 i=13886 i=13887 i=13889 i=13892 i=13894 i=13897 i=13899 i=13902 i=13904 i=13905 i=12522 i=78 i=13882 Size The size of the file in bytes. i=68 i=78 i=13883 Writable Whether the file is writable. i=68 i=78 i=13883 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13883 OpenCount The current number of open file handles. i=68 i=78 i=13883 Open i=13890 i=13891 i=78 i=13883 InputArguments i=68 i=78 i=13889 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13889 i=297 FileHandle i=7 -1 Close i=13893 i=78 i=13883 InputArguments i=68 i=78 i=13892 i=297 FileHandle i=7 -1 Read i=13895 i=13896 i=78 i=13883 InputArguments i=68 i=78 i=13894 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13894 i=297 Data i=15 -1 Write i=13898 i=78 i=13883 InputArguments i=68 i=78 i=13897 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13900 i=13901 i=78 i=13883 InputArguments i=68 i=78 i=13899 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13899 i=297 Position i=9 -1 SetPosition i=13903 i=78 i=13883 InputArguments i=68 i=78 i=13902 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=78 i=13883 OpenWithMasks i=13906 i=13907 i=78 i=13883 InputArguments i=68 i=78 i=13905 i=297 Masks i=7 -1 OutputArguments i=68 i=78 i=13905 i=297 FileHandle i=7 -1 CertificateTypes i=68 i=78 i=13882 <AdditionalGroup> i=13917 i=13949 i=12555 i=11508 i=13813 TrustList i=13918 i=13919 i=13920 i=13921 i=13923 i=13926 i=13928 i=13931 i=13933 i=13936 i=13938 i=13939 i=12522 i=78 i=13916 Size The size of the file in bytes. i=68 i=78 i=13917 Writable Whether the file is writable. i=68 i=78 i=13917 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13917 OpenCount The current number of open file handles. i=68 i=78 i=13917 Open i=13924 i=13925 i=78 i=13917 InputArguments i=68 i=78 i=13923 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13923 i=297 FileHandle i=7 -1 Close i=13927 i=78 i=13917 InputArguments i=68 i=78 i=13926 i=297 FileHandle i=7 -1 Read i=13929 i=13930 i=78 i=13917 InputArguments i=68 i=78 i=13928 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13928 i=297 Data i=15 -1 Write i=13932 i=78 i=13917 InputArguments i=68 i=78 i=13931 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13934 i=13935 i=78 i=13917 InputArguments i=68 i=78 i=13933 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13933 i=297 Position i=9 -1 SetPosition i=13937 i=78 i=13917 InputArguments i=68 i=78 i=13936 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=78 i=13917 OpenWithMasks i=13940 i=13941 i=78 i=13917 InputArguments i=68 i=78 i=13939 i=297 Masks i=7 -1 OutputArguments i=68 i=78 i=13939 i=297 FileHandle i=7 -1 CertificateTypes i=68 i=78 i=13916 CertificateType i=58 ApplicationCertificateType i=12556 HttpsCertificateType i=12556 RsaMinApplicationCertificateType i=12557 RsaSha256ApplicationCertificateType i=12557 TrustListUpdatedAuditEventType i=2127 ServerConfigurationType i=13950 i=12708 i=12583 i=12584 i=12585 i=12616 i=12734 i=12731 i=12775 i=58 CertificateGroups i=13951 i=13813 i=78 i=12581 DefaultApplicationGroup i=13952 i=13984 i=12555 i=78 i=13950 TrustList i=13953 i=13954 i=13955 i=13956 i=13958 i=13961 i=13963 i=13966 i=13968 i=13971 i=13973 i=13974 i=12522 i=78 i=13951 Size The size of the file in bytes. i=68 i=78 i=13952 Writable Whether the file is writable. i=68 i=78 i=13952 UserWritable Whether the file is writable by the current user. i=68 i=78 i=13952 OpenCount The current number of open file handles. i=68 i=78 i=13952 Open i=13959 i=13960 i=78 i=13952 InputArguments i=68 i=78 i=13958 i=297 Mode i=3 -1 OutputArguments i=68 i=78 i=13958 i=297 FileHandle i=7 -1 Close i=13962 i=78 i=13952 InputArguments i=68 i=78 i=13961 i=297 FileHandle i=7 -1 Read i=13964 i=13965 i=78 i=13952 InputArguments i=68 i=78 i=13963 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=78 i=13963 i=297 Data i=15 -1 Write i=13967 i=78 i=13952 InputArguments i=68 i=78 i=13966 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=13969 i=13970 i=78 i=13952 InputArguments i=68 i=78 i=13968 i=297 FileHandle i=7 -1 OutputArguments i=68 i=78 i=13968 i=297 Position i=9 -1 SetPosition i=13972 i=78 i=13952 InputArguments i=68 i=78 i=13971 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=78 i=13952 OpenWithMasks i=13975 i=13976 i=78 i=13952 InputArguments i=68 i=78 i=13974 i=297 Masks i=7 -1 OutputArguments i=68 i=78 i=13974 i=297 FileHandle i=7 -1 CertificateTypes i=68 i=78 i=13951 ServerCapabilities i=68 i=78 i=12581 SupportedPrivateKeyFormats i=68 i=78 i=12581 MaxTrustListSize i=68 i=78 i=12581 MulticastDnsEnabled i=68 i=78 i=12581 UpdateCertificate i=12617 i=12618 i=78 i=12581 InputArguments i=68 i=78 i=12616 i=297 CertificateGroupId i=17 -1 i=297 CertificateTypeId i=17 -1 i=297 Certificate i=15 -1 i=297 IssuerCertificates i=15 1 i=297 PrivateKeyFormat i=12 -1 i=297 PrivateKey i=15 -1 OutputArguments i=68 i=78 i=12616 i=297 ApplyChangesRequired i=1 -1 ApplyChanges i=78 i=12581 CreateSigningRequest i=12732 i=12733 i=78 i=12581 InputArguments i=68 i=78 i=12731 i=297 CertificateGroupId i=17 -1 i=297 CertificateTypeId i=17 -1 i=297 SubjectName i=12 -1 i=297 RegeneratePrivateKey i=1 -1 i=297 Nonce i=15 -1 OutputArguments i=68 i=78 i=12731 i=297 CertificateRequest i=15 -1 GetRejectedList i=12776 i=78 i=12581 OutputArguments i=68 i=78 i=12775 i=297 Certificates i=15 1 CertificateUpdatedAuditEventType i=13735 i=13736 i=2127 CertificateGroup i=68 i=78 i=12620 CertificateType i=68 i=78 i=12620 ServerConfiguration i=14053 i=12710 i=12639 i=12640 i=12641 i=13737 i=12740 i=12737 i=12777 i=2253 i=12581 CertificateGroups i=14156 i=14088 i=14122 i=13813 i=12637 DefaultApplicationGroup i=12642 i=14161 i=12555 i=14053 TrustList i=12643 i=14157 i=14158 i=12646 i=12647 i=12650 i=12652 i=12655 i=12657 i=12660 i=12662 i=12663 i=12666 i=12668 i=12670 i=12522 i=14156 Size The size of the file in bytes. i=68 i=12642 Writable Whether the file is writable. i=68 i=12642 UserWritable Whether the file is writable by the current user. i=68 i=12642 OpenCount The current number of open file handles. i=68 i=12642 Open i=12648 i=12649 i=12642 InputArguments i=68 i=12647 i=297 Mode i=3 -1 OutputArguments i=68 i=12647 i=297 FileHandle i=7 -1 Close i=12651 i=12642 InputArguments i=68 i=12650 i=297 FileHandle i=7 -1 Read i=12653 i=12654 i=12642 InputArguments i=68 i=12652 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=12652 i=297 Data i=15 -1 Write i=12656 i=12642 InputArguments i=68 i=12655 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=12658 i=12659 i=12642 InputArguments i=68 i=12657 i=297 FileHandle i=7 -1 OutputArguments i=68 i=12657 i=297 Position i=9 -1 SetPosition i=12661 i=12642 InputArguments i=68 i=12660 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=12642 OpenWithMasks i=12664 i=12665 i=12642 InputArguments i=68 i=12663 i=297 Masks i=7 -1 OutputArguments i=68 i=12663 i=297 FileHandle i=7 -1 CloseAndUpdate i=14160 i=12667 i=12642 InputArguments i=68 i=12666 i=297 FileHandle i=7 -1 OutputArguments i=68 i=12666 i=297 ApplyChangesRequired i=1 -1 AddCertificate i=12669 i=12642 InputArguments i=68 i=12668 i=297 Certificate i=15 -1 i=297 IsTrustedCertificate i=1 -1 RemoveCertificate i=12671 i=12642 InputArguments i=68 i=12670 i=297 Thumbprint i=12 -1 i=297 IsTrustedCertificate i=1 -1 CertificateTypes i=68 i=14156 DefaultHttpsGroup i=14089 i=14121 i=12555 i=14053 TrustList i=14090 i=14091 i=14092 i=14093 i=14095 i=14098 i=14100 i=14103 i=14105 i=14108 i=14110 i=14111 i=14114 i=14117 i=14119 i=12522 i=14088 Size The size of the file in bytes. i=68 i=14089 Writable Whether the file is writable. i=68 i=14089 UserWritable Whether the file is writable by the current user. i=68 i=14089 OpenCount The current number of open file handles. i=68 i=14089 Open i=14096 i=14097 i=14089 InputArguments i=68 i=14095 i=297 Mode i=3 -1 OutputArguments i=68 i=14095 i=297 FileHandle i=7 -1 Close i=14099 i=14089 InputArguments i=68 i=14098 i=297 FileHandle i=7 -1 Read i=14101 i=14102 i=14089 InputArguments i=68 i=14100 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=14100 i=297 Data i=15 -1 Write i=14104 i=14089 InputArguments i=68 i=14103 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=14106 i=14107 i=14089 InputArguments i=68 i=14105 i=297 FileHandle i=7 -1 OutputArguments i=68 i=14105 i=297 Position i=9 -1 SetPosition i=14109 i=14089 InputArguments i=68 i=14108 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=14089 OpenWithMasks i=14112 i=14113 i=14089 InputArguments i=68 i=14111 i=297 Masks i=7 -1 OutputArguments i=68 i=14111 i=297 FileHandle i=7 -1 CloseAndUpdate i=14115 i=14116 i=14089 InputArguments i=68 i=14114 i=297 FileHandle i=7 -1 OutputArguments i=68 i=14114 i=297 ApplyChangesRequired i=1 -1 AddCertificate i=14118 i=14089 InputArguments i=68 i=14117 i=297 Certificate i=15 -1 i=297 IsTrustedCertificate i=1 -1 RemoveCertificate i=14120 i=14089 InputArguments i=68 i=14119 i=297 Thumbprint i=12 -1 i=297 IsTrustedCertificate i=1 -1 CertificateTypes i=68 i=14088 DefaultUserTokenGroup i=14123 i=14155 i=12555 i=14053 TrustList i=14124 i=14125 i=14126 i=14127 i=14129 i=14132 i=14134 i=14137 i=14139 i=14142 i=14144 i=14145 i=14148 i=14151 i=14153 i=12522 i=14122 Size The size of the file in bytes. i=68 i=14123 Writable Whether the file is writable. i=68 i=14123 UserWritable Whether the file is writable by the current user. i=68 i=14123 OpenCount The current number of open file handles. i=68 i=14123 Open i=14130 i=14131 i=14123 InputArguments i=68 i=14129 i=297 Mode i=3 -1 OutputArguments i=68 i=14129 i=297 FileHandle i=7 -1 Close i=14133 i=14123 InputArguments i=68 i=14132 i=297 FileHandle i=7 -1 Read i=14135 i=14136 i=14123 InputArguments i=68 i=14134 i=297 FileHandle i=7 -1 i=297 Length i=6 -1 OutputArguments i=68 i=14134 i=297 Data i=15 -1 Write i=14138 i=14123 InputArguments i=68 i=14137 i=297 FileHandle i=7 -1 i=297 Data i=15 -1 GetPosition i=14140 i=14141 i=14123 InputArguments i=68 i=14139 i=297 FileHandle i=7 -1 OutputArguments i=68 i=14139 i=297 Position i=9 -1 SetPosition i=14143 i=14123 InputArguments i=68 i=14142 i=297 FileHandle i=7 -1 i=297 Position i=9 -1 LastUpdateTime i=68 i=14123 OpenWithMasks i=14146 i=14147 i=14123 InputArguments i=68 i=14145 i=297 Masks i=7 -1 OutputArguments i=68 i=14145 i=297 FileHandle i=7 -1 CloseAndUpdate i=14149 i=14150 i=14123 InputArguments i=68 i=14148 i=297 FileHandle i=7 -1 OutputArguments i=68 i=14148 i=297 ApplyChangesRequired i=1 -1 AddCertificate i=14152 i=14123 InputArguments i=68 i=14151 i=297 Certificate i=15 -1 i=297 IsTrustedCertificate i=1 -1 RemoveCertificate i=14154 i=14123 InputArguments i=68 i=14153 i=297 Thumbprint i=12 -1 i=297 IsTrustedCertificate i=1 -1 CertificateTypes i=68 i=14122 ServerCapabilities i=68 i=12637 SupportedPrivateKeyFormats i=68 i=12637 MaxTrustListSize i=68 i=12637 MulticastDnsEnabled i=68 i=12637 UpdateCertificate i=13738 i=13739 i=12637 InputArguments i=68 i=13737 i=297 CertificateGroupId i=17 -1 i=297 CertificateTypeId i=17 -1 i=297 Certificate i=15 -1 i=297 IssuerCertificates i=15 1 i=297 PrivateKeyFormat i=12 -1 i=297 PrivateKey i=15 -1 OutputArguments i=68 i=13737 i=297 ApplyChangesRequired i=1 -1 ApplyChanges i=12637 CreateSigningRequest i=12738 i=12739 i=12637 InputArguments i=68 i=12737 i=297 CertificateGroupId i=17 -1 i=297 CertificateTypeId i=17 -1 i=297 SubjectName i=12 -1 i=297 RegeneratePrivateKey i=1 -1 i=297 Nonce i=15 -1 OutputArguments i=68 i=12737 i=297 CertificateRequest i=15 -1 GetRejectedList i=12778 i=12637 OutputArguments i=68 i=12777 i=297 Certificates i=15 1 KeyCredentialConfiguration i=12637 i=61 KeyCredentialConfigurationType i=18069 i=18165 i=18004 i=18005 i=18006 i=18008 i=58 ResourceUri i=68 i=78 i=18001 ProfileUri i=68 i=78 i=18001 EndpointUrls i=68 i=80 i=18001 ServiceStatus i=68 i=80 i=18001 UpdateCredential i=18007 i=80 i=18001 InputArguments i=68 i=78 i=18006 i=297 CredentialId i=12 -1 i=297 CredentialSecret i=15 -1 i=297 CertificateThumbprint i=12 -1 i=297 SecurityPolicyUri i=12 -1 DeleteCredential i=80 i=18001 KeyCredentialAuditEventType i=18028 i=2127 ResourceUri i=68 i=78 i=18011 KeyCredentialUpdatedAuditEventType i=18011 KeyCredentialDeletedAuditEventType i=18011 AuthorizationServices i=12637 i=61 AuthorizationServiceConfigurationType i=18072 i=17860 i=18073 i=58 ServiceUri i=68 i=78 i=17852 ServiceCertificate i=68 i=78 i=17852 IssuerEndpointUrl i=68 i=78 i=17852 AggregateConfigurationType i=11188 i=11189 i=11190 i=11191 i=58 TreatUncertainAsBad i=68 i=78 i=11187 PercentDataBad i=68 i=78 i=11187 PercentDataGood i=68 i=78 i=11187 UseSlopedExtrapolation i=68 i=78 i=11187 Interpolative At the beginning of each interval, retrieve the calculated value from the data points on either side of the requested timestamp. i=2340 Average Retrieve the average value of the data over the interval. i=2340 TimeAverage Retrieve the time weighted average data over the interval using Interpolated Bounding Values. i=2340 TimeAverage2 Retrieve the time weighted average data over the interval using Simple Bounding Values. i=2340 Total Retrieve the total (time integral) of the data over the interval using Interpolated Bounding Values. i=2340 Total2 Retrieve the total (time integral) of the data over the interval using Simple Bounding Values. i=2340 Minimum Retrieve the minimum raw value in the interval with the timestamp of the start of the interval. i=2340 Maximum Retrieve the maximum raw value in the interval with the timestamp of the start of the interval. i=2340 MinimumActualTime Retrieve the minimum value in the interval and the Timestamp of the minimum value. i=2340 MaximumActualTime Retrieve the maximum value in the interval and the Timestamp of the maximum value. i=2340 Range Retrieve the difference between the minimum and maximum Value over the interval. i=2340 Minimum2 Retrieve the minimum value in the interval including the Simple Bounding Values. i=2340 Maximum2 Retrieve the maximum value in the interval including the Simple Bounding Values. i=2340 MinimumActualTime2 Retrieve the minimum value with the actual timestamp including the Simple Bounding Values. i=2340 MaximumActualTime2 Retrieve the maximum value with the actual timestamp including the Simple Bounding Values. i=2340 Range2 Retrieve the difference between the Minimum2 and Maximum2 value over the interval. i=2340 AnnotationCount Retrieve the number of Annotations in the interval. i=2340 Count Retrieve the number of raw values over the interval. i=2340 DurationInStateZero Retrieve the time a Boolean or numeric was in a zero state using Simple Bounding Values. i=2340 DurationInStateNonZero Retrieve the time a Boolean or numeric was in a non-zero state using Simple Bounding Values. i=2340 NumberOfTransitions Retrieve the number of changes between zero and non-zero that a Boolean or Numeric value experienced in the interval. i=2340 Start Retrieve the value at the beginning of the interval using Interpolated Bounding Values. i=2340 End Retrieve the value at the end of the interval using Interpolated Bounding Values. i=2340 Delta Retrieve the difference between the Start and End value in the interval. i=2340 StartBound Retrieve the value at the beginning of the interval using Simple Bounding Values. i=2340 EndBound Retrieve the value at the end of the interval using Simple Bounding Values. i=2340 DeltaBounds Retrieve the difference between the StartBound and EndBound value in the interval. i=2340 DurationGood Retrieve the total duration of time in the interval during which the data is good. i=2340 DurationBad Retrieve the total duration of time in the interval during which the data is bad. i=2340 PercentGood Retrieve the percent of data (0 to 100) in the interval which has a good StatusCode. i=2340 PercentBad Retrieve the percent of data (0 to 100) in the interval which has a bad StatusCode. i=2340 WorstQuality Retrieve the worst StatusCode of data in the interval. i=2340 WorstQuality2 Retrieve the worst StatusCode of data in the interval including the Simple Bounding Values. i=2340 StandardDeviationSample Retrieve the standard deviation for the interval for a sample of the population (n-1). i=2340 StandardDeviationPopulation Retrieve the standard deviation for the interval for a complete population (n) which includes Simple Bounding Values. i=2340 VarianceSample Retrieve the variance for the interval as calculated by the StandardDeviationSample. i=2340 VariancePopulation Retrieve the variance for the interval as calculated by the StandardDeviationPopulation which includes Simple Bounding Values. i=2340 DataTypeSchemaHeader i=22 DataTypeDescription i=22 StructureDescription i=14525 EnumDescription i=14525 SimpleTypeDescription i=14525 UABinaryFileDataType i=15534 PubSubState i=14648 i=29 EnumStrings i=68 i=78 i=14647 Disabled Paused Operational Error DataSetMetaDataType i=15534 FieldMetaData i=22 DataSetFieldFlags i=15577 i=5 OptionSetValues i=68 i=78 i=15904 PromotedField ConfigurationVersionDataType i=22 PublishedDataSetDataType i=22 PublishedDataSetSourceDataType i=22 PublishedVariableDataType i=22 PublishedDataItemsDataType i=15580 PublishedEventsDataType i=15580 DataSetFieldContentMask i=15584 i=7 OptionSetValues i=68 i=78 i=15583 StatusCode SourceTimestamp ServerTimestamp SourcePicoSeconds ServerPicoSeconds RawDataEncoding DataSetWriterDataType i=22 DataSetWriterTransportDataType i=22 DataSetWriterMessageDataType i=22 PubSubGroupDataType i=22 WriterGroupDataType i=15609 WriterGroupTransportDataType i=22 WriterGroupMessageDataType i=22 PubSubConnectionDataType i=22 ConnectionTransportDataType i=22 NetworkAddressDataType i=22 NetworkAddressUrlDataType i=15502 ReaderGroupDataType i=15609 ReaderGroupTransportDataType i=22 ReaderGroupMessageDataType i=22 DataSetReaderDataType i=22 DataSetReaderTransportDataType i=22 DataSetReaderMessageDataType i=22 SubscribedDataSetDataType i=22 TargetVariablesDataType i=15630 FieldTargetDataType i=22 OverrideValueHandling i=15875 i=29 EnumStrings i=68 i=78 i=15874 Disabled LastUseableValue OverrideValue SubscribedDataSetMirrorDataType i=15630 PubSubConfigurationDataType i=22 DataSetOrderingType i=15641 i=29 EnumStrings i=68 i=78 i=20408 Undefined AscendingWriterId AscendingWriterIdSingle UadpNetworkMessageContentMask i=15643 i=7 OptionSetValues i=68 i=78 i=15642 PublisherId GroupHeader WriterGroupId GroupVersion NetworkMessageNumber SequenceNumber PayloadHeader Timestamp Picoseconds DataSetClassId PromotedFields UadpWriterGroupMessageDataType i=15616 UadpDataSetMessageContentMask i=15647 i=7 OptionSetValues i=68 i=78 i=15646 Timestamp PicoSeconds Status MajorVersion MinorVersion SequenceNumber UadpDataSetWriterMessageDataType i=15605 UadpDataSetReaderMessageDataType i=15629 JsonNetworkMessageContentMask i=15655 i=7 OptionSetValues i=68 i=78 i=15654 NetworkMessageHeader DataSetMessageHeader SingleDataSetMessage PublisherId DataSetClassId ReplyTo JsonWriterGroupMessageDataType i=15616 JsonDataSetMessageContentMask i=15659 i=7 OptionSetValues i=68 i=78 i=15658 DataSetWriterId MetaDataVersion SequenceNumber Timestamp Status JsonDataSetWriterMessageDataType i=15605 JsonDataSetReaderMessageDataType i=15629 DatagramConnectionTransportDataType i=15618 DatagramWriterGroupTransportDataType i=15611 BrokerConnectionTransportDataType i=15618 BrokerTransportQualityOfService i=15009 i=29 EnumStrings i=68 i=78 i=15008 NotSpecified BestEffort AtLeastOnce AtMostOnce ExactlyOnce BrokerWriterGroupTransportDataType i=15611 BrokerDataSetWriterTransportDataType i=15598 BrokerDataSetReaderTransportDataType i=15628 PubSubKeyServiceType i=15907 i=15910 i=15913 i=58 GetSecurityKeys i=15908 i=15909 i=80 i=15906 InputArguments i=68 i=78 i=15907 i=297 SecurityGroupId i=12 -1 i=297 StartingTokenId i=288 -1 i=297 RequestedKeyCount i=7 -1 OutputArguments i=68 i=78 i=15907 i=297 SecurityPolicyUri i=12 -1 i=297 FirstTokenId i=288 -1 i=297 Keys i=15 1 i=297 TimeToNextKey i=290 -1 i=297 KeyLifetime i=290 -1 GetSecurityGroup i=15911 i=15912 i=80 i=15906 InputArguments i=68 i=78 i=15910 i=297 SecurityGroupId i=12 -1 OutputArguments i=68 i=78 i=15910 i=297 SecurityGroupNodeId i=17 -1 SecurityGroups i=15914 i=15917 i=15452 i=80 i=15906 AddSecurityGroup i=15915 i=15916 i=78 i=15913 InputArguments i=68 i=78 i=15914 i=297 SecurityGroupName i=12 -1 i=297 KeyLifetime i=290 -1 i=297 SecurityPolicyUri i=12 -1 i=297 MaxFutureKeyCount i=7 -1 i=297 MaxPastKeyCount i=7 -1 OutputArguments i=68 i=78 i=15914 i=297 SecurityGroupId i=12 -1 i=297 SecurityGroupNodeId i=17 -1 RemoveSecurityGroup i=15918 i=78 i=15913 InputArguments i=68 i=78 i=15917 i=297 SecurityGroupNodeId i=17 -1 SecurityGroupFolderType i=15453 i=15459 i=15461 i=15464 i=61 <SecurityGroupFolderName> i=15454 i=15457 i=15452 i=11508 i=15452 AddSecurityGroup i=15455 i=15456 i=78 i=15453 InputArguments i=68 i=78 i=15454 i=297 SecurityGroupName i=12 -1 i=297 KeyLifetime i=290 -1 i=297 SecurityPolicyUri i=12 -1 i=297 MaxFutureKeyCount i=7 -1 i=297 MaxPastKeyCount i=7 -1 OutputArguments i=68 i=78 i=15454 i=297 SecurityGroupId i=12 -1 i=297 SecurityGroupNodeId i=17 -1 RemoveSecurityGroup i=15458 i=78 i=15453 InputArguments i=68 i=78 i=15457 i=297 SecurityGroupNodeId i=17 -1 <SecurityGroupName> i=15460 i=15010 i=15011 i=15012 i=15043 i=15471 i=11508 i=15452 SecurityGroupId i=68 i=78 i=15459 KeyLifetime i=68 i=78 i=15459 SecurityPolicyUri i=68 i=78 i=15459 MaxFutureKeyCount i=68 i=78 i=15459 MaxPastKeyCount i=68 i=78 i=15459 AddSecurityGroup i=15462 i=15463 i=78 i=15452 InputArguments i=68 i=78 i=15461 i=297 SecurityGroupName i=12 -1 i=297 KeyLifetime i=290 -1 i=297 SecurityPolicyUri i=12 -1 i=297 MaxFutureKeyCount i=7 -1 i=297 MaxPastKeyCount i=7 -1 OutputArguments i=68 i=78 i=15461 i=297 SecurityGroupId i=12 -1 i=297 SecurityGroupNodeId i=17 -1 RemoveSecurityGroup i=15465 i=78 i=15452 InputArguments i=68 i=78 i=15464 i=297 SecurityGroupNodeId i=17 -1 SecurityGroupType i=15472 i=15046 i=15047 i=15048 i=15056 i=58 SecurityGroupId i=68 i=78 i=15471 KeyLifetime i=68 i=78 i=15471 SecurityPolicyUri i=68 i=78 i=15471 MaxFutureKeyCount i=68 i=78 i=15471 MaxPastKeyCount i=68 i=78 i=15471 PublishSubscribeType i=14417 i=17296 i=16598 i=14432 i=14434 i=15844 i=18715 i=17479 i=15906 <ConnectionName> i=14418 i=17292 i=17478 i=14423 i=14419 i=14209 i=11508 i=14416 PublisherId i=68 i=78 i=14417 TransportProfileUri i=17706 i=16309 i=78 i=14417 Selections i=68 i=78 i=17292 ConnectionProperties i=68 i=78 i=14417 Address i=15533 i=21145 i=78 i=14417 NetworkInterface i=63 i=78 i=14423 Status i=14420 i=14643 i=78 i=14417 State i=63 i=78 i=14419 SetSecurityKeys i=17297 i=80 i=14416 InputArguments i=68 i=78 i=17296 i=297 SecurityGroupId i=12 -1 i=297 SecurityPolicyUri i=12 -1 i=297 CurrentTokenId i=288 -1 i=297 CurrentKey i=15 -1 i=297 FutureKeys i=15 1 i=297 TimeToNextKey i=290 -1 i=297 KeyLifetime i=290 -1 AddConnection i=16599 i=16600 i=80 i=14416 InputArguments i=68 i=78 i=16598 i=297 Configuration i=15617 -1 OutputArguments i=68 i=78 i=16598 i=297 ConnectionId i=17 -1 RemoveConnection i=14433 i=80 i=14416 InputArguments i=68 i=78 i=14432 i=297 ConnectionId i=17 -1 PublishedDataSets i=14477 i=78 i=14416 Status i=15845 i=14643 i=78 i=14416 State i=63 i=78 i=15844 Diagnostics i=18716 i=18717 i=18722 i=18727 i=18728 i=18729 i=18760 i=19732 i=80 i=14416 DiagnosticsLevel i=63 i=78 i=18715 TotalInformation i=18718 i=18719 i=18720 i=18721 i=19725 i=78 i=18715 Active i=68 i=78 i=18717 Classification i=68 i=78 i=18717 DiagnosticsLevel i=68 i=78 i=18717 TimeFirstChange i=68 i=78 i=18717 TotalError i=18723 i=18724 i=18725 i=18726 i=19725 i=78 i=18715 Active i=68 i=78 i=18722 Classification i=68 i=78 i=18722 DiagnosticsLevel i=68 i=78 i=18722 TimeFirstChange i=68 i=78 i=18722 Reset i=78 i=18715 SubError i=63 i=78 i=18715 Counters i=18730 i=18735 i=18740 i=18745 i=18750 i=18755 i=58 i=78 i=18715 StateError i=18731 i=18732 i=18733 i=18734 i=19725 i=78 i=18729 Active i=68 i=78 i=18730 Classification i=68 i=78 i=18730 1 DiagnosticsLevel i=68 i=78 i=18730 0 TimeFirstChange i=68 i=78 i=18730 StateOperationalByMethod i=18736 i=18737 i=18738 i=18739 i=19725 i=78 i=18729 Active i=68 i=78 i=18735 Classification i=68 i=78 i=18735 0 DiagnosticsLevel i=68 i=78 i=18735 0 TimeFirstChange i=68 i=78 i=18735 StateOperationalByParent i=18741 i=18742 i=18743 i=18744 i=19725 i=78 i=18729 Active i=68 i=78 i=18740 Classification i=68 i=78 i=18740 0 DiagnosticsLevel i=68 i=78 i=18740 0 TimeFirstChange i=68 i=78 i=18740 StateOperationalFromError i=18746 i=18747 i=18748 i=18749 i=19725 i=78 i=18729 Active i=68 i=78 i=18745 Classification i=68 i=78 i=18745 0 DiagnosticsLevel i=68 i=78 i=18745 0 TimeFirstChange i=68 i=78 i=18745 StatePausedByParent i=18751 i=18752 i=18753 i=18754 i=19725 i=78 i=18729 Active i=68 i=78 i=18750 Classification i=68 i=78 i=18750 0 DiagnosticsLevel i=68 i=78 i=18750 0 TimeFirstChange i=68 i=78 i=18750 StateDisabledByMethod i=18756 i=18757 i=18758 i=18759 i=19725 i=78 i=18729 Active i=68 i=78 i=18755 Classification i=68 i=78 i=18755 0 DiagnosticsLevel i=68 i=78 i=18755 0 TimeFirstChange i=68 i=78 i=18755 LiveValues i=18761 i=18763 i=18765 i=18767 i=58 i=78 i=18715 ConfiguredDataSetWriters i=18762 i=63 i=78 i=18760 DiagnosticsLevel i=68 i=78 i=18761 0 ConfiguredDataSetReaders i=18764 i=63 i=78 i=18760 DiagnosticsLevel i=68 i=78 i=18763 0 OperationalDataSetWriters i=18766 i=63 i=78 i=18760 DiagnosticsLevel i=68 i=78 i=18765 0 OperationalDataSetReaders i=18768 i=63 i=78 i=18760 DiagnosticsLevel i=68 i=78 i=18767 0 SupportedTransportProfiles i=68 i=78 i=14416 PublishSubscribe i=15215 i=15440 i=15443 i=17366 i=17369 i=17371 i=17405 i=17409 i=17481 i=2253 i=14416 GetSecurityKeys i=15216 i=15217 i=14443 InputArguments i=68 i=15215 i=297 SecurityGroupId i=12 -1 i=297 StartingTokenId i=288 -1 i=297 RequestedKeyCount i=7 -1 OutputArguments i=68 i=15215 i=297 SecurityPolicyUri i=12 -1 i=297 FirstTokenId i=288 -1 i=297 Keys i=15 1 i=297 TimeToNextKey i=290 -1 i=297 KeyLifetime i=290 -1 GetSecurityGroup i=15441 i=15442 i=14443 InputArguments i=68 i=15440 i=297 SecurityGroupId i=12 -1 OutputArguments i=68 i=15440 i=297 SecurityGroupNodeId i=17 -1 SecurityGroups i=15444 i=15447 i=15452 i=14443 AddSecurityGroup i=15445 i=15446 i=15443 InputArguments i=68 i=15444 i=297 SecurityGroupName i=12 -1 i=297 KeyLifetime i=290 -1 i=297 SecurityPolicyUri i=12 -1 i=297 MaxFutureKeyCount i=7 -1 i=297 MaxPastKeyCount i=7 -1 OutputArguments i=68 i=15444 i=297 SecurityGroupId i=12 -1 i=297 SecurityGroupNodeId i=17 -1 RemoveSecurityGroup i=15448 i=15443 InputArguments i=68 i=15447 i=297 SecurityGroupNodeId i=17 -1 AddConnection i=17367 i=17368 i=14443 InputArguments i=68 i=17366 i=297 Configuration i=15617 -1 OutputArguments i=68 i=17366 i=297 ConnectionId i=17 -1 RemoveConnection i=17370 i=14443 InputArguments i=68 i=17369 i=297 ConnectionId i=17 -1 PublishedDataSets i=14477 i=14443 Status i=17406 i=14643 i=14443 State i=63 i=17405 Diagnostics i=17410 i=17411 i=17416 i=17421 i=17422 i=17423 i=17457 i=19732 i=14443 DiagnosticsLevel i=63 i=17409 TotalInformation i=17412 i=17413 i=17414 i=17415 i=19725 i=17409 Active i=68 i=17411 Classification i=68 i=17411 DiagnosticsLevel i=68 i=17411 TimeFirstChange i=68 i=17411 TotalError i=17417 i=17418 i=17419 i=17420 i=19725 i=17409 Active i=68 i=17416 Classification i=68 i=17416 DiagnosticsLevel i=68 i=17416 TimeFirstChange i=68 i=17416 Reset i=17409 SubError i=63 i=17409 Counters i=17424 i=17431 i=17436 i=17441 i=17446 i=17451 i=58 i=17409 StateError i=17425 i=17426 i=17429 i=17430 i=19725 i=17423 Active i=68 i=17424 Classification i=68 i=17424 1 DiagnosticsLevel i=68 i=17424 0 TimeFirstChange i=68 i=17424 StateOperationalByMethod i=17432 i=17433 i=17434 i=17435 i=19725 i=17423 Active i=68 i=17431 Classification i=68 i=17431 0 DiagnosticsLevel i=68 i=17431 0 TimeFirstChange i=68 i=17431 StateOperationalByParent i=17437 i=17438 i=17439 i=17440 i=19725 i=17423 Active i=68 i=17436 Classification i=68 i=17436 0 DiagnosticsLevel i=68 i=17436 0 TimeFirstChange i=68 i=17436 StateOperationalFromError i=17442 i=17443 i=17444 i=17445 i=19725 i=17423 Active i=68 i=17441 Classification i=68 i=17441 0 DiagnosticsLevel i=68 i=17441 0 TimeFirstChange i=68 i=17441 StatePausedByParent i=17447 i=17448 i=17449 i=17450 i=19725 i=17423 Active i=68 i=17446 Classification i=68 i=17446 0 DiagnosticsLevel i=68 i=17446 0 TimeFirstChange i=68 i=17446 StateDisabledByMethod i=17452 i=17453 i=17454 i=17455 i=19725 i=17423 Active i=68 i=17451 Classification i=68 i=17451 0 DiagnosticsLevel i=68 i=17451 0 TimeFirstChange i=68 i=17451 LiveValues i=17458 i=17460 i=17462 i=17464 i=58 i=17409 ConfiguredDataSetWriters i=17459 i=63 i=17457 DiagnosticsLevel i=68 i=17458 0 ConfiguredDataSetReaders i=17461 i=63 i=17457 DiagnosticsLevel i=68 i=17460 0 OperationalDataSetWriters i=17463 i=63 i=17457 DiagnosticsLevel i=68 i=17462 0 OperationalDataSetReaders i=17466 i=63 i=17457 DiagnosticsLevel i=68 i=17464 0 SupportedTransportProfiles i=68 i=14443 HasPubSubConnection i=47 PubSubConnectionOf PublishedDataSetType i=15222 i=14519 i=15229 i=16759 i=15481 i=58 <DataSetWriterName> i=16720 i=16721 i=17482 i=15223 i=15298 i=11508 i=14509 DataSetWriterId i=68 i=78 i=15222 DataSetFieldContentMask i=68 i=78 i=15222 DataSetWriterProperties i=68 i=78 i=15222 Status i=15224 i=14643 i=78 i=15222 State i=63 i=78 i=15223 ConfigurationVersion i=68 i=78 i=14509 DataSetMetaData i=68 i=78 i=14509 DataSetClassId i=68 i=80 i=14509 ExtensionFields i=15482 i=15485 i=15489 i=80 i=14509 AddExtensionField i=15483 i=15484 i=78 i=15481 InputArguments i=68 i=78 i=15482 i=297 FieldName i=20 -1 i=297 FieldValue i=24 -2 OutputArguments i=68 i=78 i=15482 i=297 FieldId i=17 -1 RemoveExtensionField i=15486 i=78 i=15481 InputArguments i=68 i=78 i=15485 i=297 FieldId i=17 -1 ExtensionFieldsType i=15490 i=15491 i=15494 i=58 <ExtensionFieldName> i=68 i=11508 i=15489 AddExtensionField i=15492 i=15493 i=78 i=15489 InputArguments i=68 i=78 i=15491 i=297 FieldName i=20 -1 i=297 FieldValue i=24 -2 OutputArguments i=68 i=78 i=15491 i=297 FieldId i=17 -1 RemoveExtensionField i=15495 i=78 i=15489 InputArguments i=68 i=78 i=15494 i=297 FieldId i=17 -1 DataSetToWriter i=33 WriterToDataSet PublishedDataItemsType i=14548 i=14555 i=14558 i=14509 PublishedData i=68 i=78 i=14534 AddVariables i=14556 i=14557 i=80 i=14534 InputArguments i=68 i=78 i=14555 i=297 ConfigurationVersion i=14593 -1 i=297 FieldNameAliases i=12 1 i=297 PromotedFields i=1 1 i=297 VariablesToAdd i=14273 1 OutputArguments i=68 i=78 i=14555 i=297 NewConfigurationVersion i=14593 -1 i=297 AddResults i=19 1 RemoveVariables i=14559 i=14560 i=80 i=14534 InputArguments i=68 i=78 i=14558 i=297 ConfigurationVersion i=14593 -1 i=297 VariablesToRemove i=7 1 OutputArguments i=68 i=78 i=14558 i=297 NewConfigurationVersion i=14593 -1 i=297 RemoveResults i=19 1 PublishedEventsType i=14586 i=14587 i=14588 i=15052 i=14509 EventNotifier i=68 i=78 i=14572 SelectedFields i=68 i=78 i=14572 Filter i=68 i=78 i=14572 ModifyFieldSelection i=15053 i=15517 i=80 i=14572 InputArguments i=68 i=78 i=15052 i=297 ConfigurationVersion i=14593 -1 i=297 FieldNameAliases i=12 1 i=297 PromotedFields i=1 1 i=297 SelectedFields i=601 1 OutputArguments i=68 i=78 i=15052 i=297 NewConfigurationVersion i=14593 -1 DataSetFolderType i=14478 i=14487 i=14493 i=14496 i=16935 i=16960 i=14499 i=16994 i=16997 i=61 <DataSetFolderName> i=14479 i=14482 i=16842 i=16881 i=14485 i=16884 i=16923 i=14477 i=11508 i=14477 AddPublishedDataItems i=14480 i=14481 i=80 i=14478 InputArguments i=68 i=78 i=14479 i=297 Name i=12 -1 i=297 FieldNameAliases i=12 1 i=297 FieldFlags i=15904 1 i=297 VariablesToAdd i=14273 1 OutputArguments i=68 i=78 i=14479 i=297 DataSetNodeId i=17 -1 i=297 ConfigurationVersion i=14593 -1 i=297 AddResults i=19 1 AddPublishedEvents i=14483 i=14484 i=80 i=14478 InputArguments i=68 i=78 i=14482 i=297 Name i=12 -1 i=297 EventNotifier i=17 -1 i=297 FieldNameAliases i=12 1 i=297 FieldFlags i=15904 1 i=297 SelectedFields i=601 1 i=297 Filter i=586 -1 OutputArguments i=68 i=78 i=14482 i=297 ConfigurationVersion i=14593 -1 i=297 DataSetNodeId i=17 -1 AddPublishedDataItemsTemplate i=16843 i=16853 i=80 i=14478 InputArguments i=68 i=78 i=16842 i=297 Name i=12 -1 i=297 DataSetMetaData i=14523 -1 i=297 VariablesToAdd i=14273 1 OutputArguments i=68 i=78 i=16842 i=297 DataSetNodeId i=17 -1 i=297 AddResults i=19 1 AddPublishedEventsTemplate i=16882 i=16883 i=80 i=14478 InputArguments i=68 i=78 i=16881 i=297 Name i=12 -1 i=297 DataSetMetaData i=14523 -1 i=297 EventNotifier i=17 -1 i=297 SelectedFields i=601 1 i=297 Filter i=586 -1 OutputArguments i=68 i=78 i=16881 i=297 DataSetNodeId i=17 -1 RemovePublishedDataSet i=14486 i=80 i=14478 InputArguments i=68 i=78 i=14485 i=297 DataSetNodeId i=17 -1 AddDataSetFolder i=16894 i=16922 i=80 i=14478 InputArguments i=68 i=78 i=16884 i=297 Name i=12 -1 OutputArguments i=68 i=78 i=16884 i=297 DataSetFolderNodeId i=17 -1 RemoveDataSetFolder i=16924 i=80 i=14478 InputArguments i=68 i=78 i=16923 i=297 DataSetFolderNodeId i=17 -1 <PublishedDataSetName> i=14489 i=15221 i=14509 i=11508 i=14477 ConfigurationVersion i=68 i=78 i=14487 DataSetMetaData i=68 i=78 i=14487 AddPublishedDataItems i=14494 i=14495 i=80 i=14477 InputArguments i=68 i=78 i=14493 i=297 Name i=12 -1 i=297 FieldNameAliases i=12 1 i=297 FieldFlags i=15904 1 i=297 VariablesToAdd i=14273 1 OutputArguments i=68 i=78 i=14493 i=297 DataSetNodeId i=17 -1 i=297 ConfigurationVersion i=14593 -1 i=297 AddResults i=19 1 AddPublishedEvents i=14497 i=14498 i=80 i=14477 InputArguments i=68 i=78 i=14496 i=297 Name i=12 -1 i=297 EventNotifier i=17 -1 i=297 FieldNameAliases i=12 1 i=297 FieldFlags i=15904 1 i=297 SelectedFields i=601 1 i=297 Filter i=586 -1 OutputArguments i=68 i=78 i=14496 i=297 ConfigurationVersion i=14593 -1 i=297 DataSetNodeId i=17 -1 AddPublishedDataItemsTemplate i=16958 i=16959 i=80 i=14477 InputArguments i=68 i=78 i=16935 i=297 Name i=12 -1 i=297 DataSetMetaData i=14523 -1 i=297 VariablesToAdd i=14273 1 OutputArguments i=68 i=78 i=16935 i=297 DataSetNodeId i=17 -1 i=297 AddResults i=19 1 AddPublishedEventsTemplate i=16961 i=16971 i=80 i=14477 InputArguments i=68 i=78 i=16960 i=297 Name i=12 -1 i=297 DataSetMetaData i=14523 -1 i=297 EventNotifier i=17 -1 i=297 SelectedFields i=601 1 i=297 Filter i=586 -1 OutputArguments i=68 i=78 i=16960 i=297 DataSetNodeId i=17 -1 RemovePublishedDataSet i=14500 i=80 i=14477 InputArguments i=68 i=78 i=14499 i=297 DataSetNodeId i=17 -1 AddDataSetFolder i=16995 i=16996 i=80 i=14477 InputArguments i=68 i=78 i=16994 i=297 Name i=12 -1 OutputArguments i=68 i=78 i=16994 i=297 DataSetFolderNodeId i=17 -1 RemoveDataSetFolder i=17007 i=80 i=14477 InputArguments i=68 i=78 i=16997 i=297 DataSetFolderNodeId i=17 -1 PubSubConnectionType i=14595 i=17306 i=17485 i=14221 i=17203 i=17310 i=17325 i=14600 i=19241 i=17427 i=17465 i=14225 i=58 PublisherId i=68 i=78 i=14209 TransportProfileUri i=17710 i=16309 i=78 i=14209 Selections i=68 i=78 i=17306 ConnectionProperties i=68 i=78 i=14209 Address i=17202 i=21145 i=78 i=14209 NetworkInterface i=63 i=78 i=14221 TransportSettings i=17721 i=80 i=14209 <WriterGroupName> i=17311 i=17204 i=17486 i=17314 i=17214 i=17318 i=17319 i=17321 i=17322 i=17725 i=11508 i=14209 SecurityMode i=68 i=78 i=17310 MaxNetworkMessageSize i=68 i=78 i=17310 GroupProperties i=68 i=78 i=17310 Status i=17315 i=14643 i=78 i=17310 State i=63 i=78 i=17314 WriterGroupId i=68 i=78 i=17310 PublishingInterval i=68 i=78 i=17310 KeepAliveTime i=68 i=78 i=17310 Priority i=68 i=78 i=17310 LocaleIds i=68 i=78 i=17310 <ReaderGroupName> i=17326 i=17302 i=17487 i=17329 i=17999 i=11508 i=14209 SecurityMode i=68 i=78 i=17325 MaxNetworkMessageSize i=68 i=78 i=17325 GroupProperties i=68 i=78 i=17325 Status i=17330 i=14643 i=78 i=17325 State i=63 i=78 i=17329 Status i=14601 i=14643 i=78 i=14209 State i=63 i=78 i=14600 Diagnostics i=19242 i=19243 i=19248 i=19253 i=19254 i=19255 i=19286 i=19786 i=80 i=14209 DiagnosticsLevel i=63 i=78 i=19241 TotalInformation i=19244 i=19245 i=19246 i=19247 i=19725 i=78 i=19241 Active i=68 i=78 i=19243 Classification i=68 i=78 i=19243 DiagnosticsLevel i=68 i=78 i=19243 TimeFirstChange i=68 i=78 i=19243 TotalError i=19249 i=19250 i=19251 i=19252 i=19725 i=78 i=19241 Active i=68 i=78 i=19248 Classification i=68 i=78 i=19248 DiagnosticsLevel i=68 i=78 i=19248 TimeFirstChange i=68 i=78 i=19248 Reset i=78 i=19241 SubError i=63 i=78 i=19241 Counters i=19256 i=19261 i=19266 i=19271 i=19276 i=19281 i=58 i=78 i=19241 StateError i=19257 i=19258 i=19259 i=19260 i=19725 i=78 i=19255 Active i=68 i=78 i=19256 Classification i=68 i=78 i=19256 1 DiagnosticsLevel i=68 i=78 i=19256 0 TimeFirstChange i=68 i=78 i=19256 StateOperationalByMethod i=19262 i=19263 i=19264 i=19265 i=19725 i=78 i=19255 Active i=68 i=78 i=19261 Classification i=68 i=78 i=19261 0 DiagnosticsLevel i=68 i=78 i=19261 0 TimeFirstChange i=68 i=78 i=19261 StateOperationalByParent i=19267 i=19268 i=19269 i=19270 i=19725 i=78 i=19255 Active i=68 i=78 i=19266 Classification i=68 i=78 i=19266 0 DiagnosticsLevel i=68 i=78 i=19266 0 TimeFirstChange i=68 i=78 i=19266 StateOperationalFromError i=19272 i=19273 i=19274 i=19275 i=19725 i=78 i=19255 Active i=68 i=78 i=19271 Classification i=68 i=78 i=19271 0 DiagnosticsLevel i=68 i=78 i=19271 0 TimeFirstChange i=68 i=78 i=19271 StatePausedByParent i=19277 i=19278 i=19279 i=19280 i=19725 i=78 i=19255 Active i=68 i=78 i=19276 Classification i=68 i=78 i=19276 0 DiagnosticsLevel i=68 i=78 i=19276 0 TimeFirstChange i=68 i=78 i=19276 StateDisabledByMethod i=19282 i=19283 i=19284 i=19285 i=19725 i=78 i=19255 Active i=68 i=78 i=19281 Classification i=68 i=78 i=19281 0 DiagnosticsLevel i=68 i=78 i=19281 0 TimeFirstChange i=68 i=78 i=19281 LiveValues i=19287 i=58 i=78 i=19241 ResolvedAddress i=19288 i=63 i=78 i=19286 DiagnosticsLevel i=68 i=78 i=19287 0 AddWriterGroup i=17428 i=17456 i=80 i=14209 InputArguments i=68 i=78 i=17427 i=297 Configuration i=15480 -1 OutputArguments i=68 i=78 i=17427 i=297 GroupId i=17 -1 AddReaderGroup i=17507 i=17508 i=80 i=14209 InputArguments i=68 i=78 i=17465 i=297 Configuration i=15520 -1 OutputArguments i=68 i=78 i=17465 i=297 GroupId i=17 -1 RemoveGroup i=14226 i=80 i=14209 InputArguments i=68 i=78 i=14225 i=297 GroupId i=17 -1 ConnectionTransportType i=58 PubSubGroupType i=15926 i=15927 i=15928 i=17724 i=17488 i=15265 i=58 SecurityMode i=68 i=78 i=14232 SecurityGroupId i=68 i=80 i=14232 SecurityKeyServices i=68 i=80 i=14232 MaxNetworkMessageSize i=68 i=78 i=14232 GroupProperties i=68 i=78 i=14232 Status i=15266 i=14643 i=78 i=14232 State i=63 i=78 i=15265 WriterGroupType i=17736 i=17737 i=17738 i=17739 i=17740 i=17741 i=17742 i=17743 i=17812 i=17969 i=17992 i=14232 WriterGroupId i=68 i=78 i=17725 PublishingInterval i=68 i=78 i=17725 KeepAliveTime i=68 i=78 i=17725 Priority i=68 i=78 i=17725 LocaleIds i=68 i=78 i=17725 TransportSettings i=17997 i=80 i=17725 MessageSettings i=17998 i=80 i=17725 <DataSetWriterName> i=17744 i=17745 i=17490 i=17749 i=15298 i=11508 i=17725 DataSetWriterId i=68 i=78 i=17743 DataSetFieldContentMask i=68 i=78 i=17743 DataSetWriterProperties i=68 i=78 i=17743 Status i=17750 i=14643 i=78 i=17743 State i=63 i=78 i=17749 Diagnostics i=17813 i=17814 i=17819 i=17824 i=17825 i=17826 i=17858 i=19834 i=80 i=17725 DiagnosticsLevel i=63 i=78 i=17812 TotalInformation i=17815 i=17816 i=17817 i=17818 i=19725 i=78 i=17812 Active i=68 i=78 i=17814 Classification i=68 i=78 i=17814 DiagnosticsLevel i=68 i=78 i=17814 TimeFirstChange i=68 i=78 i=17814 TotalError i=17820 i=17821 i=17822 i=17823 i=19725 i=78 i=17812 Active i=68 i=78 i=17819 Classification i=68 i=78 i=17819 DiagnosticsLevel i=68 i=78 i=17819 TimeFirstChange i=68 i=78 i=17819 Reset i=78 i=17812 SubError i=63 i=78 i=17812 Counters i=17827 i=17832 i=17837 i=17842 i=17847 i=17853 i=17859 i=17874 i=17900 i=58 i=78 i=17812 StateError i=17828 i=17829 i=17830 i=17831 i=19725 i=78 i=17826 Active i=68 i=78 i=17827 Classification i=68 i=78 i=17827 1 DiagnosticsLevel i=68 i=78 i=17827 0 TimeFirstChange i=68 i=78 i=17827 StateOperationalByMethod i=17833 i=17834 i=17835 i=17836 i=19725 i=78 i=17826 Active i=68 i=78 i=17832 Classification i=68 i=78 i=17832 0 DiagnosticsLevel i=68 i=78 i=17832 0 TimeFirstChange i=68 i=78 i=17832 StateOperationalByParent i=17838 i=17839 i=17840 i=17841 i=19725 i=78 i=17826 Active i=68 i=78 i=17837 Classification i=68 i=78 i=17837 0 DiagnosticsLevel i=68 i=78 i=17837 0 TimeFirstChange i=68 i=78 i=17837 StateOperationalFromError i=17843 i=17844 i=17845 i=17846 i=19725 i=78 i=17826 Active i=68 i=78 i=17842 Classification i=68 i=78 i=17842 0 DiagnosticsLevel i=68 i=78 i=17842 0 TimeFirstChange i=68 i=78 i=17842 StatePausedByParent i=17848 i=17849 i=17850 i=17851 i=19725 i=78 i=17826 Active i=68 i=78 i=17847 Classification i=68 i=78 i=17847 0 DiagnosticsLevel i=68 i=78 i=17847 0 TimeFirstChange i=68 i=78 i=17847 StateDisabledByMethod i=17854 i=17855 i=17856 i=17857 i=19725 i=78 i=17826 Active i=68 i=78 i=17853 Classification i=68 i=78 i=17853 0 DiagnosticsLevel i=68 i=78 i=17853 0 TimeFirstChange i=68 i=78 i=17853 SentNetworkMessages i=17864 i=17871 i=17872 i=17873 i=19725 i=78 i=17826 Active i=68 i=78 i=17859 Classification i=68 i=78 i=17859 0 DiagnosticsLevel i=68 i=78 i=17859 0 TimeFirstChange i=68 i=78 i=17859 FailedTransmissions i=17878 i=17885 i=17892 i=17899 i=19725 i=78 i=17826 Active i=68 i=78 i=17874 Classification i=68 i=78 i=17874 1 DiagnosticsLevel i=68 i=78 i=17874 0 TimeFirstChange i=68 i=78 i=17874 EncryptionErrors i=17901 i=17902 i=17903 i=17906 i=19725 i=78 i=17826 Active i=68 i=78 i=17900 Classification i=68 i=78 i=17900 1 DiagnosticsLevel i=68 i=78 i=17900 1 TimeFirstChange i=68 i=78 i=17900 LiveValues i=17913 i=17927 i=58 i=78 i=17812 ConfiguredDataSetWriters i=17920 i=63 i=78 i=17858 DiagnosticsLevel i=68 i=78 i=17913 0 OperationalDataSetWriters i=17934 i=63 i=78 i=17858 DiagnosticsLevel i=68 i=78 i=17927 0 AddDataSetWriter i=17976 i=17987 i=80 i=17725 InputArguments i=68 i=78 i=17969 i=297 Configuration i=15597 -1 OutputArguments i=68 i=78 i=17969 i=297 DataSetWriterNodeId i=17 -1 RemoveDataSetWriter i=17993 i=80 i=17725 InputArguments i=68 i=78 i=17992 i=297 DataSetWriterNodeId i=17 -1 HasDataSetWriter i=47 IsWriterInGroup WriterGroupTransportType i=58 WriterGroupMessageType i=58 ReaderGroupType i=18076 i=21015 i=21080 i=21081 i=21082 i=21085 i=14232 <DataSetReaderName> i=18077 i=18078 i=18079 i=18080 i=18081 i=18082 i=17492 i=18088 i=21006 i=15306 i=11508 i=17999 PublisherId i=68 i=78 i=18076 WriterGroupId i=68 i=78 i=18076 DataSetWriterId i=68 i=78 i=18076 DataSetMetaData i=68 i=78 i=18076 DataSetFieldContentMask i=68 i=78 i=18076 MessageReceiveTimeout i=68 i=78 i=18076 DataSetReaderProperties i=68 i=78 i=18076 Status i=18089 i=14643 i=78 i=18076 State i=63 i=78 i=18088 SubscribedDataSet i=21007 i=21008 i=15108 i=78 i=18076 DataSetMetaData i=68 i=78 i=21006 MessageReceiveTimeout i=68 i=78 i=21006 Diagnostics i=21016 i=21017 i=21022 i=21027 i=21028 i=21029 i=21060 i=19903 i=80 i=17999 DiagnosticsLevel i=63 i=78 i=21015 TotalInformation i=21018 i=21019 i=21020 i=21021 i=19725 i=78 i=21015 Active i=68 i=78 i=21017 Classification i=68 i=78 i=21017 DiagnosticsLevel i=68 i=78 i=21017 TimeFirstChange i=68 i=78 i=21017 TotalError i=21023 i=21024 i=21025 i=21026 i=19725 i=78 i=21015 Active i=68 i=78 i=21022 Classification i=68 i=78 i=21022 DiagnosticsLevel i=68 i=78 i=21022 TimeFirstChange i=68 i=78 i=21022 Reset i=78 i=21015 SubError i=63 i=78 i=21015 Counters i=21030 i=21035 i=21040 i=21045 i=21050 i=21055 i=21061 i=58 i=78 i=21015 StateError i=21031 i=21032 i=21033 i=21034 i=19725 i=78 i=21029 Active i=68 i=78 i=21030 Classification i=68 i=78 i=21030 1 DiagnosticsLevel i=68 i=78 i=21030 0 TimeFirstChange i=68 i=78 i=21030 StateOperationalByMethod i=21036 i=21037 i=21038 i=21039 i=19725 i=78 i=21029 Active i=68 i=78 i=21035 Classification i=68 i=78 i=21035 0 DiagnosticsLevel i=68 i=78 i=21035 0 TimeFirstChange i=68 i=78 i=21035 StateOperationalByParent i=21041 i=21042 i=21043 i=21044 i=19725 i=78 i=21029 Active i=68 i=78 i=21040 Classification i=68 i=78 i=21040 0 DiagnosticsLevel i=68 i=78 i=21040 0 TimeFirstChange i=68 i=78 i=21040 StateOperationalFromError i=21046 i=21047 i=21048 i=21049 i=19725 i=78 i=21029 Active i=68 i=78 i=21045 Classification i=68 i=78 i=21045 0 DiagnosticsLevel i=68 i=78 i=21045 0 TimeFirstChange i=68 i=78 i=21045 StatePausedByParent i=21051 i=21052 i=21053 i=21054 i=19725 i=78 i=21029 Active i=68 i=78 i=21050 Classification i=68 i=78 i=21050 0 DiagnosticsLevel i=68 i=78 i=21050 0 TimeFirstChange i=68 i=78 i=21050 StateDisabledByMethod i=21056 i=21057 i=21058 i=21059 i=19725 i=78 i=21029 Active i=68 i=78 i=21055 Classification i=68 i=78 i=21055 0 DiagnosticsLevel i=68 i=78 i=21055 0 TimeFirstChange i=68 i=78 i=21055 ReceivedNetworkMessages i=21062 i=21063 i=21064 i=21065 i=19725 i=78 i=21029 Active i=68 i=78 i=21061 Classification i=68 i=78 i=21061 0 DiagnosticsLevel i=68 i=78 i=21061 0 TimeFirstChange i=68 i=78 i=21061 LiveValues i=21076 i=21078 i=58 i=78 i=21015 ConfiguredDataSetReaders i=21077 i=63 i=78 i=21060 DiagnosticsLevel i=68 i=78 i=21076 0 OperationalDataSetReaders i=21079 i=63 i=78 i=21060 DiagnosticsLevel i=68 i=78 i=21078 0 TransportSettings i=21090 i=80 i=17999 MessageSettings i=21091 i=80 i=17999 AddDataSetReader i=21083 i=21084 i=80 i=17999 InputArguments i=68 i=78 i=21082 i=297 Configuration i=15623 -1 OutputArguments i=68 i=78 i=21082 i=297 DataSetReaderNodeId i=17 -1 RemoveDataSetReader i=21086 i=80 i=17999 InputArguments i=68 i=78 i=21085 i=297 DataSetReaderNodeId i=17 -1 HasDataSetReader i=47 IsReaderInGroup ReaderGroupTransportType i=58 ReaderGroupMessageType i=58 DataSetWriterType i=21092 i=21093 i=21094 i=17493 i=15303 i=21095 i=15299 i=19550 i=58 DataSetWriterId i=68 i=78 i=15298 DataSetFieldContentMask i=68 i=78 i=15298 KeyFrameCount i=68 i=80 i=15298 DataSetWriterProperties i=68 i=78 i=15298 TransportSettings i=15305 i=80 i=15298 MessageSettings i=21096 i=80 i=15298 Status i=15300 i=14643 i=78 i=15298 State i=63 i=78 i=15299 Diagnostics i=19551 i=19552 i=19557 i=19562 i=19563 i=19564 i=19595 i=19968 i=80 i=15298 DiagnosticsLevel i=63 i=78 i=19550 TotalInformation i=19553 i=19554 i=19555 i=19556 i=19725 i=78 i=19550 Active i=68 i=78 i=19552 Classification i=68 i=78 i=19552 DiagnosticsLevel i=68 i=78 i=19552 TimeFirstChange i=68 i=78 i=19552 TotalError i=19558 i=19559 i=19560 i=19561 i=19725 i=78 i=19550 Active i=68 i=78 i=19557 Classification i=68 i=78 i=19557 DiagnosticsLevel i=68 i=78 i=19557 TimeFirstChange i=68 i=78 i=19557 Reset i=78 i=19550 SubError i=63 i=78 i=19550 Counters i=19565 i=19570 i=19575 i=19580 i=19585 i=19590 i=19596 i=58 i=78 i=19550 StateError i=19566 i=19567 i=19568 i=19569 i=19725 i=78 i=19564 Active i=68 i=78 i=19565 Classification i=68 i=78 i=19565 1 DiagnosticsLevel i=68 i=78 i=19565 0 TimeFirstChange i=68 i=78 i=19565 StateOperationalByMethod i=19571 i=19572 i=19573 i=19574 i=19725 i=78 i=19564 Active i=68 i=78 i=19570 Classification i=68 i=78 i=19570 0 DiagnosticsLevel i=68 i=78 i=19570 0 TimeFirstChange i=68 i=78 i=19570 StateOperationalByParent i=19576 i=19577 i=19578 i=19579 i=19725 i=78 i=19564 Active i=68 i=78 i=19575 Classification i=68 i=78 i=19575 0 DiagnosticsLevel i=68 i=78 i=19575 0 TimeFirstChange i=68 i=78 i=19575 StateOperationalFromError i=19581 i=19582 i=19583 i=19584 i=19725 i=78 i=19564 Active i=68 i=78 i=19580 Classification i=68 i=78 i=19580 0 DiagnosticsLevel i=68 i=78 i=19580 0 TimeFirstChange i=68 i=78 i=19580 StatePausedByParent i=19586 i=19587 i=19588 i=19589 i=19725 i=78 i=19564 Active i=68 i=78 i=19585 Classification i=68 i=78 i=19585 0 DiagnosticsLevel i=68 i=78 i=19585 0 TimeFirstChange i=68 i=78 i=19585 StateDisabledByMethod i=19591 i=19592 i=19593 i=19594 i=19725 i=78 i=19564 Active i=68 i=78 i=19590 Classification i=68 i=78 i=19590 0 DiagnosticsLevel i=68 i=78 i=19590 0 TimeFirstChange i=68 i=78 i=19590 FailedDataSetMessages i=19597 i=19598 i=19599 i=19600 i=19725 i=78 i=19564 Active i=68 i=78 i=19596 Classification i=68 i=78 i=19596 1 DiagnosticsLevel i=68 i=78 i=19596 0 TimeFirstChange i=68 i=78 i=19596 LiveValues i=58 i=78 i=19550 DataSetWriterTransportType i=58 DataSetWriterMessageType i=58 DataSetReaderType i=21097 i=21098 i=21099 i=21100 i=21101 i=21102 i=15932 i=15933 i=15934 i=17494 i=15311 i=21103 i=15307 i=19609 i=15316 i=17386 i=17389 i=58 PublisherId i=68 i=78 i=15306 WriterGroupId i=68 i=78 i=15306 DataSetWriterId i=68 i=78 i=15306 DataSetMetaData i=68 i=78 i=15306 DataSetFieldContentMask i=68 i=78 i=15306 MessageReceiveTimeout i=68 i=78 i=15306 SecurityMode i=68 i=80 i=15306 SecurityGroupId i=68 i=80 i=15306 SecurityKeyServices i=68 i=80 i=15306 DataSetReaderProperties i=68 i=78 i=15306 TransportSettings i=15319 i=80 i=15306 MessageSettings i=21104 i=80 i=15306 Status i=15308 i=14643 i=78 i=15306 State i=63 i=78 i=15307 Diagnostics i=19610 i=19611 i=19616 i=19621 i=19622 i=19623 i=19654 i=20027 i=80 i=15306 DiagnosticsLevel i=63 i=78 i=19609 TotalInformation i=19612 i=19613 i=19614 i=19615 i=19725 i=78 i=19609 Active i=68 i=78 i=19611 Classification i=68 i=78 i=19611 DiagnosticsLevel i=68 i=78 i=19611 TimeFirstChange i=68 i=78 i=19611 TotalError i=19617 i=19618 i=19619 i=19620 i=19725 i=78 i=19609 Active i=68 i=78 i=19616 Classification i=68 i=78 i=19616 DiagnosticsLevel i=68 i=78 i=19616 TimeFirstChange i=68 i=78 i=19616 Reset i=78 i=19609 SubError i=63 i=78 i=19609 Counters i=19624 i=19629 i=19634 i=19639 i=19644 i=19649 i=19655 i=58 i=78 i=19609 StateError i=19625 i=19626 i=19627 i=19628 i=19725 i=78 i=19623 Active i=68 i=78 i=19624 Classification i=68 i=78 i=19624 1 DiagnosticsLevel i=68 i=78 i=19624 0 TimeFirstChange i=68 i=78 i=19624 StateOperationalByMethod i=19630 i=19631 i=19632 i=19633 i=19725 i=78 i=19623 Active i=68 i=78 i=19629 Classification i=68 i=78 i=19629 0 DiagnosticsLevel i=68 i=78 i=19629 0 TimeFirstChange i=68 i=78 i=19629 StateOperationalByParent i=19635 i=19636 i=19637 i=19638 i=19725 i=78 i=19623 Active i=68 i=78 i=19634 Classification i=68 i=78 i=19634 0 DiagnosticsLevel i=68 i=78 i=19634 0 TimeFirstChange i=68 i=78 i=19634 StateOperationalFromError i=19640 i=19641 i=19642 i=19643 i=19725 i=78 i=19623 Active i=68 i=78 i=19639 Classification i=68 i=78 i=19639 0 DiagnosticsLevel i=68 i=78 i=19639 0 TimeFirstChange i=68 i=78 i=19639 StatePausedByParent i=19645 i=19646 i=19647 i=19648 i=19725 i=78 i=19623 Active i=68 i=78 i=19644 Classification i=68 i=78 i=19644 0 DiagnosticsLevel i=68 i=78 i=19644 0 TimeFirstChange i=68 i=78 i=19644 StateDisabledByMethod i=19650 i=19651 i=19652 i=19653 i=19725 i=78 i=19623 Active i=68 i=78 i=19649 Classification i=68 i=78 i=19649 0 DiagnosticsLevel i=68 i=78 i=19649 0 TimeFirstChange i=68 i=78 i=19649 FailedDataSetMessages i=19656 i=19657 i=19658 i=19659 i=19725 i=78 i=19623 Active i=68 i=78 i=19655 Classification i=68 i=78 i=19655 1 DiagnosticsLevel i=68 i=78 i=19655 0 TimeFirstChange i=68 i=78 i=19655 LiveValues i=58 i=78 i=19609 SubscribedDataSet i=15317 i=15318 i=15108 i=78 i=15306 DataSetMetaData i=68 i=78 i=15316 MessageReceiveTimeout i=68 i=78 i=15316 CreateTargetVariables i=17387 i=17388 i=80 i=15306 InputArguments i=68 i=78 i=17386 i=297 ConfigurationVersion i=14593 -1 i=297 TargetVariablesToAdd i=14744 1 OutputArguments i=68 i=78 i=17386 i=297 AddResults i=19 1 CreateDataSetMirror i=17390 i=17391 i=80 i=15306 InputArguments i=68 i=78 i=17389 i=297 ParentNodeName i=12 -1 i=297 RolePermissions i=96 1 OutputArguments i=68 i=78 i=17389 i=297 ParentNodeId i=17 -1 DataSetReaderTransportType i=58 DataSetReaderMessageType i=58 SubscribedDataSetType i=15109 i=15110 i=58 DataSetMetaData i=68 i=78 i=15108 MessageReceiveTimeout i=68 i=78 i=15108 TargetVariablesType i=15114 i=15115 i=15118 i=15108 TargetVariables i=68 i=78 i=15111 AddTargetVariables i=15116 i=15117 i=80 i=15111 InputArguments i=68 i=78 i=15115 i=297 ConfigurationVersion i=14593 -1 i=297 TargetVariablesToAdd i=14744 1 OutputArguments i=68 i=78 i=15115 i=297 AddResults i=19 1 RemoveTargetVariables i=15119 i=15120 i=80 i=15111 InputArguments i=68 i=78 i=15118 i=297 ConfigurationVersion i=14593 -1 i=297 TargetsToRemove i=7 1 OutputArguments i=68 i=78 i=15118 i=297 RemoveResults i=19 1 SubscribedDataSetMirrorType i=15108 PubSubStatusType i=14644 i=14645 i=14646 i=58 State i=63 i=78 i=14643 Enable i=80 i=14643 Disable i=80 i=14643 PubSubDiagnosticsType i=19678 i=19679 i=19684 i=19689 i=19690 i=19691 i=19722 i=58 DiagnosticsLevel i=63 i=78 i=19677 TotalInformation i=19680 i=19681 i=19682 i=19683 i=19725 i=78 i=19677 Active i=68 i=78 i=19679 Classification i=68 i=78 i=19679 DiagnosticsLevel i=68 i=78 i=19679 TimeFirstChange i=68 i=78 i=19679 TotalError i=19685 i=19686 i=19687 i=19688 i=19725 i=78 i=19677 Active i=68 i=78 i=19684 Classification i=68 i=78 i=19684 DiagnosticsLevel i=68 i=78 i=19684 TimeFirstChange i=68 i=78 i=19684 Reset i=78 i=19677 SubError i=63 i=78 i=19677 Counters i=19692 i=19697 i=19702 i=19707 i=19712 i=19717 i=58 i=78 i=19677 StateError i=19693 i=19694 i=19695 i=19696 i=19725 i=78 i=19691 Active i=68 i=78 i=19692 Classification i=68 i=78 i=19692 1 DiagnosticsLevel i=68 i=78 i=19692 0 TimeFirstChange i=68 i=78 i=19692 StateOperationalByMethod i=19698 i=19699 i=19700 i=19701 i=19725 i=78 i=19691 Active i=68 i=78 i=19697 Classification i=68 i=78 i=19697 0 DiagnosticsLevel i=68 i=78 i=19697 0 TimeFirstChange i=68 i=78 i=19697 StateOperationalByParent i=19703 i=19704 i=19705 i=19706 i=19725 i=78 i=19691 Active i=68 i=78 i=19702 Classification i=68 i=78 i=19702 0 DiagnosticsLevel i=68 i=78 i=19702 0 TimeFirstChange i=68 i=78 i=19702 StateOperationalFromError i=19708 i=19709 i=19710 i=19711 i=19725 i=78 i=19691 Active i=68 i=78 i=19707 Classification i=68 i=78 i=19707 0 DiagnosticsLevel i=68 i=78 i=19707 0 TimeFirstChange i=68 i=78 i=19707 StatePausedByParent i=19713 i=19714 i=19715 i=19716 i=19725 i=78 i=19691 Active i=68 i=78 i=19712 Classification i=68 i=78 i=19712 0 DiagnosticsLevel i=68 i=78 i=19712 0 TimeFirstChange i=68 i=78 i=19712 StateDisabledByMethod i=19718 i=19719 i=19720 i=19721 i=19725 i=78 i=19691 Active i=68 i=78 i=19717 Classification i=68 i=78 i=19717 0 DiagnosticsLevel i=68 i=78 i=19717 0 TimeFirstChange i=68 i=78 i=19717 LiveValues i=58 i=78 i=19677 DiagnosticsLevel i=19724 i=29 EnumStrings i=68 i=78 i=19723 Basic Advanced Info Log Debug PubSubDiagnosticsCounterType i=19726 i=19727 i=19728 i=19729 i=63 Active i=68 i=78 i=19725 Classification i=68 i=78 i=19725 DiagnosticsLevel i=68 i=78 i=19725 TimeFirstChange i=68 i=78 i=19725 PubSubDiagnosticsCounterClassification i=19731 i=29 EnumStrings i=68 i=78 i=19730 Information Error PubSubDiagnosticsRootType i=19777 i=19677 LiveValues i=19778 i=19780 i=19782 i=19784 i=58 i=78 i=19732 ConfiguredDataSetWriters i=19779 i=63 i=78 i=19777 DiagnosticsLevel i=68 i=78 i=19778 0 ConfiguredDataSetReaders i=19781 i=63 i=78 i=19777 DiagnosticsLevel i=68 i=78 i=19780 0 OperationalDataSetWriters i=19783 i=63 i=78 i=19777 DiagnosticsLevel i=68 i=78 i=19782 0 OperationalDataSetReaders i=19785 i=63 i=78 i=19777 DiagnosticsLevel i=68 i=78 i=19784 0 PubSubDiagnosticsConnectionType i=19831 i=19677 LiveValues i=19832 i=58 i=78 i=19786 ResolvedAddress i=19833 i=63 i=78 i=19831 DiagnosticsLevel i=68 i=78 i=19832 0 PubSubDiagnosticsWriterGroupType i=19848 i=19879 i=19677 Counters i=19849 i=19854 i=19859 i=19864 i=19869 i=19874 i=19880 i=19885 i=19890 i=58 i=78 i=19834 StateError i=19850 i=19851 i=19852 i=19853 i=19725 i=78 i=19848 Active i=68 i=78 i=19849 Classification i=68 i=78 i=19849 1 DiagnosticsLevel i=68 i=78 i=19849 0 TimeFirstChange i=68 i=78 i=19849 StateOperationalByMethod i=19855 i=19856 i=19857 i=19858 i=19725 i=78 i=19848 Active i=68 i=78 i=19854 Classification i=68 i=78 i=19854 0 DiagnosticsLevel i=68 i=78 i=19854 0 TimeFirstChange i=68 i=78 i=19854 StateOperationalByParent i=19860 i=19861 i=19862 i=19863 i=19725 i=78 i=19848 Active i=68 i=78 i=19859 Classification i=68 i=78 i=19859 0 DiagnosticsLevel i=68 i=78 i=19859 0 TimeFirstChange i=68 i=78 i=19859 StateOperationalFromError i=19865 i=19866 i=19867 i=19868 i=19725 i=78 i=19848 Active i=68 i=78 i=19864 Classification i=68 i=78 i=19864 0 DiagnosticsLevel i=68 i=78 i=19864 0 TimeFirstChange i=68 i=78 i=19864 StatePausedByParent i=19870 i=19871 i=19872 i=19873 i=19725 i=78 i=19848 Active i=68 i=78 i=19869 Classification i=68 i=78 i=19869 0 DiagnosticsLevel i=68 i=78 i=19869 0 TimeFirstChange i=68 i=78 i=19869 StateDisabledByMethod i=19875 i=19876 i=19877 i=19878 i=19725 i=78 i=19848 Active i=68 i=78 i=19874 Classification i=68 i=78 i=19874 0 DiagnosticsLevel i=68 i=78 i=19874 0 TimeFirstChange i=68 i=78 i=19874 SentNetworkMessages i=19881 i=19882 i=19883 i=19884 i=19725 i=78 i=19848 Active i=68 i=78 i=19880 Classification i=68 i=78 i=19880 0 DiagnosticsLevel i=68 i=78 i=19880 0 TimeFirstChange i=68 i=78 i=19880 FailedTransmissions i=19886 i=19887 i=19888 i=19889 i=19725 i=78 i=19848 Active i=68 i=78 i=19885 Classification i=68 i=78 i=19885 1 DiagnosticsLevel i=68 i=78 i=19885 0 TimeFirstChange i=68 i=78 i=19885 EncryptionErrors i=19891 i=19892 i=19893 i=19894 i=19725 i=78 i=19848 Active i=68 i=78 i=19890 Classification i=68 i=78 i=19890 1 DiagnosticsLevel i=68 i=78 i=19890 1 TimeFirstChange i=68 i=78 i=19890 LiveValues i=19895 i=19897 i=19899 i=19901 i=58 i=78 i=19834 ConfiguredDataSetWriters i=19896 i=63 i=78 i=19879 DiagnosticsLevel i=68 i=78 i=19895 0 OperationalDataSetWriters i=19898 i=63 i=78 i=19879 DiagnosticsLevel i=68 i=78 i=19897 0 SecurityTokenID i=19900 i=63 i=80 i=19879 DiagnosticsLevel i=68 i=78 i=19899 2 TimeToNextTokenID i=19902 i=63 i=80 i=19879 DiagnosticsLevel i=68 i=78 i=19901 2 PubSubDiagnosticsReaderGroupType i=19917 i=19948 i=19677 Counters i=19918 i=19923 i=19928 i=19933 i=19938 i=19943 i=19949 i=19954 i=19959 i=58 i=78 i=19903 StateError i=19919 i=19920 i=19921 i=19922 i=19725 i=78 i=19917 Active i=68 i=78 i=19918 Classification i=68 i=78 i=19918 1 DiagnosticsLevel i=68 i=78 i=19918 0 TimeFirstChange i=68 i=78 i=19918 StateOperationalByMethod i=19924 i=19925 i=19926 i=19927 i=19725 i=78 i=19917 Active i=68 i=78 i=19923 Classification i=68 i=78 i=19923 0 DiagnosticsLevel i=68 i=78 i=19923 0 TimeFirstChange i=68 i=78 i=19923 StateOperationalByParent i=19929 i=19930 i=19931 i=19932 i=19725 i=78 i=19917 Active i=68 i=78 i=19928 Classification i=68 i=78 i=19928 0 DiagnosticsLevel i=68 i=78 i=19928 0 TimeFirstChange i=68 i=78 i=19928 StateOperationalFromError i=19934 i=19935 i=19936 i=19937 i=19725 i=78 i=19917 Active i=68 i=78 i=19933 Classification i=68 i=78 i=19933 0 DiagnosticsLevel i=68 i=78 i=19933 0 TimeFirstChange i=68 i=78 i=19933 StatePausedByParent i=19939 i=19940 i=19941 i=19942 i=19725 i=78 i=19917 Active i=68 i=78 i=19938 Classification i=68 i=78 i=19938 0 DiagnosticsLevel i=68 i=78 i=19938 0 TimeFirstChange i=68 i=78 i=19938 StateDisabledByMethod i=19944 i=19945 i=19946 i=19947 i=19725 i=78 i=19917 Active i=68 i=78 i=19943 Classification i=68 i=78 i=19943 0 DiagnosticsLevel i=68 i=78 i=19943 0 TimeFirstChange i=68 i=78 i=19943 ReceivedNetworkMessages i=19950 i=19951 i=19952 i=19953 i=19725 i=78 i=19917 Active i=68 i=78 i=19949 Classification i=68 i=78 i=19949 0 DiagnosticsLevel i=68 i=78 i=19949 0 TimeFirstChange i=68 i=78 i=19949 ReceivedInvalidNetworkMessages i=19955 i=19956 i=19957 i=19958 i=19725 i=80 i=19917 Active i=68 i=78 i=19954 Classification i=68 i=78 i=19954 1 DiagnosticsLevel i=68 i=78 i=19954 1 TimeFirstChange i=68 i=78 i=19954 DecryptionErrors i=19960 i=19961 i=19962 i=19963 i=19725 i=80 i=19917 Active i=68 i=78 i=19959 Classification i=68 i=78 i=19959 1 DiagnosticsLevel i=68 i=78 i=19959 1 TimeFirstChange i=68 i=78 i=19959 LiveValues i=19964 i=19966 i=58 i=78 i=19903 ConfiguredDataSetReaders i=19965 i=63 i=78 i=19948 DiagnosticsLevel i=68 i=78 i=19964 0 OperationalDataSetReaders i=19967 i=63 i=78 i=19948 DiagnosticsLevel i=68 i=78 i=19966 0 PubSubDiagnosticsDataSetWriterType i=19982 i=20013 i=19677 Counters i=19983 i=19988 i=19993 i=19998 i=20003 i=20008 i=20014 i=58 i=78 i=19968 StateError i=19984 i=19985 i=19986 i=19987 i=19725 i=78 i=19982 Active i=68 i=78 i=19983 Classification i=68 i=78 i=19983 1 DiagnosticsLevel i=68 i=78 i=19983 0 TimeFirstChange i=68 i=78 i=19983 StateOperationalByMethod i=19989 i=19990 i=19991 i=19992 i=19725 i=78 i=19982 Active i=68 i=78 i=19988 Classification i=68 i=78 i=19988 0 DiagnosticsLevel i=68 i=78 i=19988 0 TimeFirstChange i=68 i=78 i=19988 StateOperationalByParent i=19994 i=19995 i=19996 i=19997 i=19725 i=78 i=19982 Active i=68 i=78 i=19993 Classification i=68 i=78 i=19993 0 DiagnosticsLevel i=68 i=78 i=19993 0 TimeFirstChange i=68 i=78 i=19993 StateOperationalFromError i=19999 i=20000 i=20001 i=20002 i=19725 i=78 i=19982 Active i=68 i=78 i=19998 Classification i=68 i=78 i=19998 0 DiagnosticsLevel i=68 i=78 i=19998 0 TimeFirstChange i=68 i=78 i=19998 StatePausedByParent i=20004 i=20005 i=20006 i=20007 i=19725 i=78 i=19982 Active i=68 i=78 i=20003 Classification i=68 i=78 i=20003 0 DiagnosticsLevel i=68 i=78 i=20003 0 TimeFirstChange i=68 i=78 i=20003 StateDisabledByMethod i=20009 i=20010 i=20011 i=20012 i=19725 i=78 i=19982 Active i=68 i=78 i=20008 Classification i=68 i=78 i=20008 0 DiagnosticsLevel i=68 i=78 i=20008 0 TimeFirstChange i=68 i=78 i=20008 FailedDataSetMessages i=20015 i=20016 i=20017 i=20018 i=19725 i=78 i=19982 Active i=68 i=78 i=20014 Classification i=68 i=78 i=20014 1 DiagnosticsLevel i=68 i=78 i=20014 0 TimeFirstChange i=68 i=78 i=20014 LiveValues i=20019 i=20021 i=20023 i=20025 i=58 i=78 i=19968 MessageSequenceNumber i=20020 i=63 i=80 i=20013 DiagnosticsLevel i=68 i=78 i=20019 2 StatusCode i=20022 i=63 i=80 i=20013 DiagnosticsLevel i=68 i=78 i=20021 2 MajorVersion i=20024 i=63 i=80 i=20013 DiagnosticsLevel i=68 i=78 i=20023 2 MinorVersion i=20026 i=63 i=80 i=20013 DiagnosticsLevel i=68 i=78 i=20025 2 PubSubDiagnosticsDataSetReaderType i=20041 i=20072 i=19677 Counters i=20042 i=20047 i=20052 i=20057 i=20062 i=20067 i=20073 i=20078 i=58 i=78 i=20027 StateError i=20043 i=20044 i=20045 i=20046 i=19725 i=78 i=20041 Active i=68 i=78 i=20042 Classification i=68 i=78 i=20042 1 DiagnosticsLevel i=68 i=78 i=20042 0 TimeFirstChange i=68 i=78 i=20042 StateOperationalByMethod i=20048 i=20049 i=20050 i=20051 i=19725 i=78 i=20041 Active i=68 i=78 i=20047 Classification i=68 i=78 i=20047 0 DiagnosticsLevel i=68 i=78 i=20047 0 TimeFirstChange i=68 i=78 i=20047 StateOperationalByParent i=20053 i=20054 i=20055 i=20056 i=19725 i=78 i=20041 Active i=68 i=78 i=20052 Classification i=68 i=78 i=20052 0 DiagnosticsLevel i=68 i=78 i=20052 0 TimeFirstChange i=68 i=78 i=20052 StateOperationalFromError i=20058 i=20059 i=20060 i=20061 i=19725 i=78 i=20041 Active i=68 i=78 i=20057 Classification i=68 i=78 i=20057 0 DiagnosticsLevel i=68 i=78 i=20057 0 TimeFirstChange i=68 i=78 i=20057 StatePausedByParent i=20063 i=20064 i=20065 i=20066 i=19725 i=78 i=20041 Active i=68 i=78 i=20062 Classification i=68 i=78 i=20062 0 DiagnosticsLevel i=68 i=78 i=20062 0 TimeFirstChange i=68 i=78 i=20062 StateDisabledByMethod i=20068 i=20069 i=20070 i=20071 i=19725 i=78 i=20041 Active i=68 i=78 i=20067 Classification i=68 i=78 i=20067 0 DiagnosticsLevel i=68 i=78 i=20067 0 TimeFirstChange i=68 i=78 i=20067 FailedDataSetMessages i=20074 i=20075 i=20076 i=20077 i=19725 i=78 i=20041 Active i=68 i=78 i=20073 Classification i=68 i=78 i=20073 1 DiagnosticsLevel i=68 i=78 i=20073 0 TimeFirstChange i=68 i=78 i=20073 DecryptionErrors i=20079 i=20080 i=20081 i=20082 i=19725 i=80 i=20041 Active i=68 i=78 i=20078 Classification i=68 i=78 i=20078 1 DiagnosticsLevel i=68 i=78 i=20078 1 TimeFirstChange i=68 i=78 i=20078 LiveValues i=20083 i=20085 i=20087 i=20089 i=20091 i=20093 i=58 i=78 i=20027 MessageSequenceNumber i=20084 i=63 i=80 i=20072 DiagnosticsLevel i=68 i=78 i=20083 2 StatusCode i=20086 i=63 i=80 i=20072 DiagnosticsLevel i=68 i=78 i=20085 2 MajorVersion i=20088 i=63 i=80 i=20072 DiagnosticsLevel i=68 i=78 i=20087 2 MinorVersion i=20090 i=63 i=80 i=20072 DiagnosticsLevel i=68 i=78 i=20089 2 SecurityTokenID i=20092 i=63 i=80 i=20072 DiagnosticsLevel i=68 i=78 i=20091 2 TimeToNextTokenID i=20094 i=63 i=80 i=20072 DiagnosticsLevel i=68 i=78 i=20093 2 PubSubStatusEventType i=15545 i=15546 i=15547 i=2130 ConnectionId i=68 i=78 i=15535 GroupId i=68 i=78 i=15535 State i=68 i=78 i=15535 PubSubTransportLimitsExceedEventType i=15561 i=15562 i=15535 Actual i=68 i=78 i=15548 Maximum i=68 i=78 i=15548 PubSubCommunicationFailureEventType i=15576 i=15535 Error i=68 i=78 i=15563 UadpWriterGroupMessageType i=21106 i=21107 i=21108 i=21109 i=21110 i=17998 GroupVersion i=68 i=78 i=21105 DataSetOrdering i=68 i=78 i=21105 NetworkMessageContentMask i=68 i=78 i=21105 SamplingOffset i=68 i=80 i=21105 PublishingOffset i=68 i=78 i=21105 UadpDataSetWriterMessageType i=21112 i=21113 i=21114 i=21115 i=21096 DataSetMessageContentMask i=68 i=78 i=21111 ConfiguredSize i=68 i=78 i=21111 NetworkMessageNumber i=68 i=78 i=21111 DataSetOffset i=68 i=78 i=21111 UadpDataSetReaderMessageType i=21117 i=21118 i=21119 i=17477 i=21120 i=21121 i=21122 i=21123 i=21124 i=21125 i=21104 GroupVersion i=68 i=78 i=21116 DataSetOrdering i=68 i=78 i=21116 NetworkMessageNumber i=68 i=78 i=21116 DataSetOffset i=68 i=78 i=21116 DataSetClassId i=68 i=78 i=21116 NetworkMessageContentMask i=68 i=78 i=21116 DataSetMessageContentMask i=68 i=78 i=21116 PublishingInterval i=68 i=78 i=21116 ProcessingOffset i=68 i=78 i=21116 ReceiveOffset i=68 i=78 i=21116 JsonWriterGroupMessageType i=21127 i=17998 NetworkMessageContentMask i=68 i=78 i=21126 JsonDataSetWriterMessageType i=21129 i=21096 DataSetMessageContentMask i=68 i=78 i=21128 JsonDataSetReaderMessageType i=21131 i=21132 i=21104 NetworkMessageContentMask i=68 i=78 i=21130 DataSetMessageContentMask i=68 i=78 i=21130 DatagramConnectionTransportType i=15072 i=17721 DiscoveryAddress i=15154 i=21145 i=78 i=15064 NetworkInterface i=63 i=78 i=15072 DatagramWriterGroupTransportType i=21134 i=21135 i=17997 MessageRepeatCount i=68 i=78 i=21133 MessageRepeatDelay i=68 i=78 i=21133 BrokerConnectionTransportType i=15156 i=15178 i=17997 ResourceUri i=68 i=78 i=15155 AuthenticationProfileUri i=68 i=78 i=15155 BrokerWriterGroupTransportType i=21137 i=15246 i=15247 i=15249 i=17997 QueueName i=68 i=78 i=21136 ResourceUri i=68 i=78 i=21136 AuthenticationProfileUri i=68 i=78 i=21136 RequestedDeliveryGuarantee i=68 i=78 i=21136 BrokerDataSetWriterTransportType i=21139 i=21140 i=15250 i=15251 i=15330 i=21141 i=15305 QueueName i=68 i=78 i=21138 MetaDataQueueName i=68 i=78 i=21138 ResourceUri i=68 i=78 i=21138 AuthenticationProfileUri i=68 i=78 i=21138 RequestedDeliveryGuarantee i=68 i=78 i=21138 MetaDataUpdateTime i=68 i=78 i=21138 BrokerDataSetReaderTransportType i=21143 i=15334 i=15419 i=15420 i=21144 i=15319 QueueName i=68 i=78 i=21142 ResourceUri i=68 i=78 i=21142 AuthenticationProfileUri i=68 i=78 i=21142 RequestedDeliveryGuarantee i=68 i=78 i=21142 MetaDataQueueName i=68 i=78 i=21142 NetworkAddressType i=21146 i=58 NetworkInterface i=63 i=78 i=21145 NetworkAddressUrlType i=21149 i=21145 Url i=63 i=78 i=21147 IdType The type of identifier used in a node id. i=7591 i=29 The identifier is a numeric value. 0 is a null value. The identifier is a string value. An empty string is a null value. The identifier is a 16 byte structure. 16 zero bytes is a null value. The identifier is an array of bytes. A zero length array is a null value. EnumStrings i=68 i=78 i=256 Numeric String Guid Opaque NodeClass A mask specifying the class of the node. i=11878 i=29 No classes are selected. The node is an object. The node is a variable. The node is a method. The node is an object type. The node is an variable type. The node is a reference type. The node is a data type. The node is a view. EnumValues i=68 i=78 i=257 i=7616 0 Unspecified No classes are selected. i=7616 1 Object The node is an object. i=7616 2 Variable The node is a variable. i=7616 4 Method The node is a method. i=7616 8 ObjectType The node is an object type. i=7616 16 VariableType The node is an variable type. i=7616 32 ReferenceType The node is a reference type. i=7616 64 DataType The node is a data type. i=7616 128 View The node is a view. PermissionType i=15030 i=5 OptionSetValues i=68 i=78 i=94 Browse ReadRolePermissions WriteAttribute WriteRolePermissions WriteHistorizing Read Write ReadHistory InsertHistory ModifyHistory DeleteHistory ReceiveEvents Call AddReference RemoveReference DeleteNode AddNode AccessLevelType i=15032 i=3 OptionSetValues i=68 i=78 i=15031 CurrentRead CurrentWrite HistoryRead Reserved HistoryWrite StatusWrite TimestampWrite AccessLevelExType i=15407 i=7 OptionSetValues i=68 i=78 i=15406 CurrentRead CurrentWrite HistoryRead Reserved HistoryWrite StatusWrite TimestampWrite Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved NonatomicRead NonatomicWrite WriteFullArrayOnly EventNotifierType i=15034 i=7 OptionSetValues i=68 i=78 i=15033 SubscribeToEvents Reserved HistoryRead HistoryWrite AccessRestrictionType i=15035 i=7 OptionSetValues i=68 i=78 i=95 SigningRequired EncryptionRequired SessionRequired RolePermissionType i=22 DataTypeDefinition i=22 StructureType i=14528 i=29 EnumStrings i=68 i=78 i=98 Structure StructureWithOptionalFields Union StructureField i=22 StructureDefinition i=97 EnumDefinition i=97 Argument An argument for a method. i=22 The name of the argument. The data type of the argument. Whether the argument is an array type and the rank of the array if it is. The number of dimensions if the argument is an array type and one or more dimensions have a fixed length. The description for the argument. EnumValueType A mapping between a value of an enumerated type and a name and description. i=22 The value of the enumeration. Human readable name for the value. A description of the value. EnumField i=7594 OptionSet This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask. i=22 Array of bytes representing the bits in the option set. Array of bytes with same size as value representing the valid bits in the value parameter. Union This abstract DataType is the base DataType for all union DataTypes. i=22 NormalizedString A string normalized based on the rules in the unicode specification. i=12 DecimalString An arbitraty numeric value. i=12 DurationString A period of time formatted as defined in ISO 8601-2000. i=12 TimeString A time formatted as defined in ISO 8601-2000. i=12 DateString A date formatted as defined in ISO 8601-2000. i=12 Duration A period of time measured in milliseconds. i=11 UtcTime A date/time value specified in Universal Coordinated Time (UTC). i=13 LocaleId An identifier for a user locale. i=12 TimeZoneDataType i=22 IntegerId A numeric identifier for an object. i=7 ApplicationType The types of applications. i=7597 i=29 The application is a server. The application is a client. The application is a client and a server. The application is a discovery server. EnumStrings i=68 i=78 i=307 Server Client ClientAndServer DiscoveryServer ApplicationDescription Describes an application and how to find it. i=22 The globally unique identifier for the application. The globally unique identifier for the product. The name of application. The type of application. The globally unique identifier for the server that is acting as a gateway for the server. The globally unique identifier for the discovery profile supported by the server. The URLs for the server's discovery endpoints. VersionTime i=7 ServerOnNetwork i=22 ApplicationInstanceCertificate A certificate for an instance of an application. i=15 MessageSecurityMode The type of security to use on a message. i=7595 i=29 An invalid mode. No security is used. The message is signed. The message is signed and encrypted. EnumStrings i=68 i=78 i=302 Invalid None Sign SignAndEncrypt UserTokenType The possible user token types. i=7596 i=29 An anonymous user. A user identified by a user name and password. A user identified by an X509 certificate. A user identified by WS-Security XML token. EnumStrings i=68 i=78 i=303 Anonymous UserName Certificate IssuedToken UserTokenPolicy Describes a user token that can be used with a server. i=22 A identifier for the policy assigned by the server. The type of user token. The type of issued token. The endpoint or any other information need to contruct an issued token URL. The security policy to use when encrypting or signing the user token. EndpointDescription The description of a endpoint that can be used to access a server. i=22 The network endpoint to use when connecting to the server. The description of the server. The server's application certificate. The security mode that must be used when connecting to the endpoint. The security policy to use when connecting to the endpoint. The user identity tokens that can be used with this endpoint. The transport profile to use when connecting to the endpoint. A server assigned value that indicates how secure the endpoint is relative to other server endpoints. RegisteredServer The information required to register a server with a discovery server. i=22 The globally unique identifier for the server. The globally unique identifier for the product. The name of server in multiple lcoales. The type of server. The globally unique identifier for the server that is acting as a gateway for the server. The URLs for the server's discovery endpoints. A path to a file that is deleted when the server is no longer accepting connections. If FALSE the server will save the registration information to a persistent datastore. DiscoveryConfiguration A base type for discovery configuration information. i=22 MdnsDiscoveryConfiguration The discovery information needed for mDNS registration. i=12890 The name for server that is broadcast via mDNS. The server capabilities that are broadcast via mDNS. SecurityTokenRequestType Indicates whether a token if being created or renewed. i=7598 i=29 The channel is being created. The channel is being renewed. EnumStrings i=68 i=78 i=315 Issue Renew SignedSoftwareCertificate A software certificate with a digital signature. i=22 The data of the certificate. The digital signature. SessionAuthenticationToken A unique identifier for a session used to authenticate requests. i=17 UserIdentityToken A base type for a user identity token. i=22 The policy id specified in a user token policy for the endpoint being used. AnonymousIdentityToken A token representing an anonymous user. i=316 UserNameIdentityToken A token representing a user identified by a user name and password. i=316 The user name. The password encrypted with the server certificate. The algorithm used to encrypt the password. X509IdentityToken A token representing a user identified by an X509 certificate. i=316 The certificate. IssuedIdentityToken A token representing a user identified by a WS-Security XML token. i=316 The XML token encrypted with the server certificate. The algorithm used to encrypt the certificate. NodeAttributesMask The bits used to specify default attributes for a new node. i=11881 i=29 No attribuites provided. The access level attribute is specified. The array dimensions attribute is specified. The browse name attribute is specified. The contains no loops attribute is specified. The data type attribute is specified. The description attribute is specified. The display name attribute is specified. The event notifier attribute is specified. The executable attribute is specified. The historizing attribute is specified. The inverse name attribute is specified. The is abstract attribute is specified. The minimum sampling interval attribute is specified. The node class attribute is specified. The node id attribute is specified. The symmetric attribute is specified. The user access level attribute is specified. The user executable attribute is specified. The user write mask attribute is specified. The value rank attribute is specified. The write mask attribute is specified. The value attribute is specified. The write mask attribute is specified. The write mask attribute is specified. The write mask attribute is specified. All attributes are specified. All base attributes are specified. All object attributes are specified. All object type attributes are specified. All variable attributes are specified. All variable type attributes are specified. All method attributes are specified. All reference type attributes are specified. All view attributes are specified. EnumValues i=68 i=78 i=348 i=7616 0 None No attribuites provided. i=7616 1 AccessLevel The access level attribute is specified. i=7616 2 ArrayDimensions The array dimensions attribute is specified. i=7616 4 BrowseName The browse name attribute is specified. i=7616 8 ContainsNoLoops The contains no loops attribute is specified. i=7616 16 DataType The data type attribute is specified. i=7616 32 Description The description attribute is specified. i=7616 64 DisplayName The display name attribute is specified. i=7616 128 EventNotifier The event notifier attribute is specified. i=7616 256 Executable The executable attribute is specified. i=7616 512 Historizing The historizing attribute is specified. i=7616 1024 InverseName The inverse name attribute is specified. i=7616 2048 IsAbstract The is abstract attribute is specified. i=7616 4096 MinimumSamplingInterval The minimum sampling interval attribute is specified. i=7616 8192 NodeClass The node class attribute is specified. i=7616 16384 NodeId The node id attribute is specified. i=7616 32768 Symmetric The symmetric attribute is specified. i=7616 65536 UserAccessLevel The user access level attribute is specified. i=7616 131072 UserExecutable The user executable attribute is specified. i=7616 262144 UserWriteMask The user write mask attribute is specified. i=7616 524288 ValueRank The value rank attribute is specified. i=7616 1048576 WriteMask The write mask attribute is specified. i=7616 2097152 Value The value attribute is specified. i=7616 4194304 DataTypeDefinition The write mask attribute is specified. i=7616 8388608 RolePermissions The write mask attribute is specified. i=7616 16777216 AccessRestrictions The write mask attribute is specified. i=7616 33554431 All All attributes are specified. i=7616 26501220 BaseNode All base attributes are specified. i=7616 26501348 Object All object attributes are specified. i=7616 26503268 ObjectType All object type attributes are specified. i=7616 26571383 Variable All variable attributes are specified. i=7616 28600438 VariableType All variable type attributes are specified. i=7616 26632548 Method All method attributes are specified. i=7616 26537060 ReferenceType All reference type attributes are specified. i=7616 26501356 View All view attributes are specified. AddNodesItem A request to add a node to the server address space. i=22 The node id for the parent node. The type of reference from the parent to the new node. The node id requested by the client. If null the server must provide one. The browse name for the new node. The class of the new node. The default attributes for the new node. The type definition for the new node. AddReferencesItem A request to add a reference to the server address space. i=22 The source of the reference. The type of reference. If TRUE the reference is a forward reference. The URI of the server containing the target (if in another server). The target of the reference. The node class of the target (if known). DeleteNodesItem A request to delete a node to the server address space. i=22 The id of the node to delete. If TRUE all references to the are deleted as well. DeleteReferencesItem A request to delete a node from the server address space. i=22 The source of the reference to delete. The type of reference to delete. If TRUE the a forward reference is deleted. The target of the reference to delete. If TRUE the reference is deleted in both directions. AttributeWriteMask Define bits used to indicate which attributes are writable. i=15036 i=7 No attributes are writable. The access level attribute is writable. The array dimensions attribute is writable. The browse name attribute is writable. The contains no loops attribute is writable. The data type attribute is writable. The description attribute is writable. The display name attribute is writable. The event notifier attribute is writable. The executable attribute is writable. The historizing attribute is writable. The inverse name attribute is writable. The is abstract attribute is writable. The minimum sampling interval attribute is writable. The node class attribute is writable. The node id attribute is writable. The symmetric attribute is writable. The user access level attribute is writable. The user executable attribute is writable. The user write mask attribute is writable. The value rank attribute is writable. The write mask attribute is writable. The value attribute is writable. The DataTypeDefinition attribute is writable. The RolePermissions attribute is writable. The AccessRestrictions attribute is writable. The AccessLevelEx attribute is writable. OptionSetValues i=68 i=78 i=347 AccessLevel ArrayDimensions BrowseName ContainsNoLoops DataType Description DisplayName EventNotifier Executable Historizing InverseName IsAbstract MinimumSamplingInterval NodeClass NodeId Symmetric UserAccessLevel UserExecutable UserWriteMask ValueRank WriteMask ValueForVariableType DataTypeDefinition RolePermissions AccessRestrictions AccessLevelEx ContinuationPoint An identifier for a suspended query or browse operation. i=15 RelativePathElement An element in a relative path. i=22 The type of reference to follow. If TRUE the reverse reference is followed. If TRUE then subtypes of the reference type are followed. The browse name of the target. RelativePath A relative path constructed from reference types and browse names. i=22 A list of elements in the path. Counter A monotonically increasing value. i=7 NumericRange Specifies a range of array indexes. i=12 Time A time value specified as HH:MM:SS.SSS. i=12 Date A date value. i=13 EndpointConfiguration i=22 FilterOperator i=7605 i=29 EnumStrings i=68 i=78 i=576 Equals IsNull GreaterThan LessThan GreaterThanOrEqual LessThanOrEqual Like Not Between InList And Or Cast InView OfType RelatedTo BitwiseAnd BitwiseOr ContentFilterElement i=22 ContentFilter i=22 FilterOperand i=22 ElementOperand i=589 LiteralOperand i=589 AttributeOperand i=589 SimpleAttributeOperand i=589 HistoryEvent i=22 HistoryUpdateType i=11884 i=29 EnumValues i=68 i=78 i=11234 i=7616 1 Insert i=7616 2 Replace i=7616 3 Update i=7616 4 Delete PerformUpdateType i=11885 i=29 EnumValues i=68 i=78 i=11293 i=7616 1 Insert i=7616 2 Replace i=7616 3 Update i=7616 4 Remove MonitoringFilter i=22 EventFilter i=719 AggregateConfiguration i=22 HistoryEventFieldList i=22 BuildInfo i=22 RedundancySupport i=7611 i=29 EnumStrings i=68 i=78 i=851 None Cold Warm Hot Transparent HotAndMirrored ServerState i=7612 i=29 EnumStrings i=68 i=78 i=852 Running Failed NoConfiguration Suspended Shutdown Test CommunicationFault Unknown RedundantServerDataType i=22 EndpointUrlListDataType i=22 NetworkGroupDataType i=22 SamplingIntervalDiagnosticsDataType i=22 ServerDiagnosticsSummaryDataType i=22 ServerStatusDataType i=22 SessionDiagnosticsDataType i=22 SessionSecurityDiagnosticsDataType i=22 ServiceCounterDataType i=22 StatusResult i=22 SubscriptionDiagnosticsDataType i=22 ModelChangeStructureDataType i=22 SemanticChangeStructureDataType i=22 Range i=22 EUInformation i=22 AxisScaleEnumeration i=12078 i=29 EnumStrings i=68 i=78 i=12077 Linear Log Ln ComplexNumberType i=22 DoubleComplexNumberType i=22 AxisInformation i=22 XVType i=22 ProgramDiagnosticDataType i=22 ProgramDiagnostic2DataType i=22 Annotation i=22 ExceptionDeviationFormat i=7614 i=29 EnumStrings i=68 i=78 i=890 AbsoluteValue PercentOfValue PercentOfRange PercentOfEURange Unknown Default Binary i=14533 i=14873 i=76 Default Binary i=15528 i=15734 i=76 Default Binary i=15634 i=15738 i=76 Default Binary i=12554 i=12681 i=76 Default Binary i=15534 i=15741 i=76 Default Binary i=14525 i=14855 i=76 Default Binary i=15487 i=15599 i=76 Default Binary i=15488 i=15602 i=76 Default Binary i=15005 i=15501 i=76 Default Binary i=15006 i=15521 i=76 Default Binary i=14523 i=14849 i=76 Default Binary i=14524 i=14852 i=76 Default Binary i=14593 i=14876 i=76 Default Binary i=15578 i=15766 i=76 Default Binary i=15580 i=15769 i=76 Default Binary i=14273 i=14324 i=76 Default Binary i=15581 i=15772 i=76 Default Binary i=15582 i=15775 i=76 Default Binary i=15597 i=15778 i=76 Default Binary i=15598 i=15781 i=76 Default Binary i=15605 i=15784 i=76 Default Binary i=15609 i=15787 i=76 Default Binary i=15480 i=21156 i=76 Default Binary i=15611 i=15793 i=76 Default Binary i=15616 i=15854 i=76 Default Binary i=15617 i=15857 i=76 Default Binary i=15618 i=15860 i=76 Default Binary i=15502 i=21159 i=76 Default Binary i=15510 i=21162 i=76 Default Binary i=15520 i=21165 i=76 Default Binary i=15621 i=15866 i=76 Default Binary i=15622 i=15869 i=76 Default Binary i=15623 i=15872 i=76 Default Binary i=15628 i=15877 i=76 Default Binary i=15629 i=15880 i=76 Default Binary i=15630 i=15883 i=76 Default Binary i=15631 i=15886 i=76 Default Binary i=14744 i=21002 i=76 Default Binary i=15635 i=15889 i=76 Default Binary i=15530 i=21168 i=76 Default Binary i=15645 i=15895 i=76 Default Binary i=15652 i=15898 i=76 Default Binary i=15653 i=15919 i=76 Default Binary i=15657 i=15922 i=76 Default Binary i=15664 i=15925 i=76 Default Binary i=15665 i=15931 i=76 Default Binary i=17467 i=17469 i=76 Default Binary i=15532 i=21171 i=76 Default Binary i=15007 i=15524 i=76 Default Binary i=15667 i=15940 i=76 Default Binary i=15669 i=15943 i=76 Default Binary i=15670 i=15946 i=76 Default Binary i=96 i=16131 i=76 Default Binary i=97 i=18178 i=76 Default Binary i=101 i=18181 i=76 Default Binary i=99 i=18184 i=76 Default Binary i=100 i=18187 i=76 Default Binary i=296 i=7650 i=76 Default Binary i=7594 i=7656 i=76 Default Binary i=102 i=14870 i=76 Default Binary i=12755 i=12767 i=76 Default Binary i=12756 i=12770 i=76 Default Binary i=8912 i=8914 i=76 Default Binary i=308 i=7665 i=76 Default Binary i=12189 i=12213 i=76 Default Binary i=304 i=7662 i=76 Default Binary i=312 i=7668 i=76 Default Binary i=432 i=7782 i=76 Default Binary i=12890 i=12902 i=76 Default Binary i=12891 i=12905 i=76 Default Binary i=344 i=7698 i=76 Default Binary i=316 i=7671 i=76 Default Binary i=319 i=7674 i=76 Default Binary i=322 i=7677 i=76 Default Binary i=325 i=7680 i=76 Default Binary i=938 i=7683 i=76 Default Binary i=376 i=7728 i=76 Default Binary i=379 i=7731 i=76 Default Binary i=382 i=7734 i=76 Default Binary i=385 i=7737 i=76 Default Binary i=537 i=12718 i=76 Default Binary i=540 i=12721 i=76 Default Binary i=331 i=7686 i=76 Default Binary i=583 i=7929 i=76 Default Binary i=586 i=7932 i=76 Default Binary i=589 i=7935 i=76 Default Binary i=592 i=7938 i=76 Default Binary i=595 i=7941 i=76 Default Binary i=598 i=7944 i=76 Default Binary i=601 i=7947 i=76 Default Binary i=659 i=8004 i=76 Default Binary i=719 i=8067 i=76 Default Binary i=725 i=8073 i=76 Default Binary i=948 i=8076 i=76 Default Binary i=920 i=8172 i=76 Default Binary i=338 i=7692 i=76 Default Binary i=853 i=8208 i=76 Default Binary i=11943 i=11959 i=76 Default Binary i=11944 i=11962 i=76 Default Binary i=856 i=8211 i=76 Default Binary i=859 i=8214 i=76 Default Binary i=862 i=8217 i=76 Default Binary i=865 i=8220 i=76 Default Binary i=868 i=8223 i=76 Default Binary i=871 i=8226 i=76 Default Binary i=299 i=7659 i=76 Default Binary i=874 i=8229 i=76 Default Binary i=877 i=8232 i=76 Default Binary i=897 i=8235 i=76 Default Binary i=884 i=8238 i=76 Default Binary i=887 i=8241 i=76 Default Binary i=12171 i=12183 i=76 Default Binary i=12172 i=12186 i=76 Default Binary i=12079 i=12091 i=76 Default Binary i=12080 i=12094 i=76 Default Binary i=894 i=8247 i=76 Default Binary i=15396 i=15398 i=76 Default Binary i=891 i=8244 i=76 Opc.Ua i=7619 i=15037 i=14873 i=15734 i=15738 i=12681 i=15741 i=14855 i=15599 i=15602 i=15501 i=15521 i=14849 i=14852 i=14876 i=15766 i=15769 i=14324 i=15772 i=15775 i=15778 i=15781 i=15784 i=15787 i=21156 i=15793 i=15854 i=15857 i=15860 i=21159 i=21162 i=21165 i=15866 i=15869 i=15872 i=15877 i=15880 i=15883 i=15886 i=21002 i=15889 i=21168 i=15895 i=15898 i=15919 i=15922 i=15925 i=15931 i=17469 i=21171 i=15524 i=15940 i=15943 i=15946 i=16131 i=18178 i=18181 i=18184 i=18187 i=7650 i=7656 i=14870 i=12767 i=12770 i=8914 i=7665 i=12213 i=7662 i=7668 i=7782 i=12902 i=12905 i=7698 i=7671 i=7674 i=7677 i=7680 i=7683 i=7728 i=7731 i=7734 i=7737 i=12718 i=12721 i=7686 i=7929 i=7932 i=7935 i=7938 i=7941 i=7944 i=7947 i=8004 i=8067 i=8073 i=8076 i=8172 i=7692 i=8208 i=11959 i=11962 i=8211 i=8214 i=8217 i=8220 i=8223 i=8226 i=7659 i=8229 i=8232 i=8235 i=8238 i=8241 i=12183 i=12186 i=12091 i=12094 i=8247 i=15398 i=8244 i=93 i=72 PG9wYzpUeXBlRGljdGlvbmFyeQ0KICB4bWxuczpvcGM9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9y Zy9CaW5hcnlTY2hlbWEvIg0KICB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1M U2NoZW1hLWluc3RhbmNlIg0KICB4bWxuczp1YT0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VB LyINCiAgeG1sbnM6dG5zPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvVUEvIg0KICBEZWZhdWx0 Qnl0ZU9yZGVyPSJMaXR0bGVFbmRpYW4iDQogIFRhcmdldE5hbWVzcGFjZT0iaHR0cDovL29wY2Zv dW5kYXRpb24ub3JnL1VBLyINCj4NCg0KICA8b3BjOkltcG9ydCBOYW1lc3BhY2U9Imh0dHA6Ly9v cGNmb3VuZGF0aW9uLm9yZy9CaW5hcnlTY2hlbWEvIiAvPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iWG1sRWxlbWVudCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkFuIFhNTCBlbGVt ZW50IGVuY29kZWQgYXMgYSBVVEYtOCBzdHJpbmcuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ikxlbmd0aCIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0ib3BjOkNoYXIiIExlbmd0aEZpZWxkPSJMZW5n dGgiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUg TmFtZT0iTm9kZUlkVHlwZSIgTGVuZ3RoSW5CaXRzPSI2Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+VGhlIHBvc3NpYmxlIGVuY29kaW5ncyBmb3IgYSBOb2RlSWQgdmFsdWUuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUd29CeXRlIiBWYWx1ZT0i MCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJGb3VyQnl0ZSIgVmFsdWU9IjEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTnVtZXJpYyIgVmFsdWU9IjIiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU3RyaW5nIiBWYWx1ZT0iMyIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJHdWlkIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJCeXRlU3RyaW5nIiBWYWx1ZT0iNSIgLz4NCiAgPC9vcGM6 RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUd29CeXRlTm9k ZUlkIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklkZW50aWZpZXIiIFR5cGVOYW1lPSJvcGM6Qnl0 ZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJGb3VyQnl0ZU5vZGVJZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VJbmRl eCIgVHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSWRlbnRpZmll ciIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTnVtZXJpY05vZGVJZCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOYW1lc3BhY2VJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJZGVudGlmaWVyIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTdHJpbmdO b2RlSWQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTmFtZXNwYWNlSW5kZXgiIFR5cGVOYW1lPSJv cGM6VUludDE2IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSWRlbnRpZmllciIgVHlwZU5hbWU9 Im9wYzpDaGFyQXJyYXkiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iR3VpZE5vZGVJZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1l c3BhY2VJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJJZGVudGlmaWVyIiBUeXBlTmFtZT0ib3BjOkd1aWQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnl0ZVN0cmluZ05vZGVJZCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MTYi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJZGVudGlmaWVyIiBUeXBlTmFtZT0ib3BjOkJ5dGVT dHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iTm9kZUlkIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QW4gaWRlbnRpZmllciBm b3IgYSBub2RlIGluIGEgVUEgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlv bj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZFR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWRU eXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzZXJ2ZWQxIiBUeXBlTmFtZT0ib3BjOkJp dCIgTGVuZ3RoPSIyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHdvQnl0ZSIgVHlwZU5hbWU9 InVhOlR3b0J5dGVOb2RlSWQiIFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0i MCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZvdXJCeXRlIiBUeXBlTmFtZT0idWE6Rm91ckJ5 dGVOb2RlSWQiIFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0iMSIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik51bWVyaWMiIFR5cGVOYW1lPSJ1YTpOdW1lcmljTm9kZUlkIiBT d2l0Y2hGaWVsZD0iTm9kZUlkVHlwZSIgU3dpdGNoVmFsdWU9IjIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJTdHJpbmciIFR5cGVOYW1lPSJ1YTpTdHJpbmdOb2RlSWQiIFN3aXRjaEZpZWxkPSJO b2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0iMyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikd1aWQi IFR5cGVOYW1lPSJ1YTpHdWlkTm9kZUlkIiBTd2l0Y2hGaWVsZD0iTm9kZUlkVHlwZSIgU3dpdGNo VmFsdWU9IjQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCeXRlU3RyaW5nIiBUeXBlTmFtZT0i dWE6Qnl0ZVN0cmluZ05vZGVJZCIgU3dpdGNoRmllbGQ9Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVl PSI1IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBl IE5hbWU9IkV4cGFuZGVkTm9kZUlkIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QW4gaWRlbnRp ZmllciBmb3IgYSBub2RlIGluIGEgVUEgc2VydmVyIGFkZHJlc3Mgc3BhY2UgcXVhbGlmaWVkIHdp dGggYSBjb21wbGV0ZSBuYW1lc3BhY2Ugc3RyaW5nLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb2RlSWRUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkVHlwZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckluZGV4U3BlY2lmaWVkIiBUeXBlTmFtZT0ib3Bj OkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVSSVNwZWNpZmllZCIgVHlw ZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUd29CeXRlIiBUeXBlTmFt ZT0idWE6VHdvQnl0ZU5vZGVJZCIgU3dpdGNoRmllbGQ9Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVl PSIwIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRm91ckJ5dGUiIFR5cGVOYW1lPSJ1YTpGb3Vy Qnl0ZU5vZGVJZCIgU3dpdGNoRmllbGQ9Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVlPSIxIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTnVtZXJpYyIgVHlwZU5hbWU9InVhOk51bWVyaWNOb2RlSWQi IFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0Y2hWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlN0cmluZyIgVHlwZU5hbWU9InVhOlN0cmluZ05vZGVJZCIgU3dpdGNoRmllbGQ9 Ik5vZGVJZFR5cGUiIFN3aXRjaFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iR3Vp ZCIgVHlwZU5hbWU9InVhOkd1aWROb2RlSWQiIFN3aXRjaEZpZWxkPSJOb2RlSWRUeXBlIiBTd2l0 Y2hWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJ5dGVTdHJpbmciIFR5cGVOYW1l PSJ1YTpCeXRlU3RyaW5nTm9kZUlkIiBTd2l0Y2hGaWVsZD0iTm9kZUlkVHlwZSIgU3dpdGNoVmFs dWU9IjUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VVUkkiIFR5cGVOYW1lPSJv cGM6Q2hhckFycmF5IiBTd2l0Y2hGaWVsZD0iTmFtZXNwYWNlVVJJU3BlY2lmaWVkIi8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJJbmRleCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFN3aXRj aEZpZWxkPSJTZXJ2ZXJJbmRleFNwZWNpZmllZCIvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iU3RhdHVzQ29kZSIgTGVuZ3RoSW5CaXRzPSIzMiIg Qnl0ZU9yZGVyU2lnbmlmaWNhbnQ9InRydWUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIDMy LWJpdCBzdGF0dXMgY29kZSB2YWx1ZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFx dWVUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGlhZ25vc3RpY0luZm8iPg0K ICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHJlY3Vyc2l2ZSBzdHJ1Y3R1cmUgY29udGFpbmluZyBk aWFnbm9zdGljIGluZm9ybWF0aW9uIGFzc29jaWF0ZWQgd2l0aCBhIHN0YXR1cyBjb2RlLjwvb3Bj OkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTeW1ib2xpY0lkU3BlY2lmaWVk IiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVS SVNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJM b2NhbGVTcGVjaWZpZWQiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTG9jYWxpemVkVGV4dFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJBZGRpdGlvbmFsSW5mb1NwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJbm5lclN0YXR1c0NvZGVTcGVjaWZpZWQiIFR5cGVO YW1lPSJvcGM6Qml0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5uZXJEaWFnbm9zdGljSW5m b1NwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9IjIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJTeW1ib2xpY0lkIiBUeXBlTmFtZT0ib3BjOkludDMyIiBTd2l0Y2hGaWVsZD0iU3lt Ym9saWNJZFNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVSSSIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgU3dpdGNoRmllbGQ9Ik5hbWVzcGFjZVVSSVNwZWNpZmllZCIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsZSIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgU3dp dGNoRmllbGQ9IkxvY2FsZVNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2Fs aXplZFRleHQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIFN3aXRjaEZpZWxkPSJMb2NhbGl6ZWRUZXh0 U3BlY2lmaWVkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWRkaXRpb25hbEluZm8iIFR5cGVO YW1lPSJvcGM6Q2hhckFycmF5IiBTd2l0Y2hGaWVsZD0iQWRkaXRpb25hbEluZm9TcGVjaWZpZWQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJbm5lclN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpT dGF0dXNDb2RlIiBTd2l0Y2hGaWVsZD0iSW5uZXJTdGF0dXNDb2RlU3BlY2lmaWVkIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iSW5uZXJEaWFnbm9zdGljSW5mbyIgVHlwZU5hbWU9InVhOkRpYWdu b3N0aWNJbmZvIiBTd2l0Y2hGaWVsZD0iSW5uZXJEaWFnbm9zdGljSW5mb1NwZWNpZmllZCIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJR dWFsaWZpZWROYW1lIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBzdHJpbmcgcXVhbGlmaWVk IHdpdGggYSBuYW1lc3BhY2UgaW5kZXguPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5hbWVzcGFjZUluZGV4IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpDaGFyQXJyYXkiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTG9jYWxpemVk VGV4dCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgc3RyaW5nIHF1YWxpZmllZCB3aXRoIGEg bmFtZXNwYWNlIGluZGV4Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJMb2NhbGVTcGVjaWZpZWQiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iVGV4dFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9IjYiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJMb2NhbGUiIFR5cGVOYW1lPSJvcGM6Q2hhckFycmF5IiBTd2l0Y2hG aWVsZD0iTG9jYWxlU3BlY2lmaWVkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGV4dCIgVHlw ZU5hbWU9Im9wYzpDaGFyQXJyYXkiIFN3aXRjaEZpZWxkPSJUZXh0U3BlY2lmaWVkIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFW YWx1ZSI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgdmFsdWUgd2l0aCBhbiBhc3NvY2lhdGVk IHRpbWVzdGFtcCwgYW5kIHF1YWxpdHkuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlZhbHVlU3BlY2lmaWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlN0YXR1c0NvZGVTcGVjaWZpZWQiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU291cmNlVGltZXN0YW1wU3BlY2lmaWVkIiBUeXBlTmFtZT0i b3BjOkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvdXJjZVBpY29zZWNvbmRzU3BlY2lm aWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlclRp bWVzdGFtcFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTZXJ2ZXJQaWNvc2Vjb25kc1NwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9 IjIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOlZhcmlhbnQi IFN3aXRjaEZpZWxkPSJWYWx1ZVNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0 YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBTd2l0Y2hGaWVsZD0iU3RhdHVzQ29k ZVNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvdXJjZVRpbWVzdGFtcCIgVHlw ZU5hbWU9Im9wYzpEYXRlVGltZSIgU3dpdGNoRmllbGQ9IlNvdXJjZVRpbWVzdGFtcFNwZWNpZmll ZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvdXJjZVBpY29zZWNvbmRzIiBUeXBlTmFtZT0i b3BjOlVJbnQxNiIgU3dpdGNoRmllbGQ9IlNvdXJjZVBpY29zZWNvbmRzU3BlY2lmaWVkIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyVGltZXN0YW1wIiBUeXBlTmFtZT0ib3BjOkRhdGVU aW1lIiBTd2l0Y2hGaWVsZD0iU2VydmVyVGltZXN0YW1wU3BlY2lmaWVkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyUGljb3NlY29uZHMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTd2l0 Y2hGaWVsZD0iU2VydmVyUGljb3NlY29uZHNTcGVjaWZpZWQiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBzZXJpYWxpemVkIG9iamVjdCBwcmVmaXhlZCB3aXRo IGl0cyBkYXRhIHR5cGUgaWRlbnRpZmllci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVHlwZUlkU3BlY2lmaWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkJpbmFyeUJvZHkiIFR5cGVOYW1lPSJvcGM6Qml0IiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iWG1sQm9keSIgVHlwZU5hbWU9Im9wYzpCaXQiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXNlcnZlZDEiIFR5cGVOYW1lPSJvcGM6Qml0IiBMZW5ndGg9IjUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJUeXBlSWQiIFR5cGVOYW1lPSJ1YTpFeHBhbmRlZE5vZGVJZCIg U3dpdGNoRmllbGQ9IlR5cGVJZFNwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJv ZHlMZW5ndGgiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJC b2R5IiBUeXBlTmFtZT0ib3BjOkJ5dGUiIExlbmd0aEZpZWxkPSJCb2R5TGVuZ3RoIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZhcmlh bnQiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHVuaW9uIG9mIHNldmVyYWwgdHlwZXMuPC9v cGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlZhcmlhbnRUeXBlIiBUeXBl TmFtZT0ib3BjOkJpdCIgTGVuZ3RoPSI2IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlE aW1lbnNpb25zU3BlY2lmaWVkIiBUeXBlTmFtZT0ib3BjOkJpdCIgTGVuZ3RoPSIxIi8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJBcnJheUxlbmd0aFNwZWNpZmllZCIgVHlwZU5hbWU9Im9wYzpCaXQi IExlbmd0aD0iMSIvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlMZW5ndGgiIFR5cGVOYW1l PSJvcGM6SW50MzIiIFN3aXRjaEZpZWxkPSJBcnJheUxlbmd0aFNwZWNpZmllZCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkJvb2xlYW4iIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgTGVuZ3RoRmll bGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSIx IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU0J5dGUiIFR5cGVOYW1lPSJvcGM6U0J5dGUiIExl bmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0Y2hW YWx1ZT0iMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJ5dGUiIFR5cGVOYW1lPSJvcGM6Qnl0 ZSIgTGVuZ3RoRmllbGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3 aXRjaFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW50MTYiIFR5cGVOYW1lPSJv cGM6SW50MTYiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRU eXBlIiBTd2l0Y2hWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVJbnQxNiIgVHlw ZU5hbWU9Im9wYzpVSW50MTYiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9 IlZhcmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iNSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Iklu dDMyIiBUeXBlTmFtZT0ib3BjOkludDMyIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRj aEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjYiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJVSW50MzIiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5n dGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjciIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJbnQ2NCIgVHlwZU5hbWU9Im9wYzpJbnQ2NCIgTGVuZ3RoRmllbGQ9IkFy cmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSI4IiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iVUludDY0IiBUeXBlTmFtZT0ib3BjOlVJbnQ2NCIgTGVuZ3Ro RmllbGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVl PSI5IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRmxvYXQiIFR5cGVOYW1lPSJvcGM6RmxvYXQi IExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0 Y2hWYWx1ZT0iMTAiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEb3VibGUiIFR5cGVOYW1lPSJv cGM6RG91YmxlIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50 VHlwZSIgU3dpdGNoVmFsdWU9IjExIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RyaW5nIiBU eXBlTmFtZT0ib3BjOkNoYXJBcnJheSIgTGVuZ3RoRmllbGQ9IkFycmF5TGVuZ3RoIiBTd2l0Y2hG aWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSIxMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkRhdGVUaW1lIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiBMZW5ndGhGaWVsZD0iQXJyYXlM ZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjEzIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iR3VpZCIgVHlwZU5hbWU9Im9wYzpHdWlkIiBMZW5ndGhGaWVsZD0i QXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjE0IiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQnl0ZVN0cmluZyIgVHlwZU5hbWU9Im9wYzpCeXRlU3Ry aW5nIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIg U3dpdGNoVmFsdWU9IjE1IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iWG1sRWxlbWVudCIgVHlw ZU5hbWU9InVhOlhtbEVsZW1lbnQiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmll bGQ9IlZhcmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iMTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIg U3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iMTciIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJFeHBhbmRlZE5vZGVJZCIgVHlwZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiBM ZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNo VmFsdWU9IjE4IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9 InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZh cmlhbnRUeXBlIiBTd2l0Y2hWYWx1ZT0iMTkiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJRdWFs aWZpZWROYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgTGVuZ3RoRmllbGQ9IkFycmF5 TGVuZ3RoIiBTd2l0Y2hGaWVsZD0iVmFyaWFudFR5cGUiIFN3aXRjaFZhbHVlPSIyMCIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsaXplZFRleHQiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRU ZXh0IiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIg U3dpdGNoVmFsdWU9IjIxIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXh0ZW5zaW9uT2JqZWN0 IiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgi IFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjIyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRGF0YVZhbHVlIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBMZW5ndGhGaWVs ZD0iQXJyYXlMZW5ndGgiIFN3aXRjaEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjIz IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmFyaWFudCIgVHlwZU5hbWU9InVhOlZhcmlhbnQi IExlbmd0aEZpZWxkPSJBcnJheUxlbmd0aCIgU3dpdGNoRmllbGQ9IlZhcmlhbnRUeXBlIiBTd2l0 Y2hWYWx1ZT0iMjQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mbyIgVHlw ZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iQXJyYXlMZW5ndGgiIFN3aXRj aEZpZWxkPSJWYXJpYW50VHlwZSIgU3dpdGNoVmFsdWU9IjI1IiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgU3dpdGNoRmll bGQ9IkFycmF5RGltZW5zaW9uc1NwZWNpZmllZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFy cmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZBcnJh eURpbWVuc2lvbnMiIFN3aXRjaEZpZWxkPSJBcnJheURpbWVuc2lvbnNTcGVjaWZpZWQiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iTmFt aW5nUnVsZVR5cGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9Ik1hbmRhdG9yeSIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iT3B0aW9uYWwiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IkNvbnN0cmFpbnQiIFZhbHVlPSIzIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCiAg ICANCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iSW1hZ2VCTVAiPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5BbiBpbWFnZSBlbmNvZGVkIGluIEJNUCBmb3JtYXQuPC9vcGM6RG9jdW1lbnRhdGlv bj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iSW1hZ2VH SUYiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BbiBpbWFnZSBlbmNvZGVkIGluIEdJRiBmb3Jt YXQuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOk9w YXF1ZVR5cGUgTmFtZT0iSW1hZ2VKUEciPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BbiBpbWFn ZSBlbmNvZGVkIGluIEpQRUcgZm9ybWF0Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9w YXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9IkltYWdlUE5HIj4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+QW4gaW1hZ2UgZW5jb2RlZCBpbiBQTkcgZm9ybWF0Ljwvb3BjOkRvY3Vt ZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9 IkF1ZGlvRGF0YVR5cGUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BbiBpbWFnZSBlbmNvZGVk IGluIFBORyBmb3JtYXQuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4N Cg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iQml0RmllbGRNYXNrRGF0YVR5cGUiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5BIG1hc2sgb2YgMzIgYml0cyB0aGF0IGNhbiBiZSB1cGRhdGVkIGlu ZGl2aWR1YWxseSBieSB1c2luZyB0aGUgdG9wIDMyIGJpdHMgYXMgYSBtYXNrLjwvb3BjOkRvY3Vt ZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJLZXlWYWx1ZVBhaXIiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iS2V5IiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRwb2ludFR5 cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i RW5kcG9pbnRVcmwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VjdXJpdHlNb2RlIiBUeXBlTmFtZT0idG5zOk1lc3NhZ2VTZWN1cml0eU1vZGUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eVBvbGljeVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFuc3BvcnRQcm9maWxlVXJpIiBUeXBlTmFt ZT0ib3BjOlN0cmluZyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVt ZXJhdGVkVHlwZSBOYW1lPSJPcGVuRmlsZU1vZGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJlYWQiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IldyaXRlIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJFcmFzZUV4aXN0aW5nIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJBcHBlbmQiIFZhbHVlPSI4IiAvPg0KICA8L29wYzpFbnVtZXJhdGVk VHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IklkZW50aXR5Q3JpdGVyaWFUeXBl IiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2Vy TmFtZSIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVGh1bWJw cmludCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUm9sZSIg VmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iR3JvdXBJZCIgVmFs dWU9IjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQW5vbnltb3VzIiBWYWx1 ZT0iNSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBdXRoZW50aWNhdGVkVXNl ciIgVmFsdWU9IjYiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iSWRlbnRpdHlNYXBwaW5nUnVsZVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3JpdGVyaWFUeXBlIiBUeXBlTmFt ZT0idG5zOklkZW50aXR5Q3JpdGVyaWFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3Jp dGVyaWEiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlRydXN0TGlzdE1hc2tzIiBMZW5ndGhJbkJp dHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb25lIiBWYWx1ZT0iMCIg Lz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUcnVzdGVkQ2VydGlmaWNhdGVzIiBW YWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUcnVzdGVkQ3JscyIg VmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSXNzdWVyQ2VydGlm aWNhdGVzIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJJc3N1 ZXJDcmxzIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBbGwi IFZhbHVlPSIxNSIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJUcnVzdExpc3REYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRMaXN0cyIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVHJ1c3RlZENlcnRpZmljYXRl cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRydXN0ZWRD ZXJ0aWZpY2F0ZXMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZU cnVzdGVkQ2VydGlmaWNhdGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlRydXN0ZWRD cmxzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJ1c3Rl ZENybHMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZUcnVzdGVk Q3JscyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZJc3N1ZXJDZXJ0aWZpY2F0ZXMiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc3N1ZXJDZXJ0aWZp Y2F0ZXMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZJc3N1ZXJD ZXJ0aWZpY2F0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mSXNzdWVyQ3JscyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Iklzc3VlckNybHMiIFR5 cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZJc3N1ZXJDcmxzIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRl Y2ltYWxEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJTY2FsZSIgVHlwZU5hbWU9Im9wYzpJbnQxNiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGF0YVR5cGVTY2hlbWFI ZWFkZXIiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZk5hbWVzcGFjZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOYW1lc3BhY2VzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5v T2ZOYW1lc3BhY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlN0cnVjdHVyZURhdGFU eXBlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0cnVj dHVyZURhdGFUeXBlcyIgVHlwZU5hbWU9InRuczpTdHJ1Y3R1cmVEZXNjcmlwdGlvbiIgTGVuZ3Ro RmllbGQ9Ik5vT2ZTdHJ1Y3R1cmVEYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mRW51bURhdGFUeXBlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkVudW1EYXRhVHlwZXMiIFR5cGVOYW1lPSJ0bnM6RW51bURlc2NyaXB0aW9uIiBMZW5n dGhGaWVsZD0iTm9PZkVudW1EYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m U2ltcGxlRGF0YVR5cGVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU2ltcGxlRGF0YVR5cGVzIiBUeXBlTmFtZT0idG5zOlNpbXBsZVR5cGVEZXNjcmlwdGlv biIgTGVuZ3RoRmllbGQ9Ik5vT2ZTaW1wbGVEYXRhVHlwZXMiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGF0YVR5cGVEZXNjcmlwdGlv biIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE YXRhVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TmFtZSIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5hbWUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU3RydWN0dXJlRGVzY3JpcHRpb24i IEJhc2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJEYXRhVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5 cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJ1 YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0cnVjdHVyZURlZmluaXRpb24iIFR5cGVOYW1lPSJ0bnM6 U3RydWN0dXJlRGVmaW5pdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbnVtRGVzY3JpcHRpb24iIEJhc2VUeXBlPSJ0bnM6RGF0 YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBT b3VyY2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkVudW1EZWZpbml0aW9uIiBUeXBlTmFtZT0idG5zOkVudW1EZWZpbml0aW9uIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iQnVpbHRJblR5cGUiIFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTaW1w bGVUeXBlRGVzY3JpcHRpb24iIEJhc2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3Vy Y2VUeXBlPSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6RGF0YVR5 cGVEZXNjcmlwdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJhc2VEYXRhVHlwZSIgVHlw ZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJ1aWx0SW5UeXBlIiBU eXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iVUFCaW5hcnlGaWxlRGF0YVR5cGUiIEJhc2VUeXBlPSJ0bnM6 RGF0YVR5cGVTY2hlbWFIZWFkZXIiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5hbWVzcGFj ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3Bh Y2VzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZOYW1lc3BhY2VzIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlN0cnVjdHVyZURhdGFUeXBlcyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0cnVjdHVyZURhdGFUeXBlcyIg VHlwZU5hbWU9InRuczpTdHJ1Y3R1cmVEZXNjcmlwdGlvbiIgTGVuZ3RoRmllbGQ9Ik5vT2ZTdHJ1 Y3R1cmVEYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRW51bURhdGFUeXBl cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVudW1EYXRh VHlwZXMiIFR5cGVOYW1lPSJ0bnM6RW51bURlc2NyaXB0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZkVu dW1EYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2ltcGxlRGF0YVR5cGVz IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2ltcGxlRGF0 YVR5cGVzIiBUeXBlTmFtZT0idG5zOlNpbXBsZVR5cGVEZXNjcmlwdGlvbiIgTGVuZ3RoRmllbGQ9 Ik5vT2ZTaW1wbGVEYXRhVHlwZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTY2hlbWFMb2Nh dGlvbiIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m RmlsZUhlYWRlciIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkZpbGVIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6S2V5VmFsdWVQYWlyIiBMZW5ndGhGaWVsZD0iTm9P ZkZpbGVIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCb2R5IiBUeXBlTmFtZT0idWE6 VmFyaWFudCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVk VHlwZSBOYW1lPSJQdWJTdWJTdGF0ZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVt ZXJhdGVkVmFsdWUgTmFtZT0iRGlzYWJsZWQiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9IlBhdXNlZCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iT3BlcmF0aW9uYWwiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkVycm9yIiBWYWx1ZT0iMyIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhU2V0TWV0YURhdGFUeXBlIiBCYXNl VHlwZT0idG5zOkRhdGFUeXBlU2NoZW1hSGVhZGVyIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZOYW1lc3BhY2VzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTmFtZXNwYWNlcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mTmFt ZXNwYWNlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZTdHJ1Y3R1cmVEYXRhVHlwZXMi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdHJ1Y3R1cmVE YXRhVHlwZXMiIFR5cGVOYW1lPSJ0bnM6U3RydWN0dXJlRGVzY3JpcHRpb24iIExlbmd0aEZpZWxk PSJOb09mU3RydWN0dXJlRGF0YVR5cGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkVu dW1EYXRhVHlwZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJFbnVtRGF0YVR5cGVzIiBUeXBlTmFtZT0idG5zOkVudW1EZXNjcmlwdGlvbiIgTGVuZ3RoRmll bGQ9Ik5vT2ZFbnVtRGF0YVR5cGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNpbXBs ZURhdGFUeXBlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlNpbXBsZURhdGFUeXBlcyIgVHlwZU5hbWU9InRuczpTaW1wbGVUeXBlRGVzY3JpcHRpb24iIExl bmd0aEZpZWxkPSJOb09mU2ltcGxlRGF0YVR5cGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNj cmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJOb09mRmllbGRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRmllbGRzIiBUeXBlTmFtZT0idG5zOkZpZWxkTWV0YURhdGEiIExlbmd0aEZpZWxkPSJO b09mRmllbGRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldENsYXNzSWQiIFR5cGVO YW1lPSJvcGM6R3VpZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbmZpZ3VyYXRpb25WZXJz aW9uIiBUeXBlTmFtZT0idG5zOkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0YVR5cGUiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRmllbGRN ZXRhRGF0YSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJOYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkZpZWxkRmxhZ3MiIFR5cGVOYW1lPSJ0bnM6RGF0YVNldEZpZWxkRmxhZ3MiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCdWlsdEluVHlwZSIgVHlwZU5hbWU9Im9wYzpCeXRlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZVJhbmsiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFt ZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJNYXhTdHJpbmdMZW5ndGgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldEZpZWxkSWQiIFR5cGVOYW1lPSJvcGM6R3Vp ZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZQcm9wZXJ0aWVzIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJvcGVydGllcyIgVHlwZU5hbWU9InRu czpLZXlWYWx1ZVBhaXIiIExlbmd0aEZpZWxkPSJOb09mUHJvcGVydGllcyIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJEYXRhU2V0Rmll bGRGbGFncyIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFt ZT0iUHJvbW90ZWRGaWVsZCIgVmFsdWU9IjEiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQ29uZmlndXJhdGlvblZlcnNpb25EYXRhVHlw ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJN YWpvclZlcnNpb24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTWlub3JWZXJzaW9uIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJQdWJsaXNoZWREYXRhU2V0 RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mRGF0YVNldEZvbGRlciIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkRhdGFTZXRGb2xkZXIiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhGaWVs ZD0iTm9PZkRhdGFTZXRGb2xkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0TWV0 YURhdGEiIFR5cGVOYW1lPSJ0bnM6RGF0YVNldE1ldGFEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZFeHRlbnNpb25GaWVsZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJFeHRlbnNpb25GaWVsZHMiIFR5cGVOYW1lPSJ0bnM6S2V5VmFs dWVQYWlyIiBMZW5ndGhGaWVsZD0iTm9PZkV4dGVuc2lvbkZpZWxkcyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkRhdGFTZXRTb3VyY2UiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i UHVibGlzaGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJQdWJsaXNoZWRWYXJpYWJsZURhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hlZFZhcmlhYmxlIiBUeXBlTmFtZT0i dWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1l PSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2FtcGxpbmdJbnRlcnZhbEhp bnQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVhZGJh bmRUeXBlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl YWRiYW5kVmFsdWUiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iSW5kZXhSYW5nZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTdWJzdGl0dXRlVmFsdWUiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZk1ldGFEYXRhUHJvcGVydGllcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1ldGFEYXRhUHJvcGVydGllcyIgVHlwZU5hbWU9InVh OlF1YWxpZmllZE5hbWUiIExlbmd0aEZpZWxkPSJOb09mTWV0YURhdGFQcm9wZXJ0aWVzIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlB1 Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIiBCYXNlVHlwZT0idG5zOlB1Ymxpc2hlZERhdGFTZXRT b3VyY2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUHVibGlzaGVkRGF0YSIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hlZERh dGEiIFR5cGVOYW1lPSJ0bnM6UHVibGlzaGVkVmFyaWFibGVEYXRhVHlwZSIgTGVuZ3RoRmllbGQ9 Ik5vT2ZQdWJsaXNoZWREYXRhIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IlB1Ymxpc2hlZEV2ZW50c0RhdGFUeXBlIiBCYXNlVHlwZT0i dG5zOlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJFdmVudE5vdGlmaWVyIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZlNlbGVjdGVkRmllbGRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iU2VsZWN0ZWRGaWVsZHMiIFR5cGVOYW1lPSJ0bnM6U2ltcGxlQXR0cmli dXRlT3BlcmFuZCIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZWxlY3RlZEZpZWxkcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkZpbHRlciIgVHlwZU5hbWU9InRuczpDb250ZW50RmlsdGVyIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkRhdGFT ZXRGaWVsZENvbnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJTdGF0dXNDb2RlIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJTb3VyY2VUaW1lc3RhbXAiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlNlcnZlclRpbWVzdGFtcCIgVmFsdWU9IjQiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU291cmNlUGljb1NlY29uZHMiIFZhbHVlPSI4IiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlNlcnZlclBpY29TZWNvbmRzIiBWYWx1ZT0i MTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUmF3RGF0YUVuY29kaW5nIiBW YWx1ZT0iMzIiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iRGF0YVNldFdyaXRlckRhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5n IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5hYmxlZCIgVHlwZU5hbWU9Im9wYzpCb29sZWFu IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldFdyaXRlcklkIiBUeXBlTmFtZT0ib3Bj OlVJbnQxNiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRGaWVsZENvbnRlbnRNYXNr IiBUeXBlTmFtZT0idG5zOkRhdGFTZXRGaWVsZENvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iS2V5RnJhbWVDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEYXRhU2V0TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVNldFdyaXRlclByb3BlcnRpZXMiIFR5cGVOYW1lPSJv cGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0V3JpdGVyUHJvcGVydGll cyIgVHlwZU5hbWU9InRuczpLZXlWYWx1ZVBhaXIiIExlbmd0aEZpZWxkPSJOb09mRGF0YVNldFdy aXRlclByb3BlcnRpZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFuc3BvcnRTZXR0aW5n cyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik1lc3NhZ2VTZXR0aW5ncyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhU2V0 V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRh dGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IlB1YlN1Ykdyb3VwRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJTZWN1cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5 TW9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5R3JvdXBJZCIgVHlwZU5hbWU9 Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VjdXJpdHlLZXlTZXJ2 aWNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3Vy aXR5S2V5U2VydmljZXMiIFR5cGVOYW1lPSJ0bnM6RW5kcG9pbnREZXNjcmlwdGlvbiIgTGVuZ3Ro RmllbGQ9Ik5vT2ZTZWN1cml0eUtleVNlcnZpY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TWF4TmV0d29ya01lc3NhZ2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZHcm91cFByb3BlcnRpZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJHcm91cFByb3BlcnRpZXMiIFR5cGVOYW1lPSJ0bnM6S2V5 VmFsdWVQYWlyIiBMZW5ndGhGaWVsZD0iTm9PZkdyb3VwUHJvcGVydGllcyIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJXcml0ZXJHcm91 cERhdGFUeXBlIiBCYXNlVHlwZT0idG5zOlB1YlN1Ykdyb3VwRGF0YVR5cGUiPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIFNvdXJjZVR5cGU9InRuczpQ dWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5hYmxlZCIgVHlw ZU5hbWU9Im9wYzpCb29sZWFuIiBTb3VyY2VUeXBlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5TW9kZSIgVHlwZU5hbWU9InRuczpNZXNz YWdlU2VjdXJpdHlNb2RlIiBTb3VyY2VUeXBlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5R3JvdXBJZCIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIFNvdXJjZVR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlNlY3VyaXR5S2V5U2VydmljZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eUtleVNlcnZpY2VzIiBUeXBlTmFtZT0idG5z OkVuZHBvaW50RGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mU2VjdXJpdHlLZXlTZXJ2aWNl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heE5ldHdvcmtNZXNzYWdlU2l6ZSIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkdyb3VwUHJvcGVydGllcyIgVHlwZU5hbWU9Im9wYzpJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikdyb3VwUHJvcGVydGllcyIgVHlwZU5hbWU9 InRuczpLZXlWYWx1ZVBhaXIiIExlbmd0aEZpZWxkPSJOb09mR3JvdXBQcm9wZXJ0aWVzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVyR3JvdXBJZCIgVHlwZU5hbWU9Im9wYzpVSW50MTYi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQdWJsaXNoaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJv cGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iS2VlcEFsaXZlVGltZSIgVHlwZU5h bWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQcmlvcml0eSIgVHlwZU5h bWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxvY2FsZUlkcyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsZUlkcyIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mTG9jYWxlSWRzIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVHJhbnNwb3J0U2V0dGluZ3MiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25P YmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXNzYWdlU2V0dGluZ3MiIFR5cGVOYW1l PSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVNl dFdyaXRlcnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE YXRhU2V0V3JpdGVycyIgVHlwZU5hbWU9InRuczpEYXRhU2V0V3JpdGVyRGF0YVR5cGUiIExlbmd0 aEZpZWxkPSJOb09mRGF0YVNldFdyaXRlcnMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlw ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVyR3JvdXBNZXNzYWdlRGF0YVR5 cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlB1YlN1YkNvbm5lY3Rpb25EYXRhVHlw ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO YW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuYWJs ZWQiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxp c2hlcklkIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRy YW5zcG9ydFByb2ZpbGVVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQWRkcmVzcyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZDb25uZWN0aW9uUHJvcGVydGllcyIgVHlwZU5hbWU9Im9wYzpJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbm5lY3Rpb25Qcm9wZXJ0aWVzIiBUeXBl TmFtZT0idG5zOktleVZhbHVlUGFpciIgTGVuZ3RoRmllbGQ9Ik5vT2ZDb25uZWN0aW9uUHJvcGVy dGllcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyYW5zcG9ydFNldHRpbmdzIiBUeXBlTmFt ZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZldyaXRl ckdyb3VwcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ildy aXRlckdyb3VwcyIgVHlwZU5hbWU9InRuczpXcml0ZXJHcm91cERhdGFUeXBlIiBMZW5ndGhGaWVs ZD0iTm9PZldyaXRlckdyb3VwcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWFkZXJH cm91cHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWFk ZXJHcm91cHMiIFR5cGVOYW1lPSJ0bnM6UmVhZGVyR3JvdXBEYXRhVHlwZSIgTGVuZ3RoRmllbGQ9 Ik5vT2ZSZWFkZXJHcm91cHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiBCYXNlVHlw ZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJOZXR3b3JrQWRkcmVzc0RhdGFUeXBlIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5ldHdvcmtJbnRlcmZh Y2UiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiIEJh c2VUeXBlPSJ0bnM6TmV0d29ya0FkZHJlc3NEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOZXR3b3JrSW50ZXJmYWNlIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5z Ok5ldHdvcmtBZGRyZXNzRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVcmwiIFR5 cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlYWRlckdyb3VwRGF0YVR5cGUiIEJhc2VUeXBlPSJ0bnM6 UHViU3ViR3JvdXBEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lIiBUeXBlTmFt ZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5zOlB1YlN1Ykdyb3VwRGF0YVR5cGUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIFNvdXJj ZVR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U2VjdXJpdHlNb2RlIiBUeXBlTmFtZT0idG5zOk1lc3NhZ2VTZWN1cml0eU1vZGUiIFNvdXJjZVR5 cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2Vj dXJpdHlHcm91cElkIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5zOlB1YlN1 Ykdyb3VwRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VjdXJpdHlLZXlT ZXJ2aWNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNl Y3VyaXR5S2V5U2VydmljZXMiIFR5cGVOYW1lPSJ0bnM6RW5kcG9pbnREZXNjcmlwdGlvbiIgTGVu Z3RoRmllbGQ9Ik5vT2ZTZWN1cml0eUtleVNlcnZpY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTWF4TmV0d29ya01lc3NhZ2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlw ZT0idG5zOlB1YlN1Ykdyb3VwRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m R3JvdXBQcm9wZXJ0aWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iR3JvdXBQcm9wZXJ0aWVzIiBUeXBlTmFtZT0idG5zOktleVZhbHVlUGFpciIgTGVuZ3Ro RmllbGQ9Ik5vT2ZHcm91cFByb3BlcnRpZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFu c3BvcnRTZXR0aW5ncyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik1lc3NhZ2VTZXR0aW5ncyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVj dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEYXRhU2V0UmVhZGVycyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRSZWFkZXJzIiBUeXBl TmFtZT0idG5zOkRhdGFTZXRSZWFkZXJEYXRhVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZEYXRhU2V0 UmVhZGVycyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJSZWFkZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJSZWFkZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4 dGVuc2lvbk9iamVjdCI+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iRGF0YVNldFJlYWRlckRhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWUiIFR5cGVOYW1lPSJvcGM6U3Ry aW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5hYmxlZCIgVHlwZU5hbWU9Im9wYzpCb29s ZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaGVySWQiIFR5cGVOYW1lPSJ1YTpW YXJpYW50IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVyR3JvdXBJZCIgVHlwZU5hbWU9 Im9wYzpVSW50MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0V3JpdGVySWQiIFR5 cGVOYW1lPSJvcGM6VUludDE2IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldE1ldGFE YXRhIiBUeXBlTmFtZT0idG5zOkRhdGFTZXRNZXRhRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEYXRhU2V0RmllbGRDb250ZW50TWFzayIgVHlwZU5hbWU9InRuczpEYXRhU2V0Rmll bGRDb250ZW50TWFzayIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1lc3NhZ2VSZWNlaXZlVGlt ZW91dCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1 cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlY3VyaXR5R3JvdXBJZCIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VjdXJpdHlLZXlTZXJ2aWNlcyIgVHlwZU5hbWU9Im9w YzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5S2V5U2VydmljZXMiIFR5 cGVOYW1lPSJ0bnM6RW5kcG9pbnREZXNjcmlwdGlvbiIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZWN1cml0 eUtleVNlcnZpY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRhdGFTZXRSZWFkZXJQ cm9wZXJ0aWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i RGF0YVNldFJlYWRlclByb3BlcnRpZXMiIFR5cGVOYW1lPSJ0bnM6S2V5VmFsdWVQYWlyIiBMZW5n dGhGaWVsZD0iTm9PZkRhdGFTZXRSZWFkZXJQcm9wZXJ0aWVzIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iVHJhbnNwb3J0U2V0dGluZ3MiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXNzYWdlU2V0dGluZ3MiIFR5cGVOYW1lPSJ1YTpFeHRl bnNpb25PYmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdWJzY3JpYmVkRGF0YVNldCIg VHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0 YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFTZXRSZWFkZXJNZXNzYWdl RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlN1YnNjcmliZWREYXRhU2V0 RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlRhcmdldFZhcmlhYmxlc0Rh dGFUeXBlIiBCYXNlVHlwZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9PZlRhcmdldFZhcmlhYmxlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRhcmdldFZhcmlhYmxlcyIgVHlwZU5hbWU9InRuczpG aWVsZFRhcmdldERhdGFUeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlRhcmdldFZhcmlhYmxlcyIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJG aWVsZFRhcmdldERhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRGaWVsZElkIiBUeXBlTmFtZT0ib3BjOkd1aWQiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZWNlaXZlckluZGV4UmFuZ2UiIFR5cGVOYW1lPSJvcGM6U3Ry aW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGFyZ2V0Tm9kZUlkIiBUeXBlTmFtZT0idWE6 Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVJbmRleFJhbmdlIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik92ZXJyaWRlVmFsdWVI YW5kbGluZyIgVHlwZU5hbWU9InRuczpPdmVycmlkZVZhbHVlSGFuZGxpbmciIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJPdmVycmlkZVZhbHVlIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJPdmVy cmlkZVZhbHVlSGFuZGxpbmciIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkRpc2FibGVkIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJMYXN0VXNlYWJsZVZhbHVlIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJPdmVycmlkZVZhbHVlIiBWYWx1ZT0iMiIgLz4NCiAgPC9vcGM6RW51 bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTdWJzY3JpYmVkRGF0 YVNldE1pcnJvckRhdGFUeXBlIiBCYXNlVHlwZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5 cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGFyZW50Tm9kZU5hbWUiIFR5cGVOYW1lPSJvcGM6 U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mUm9s ZVBlcm1pc3Npb25zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlB1YlN1YkNvbmZpZ3VyYXRpb25EYXRhVHlwZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUHVibGlzaGVkRGF0 YVNldHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQdWJs aXNoZWREYXRhU2V0cyIgVHlwZU5hbWU9InRuczpQdWJsaXNoZWREYXRhU2V0RGF0YVR5cGUiIExl bmd0aEZpZWxkPSJOb09mUHVibGlzaGVkRGF0YVNldHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mQ29ubmVjdGlvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJDb25uZWN0aW9ucyIgVHlwZU5hbWU9InRuczpQdWJTdWJDb25uZWN0aW9uRGF0YVR5 cGUiIExlbmd0aEZpZWxkPSJOb09mQ29ubmVjdGlvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iRGF0YVNldE9yZGVyaW5nVHlwZSIg TGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVW5kZWZp bmVkIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBc2NlbmRp bmdXcml0ZXJJZCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i QXNjZW5kaW5nV3JpdGVySWRTaW5nbGUiIFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVtZXJhdGVk VHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlVhZHBOZXR3b3JrTWVzc2FnZUNv bnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJQdWJsaXNoZXJJZCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iR3JvdXBIZWFkZXIiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IldyaXRlckdyb3VwSWQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9Ikdyb3VwVmVyc2lvbiIgVmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iTmV0d29ya01lc3NhZ2VOdW1iZXIiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTZXF1ZW5jZU51bWJlciIgVmFsdWU9IjMyIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlBheWxvYWRIZWFkZXIiIFZhbHVlPSI2NCIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJUaW1lc3RhbXAiIFZhbHVlPSIxMjgiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUGljb3NlY29uZHMiIFZhbHVlPSIyNTYi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVNldENsYXNzSWQiIFZhbHVl PSI1MTIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUHJvbW90ZWRGaWVsZHMi IFZhbHVlPSIxMDI0IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9 InRuczpXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJH cm91cFZlcnNpb24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iRGF0YVNldE9yZGVyaW5nIiBUeXBlTmFtZT0idG5zOkRhdGFTZXRPcmRlcmluZ1R5cGUiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiBUeXBlTmFt ZT0idG5zOlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU2FtcGxpbmdPZmZzZXQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlB1Ymxpc2hpbmdPZmZzZXQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQdWJsaXNoaW5nT2Zmc2V0IiBUeXBlTmFtZT0ib3BjOkRv dWJsZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZQdWJsaXNoaW5nT2Zmc2V0IiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlVhZHBEYXRhU2V0TWVz c2FnZUNvbnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJUaW1lc3RhbXAiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9IlBpY29TZWNvbmRzIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJTdGF0dXMiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9Ik1ham9yVmVyc2lvbiIgVmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFs dWUgTmFtZT0iTWlub3JWZXJzaW9uIiBWYWx1ZT0iMTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iU2VxdWVuY2VOdW1iZXIiIFZhbHVlPSIzMiIgLz4NCiAgPC9vcGM6RW51bWVy YXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVYWRwRGF0YVNldFdyaXRl ck1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9InRuczpEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFU eXBlIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIFR5 cGVOYW1lPSJ0bnM6VWFkcERhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJDb25maWd1cmVkU2l6ZSIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrTWVzc2FnZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50 MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhU2V0T2Zmc2V0IiBUeXBlTmFtZT0ib3Bj OlVJbnQxNiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJVYWRwRGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5cGU9InRu czpEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikdy b3VwVmVyc2lvbiIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOZXR3b3JrTWVzc2FnZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEYXRhU2V0T2Zmc2V0IiBUeXBlTmFtZT0ib3BjOlVJbnQxNiIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFTZXRDbGFzc0lkIiBUeXBlTmFtZT0ib3BjOkd1aWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiBUeXBlTmFt ZT0idG5zOlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgVHlwZU5hbWU9InRuczpVYWRwRGF0YVNl dE1lc3NhZ2VDb250ZW50TWFzayIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hpbmdJ bnRlcnZhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZWNlaXZlT2Zmc2V0IiBUeXBlTmFtZT0ib3BjOkRvdWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlByb2Nlc3NpbmdPZmZzZXQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9Ikpzb25OZXR3b3Jr TWVzc2FnZUNvbnRlbnRNYXNrIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJOZXR3b3JrTWVzc2FnZUhlYWRlciIgVmFsdWU9IjEiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVNldE1lc3NhZ2VIZWFkZXIiIFZhbHVlPSIyIiAv Pg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlNpbmdsZURhdGFTZXRNZXNzYWdlIiBW YWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJQdWJsaXNoZXJJZCIg VmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVNldENsYXNz SWQiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJSZXBseVRv IiBWYWx1ZT0iMzIiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iSnNvbldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiBCYXNlVHlwZT0i dG5zOldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5l dHdvcmtNZXNzYWdlQ29udGVudE1hc2siIFR5cGVOYW1lPSJ0bnM6SnNvbk5ldHdvcmtNZXNzYWdl Q29udGVudE1hc2siIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVy YXRlZFR5cGUgTmFtZT0iSnNvbkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIExlbmd0aEluQml0 cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRhdGFTZXRXcml0ZXJJZCIg VmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTWV0YURhdGFWZXJz aW9uIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTZXF1ZW5j ZU51bWJlciIgVmFsdWU9IjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVGlt ZXN0YW1wIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTdGF0 dXMiIFZhbHVlPSIxNiIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgQmFzZVR5 cGU9InRuczpEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIFR5cGVOYW1lPSJ0bnM6SnNvbkRhdGFTZXRN ZXNzYWdlQ29udGVudE1hc2siIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iSnNvbkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIEJh c2VUeXBlPSJ0bnM6RGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiBUeXBlTmFtZT0idG5zOkpzb25OZXR3 b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVNldE1l c3NhZ2VDb250ZW50TWFzayIgVHlwZU5hbWU9InRuczpKc29uRGF0YVNldE1lc3NhZ2VDb250ZW50 TWFzayIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlw ZSBOYW1lPSJEYXRhZ3JhbUNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgQmFzZVR5cGU9InRu czpDb25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlz Y292ZXJ5QWRkcmVzcyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEYXRhZ3JhbVdy aXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIEJhc2VUeXBlPSJ0bnM6V3JpdGVyR3JvdXBUcmFu c3BvcnREYXRhVHlwZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXNzYWdlUmVwZWF0Q291bnQi IFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1lc3NhZ2VSZXBl YXREZWxheSIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJva2VyQ29ubmVjdGlvblRyYW5zcG9y dERhdGFUeXBlIiBCYXNlVHlwZT0idG5zOkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNvdXJjZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdXRoZW50aWNhdGlvblByb2ZpbGVVcmkiIFR5cGVOYW1l PSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1l cmF0ZWRUeXBlIE5hbWU9IkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIExlbmd0aElu Qml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5vdFNwZWNpZmllZCIg VmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQmVzdEVmZm9ydCIg VmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQXRMZWFzdE9uY2Ui IFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkF0TW9zdE9uY2Ui IFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkV4YWN0bHlPbmNl IiBWYWx1ZT0iNCIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiBCYXNlVHlw ZT0idG5zOldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUXVldWVOYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlc291cmNlVXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkF1dGhlbnRpY2F0aW9uUHJvZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWREZWxpdmVyeUd1YXJhbnRlZSIgVHlwZU5h bWU9InRuczpCcm9rZXJUcmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb2tlckRhdGFTZXRX cml0ZXJUcmFuc3BvcnREYXRhVHlwZSIgQmFzZVR5cGU9InRuczpEYXRhU2V0V3JpdGVyVHJhbnNw b3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUXVldWVOYW1lIiBUeXBlTmFtZT0i b3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc291cmNlVXJpIiBUeXBlTmFt ZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF1dGhlbnRpY2F0aW9uUHJv ZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJN ZXRhRGF0YVF1ZXVlTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNZXRhRGF0YVVwZGF0ZVRpbWUiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb2tl ckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSIgQmFzZVR5cGU9InRuczpEYXRhU2V0UmVh ZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUXVldWVOYW1lIiBU eXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc291cmNlVXJp IiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF1dGhlbnRp Y2F0aW9uUHJvZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXF1ZXN0ZWREZWxpdmVyeUd1YXJhbnRlZSIgVHlwZU5hbWU9InRuczpCcm9rZXJU cmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWV0YURh dGFRdWV1ZU5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkRpYWdub3N0aWNzTGV2ZWwiIExl bmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkJhc2ljIiBW YWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBZHZhbmNlZCIgVmFs dWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW5mbyIgVmFsdWU9IjIi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTG9nIiBWYWx1ZT0iMyIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEZWJ1ZyIgVmFsdWU9IjQiIC8+DQogIDwvb3Bj OkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iUHViU3ViRGlh Z25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24iIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkluZm9ybWF0aW9uIiBWYWx1ZT0iMCIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJFcnJvciIgVmFsdWU9IjEiIC8+DQogIDwvb3BjOkVu dW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iSWRUeXBlIiBMZW5n dGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIHR5cGUgb2YgaWRlbnRp ZmllciB1c2VkIGluIGEgbm9kZSBpZC48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9Ik51bWVyaWMiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9IlN0cmluZyIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iR3VpZCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iT3BhcXVlIiBWYWx1ZT0iMyIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAg PG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJOb2RlQ2xhc3MiIExlbmd0aEluQml0cz0iMzIiPg0K ICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIG1hc2sgc3BlY2lmeWluZyB0aGUgY2xhc3Mgb2YgdGhl IG5vZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1l PSJVbnNwZWNpZmllZCIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFt ZT0iT2JqZWN0IiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJW YXJpYWJsZSIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTWV0 aG9kIiBWYWx1ZT0iNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJPYmplY3RU eXBlIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJWYXJpYWJs ZVR5cGUiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJSZWZl cmVuY2VUeXBlIiBWYWx1ZT0iMzIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i RGF0YVR5cGUiIFZhbHVlPSI2NCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJW aWV3IiBWYWx1ZT0iMTI4IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOkVu dW1lcmF0ZWRUeXBlIE5hbWU9IkFjY2Vzc0xldmVsVHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQog ICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ3VycmVudFJlYWQiIFZhbHVlPSIxIiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkN1cnJlbnRXcml0ZSIgVmFsdWU9IjIiIC8+DQogICAg PG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSGlzdG9yeVJlYWQiIFZhbHVlPSI0IiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ikhpc3RvcnlXcml0ZSIgVmFsdWU9IjE2IiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlN0YXR1c1dyaXRlIiBWYWx1ZT0iMzIiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVGltZXN0YW1wV3JpdGUiIFZhbHVlPSI2 NCIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBO YW1lPSJBY2Nlc3NMZXZlbEV4VHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVt ZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iQ3VycmVudFJlYWQiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkN1cnJlbnRXcml0ZSIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iSGlzdG9yeVJlYWQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9Ikhpc3RvcnlXcml0ZSIgVmFsdWU9IjE2IiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlN0YXR1c1dyaXRlIiBWYWx1ZT0iMzIiIC8+DQogICAgPG9wYzpF bnVtZXJhdGVkVmFsdWUgTmFtZT0iVGltZXN0YW1wV3JpdGUiIFZhbHVlPSI2NCIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb25hdG9taWNSZWFkIiBWYWx1ZT0iNjU1MzYiIC8+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uYXRvbWljV3JpdGUiIFZhbHVlPSIx MzEwNzIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iV3JpdGVGdWxsQXJyYXlP bmx5IiBWYWx1ZT0iMjYyMTQ0IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3Bj OkVudW1lcmF0ZWRUeXBlIE5hbWU9IkV2ZW50Tm90aWZpZXJUeXBlIiBMZW5ndGhJbkJpdHM9IjMy Ij4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb25lIiBWYWx1ZT0iMCIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTdWJzY3JpYmVUb0V2ZW50cyIgVmFsdWU9IjEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSGlzdG9yeVJlYWQiIFZhbHVlPSI0 IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ikhpc3RvcnlXcml0ZSIgVmFsdWU9 IjgiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iUm9sZVBlcm1pc3Npb25UeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlBlcm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJT dHJ1Y3R1cmVUeXBlIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJTdHJ1Y3R1cmUiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlN0cnVjdHVyZVdpdGhPcHRpb25hbEZpZWxkcyIgVmFsdWU9IjEiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVW5pb24iIFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVt ZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlN0cnVjdHVyZUZpZWxk IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5h bWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3Jp cHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iRGF0YVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJWYWx1ZVJhbmsiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3Ro RmllbGQ9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhT dHJpbmdMZW5ndGgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iSXNPcHRpb25hbCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlN0cnVjdHVyZURlZmluaXRp b24iIEJhc2VUeXBlPSJ0bnM6RGF0YVR5cGVEZWZpbml0aW9uIj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkRlZmF1bHRFbmNvZGluZ0lkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQmFzZURhdGFUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iU3RydWN0dXJlVHlwZSIgVHlwZU5hbWU9InRuczpTdHJ1Y3R1cmVUeXBl IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkZpZWxkcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpZWxkcyIgVHlwZU5hbWU9InRuczpTdHJ1Y3R1 cmVGaWVsZCIgTGVuZ3RoRmllbGQ9Ik5vT2ZGaWVsZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRW51bURlZmluaXRpb24iIEJhc2VU eXBlPSJ0bnM6RGF0YVR5cGVEZWZpbml0aW9uIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZG aWVsZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJGaWVs ZHMiIFR5cGVOYW1lPSJ0bnM6RW51bUZpZWxkIiBMZW5ndGhGaWVsZD0iTm9PZkZpZWxkcyIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJO b2RlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBhbGwgbm9kZXMuPC9v cGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9 InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5hbWU9 InRuczpOb2RlQ2xhc3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBl TmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlO YW1lIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6 Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlclJvbGVQZXJtaXNzaW9ucyIg VHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mVXNlclJv bGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFjY2Vzc1Jlc3RyaWN0aW9u cyIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVm ZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJl ZmVyZW5jZXMiIFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZS ZWZlcmVuY2VzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9Ikluc3RhbmNlTm9kZSIgQmFzZVR5cGU9InRuczpOb2RlIj4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlwZT0idG5z Ok5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlQ2xhc3MiIFR5cGVOYW1lPSJ0bnM6 Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6 Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5v ZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFt ZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUm9sZVBlcm1pc3Npb25zIiBU eXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSb2xlUGVy bWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXNlclJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJSb2xl UGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVs ZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBY2Nl c3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTb3VyY2VUeXBlPSJ0bnM6Tm9k ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZlcmVuY2VzIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlcyIgVHlwZU5hbWU9InRu czpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVHlwZU5vZGUi IEJhc2VUeXBlPSJ0bnM6Tm9kZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVO YW1lPSJ1YTpOb2RlSWQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9kZUNsYXNzIiBUeXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0idG5z Ok5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6 UXVhbGlmaWVkTmFtZSIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1l PSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRu czpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lv blR5cGUiIExlbmd0aEZpZWxkPSJOb09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5z OlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25z IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFtZT0i b3BjOlVJbnQxNiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mUmVmZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmll bGQ9Ik5vT2ZSZWZlcmVuY2VzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik9iamVjdE5vZGUiIEJhc2VUeXBlPSJ0bnM6SW5zdGFuY2VO b2RlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdo aWNoIGJlbG9uZyB0byBvYmplY3Qgbm9kZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlwZT0idG5z Ok5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlQ2xhc3MiIFR5cGVOYW1lPSJ0bnM6 Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBlPSJ0bnM6 Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5v ZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFt ZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUm9sZVBlcm1pc3Npb25zIiBU eXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSb2xlUGVy bWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXNlclJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJSb2xl UGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVs ZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBY2Nl c3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTb3VyY2VUeXBlPSJ0bnM6Tm9k ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZlcmVuY2VzIiBUeXBlTmFtZT0ib3Bj OkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlcyIgVHlwZU5hbWU9InRu czpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFdmVudE5vdGlmaWVyIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iT2JqZWN0 VHlwZU5vZGUiIEJhc2VUeXBlPSJ0bnM6VHlwZU5vZGUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlv bj5TcGVjaWZpZXMgdGhlIGF0dHJpYnV0ZXMgd2hpY2ggYmVsb25nIHRvIG9iamVjdCB0eXBlIG5v ZGVzLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5 cGVOYW1lPSJ1YTpOb2RlSWQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9kZUNsYXNzIiBUeXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0i dG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0i dWE6UXVhbGlmaWVkTmFtZSIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlz c2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0i dG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Np b25zIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFt ZT0ib3BjOlVJbnQxNiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJOb09mUmVmZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3Ro RmllbGQ9Ik5vT2ZSZWZlcmVuY2VzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNBYnN0cmFj dCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZhcmlhYmxlTm9kZSIgQmFzZVR5cGU9InRuczpJ bnN0YW5jZU5vZGUiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5TcGVjaWZpZXMgdGhlIGF0dHJp YnV0ZXMgd2hpY2ggYmVsb25nIHRvIHZhcmlhYmxlIG5vZGVzLjwvb3BjOkRvY3VtZW50YXRpb24+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIFNvdXJj ZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUNsYXNzIiBUeXBl TmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgU291cmNl VHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlw ZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBT b3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlTWFzayIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJvbGVQZXJtaXNzaW9u cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVQZXJt aXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJO b09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlVzZXJSb2xl UGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIg TGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQxNiIgU291cmNlVHlw ZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVmZXJlbmNlcyIgVHlw ZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZXMiIFR5 cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZWZlcmVuY2VzIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZVJhbmsiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXJyYXlEaW1lbnNpb25zIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJBY2Nlc3NMZXZlbCIgVHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVXNlckFjY2Vzc0xldmVsIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJNaW5pbXVtU2FtcGxpbmdJbnRlcnZhbCIgVHlwZU5hbWU9Im9w YzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJIaXN0b3JpemluZyIgVHlwZU5hbWU9 Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWNjZXNzTGV2ZWxFeCIgVHlw ZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iVmFyaWFibGVUeXBlTm9kZSIgQmFzZVR5cGU9InRuczpUeXBl Tm9kZSI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0aGUgYXR0cmlidXRlcyB3 aGljaCBiZWxvbmcgdG8gdmFyaWFibGUgdHlwZSBub2Rlcy48L29wYzpEb2N1bWVudGF0aW9uPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VU eXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5h bWU9InRuczpOb2RlQ2xhc3MiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQnJvd3NlTmFtZSIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5hbWUiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291 cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJXcml0ZU1hc2siIFR5 cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBl PSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSb2xlUGVybWlzc2lvbnMi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSb2xlUGVybWlz c2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9P ZlJvbGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZVc2VyUm9sZVBl cm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i VXNlclJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExl bmd0aEZpZWxkPSJOb09mVXNlclJvbGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkFjY2Vzc1Jlc3RyaWN0aW9ucyIgVHlwZU5hbWU9Im9wYzpVSW50MTYiIFNvdXJjZVR5cGU9 InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZXMiIFR5cGVO YW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzIiBUeXBl TmFtZT0idG5zOlJlZmVyZW5jZU5vZGUiIExlbmd0aEZpZWxkPSJOb09mUmVmZXJlbmNlcyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iVmFsdWVSYW5rIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mQXJyYXlEaW1lbnNpb25zIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iSXNBYnN0cmFjdCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlZmVyZW5j ZVR5cGVOb2RlIiBCYXNlVHlwZT0idG5zOlR5cGVOb2RlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byByZWZlcmVuY2UgdHlw ZSBub2Rlcy48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlk IiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5hbWU9InRuczpOb2RlQ2xhc3MiIFNvdXJjZVR5 cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQnJvd3NlTmFtZSIgVHlwZU5h bWU9InVhOlF1YWxpZmllZE5hbWUiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3Vy Y2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBU eXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VU eXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5 cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBl cm1pc3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlJvbGVQZXJtaXNzaW9ucyIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlclJvbGVQZXJtaXNzaW9ucyIgVHlwZU5h bWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxkPSJOb09mVXNlclJvbGVQZXJt aXNzaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFjY2Vzc1Jlc3RyaWN0aW9ucyIgVHlw ZU5hbWU9Im9wYzpVSW50MTYiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzIiBUeXBlTmFtZT0idG5zOlJlZmVyZW5jZU5vZGUiIExl bmd0aEZpZWxkPSJOb09mUmVmZXJlbmNlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklzQWJz dHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN5 bW1ldHJpYyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SW52ZXJzZU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik1ldGhvZE5vZGUiIEJh c2VUeXBlPSJ0bnM6SW5zdGFuY2VOb2RlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+U3BlY2lm aWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBtZXRob2Qgbm9kZXMuPC9vcGM6RG9j dW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5v ZGVJZCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rl Q2xhc3MiIFR5cGVOYW1lPSJ0bnM6Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWRO YW1lIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3Bs YXlOYW1lIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2Fs aXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i V3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQz MiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9s ZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVu Z3RoRmllbGQ9Ik5vT2ZSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mVXNlclJvbGVQZXJtaXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlVzZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1p c3Npb25UeXBlIiBMZW5ndGhGaWVsZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJBY2Nlc3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2 IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZl cmVuY2VzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVm ZXJlbmNlcyIgVHlwZU5hbWU9InRuczpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJl ZmVyZW5jZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFeGVjdXRhYmxlIiBUeXBlTmFtZT0i b3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VyRXhlY3V0YWJsZSIgVHlw ZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZpZXdOb2RlIiBCYXNlVHlwZT0idG5zOkluc3RhbmNlTm9k ZSI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIFNv dXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUNsYXNzIiBU eXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgU291 cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIg VHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0 IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlTWFz ayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJj ZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJvbGVQZXJtaXNz aW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJvbGVQ ZXJtaXNzaW9ucyIgVHlwZU5hbWU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIExlbmd0aEZpZWxk PSJOb09mUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlVzZXJS b2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJVc2VyUm9sZVBlcm1pc3Npb25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlw ZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZVc2VyUm9sZVBlcm1pc3Npb25zIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQWNjZXNzUmVzdHJpY3Rpb25zIiBUeXBlTmFtZT0ib3BjOlVJbnQxNiIgU291cmNl VHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVmZXJlbmNlcyIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZXMi IFR5cGVOYW1lPSJ0bnM6UmVmZXJlbmNlTm9kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZWZlcmVuY2Vz IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ29udGFpbnNOb0xvb3BzIiBUeXBlTmFtZT0ib3Bj OkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVudE5vdGlmaWVyIiBUeXBlTmFt ZT0ib3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iRGF0YVR5cGVOb2RlIiBCYXNlVHlwZT0idG5zOlR5cGVOb2RlIj4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlw ZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlQ2xhc3MiIFR5cGVOYW1l PSJ0bnM6Tm9kZUNsYXNzIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiBTb3VyY2VUeXBl PSJ0bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFt ZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJj ZVR5cGU9InRuczpOb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0i dG5zOk5vZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUm9sZVBlcm1pc3Npb25zIiBU eXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUm9sZVBlcm1pc3Np b25zIiBUeXBlTmFtZT0idG5zOlJvbGVQZXJtaXNzaW9uVHlwZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZS b2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXNlclJvbGVQZXJt aXNzaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVz ZXJSb2xlUGVybWlzc2lvbnMiIFR5cGVOYW1lPSJ0bnM6Um9sZVBlcm1pc3Npb25UeXBlIiBMZW5n dGhGaWVsZD0iTm9PZlVzZXJSb2xlUGVybWlzc2lvbnMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJBY2Nlc3NSZXN0cmljdGlvbnMiIFR5cGVOYW1lPSJvcGM6VUludDE2IiBTb3VyY2VUeXBlPSJ0 bnM6Tm9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWZlcmVuY2VzIiBUeXBlTmFt ZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlcyIgVHlwZU5h bWU9InRuczpSZWZlcmVuY2VOb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJJc0Fic3RyYWN0IiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZURlZmluaXRpb24iIFR5cGVOYW1lPSJ1YTpF eHRlbnNpb25PYmplY3QiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iUmVmZXJlbmNlTm9kZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlNwZWNpZmllcyBhIHJlZmVyZW5jZSB3aGlj aCBiZWxvbmdzIHRvIGEgbm9kZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVmZXJlbmNlVHlwZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iSXNJbnZlcnNlIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJUYXJnZXRJZCIgVHlwZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFy Z3VtZW50IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50 YXRpb24+QW4gYXJndW1lbnQgZm9yIGEgbWV0aG9kLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkRhdGFUeXBlIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVmFsdWVSYW5rIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkFycmF5RGltZW5zaW9ucyIgVHlwZU5hbWU9Im9wYzpVSW50 MzIiIExlbmd0aEZpZWxkPSJOb09mQXJyYXlEaW1lbnNpb25zIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRGVzY3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkVudW1WYWx1 ZVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRh dGlvbj5BIG1hcHBpbmcgYmV0d2VlbiBhIHZhbHVlIG9mIGFuIGVudW1lcmF0ZWQgdHlwZSBhbmQg YSBuYW1lIGFuZCBkZXNjcmlwdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJvcGM6SW50NjQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i RW51bUZpZWxkIiBCYXNlVHlwZT0idG5zOkVudW1WYWx1ZVR5cGUiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJvcGM6SW50NjQiIFNvdXJjZVR5cGU9InRuczpFbnVtVmFs dWVUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6RW51bVZhbHVlVHlwZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIg U291cmNlVHlwZT0idG5zOkVudW1WYWx1ZVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO YW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJPcHRpb25TZXQiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGlzIGFic3RyYWN0IFN0cnVj dHVyZWQgRGF0YVR5cGUgaXMgdGhlIGJhc2UgRGF0YVR5cGUgZm9yIGFsbCBEYXRhVHlwZXMgcmVw cmVzZW50aW5nIGEgYml0IG1hc2suPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlZhbHVlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJWYWxpZEJpdHMiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgPC9vcGM6 U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVbmlvbiIgQmFz ZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoaXMg YWJzdHJhY3QgRGF0YVR5cGUgaXMgdGhlIGJhc2UgRGF0YVR5cGUgZm9yIGFsbCB1bmlvbiBEYXRh VHlwZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAg PG9wYzpPcGFxdWVUeXBlIE5hbWU9Ik5vcm1hbGl6ZWRTdHJpbmciPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5BIHN0cmluZyBub3JtYWxpemVkIGJhc2VkIG9uIHRoZSBydWxlcyBpbiB0aGUgdW5p Y29kZSBzcGVjaWZpY2F0aW9uLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5 cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9IkRlY2ltYWxTdHJpbmciPg0KICAgIDxvcGM6 RG9jdW1lbnRhdGlvbj5BbiBhcmJpdHJhdHkgbnVtZXJpYyB2YWx1ZS48L29wYzpEb2N1bWVudGF0 aW9uPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJEdXJh dGlvblN0cmluZyI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcGVyaW9kIG9mIHRpbWUgZm9y bWF0dGVkIGFzIGRlZmluZWQgaW4gSVNPIDg2MDEtMjAwMC48L29wYzpEb2N1bWVudGF0aW9uPg0K ICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJUaW1lU3RyaW5n Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSB0aW1lIGZvcm1hdHRlZCBhcyBkZWZpbmVkIGlu IElTTyA4NjAxLTIwMDAuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4N Cg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iRGF0ZVN0cmluZyI+DQogICAgPG9wYzpEb2N1bWVu dGF0aW9uPkEgZGF0ZSBmb3JtYXR0ZWQgYXMgZGVmaW5lZCBpbiBJU08gODYwMS0yMDAwLjwvb3Bj OkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBl IE5hbWU9IkR1cmF0aW9uIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBwZXJpb2Qgb2YgdGlt ZSBtZWFzdXJlZCBpbiBtaWxsaXNlY29uZHMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgPC9vcGM6 T3BhcXVlVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iVXRjVGltZSI+DQogICAgPG9w YzpEb2N1bWVudGF0aW9uPkEgZGF0ZS90aW1lIHZhbHVlIHNwZWNpZmllZCBpbiBVbml2ZXJzYWwg Q29vcmRpbmF0ZWQgVGltZSAoVVRDKS48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFx dWVUeXBlPg0KDQogIDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJMb2NhbGVJZCI+DQogICAgPG9wYzpE b2N1bWVudGF0aW9uPkFuIGlkZW50aWZpZXIgZm9yIGEgdXNlciBsb2NhbGUuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IlRpbWVab25lRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iT2Zmc2V0IiBUeXBlTmFtZT0ib3BjOkludDE2IiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iRGF5bGlnaHRTYXZpbmdJbk9mZnNldCIgVHlwZU5hbWU9Im9wYzpCb29s ZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFt ZT0iSW50ZWdlcklkIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBudW1lcmljIGlkZW50aWZp ZXIgZm9yIGFuIG9iamVjdC48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFxdWVUeXBl Pg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iQXBwbGljYXRpb25UeXBlIiBMZW5ndGhJ bkJpdHM9IjMyIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIHR5cGVzIG9mIGFwcGxpY2F0 aW9ucy48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 IlNlcnZlciIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ2xp ZW50IiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJDbGllbnRB bmRTZXJ2ZXIiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRp c2NvdmVyeVNlcnZlciIgVmFsdWU9IjMiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQXBwbGljYXRpb25EZXNjcmlwdGlvbiIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkRlc2NyaWJl cyBhbiBhcHBsaWNhdGlvbiBhbmQgaG93IHRvIGZpbmQgaXQuPC9vcGM6RG9jdW1lbnRhdGlvbj4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkFwcGxpY2F0aW9uVXJpIiBUeXBlTmFtZT0ib3BjOlN0cmlu ZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2R1Y3RVcmkiIFR5cGVOYW1lPSJvcGM6U3Ry aW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXBwbGljYXRpb25OYW1lIiBUeXBlTmFtZT0i dWE6TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFwcGxpY2F0aW9uVHlw ZSIgVHlwZU5hbWU9InRuczpBcHBsaWNhdGlvblR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJHYXRld2F5U2VydmVyVXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkRpc2NvdmVyeVByb2ZpbGVVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpc2NvdmVyeVVybHMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNjb3ZlcnlVcmxzIiBUeXBlTmFtZT0ib3Bj OlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaXNjb3ZlcnlVcmxzIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlcXVlc3RIZWFkZXIi IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5U aGUgaGVhZGVyIHBhc3NlZCB3aXRoIGV2ZXJ5IHNlcnZlciByZXF1ZXN0Ljwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdXRoZW50aWNhdGlvblRva2VuIiBUeXBlTmFt ZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGltZXN0YW1wIiBUeXBlTmFt ZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhhbmRsZSIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXR1cm5EaWFn bm9zdGljcyIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJB dWRpdEVudHJ5SWQiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iVGltZW91dEhpbnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iQWRkaXRpb25hbEhlYWRlciIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJS ZXNwb25zZUhlYWRlciIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpE b2N1bWVudGF0aW9uPlRoZSBoZWFkZXIgcGFzc2VkIHdpdGggZXZlcnkgc2VydmVyIHJlc3BvbnNl Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUaW1lc3RhbXAiIFR5 cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGFu ZGxlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZp Y2VSZXN1bHQiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VydmljZURpYWdub3N0aWNzIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU3RyaW5nVGFibGUiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdHJpbmdUYWJsZSIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIExlbmd0aEZpZWxkPSJOb09mU3RyaW5nVGFibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJBZGRpdGlvbmFsSGVhZGVyIiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iVmVyc2lvblRp bWUiPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i U2VydmljZUZhdWx0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRv Y3VtZW50YXRpb24+VGhlIHJlc3BvbnNlIHJldHVybmVkIGJ5IGFsbCBzZXJ2aWNlcyB3aGVuIHRo ZXJlIGlzIGEgc2VydmljZSBsZXZlbCBlcnJvci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFk ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iU2Vzc2lvbmxlc3NJbnZva2VSZXF1ZXN0VHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lv bk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mVXJpc1ZlcnNpb24iIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVcmlzVmVyc2lvbiIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mVXJpc1ZlcnNpb24iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb09mTmFtZXNwYWNlVXJpcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5hbWVzcGFjZVVyaXMiIFR5cGVOYW1lPSJvcGM6U3RyaW5n IiBMZW5ndGhGaWVsZD0iTm9PZk5hbWVzcGFjZVVyaXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mU2VydmVyVXJpcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlNlcnZlclVyaXMiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhGaWVsZD0iTm9P ZlNlcnZlclVyaXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTG9jYWxlSWRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTG9jYWxlSWRzIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZMb2NhbGVJZHMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJTZXJ2aWNlSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlNlc3Npb25s ZXNzSW52b2tlUmVzcG9uc2VUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZOYW1lc3BhY2VVcmlzIiBUeXBlTmFtZT0ib3BjOkludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTmFtZXNwYWNlVXJpcyIgVHlwZU5hbWU9Im9wYzpT dHJpbmciIExlbmd0aEZpZWxkPSJOb09mTmFtZXNwYWNlVXJpcyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZTZXJ2ZXJVcmlzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyVXJpcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxk PSJOb09mU2VydmVyVXJpcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZpY2VJZCIgVHlw ZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iRmluZFNlcnZlcnNSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+RmluZHMgdGhlIHNlcnZlcnMg a25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRl ciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0 cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZMb2NhbGVJZHMiIFR5cGVOYW1lPSJv cGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMb2NhbGVJZHMiIFR5cGVOYW1lPSJv cGM6U3RyaW5nIiBMZW5ndGhGaWVsZD0iTm9PZkxvY2FsZUlkcyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZTZXJ2ZXJVcmlzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyVXJpcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxk PSJOb09mU2VydmVyVXJpcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJGaW5kU2VydmVyc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+RmluZHMgdGhlIHNlcnZlcnMg a25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVh ZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlcnZlcnMiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJzIiBUeXBlTmFtZT0idG5zOkFw cGxpY2F0aW9uRGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mU2VydmVycyIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTZXJ2ZXJP bk5ldHdvcmsiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVjb3JkSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU2VydmVyTmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaXNjb3ZlcnlVcmwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9w YzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mU2VydmVyQ2FwYWJpbGl0aWVzIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkZpbmRTZXJ2 ZXJzT25OZXR3b3JrUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFk ZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGFydGluZ1JlY29yZElkIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heFJlY29yZHNUb1JldHVybiIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VydmVy Q2FwYWJpbGl0eUZpbHRlciIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlNlcnZlckNhcGFiaWxpdHlGaWx0ZXIiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5n dGhGaWVsZD0iTm9PZlNlcnZlckNhcGFiaWxpdHlGaWx0ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRmluZFNlcnZlcnNPbk5ldHdv cmtSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RDb3VudGVyUmVzZXRUaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlcnZlcnMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJzIiBUeXBlTmFtZT0i dG5zOlNlcnZlck9uTmV0d29yayIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZXJ2ZXJzIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iQXBwbGljYXRpb25J bnN0YW5jZUNlcnRpZmljYXRlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBjZXJ0aWZpY2F0 ZSBmb3IgYW4gaW5zdGFuY2Ugb2YgYW4gYXBwbGljYXRpb24uPC9vcGM6RG9jdW1lbnRhdGlvbj4N CiAgPC9vcGM6T3BhcXVlVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9Ik1lc3Nh Z2VTZWN1cml0eU1vZGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlv bj5UaGUgdHlwZSBvZiBzZWN1cml0eSB0byB1c2Ugb24gYSBtZXNzYWdlLjwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW52YWxpZCIgVmFsdWU9IjAi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjEiIC8+DQog ICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU2lnbiIgVmFsdWU9IjIiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU2lnbkFuZEVuY3J5cHQiIFZhbHVlPSIzIiAvPg0KICA8 L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IlVzZXJU b2tlblR5cGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUg cG9zc2libGUgdXNlciB0b2tlbiB0eXBlcy48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IkFub255bW91cyIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpF bnVtZXJhdGVkVmFsdWUgTmFtZT0iVXNlck5hbWUiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IkNlcnRpZmljYXRlIiBWYWx1ZT0iMiIgLz4NCiAgICA8b3BjOkVu dW1lcmF0ZWRWYWx1ZSBOYW1lPSJJc3N1ZWRUb2tlbiIgVmFsdWU9IjMiIC8+DQogIDwvb3BjOkVu dW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVXNlclRva2VuUG9s aWN5IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRp b24+RGVzY3JpYmVzIGEgdXNlciB0b2tlbiB0aGF0IGNhbiBiZSB1c2VkIHdpdGggYSBzZXJ2ZXIu PC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlBvbGljeUlkIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRva2VuVHlwZSIgVHlw ZU5hbWU9InRuczpVc2VyVG9rZW5UeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNzdWVk VG9rZW5UeXBlIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Iklzc3VlckVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlNlY3VyaXR5UG9saWN5VXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRw b2ludERlc2NyaXB0aW9uIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+VGhlIGRlc2NyaXB0aW9uIG9mIGEgZW5kcG9pbnQgdGhhdCBjYW4gYmUg dXNlZCB0byBhY2Nlc3MgYSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlcnZlciIgVHlwZU5hbWU9InRuczpBcHBsaWNhdGlvbkRlc2NyaXB0aW9u IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyQ2VydGlmaWNhdGUiIFR5cGVOYW1lPSJv cGM6Qnl0ZVN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5TW9kZSIgVHlw ZU5hbWU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U2VjdXJpdHlQb2xpY3lVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlVzZXJJZGVudGl0eVRva2VucyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJJZGVudGl0eVRva2VucyIgVHlwZU5hbWU9InRuczpV c2VyVG9rZW5Qb2xpY3kiIExlbmd0aEZpZWxkPSJOb09mVXNlcklkZW50aXR5VG9rZW5zIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iVHJhbnNwb3J0UHJvZmlsZVVyaSIgVHlwZU5hbWU9Im9wYzpT dHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eUxldmVsIiBUeXBlTmFtZT0i b3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iR2V0RW5kcG9pbnRzUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5 IHRoZSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJl cXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVuZHBvaW50VXJsIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZMb2NhbGVJZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJMb2NhbGVJZHMiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhG aWVsZD0iTm9PZkxvY2FsZUlkcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZQcm9maWxl VXJpcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2Zp bGVVcmlzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZQcm9maWxlVXJp cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJHZXRFbmRwb2ludHNSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5IHRoZSBz ZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNl SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkVuZHBvaW50cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVuZHBvaW50cyIgVHlwZU5hbWU9InRuczpFbmRwb2ludERlc2NyaXB0aW9uIiBM ZW5ndGhGaWVsZD0iTm9PZkVuZHBvaW50cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3RlcmVkU2VydmVyIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIGluZm9ybWF0 aW9uIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIGEgc2VydmVyIHdpdGggYSBkaXNjb3Zlcnkgc2VydmVy Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJVcmkiIFR5 cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJvZHVjdFVyaSIg VHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VydmVy TmFtZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2 ZXJOYW1lcyIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIExlbmd0aEZpZWxkPSJOb09mU2Vy dmVyTmFtZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJUeXBlIiBUeXBlTmFtZT0i dG5zOkFwcGxpY2F0aW9uVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkdhdGV3YXlTZXJ2 ZXJVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9P ZkRpc2NvdmVyeVVybHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEaXNjb3ZlcnlVcmxzIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5v T2ZEaXNjb3ZlcnlVcmxzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VtYXBob3JlRmlsZVBh dGgiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNPbmxp bmUiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3RlclNlcnZlclJlcXVlc3QiIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5SZWdpc3Rl cnMgYSBzZXJ2ZXIgd2l0aCB0aGUgZGlzY292ZXJ5IHNlcnZlci48L29wYzpEb2N1bWVudGF0aW9u Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1 ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyIiBUeXBlTmFtZT0idG5z OlJlZ2lzdGVyZWRTZXJ2ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVnaXN0ZXJTZXJ2ZXJSZXNwb25zZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlJlZ2lzdGVycyBhIHNl cnZlciB3aXRoIHRoZSBkaXNjb3Zlcnkgc2VydmVyLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhl YWRlciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlw ZSBOYW1lPSJEaXNjb3ZlcnlDb25maWd1cmF0aW9uIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBiYXNlIHR5cGUgZm9yIGRpc2NvdmVyeSBj b25maWd1cmF0aW9uIGluZm9ybWF0aW9uLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOlN0 cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTWRuc0Rpc2NvdmVy eUNvbmZpZ3VyYXRpb24iIEJhc2VUeXBlPSJ0bnM6RGlzY292ZXJ5Q29uZmlndXJhdGlvbiI+DQog ICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSBkaXNjb3ZlcnkgaW5mb3JtYXRpb24gbmVlZGVkIGZv ciBtRE5TIHJlZ2lzdHJhdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTWRuc1NlcnZlck5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgVHlwZU5hbWU9Im9w YzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mU2VydmVyQ2FwYWJpbGl0aWVzIiAvPg0KICA8L29w YzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlZ2lzdGVy U2VydmVyMlJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyIiBUeXBlTmFtZT0idG5zOlJlZ2lzdGVyZWRT ZXJ2ZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlzY292ZXJ5Q29uZmlndXJhdGlv biIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc2NvdmVy eUNvbmZpZ3VyYXRpb24iIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIExlbmd0aEZpZWxk PSJOb09mRGlzY292ZXJ5Q29uZmlndXJhdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3RlclNlcnZlcjJSZXNwb25zZSIg QmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNw b25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZDb25maWd1cmF0aW9uUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbmZpZ3VyYXRpb25SZXN1bHRzIiBUeXBlTmFtZT0i dWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZDb25maWd1cmF0aW9uUmVzdWx0cyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1l PSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0i U2VjdXJpdHlUb2tlblJlcXVlc3RUeXBlIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkRv Y3VtZW50YXRpb24+SW5kaWNhdGVzIHdoZXRoZXIgYSB0b2tlbiBpZiBiZWluZyBjcmVhdGVkIG9y IHJlbmV3ZWQuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJJc3N1ZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i UmVuZXciIFZhbHVlPSIxIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9IkNoYW5uZWxTZWN1cml0eVRva2VuIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIHRva2VuIHRoYXQgaWRl bnRpZmllcyBhIHNldCBvZiBrZXlzIGZvciBhbiBhY3RpdmUgc2VjdXJlIGNoYW5uZWwuPC9vcGM6 RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNoYW5uZWxJZCIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUb2tlbklkIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZWRBdCIgVHlwZU5hbWU9 Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRMaWZldGltZSIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iT3BlblNlY3VyZUNoYW5uZWxSZXF1ZXN0IiBCYXNlVHlw ZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+Q3JlYXRlcyBh IHNlY3VyZSBjaGFubmVsIHdpdGggYSBzZXJ2ZXIuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRl ciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudFByb3RvY29sVmVyc2lvbiIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0VHlwZSIgVHlw ZU5hbWU9InRuczpTZWN1cml0eVRva2VuUmVxdWVzdFR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTZWN1cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudE5vbmNlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJp bmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRMaWZldGltZSIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iT3BlblNlY3VyZUNoYW5uZWxSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4 dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkNyZWF0ZXMgYSBzZWN1cmUg Y2hhbm5lbCB3aXRoIGEgc2VydmVyLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlclByb3RvY29sVmVyc2lvbiIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eVRva2VuIiBUeXBlTmFt ZT0idG5zOkNoYW5uZWxTZWN1cml0eVRva2VuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2Vy dmVyTm9uY2UiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgPC9vcGM6U3RydWN0dXJl ZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDbG9zZVNlY3VyZUNoYW5uZWxS ZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50 YXRpb24+Q2xvc2VzIGEgc2VjdXJlIGNoYW5uZWwuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRl ciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJDbG9zZVNlY3VyZUNoYW5uZWxSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkNsb3NlcyBhIHNlY3VyZSBjaGFubmVsLjwv b3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIg VHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRl IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+ QSBzb2Z0d2FyZSBjZXJ0aWZpY2F0ZSB3aXRoIGEgZGlnaXRhbCBzaWduYXR1cmUuPC9vcGM6RG9j dW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNlcnRpZmljYXRlRGF0YSIgVHlwZU5h bWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2lnbmF0dXJlIiBU eXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJTZXNzaW9uQXV0aGVudGljYXRpb25Ub2tlbiI+DQogICAg PG9wYzpEb2N1bWVudGF0aW9uPkEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIGEgc2Vzc2lvbiB1c2Vk IHRvIGF1dGhlbnRpY2F0ZSByZXF1ZXN0cy48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpP cGFxdWVUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2lnbmF0dXJlRGF0YSIg QmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEg ZGlnaXRhbCBzaWduYXR1cmUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkFsZ29yaXRobSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJTaWduYXR1cmUiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDcmVhdGVTZXNzaW9u UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVu dGF0aW9uPkNyZWF0ZXMgYSBuZXcgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0 bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudERlc2NyaXB0 aW9uIiBUeXBlTmFtZT0idG5zOkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJTZXJ2ZXJVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRW5kcG9pbnRVcmwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iU2Vzc2lvbk5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iQ2xpZW50Tm9uY2UiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudENlcnRpZmljYXRlIiBUeXBlTmFtZT0ib3Bj OkJ5dGVTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRTZXNzaW9uVGlt ZW91dCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhS ZXNwb25zZU1lc3NhZ2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDcmVhdGVTZXNzaW9u UmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5DcmVhdGVzIGEgbmV3IHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwvb3BjOkRvY3Vt ZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9 InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlc3Npb25JZCIg VHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF1dGhlbnRpY2F0 aW9uVG9rZW4iIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXZpc2VkU2Vzc2lvblRpbWVvdXQiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iU2VydmVyTm9uY2UiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlckNlcnRpZmljYXRlIiBUeXBlTmFtZT0ib3BjOkJ5dGVT dHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU2VydmVyRW5kcG9pbnRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyRW5kcG9pbnRz IiBUeXBlTmFtZT0idG5zOkVuZHBvaW50RGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mU2Vy dmVyRW5kcG9pbnRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlcnZlclNvZnR3YXJl Q2VydGlmaWNhdGVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VydmVyU29mdHdhcmVDZXJ0aWZpY2F0ZXMiIFR5cGVOYW1lPSJ0bnM6U2lnbmVkU29mdHdh cmVDZXJ0aWZpY2F0ZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZTZXJ2ZXJTb2Z0d2FyZUNlcnRpZmljYXRl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcnZlclNpZ25hdHVyZSIgVHlwZU5hbWU9InRu czpTaWduYXR1cmVEYXRhIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4UmVxdWVzdE1lc3Nh Z2VTaXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVc2VySWRlbnRpdHlUb2tlbiIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgYmFzZSB0 eXBlIGZvciBhIHVzZXIgaWRlbnRpdHkgdG9rZW4uPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlBvbGljeUlkIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBbm9ueW1v dXNJZGVudGl0eVRva2VuIiBCYXNlVHlwZT0idG5zOlVzZXJJZGVudGl0eVRva2VuIj4NCiAgICA8 b3BjOkRvY3VtZW50YXRpb24+QSB0b2tlbiByZXByZXNlbnRpbmcgYW4gYW5vbnltb3VzIHVzZXIu PC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlBvbGljeUlkIiBUeXBl TmFtZT0ib3BjOlN0cmluZyIgU291cmNlVHlwZT0idG5zOlVzZXJJZGVudGl0eVRva2VuIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlVz ZXJOYW1lSWRlbnRpdHlUb2tlbiIgQmFzZVR5cGU9InRuczpVc2VySWRlbnRpdHlUb2tlbiI+DQog ICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgdG9rZW4gcmVwcmVzZW50aW5nIGEgdXNlciBpZGVudGlm aWVkIGJ5IGEgdXNlciBuYW1lIGFuZCBwYXNzd29yZC48L29wYzpEb2N1bWVudGF0aW9uPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iUG9saWN5SWQiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBTb3VyY2VU eXBlPSJ0bnM6VXNlcklkZW50aXR5VG9rZW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2Vy TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQYXNz d29yZCIgVHlwZU5hbWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i RW5jcnlwdGlvbkFsZ29yaXRobSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogIDwvb3BjOlN0 cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iWDUwOUlkZW50aXR5 VG9rZW4iIEJhc2VUeXBlPSJ0bnM6VXNlcklkZW50aXR5VG9rZW4iPg0KICAgIDxvcGM6RG9jdW1l bnRhdGlvbj5BIHRva2VuIHJlcHJlc2VudGluZyBhIHVzZXIgaWRlbnRpZmllZCBieSBhbiBYNTA5 IGNlcnRpZmljYXRlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQ b2xpY3lJZCIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIFNvdXJjZVR5cGU9InRuczpVc2VySWRlbnRp dHlUb2tlbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNlcnRpZmljYXRlRGF0YSIgVHlwZU5h bWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9Iklzc3VlZElkZW50aXR5VG9rZW4iIEJhc2VUeXBlPSJ0bnM6 VXNlcklkZW50aXR5VG9rZW4iPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHRva2VuIHJlcHJl c2VudGluZyBhIHVzZXIgaWRlbnRpZmllZCBieSBhIFdTLVNlY3VyaXR5IFhNTCB0b2tlbi48L29w YzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUG9saWN5SWQiIFR5cGVOYW1l PSJvcGM6U3RyaW5nIiBTb3VyY2VUeXBlPSJ0bnM6VXNlcklkZW50aXR5VG9rZW4iIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJUb2tlbkRhdGEiIFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuY3J5cHRpb25BbGdvcml0aG0iIFR5cGVOYW1lPSJvcGM6 U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IkFjdGl2YXRlU2Vzc2lvblJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BY3RpdmF0ZXMgYSBzZXNzaW9uIHdpdGgg dGhlIHNlcnZlci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVx dWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iQ2xpZW50U2lnbmF0dXJlIiBUeXBlTmFtZT0idG5zOlNpZ25hdHVyZURhdGEiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQ2xpZW50U29mdHdhcmVDZXJ0aWZpY2F0ZXMiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDbGllbnRTb2Z0d2Fy ZUNlcnRpZmljYXRlcyIgVHlwZU5hbWU9InRuczpTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRlIiBM ZW5ndGhGaWVsZD0iTm9PZkNsaWVudFNvZnR3YXJlQ2VydGlmaWNhdGVzIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZkxvY2FsZUlkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkxvY2FsZUlkcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZp ZWxkPSJOb09mTG9jYWxlSWRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcklkZW50aXR5 VG9rZW4iIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJVc2VyVG9rZW5TaWduYXR1cmUiIFR5cGVOYW1lPSJ0bnM6U2lnbmF0dXJlRGF0YSIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJB Y3RpdmF0ZVNlc3Npb25SZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpEb2N1bWVudGF0aW9uPkFjdGl2YXRlcyBhIHNlc3Npb24gd2l0aCB0aGUgc2VydmVy Ljwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRl ciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlNlcnZlck5vbmNlIiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhGaWVsZD0i Tm9PZlJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9z IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3Rp Y0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlh Z25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkNsb3NlU2Vzc2lvblJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNp b25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5DbG9zZXMgYSBzZXNzaW9uIHdpdGgg dGhlIHNlcnZlci48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVx dWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iRGVsZXRlU3Vic2NyaXB0aW9ucyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNs b3NlU2Vzc2lvblJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8 b3BjOkRvY3VtZW50YXRpb24+Q2xvc2VzIGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIuPC9vcGM6 RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBl TmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNhbmNlbFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpF eHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5DYW5jZWxzIGFuIG91dHN0 YW5kaW5nIHJlcXVlc3QuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlJlcXVlc3RIYW5kbGUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNhbmNl bFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3Vt ZW50YXRpb24+Q2FuY2VscyBhbiBvdXRzdGFuZGluZyByZXF1ZXN0Ljwvb3BjOkRvY3VtZW50YXRp b24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNhbmNlbENvdW50IiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpF bnVtZXJhdGVkVHlwZSBOYW1lPSJOb2RlQXR0cmlidXRlc01hc2siIExlbmd0aEluQml0cz0iMzIi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYml0cyB1c2VkIHRvIHNwZWNpZnkgZGVmYXVs dCBhdHRyaWJ1dGVzIGZvciBhIG5ldyBub2RlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVt ZXJhdGVkVmFsdWUgTmFtZT0iQWNjZXNzTGV2ZWwiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IkFycmF5RGltZW5zaW9ucyIgVmFsdWU9IjIiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQnJvd3NlTmFtZSIgVmFsdWU9IjQiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ29udGFpbnNOb0xvb3BzIiBWYWx1ZT0iOCIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEYXRhVHlwZSIgVmFsdWU9IjE2IiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRlc2NyaXB0aW9uIiBWYWx1ZT0iMzIiIC8+DQog ICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGlzcGxheU5hbWUiIFZhbHVlPSI2NCIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJFdmVudE5vdGlmaWVyIiBWYWx1ZT0iMTI4 IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkV4ZWN1dGFibGUiIFZhbHVlPSIy NTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSGlzdG9yaXppbmciIFZhbHVl PSI1MTIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW52ZXJzZU5hbWUiIFZh bHVlPSIxMDI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IklzQWJzdHJhY3Qi IFZhbHVlPSIyMDQ4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik1pbmltdW1T YW1wbGluZ0ludGVydmFsIiBWYWx1ZT0iNDA5NiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJOb2RlQ2xhc3MiIFZhbHVlPSI4MTkyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9Ik5vZGVJZCIgVmFsdWU9IjE2Mzg0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZh bHVlIE5hbWU9IlN5bW1ldHJpYyIgVmFsdWU9IjMyNzY4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IlVzZXJBY2Nlc3NMZXZlbCIgVmFsdWU9IjY1NTM2IiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IlVzZXJFeGVjdXRhYmxlIiBWYWx1ZT0iMTMxMDcyIiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlVzZXJXcml0ZU1hc2siIFZhbHVlPSIyNjIx NDQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVmFsdWVSYW5rIiBWYWx1ZT0i NTI0Mjg4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IldyaXRlTWFzayIgVmFs dWU9IjEwNDg1NzYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVmFsdWUiIFZh bHVlPSIyMDk3MTUyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRhdGFUeXBl RGVmaW5pdGlvbiIgVmFsdWU9IjQxOTQzMDQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iUm9sZVBlcm1pc3Npb25zIiBWYWx1ZT0iODM4ODYwOCIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJBY2Nlc3NSZXN0cmljdGlvbnMiIFZhbHVlPSIxNjc3NzIxNiIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBbGwiIFZhbHVlPSIzMzU1NDQzMSIgLz4N CiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJCYXNlTm9kZSIgVmFsdWU9IjI2NTAxMjIw IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9iamVjdCIgVmFsdWU9IjI2NTAx MzQ4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9iamVjdFR5cGUiIFZhbHVl PSIyNjUwMzI2OCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJWYXJpYWJsZSIg VmFsdWU9IjI2NTcxMzgzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlZhcmlh YmxlVHlwZSIgVmFsdWU9IjI4NjAwNDM4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9Ik1ldGhvZCIgVmFsdWU9IjI2NjMyNTQ4IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlJlZmVyZW5jZVR5cGUiIFZhbHVlPSIyNjUzNzA2MCIgLz4NCiAgICA8b3BjOkVudW1l cmF0ZWRWYWx1ZSBOYW1lPSJWaWV3IiBWYWx1ZT0iMjY1MDEzNTYiIC8+DQogIDwvb3BjOkVudW1l cmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTm9kZUF0dHJpYnV0ZXMi IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5U aGUgYmFzZSBhdHRyaWJ1dGVzIGZvciBhbGwgbm9kZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUlu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpM b2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVzY3JpcHRpb24iIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNr IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0 ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik9iamVjdEF0dHJpYnV0ZXMiIEJhc2VUeXBl PSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYXR0cmli dXRlcyBmb3IgYW4gb2JqZWN0IG5vZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3Vy Y2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNw bGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2Rl QXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFt ZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291 cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNl cldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0 cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkV2ZW50Tm90aWZpZXIiIFR5cGVOYW1l PSJvcGM6Qnl0ZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJWYXJpYWJsZUF0dHJpYnV0ZXMiIEJhc2VUeXBlPSJ0bnM6Tm9kZUF0dHJp YnV0ZXMiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRlcyBmb3IgYSB2YXJp YWJsZSBub2RlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVj aWZpZWRBdHRyaWJ1dGVzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5v ZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVO YW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXpl ZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpO b2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5 cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOlZhcmlhbnQiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEYXRhVHlwZSIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlZhbHVlUmFuayIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6 VUludDMyIiBMZW5ndGhGaWVsZD0iTm9PZkFycmF5RGltZW5zaW9ucyIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkFjY2Vzc0xldmVsIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJVc2VyQWNjZXNzTGV2ZWwiIFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik1pbmltdW1TYW1wbGluZ0ludGVydmFsIiBUeXBlTmFtZT0ib3BjOkRv dWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3Rvcml6aW5nIiBUeXBlTmFtZT0ib3Bj OkJvb2xlYW4iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iTWV0aG9kQXR0cmlidXRlcyIgQmFzZVR5cGU9InRuczpOb2RlQXR0cmlidXRl cyI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhIG1ldGhvZCBu b2RlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRB dHRyaWJ1dGVzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRy aWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQi IFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0 cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1l PSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFeGVjdXRhYmxlIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJVc2VyRXhlY3V0YWJsZSIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ik9iamVjdFR5cGVBdHRyaWJ1dGVzIiBCYXNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAg ICA8b3BjOkRvY3VtZW50YXRpb24+VGhlIGF0dHJpYnV0ZXMgZm9yIGFuIG9iamVjdCB0eXBlIG5v ZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNwZWNpZmllZEF0 dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJp YnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVh OkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIg U291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i V3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRy aWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IklzQWJzdHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJWYXJpYWJs ZVR5cGVBdHRyaWJ1dGVzIiBCYXNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+VGhlIGF0dHJpYnV0ZXMgZm9yIGEgdmFyaWFibGUgdHlwZSBub2RlLjwv b3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRBdHRyaWJ1 dGVzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVz IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2Nh bGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJEZXNjcmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJj ZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRl TWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6 VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOlZhcmlhbnQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJEYXRhVHlwZSIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlZhbHVlUmFuayIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik5vT2ZBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJBcnJheURpbWVuc2lvbnMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBMZW5n dGhGaWVsZD0iTm9PZkFycmF5RGltZW5zaW9ucyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Iklz QWJzdHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5 cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWZlcmVuY2VUeXBlQXR0cmlidXRl cyIgQmFzZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9u PlRoZSBhdHRyaWJ1dGVzIGZvciBhIHJlZmVyZW5jZSB0eXBlIG5vZGUuPC9vcGM6RG9jdW1lbnRh dGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1l PSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFtZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNv dXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl c2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5v ZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFt ZT0ib3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVXNlcldyaXRlTWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJj ZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklzQWJz dHJhY3QiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN5 bW1ldHJpYyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SW52ZXJzZU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFUeXBlQXR0cmli dXRlcyIgQmFzZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyI+DQogICAgPG9wYzpEb2N1bWVudGF0 aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhIGRhdGEgdHlwZSBub2RlLjwvb3BjOkRvY3VtZW50YXRp b24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTcGVjaWZpZWRBdHRyaWJ1dGVzIiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iRGlzcGxheU5hbWUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3Vy Y2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZXNj cmlwdGlvbiIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2Rl QXR0cmlidXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlTWFzayIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlVzZXJXcml0ZU1hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VU eXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc0Fic3Ry YWN0IiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVmlld0F0dHJpYnV0ZXMiIEJhc2VUeXBlPSJ0 bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRl cyBmb3IgYSB2aWV3IG5vZGUuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlNwZWNpZmllZEF0dHJpYnV0ZXMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBTb3VyY2VUeXBl PSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaXNwbGF5TmFt ZSIgVHlwZU5hbWU9InVhOkxvY2FsaXplZFRleHQiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmli dXRlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlc2NyaXB0aW9uIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgU291cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNlVHlw ZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlcldyaXRl TWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRl cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNvbnRhaW5zTm9Mb29wcyIgVHlwZU5hbWU9Im9w YzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnROb3RpZmllciIgVHlwZU5h bWU9Im9wYzpCeXRlIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdHRyaWJ1dGVJZCIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVh OlZhcmlhbnQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iR2VuZXJpY0F0dHJpYnV0ZXMiIEJhc2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0 ZXMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3BlY2lmaWVkQXR0cmlidXRlcyIgVHlwZU5hbWU9 Im9wYzpVSW50MzIiIFNvdXJjZVR5cGU9InRuczpOb2RlQXR0cmlidXRlcyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6TG9jYWxpemVkVGV4dCIgU291 cmNlVHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVz Y3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiBTb3VyY2VUeXBlPSJ0bnM6Tm9k ZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJXcml0ZU1hc2siIFR5cGVOYW1l PSJvcGM6VUludDMyIiBTb3VyY2VUeXBlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJVc2VyV3JpdGVNYXNrIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgU291cmNl VHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkF0 dHJpYnV0ZVZhbHVlcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkF0dHJpYnV0ZVZhbHVlcyIgVHlwZU5hbWU9InRuczpHZW5lcmljQXR0cmlidXRlVmFsdWUi IExlbmd0aEZpZWxkPSJOb09mQXR0cmlidXRlVmFsdWVzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFkZE5vZGVzSXRlbSIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVz dCB0byBhZGQgYSBub2RlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVu dGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGFyZW50Tm9kZUlkIiBUeXBlTmFtZT0idWE6 RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VUeXBlSWQi IFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRO ZXdOb2RlSWQiIFR5cGVOYW1lPSJ1YTpFeHBhbmRlZE5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkJyb3dzZU5hbWUiIFR5cGVOYW1lPSJ1YTpRdWFsaWZpZWROYW1lIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9kZUNsYXNzIiBUeXBlTmFtZT0idG5zOk5vZGVDbGFzcyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVBdHRyaWJ1dGVzIiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9u T2JqZWN0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHlwZURlZmluaXRpb24iIFR5cGVOYW1l PSJ1YTpFeHBhbmRlZE5vZGVJZCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBZGROb2Rlc1Jlc3VsdCIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVzdWx0IG9mIGFuIGFkZCBu b2RlIG9wZXJhdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJBZGRlZE5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBZGROb2Rlc1JlcXVlc3Qi IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5B ZGRzIG9uZSBvciBtb3JlIG5vZGVzIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpE b2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5h bWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVz VG9BZGQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rl c1RvQWRkIiBUeXBlTmFtZT0idG5zOkFkZE5vZGVzSXRlbSIgTGVuZ3RoRmllbGQ9Ik5vT2ZOb2Rl c1RvQWRkIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IkFkZE5vZGVzUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BZGRzIG9uZSBvciBtb3JlIG5vZGVzIHRvIHRoZSBz ZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ0bnM6QWRkTm9kZXNSZXN1 bHQiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVu Z3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWRkUmVmZXJlbmNlc0l0ZW0iIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHJlcXVl c3QgdG8gYWRkIGEgcmVmZXJlbmNlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpE b2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU291cmNlTm9kZUlkIiBUeXBlTmFt ZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVmZXJlbmNlVHlwZUlkIiBU eXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSXNGb3J3YXJkIiBU eXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUYXJnZXRTZXJ2 ZXJVcmkiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGFy Z2V0Tm9kZUlkIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJUYXJnZXROb2RlQ2xhc3MiIFR5cGVOYW1lPSJ0bnM6Tm9kZUNsYXNzIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFkZFJl ZmVyZW5jZXNSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+QWRkcyBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZXNUb0FkZCIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZXNUb0FkZCIgVHlwZU5hbWU9InRuczpBZGRS ZWZlcmVuY2VzSXRlbSIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZWZlcmVuY2VzVG9BZGQiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWRkUmVm ZXJlbmNlc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkRvY3VtZW50YXRpb24+QWRkcyBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhG aWVsZD0iTm9PZlJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3Rp Y0luZm9zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlh Z25vc3RpY0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJO b09mRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3Bj OlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRlbGV0ZU5vZGVzSXRlbSIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0byBkZWxldGUg YSBub2RlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iRGVsZXRlVGFyZ2V0UmVmZXJlbmNlcyIgVHlwZU5hbWU9Im9wYzpC b29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IkRlbGV0ZU5vZGVzUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVj dCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSBub2RlcyBmcm9t IHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVzVG9EZWxldGUiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rlc1RvRGVsZXRlIiBUeXBlTmFtZT0i dG5zOkRlbGV0ZU5vZGVzSXRlbSIgTGVuZ3RoRmllbGQ9Ik5vT2ZOb2Rlc1RvRGVsZXRlIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRl bGV0ZU5vZGVzUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5EZWxldGUgb25lIG9yIG1vcmUgbm9kZXMgZnJvbSB0aGUgc2VydmVy IGFkZHJlc3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3Ro RmllbGQ9Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0 aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRp YWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0i Tm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVSZWZlcmVuY2VzSXRlbSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0byBk ZWxldGUgYSBub2RlIGZyb20gdGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTb3VyY2VOb2RlSWQiIFR5cGVOYW1lPSJ1YTpO b2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VUeXBlSWQiIFR5cGVOYW1l PSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc0ZvcndhcmQiIFR5cGVOYW1l PSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRhcmdldE5vZGVJZCIgVHlw ZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVsZXRl QmlkaXJlY3Rpb25hbCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRlbGV0ZVJlZmVyZW5jZXNS ZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50 YXRpb24+RGVsZXRlIG9uZSBvciBtb3JlIHJlZmVyZW5jZXMgZnJvbSB0aGUgc2VydmVyIGFkZHJl c3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZSZWZlcmVuY2VzVG9EZWxldGUiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzVG9EZWxldGUiIFR5cGVOYW1lPSJ0bnM6RGVs ZXRlUmVmZXJlbmNlc0l0ZW0iIExlbmd0aEZpZWxkPSJOb09mUmVmZXJlbmNlc1RvRGVsZXRlIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IkRlbGV0ZVJlZmVyZW5jZXNSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIGZy b20gdGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRl ciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InVhOlN0YXR1 c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIg TGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iQXR0cmlidXRlV3JpdGVNYXNrIiBM ZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+RGVmaW5lIGJpdHMgdXNl ZCB0byBpbmRpY2F0ZSB3aGljaCBhdHRyaWJ1dGVzIGFyZSB3cml0YWJsZS48L29wYzpEb2N1bWVu dGF0aW9uPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5vbmUiIFZhbHVlPSIwIiAv Pg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkFjY2Vzc0xldmVsIiBWYWx1ZT0iMSIg Lz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBcnJheURpbWVuc2lvbnMiIFZhbHVl PSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkJyb3dzZU5hbWUiIFZhbHVl PSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkNvbnRhaW5zTm9Mb29wcyIg VmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGF0YVR5cGUiIFZh bHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEZXNjcmlwdGlvbiIg VmFsdWU9IjMyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRpc3BsYXlOYW1l IiBWYWx1ZT0iNjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRXZlbnROb3Rp ZmllciIgVmFsdWU9IjEyOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJFeGVj dXRhYmxlIiBWYWx1ZT0iMjU2IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ikhp c3Rvcml6aW5nIiBWYWx1ZT0iNTEyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 IkludmVyc2VOYW1lIiBWYWx1ZT0iMTAyNCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJJc0Fic3RyYWN0IiBWYWx1ZT0iMjA0OCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJNaW5pbXVtU2FtcGxpbmdJbnRlcnZhbCIgVmFsdWU9IjQwOTYiIC8+DQogICAgPG9w YzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9kZUNsYXNzIiBWYWx1ZT0iODE5MiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb2RlSWQiIFZhbHVlPSIxNjM4NCIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTeW1tZXRyaWMiIFZhbHVlPSIzMjc2OCIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2VyQWNjZXNzTGV2ZWwiIFZhbHVlPSI2NTUz NiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2VyRXhlY3V0YWJsZSIgVmFs dWU9IjEzMTA3MiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVc2VyV3JpdGVN YXNrIiBWYWx1ZT0iMjYyMTQ0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlZh bHVlUmFuayIgVmFsdWU9IjUyNDI4OCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1l PSJXcml0ZU1hc2siIFZhbHVlPSIxMDQ4NTc2IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlZhbHVlRm9yVmFyaWFibGVUeXBlIiBWYWx1ZT0iMjA5NzE1MiIgLz4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJEYXRhVHlwZURlZmluaXRpb24iIFZhbHVlPSI0MTk0MzA0 IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJvbGVQZXJtaXNzaW9ucyIgVmFs dWU9IjgzODg2MDgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQWNjZXNzUmVz dHJpY3Rpb25zIiBWYWx1ZT0iMTY3NzcyMTYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iQWNjZXNzTGV2ZWxFeCIgVmFsdWU9IjMzNTU0NDMyIiAvPg0KICA8L29wYzpFbnVtZXJh dGVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkJyb3dzZURpcmVjdGlvbiIg TGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSBkaXJlY3Rpb25z IG9mIHRoZSByZWZlcmVuY2VzIHRvIHJldHVybi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkZvcndhcmQiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IkludmVyc2UiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IkJvdGgiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IkludmFsaWQiIFZhbHVlPSIzIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlZpZXdEZXNjcmlwdGlvbiIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPlRoZSB2aWV3 IHRvIGJyb3dzZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmll d0lkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGltZXN0 YW1wIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmll d1ZlcnNpb24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb3dzZURlc2NyaXB0aW9uIiBCYXNl VHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSByZXF1 ZXN0IHRvIGJyb3dzZSB0aGUgdGhlIHJlZmVyZW5jZXMgZnJvbSBhIG5vZGUuPC9vcGM6RG9jdW1l bnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJ ZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJyb3dzZURpcmVjdGlvbiIgVHlwZU5hbWU9InRu czpCcm93c2VEaXJlY3Rpb24iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VUeXBl SWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJbmNsdWRl U3VidHlwZXMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5vZGVDbGFzc01hc2siIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVzdWx0TWFzayIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iQnJvd3NlUmVzdWx0TWFz ayIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgYml0IG1hc2sg d2hpY2ggc3BlY2lmaWVzIHdoYXQgc2hvdWxkIGJlIHJldHVybmVkIGluIGEgYnJvd3NlIHJlc3Bv bnNlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i Tm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUmVmZXJl bmNlVHlwZUlkIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJJ c0ZvcndhcmQiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5v ZGVDbGFzcyIgVmFsdWU9IjQiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQnJv d3NlTmFtZSIgVmFsdWU9IjgiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRGlz cGxheU5hbWUiIFZhbHVlPSIxNiIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJU eXBlRGVmaW5pdGlvbiIgVmFsdWU9IjMyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IkFsbCIgVmFsdWU9IjYzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJl ZmVyZW5jZVR5cGVJbmZvIiBWYWx1ZT0iMyIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJUYXJnZXRJbmZvIiBWYWx1ZT0iNjAiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVmZXJlbmNlRGVzY3JpcHRpb24iIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgZGVz Y3JpcHRpb24gb2YgYSByZWZlcmVuY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlZmVyZW5jZVR5cGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IklzRm9yd2FyZCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VOYW1lIiBUeXBlTmFtZT0idWE6UXVhbGlmaWVk TmFtZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpc3BsYXlOYW1lIiBUeXBlTmFtZT0idWE6 TG9jYWxpemVkVGV4dCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVDbGFzcyIgVHlwZU5h bWU9InRuczpOb2RlQ2xhc3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUeXBlRGVmaW5pdGlv biIgVHlwZU5hbWU9InVhOkV4cGFuZGVkTm9kZUlkIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOk9wYXF1ZVR5cGUgTmFtZT0iQ29udGludWF0aW9uUG9pbnQiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5BbiBpZGVudGlmaWVyIGZvciBhIHN1c3BlbmRlZCBxdWVyeSBvciBi cm93c2Ugb3BlcmF0aW9uLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJCcm93c2VSZXN1bHQiIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgcmVzdWx0IG9m IGEgYnJvd3NlIG9wZXJhdGlvbi48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJDb250aW51YXRpb25Qb2ludCIgVHlwZU5hbWU9Im9wYzpCeXRlU3RyaW5nIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZXMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZWZlcmVuY2VzIiBUeXBlTmFtZT0idG5zOlJl ZmVyZW5jZURlc2NyaXB0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZlJlZmVyZW5jZXMiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJvd3Nl UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVu dGF0aW9uPkJyb3dzZSB0aGUgcmVmZXJlbmNlcyBmb3Igb25lIG9yIG1vcmUgbm9kZXMgZnJvbSB0 aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlZpZXciIFR5cGVOYW1lPSJ0bnM6Vmlld0Rlc2NyaXB0aW9u IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdGVkTWF4UmVmZXJlbmNlc1Blck5vZGUi IFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVz VG9Ccm93c2UiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b2Rlc1RvQnJvd3NlIiBUeXBlTmFtZT0idG5zOkJyb3dzZURlc2NyaXB0aW9uIiBMZW5ndGhGaWVs ZD0iTm9PZk5vZGVzVG9Ccm93c2UiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJvd3NlUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5Ccm93c2UgdGhlIHJlZmVyZW5j ZXMgZm9yIG9uZSBvciBtb3JlIG5vZGVzIGZyb20gdGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwv b3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIg VHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVzdWx0cyIgVHlwZU5hbWU9InRuczpCcm93c2VSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mUmVz dWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVO YW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3Mi IFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGlj SW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iQnJvd3NlTmV4dFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5Db250aW51ZXMgb25lIG9yIG1vcmUgYnJvd3NlIG9w ZXJhdGlvbnMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlJlbGVhc2VDb250aW51YXRpb25Qb2ludHMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZDb250aW51YXRpb25Qb2ludHMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDb250aW51YXRpb25Qb2ludHMi IFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZDb250aW51YXRpb25Q b2ludHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iQnJvd3NlTmV4dFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+Q29udGludWVzIG9uZSBvciBtb3JlIGJyb3dzZSBv cGVyYXRpb25zLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNw b25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InRuczpCcm93c2VSZXN1bHQiIExlbmd0aEZp ZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGlj SW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFn bm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5v T2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6 U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVsYXRpdmVQYXRoRWxlbWVudCIgQmFzZVR5cGU9InVhOkV4 dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkFuIGVsZW1lbnQgaW4gYSBy ZWxhdGl2ZSBwYXRoLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZWZlcmVuY2VUeXBlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJJc0ludmVyc2UiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkluY2x1ZGVTdWJ0eXBlcyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iVGFyZ2V0TmFtZSIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5hbWUiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i UmVsYXRpdmVQYXRoIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRv Y3VtZW50YXRpb24+QSByZWxhdGl2ZSBwYXRoIGNvbnN0cnVjdGVkIGZyb20gcmVmZXJlbmNlIHR5 cGVzIGFuZCBicm93c2UgbmFtZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZFbGVtZW50cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkVsZW1lbnRzIiBUeXBlTmFtZT0idG5zOlJlbGF0aXZlUGF0aEVsZW1lbnQiIExl bmd0aEZpZWxkPSJOb09mRWxlbWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQnJvd3NlUGF0aCIgQmFzZVR5cGU9InVhOkV4dGVu c2lvbk9iamVjdCI+DQogICAgPG9wYzpEb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0byB0cmFuc2xh dGUgYSBwYXRoIGludG8gYSBub2RlIGlkLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJTdGFydGluZ05vZGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZWxhdGl2ZVBhdGgiIFR5cGVOYW1lPSJ0bnM6UmVsYXRpdmVQYXRoIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IkJyb3dzZVBhdGhUYXJnZXQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxv cGM6RG9jdW1lbnRhdGlvbj5UaGUgdGFyZ2V0IG9mIHRoZSB0cmFuc2xhdGVkIHBhdGguPC9vcGM6 RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRhcmdldElkIiBUeXBlTmFtZT0i dWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZW1haW5pbmdQYXRo SW5kZXgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkJyb3dzZVBhdGhSZXN1bHQiIEJhc2VUeXBl PSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5UaGUgcmVzdWx0 IG9mIGEgdHJhbnNsYXRlIG9wZWFyYXRpb24uPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZlRhcmdldHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJUYXJnZXRzIiBUeXBlTmFtZT0idG5zOkJyb3dzZVBhdGhUYXJn ZXQiIExlbmd0aEZpZWxkPSJOb09mVGFyZ2V0cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+ DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUcmFuc2xhdGVCcm93c2VQYXRoc1RvTm9k ZUlkc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9j dW1lbnRhdGlvbj5UcmFuc2xhdGVzIG9uZSBvciBtb3JlIHBhdGhzIGluIHRoZSBzZXJ2ZXIgYWRk cmVzcyBzcGFjZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVx dWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZkJyb3dzZVBhdGhzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iQnJvd3NlUGF0aHMiIFR5cGVOYW1lPSJ0bnM6QnJvd3NlUGF0aCIgTGVu Z3RoRmllbGQ9Ik5vT2ZCcm93c2VQYXRocyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUcmFuc2xhdGVCcm93c2VQYXRoc1RvTm9kZUlk c1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkRvY3Vt ZW50YXRpb24+VHJhbnNsYXRlcyBvbmUgb3IgbW9yZSBwYXRocyBpbiB0aGUgc2VydmVyIGFkZHJl c3Mgc3BhY2UuPC9vcGM6RG9jdW1lbnRhdGlvbj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3Bv bnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idG5zOkJyb3dzZVBhdGhSZXN1bHQiIExlbmd0 aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9z dGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE aWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9 Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVnaXN0ZXJOb2Rlc1JlcXVlc3QiIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5SZWdpc3RlcnMgb25l IG9yIG1vcmUgbm9kZXMgZm9yIHJlcGVhdGVkIHVzZSB3aXRoaW4gYSBzZXNzaW9uLjwvb3BjOkRv Y3VtZW50YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFt ZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTm9kZXNU b1JlZ2lzdGVyIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i Tm9kZXNUb1JlZ2lzdGVyIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBMZW5ndGhGaWVsZD0iTm9PZk5v ZGVzVG9SZWdpc3RlciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJSZWdpc3Rlck5vZGVzUmVzcG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5SZWdpc3RlcnMgb25lIG9yIG1v cmUgbm9kZXMgZm9yIHJlcGVhdGVkIHVzZSB3aXRoaW4gYSBzZXNzaW9uLjwvb3BjOkRvY3VtZW50 YXRpb24+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRu czpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZWdpc3RlcmVk Tm9kZUlkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJl Z2lzdGVyZWROb2RlSWRzIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBMZW5ndGhGaWVsZD0iTm9PZlJl Z2lzdGVyZWROb2RlSWRzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9IlVucmVnaXN0ZXJOb2Rlc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpF eHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5VbnJlZ2lzdGVycyBvbmUg b3IgbW9yZSBwcmV2aW91c2x5IHJlZ2lzdGVyZWQgbm9kZXMuPC9vcGM6RG9jdW1lbnRhdGlvbj4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVz dEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZOb2Rlc1RvVW5yZWdpc3RlciIg VHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVzVG9VbnJl Z2lzdGVyIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBMZW5ndGhGaWVsZD0iTm9PZk5vZGVzVG9VbnJl Z2lzdGVyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IlVucmVnaXN0ZXJOb2Rlc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+VW5yZWdpc3RlcnMgb25lIG9yIG1vcmUg cHJldmlvdXNseSByZWdpc3RlcmVkIG5vZGVzLjwvb3BjOkRvY3VtZW50YXRpb24+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRl ciIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9 IkNvdW50ZXIiPg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIG1vbm90b25pY2FsbHkgaW5jcmVh c2luZyB2YWx1ZS48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQog IDxvcGM6T3BhcXVlVHlwZSBOYW1lPSJOdW1lcmljUmFuZ2UiPg0KICAgIDxvcGM6RG9jdW1lbnRh dGlvbj5TcGVjaWZpZXMgYSByYW5nZSBvZiBhcnJheSBpbmRleGVzLjwvb3BjOkRvY3VtZW50YXRp b24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9wYzpPcGFxdWVUeXBlIE5hbWU9IlRpbWUi Pg0KICAgIDxvcGM6RG9jdW1lbnRhdGlvbj5BIHRpbWUgdmFsdWUgc3BlY2lmaWVkIGFzIEhIOk1N OlNTLlNTUy48L29wYzpEb2N1bWVudGF0aW9uPg0KICA8L29wYzpPcGFxdWVUeXBlPg0KDQogIDxv cGM6T3BhcXVlVHlwZSBOYW1lPSJEYXRlIj4NCiAgICA8b3BjOkRvY3VtZW50YXRpb24+QSBkYXRl IHZhbHVlLjwvb3BjOkRvY3VtZW50YXRpb24+DQogIDwvb3BjOk9wYXF1ZVR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRwb2ludENvbmZpZ3VyYXRpb24iIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iT3BlcmF0aW9uVGltZW91 dCIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVzZUJpbmFy eUVuY29kaW5nIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJNYXhTdHJpbmdMZW5ndGgiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNYXhCeXRlU3RyaW5nTGVuZ3RoIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTWF4QXJyYXlMZW5ndGgiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhNZXNzYWdlU2l6ZSIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heEJ1ZmZlclNpemUiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDaGFubmVsTGlmZXRpbWUiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1cml0eVRva2VuTGlmZXRp bWUiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUXVlcnlEYXRhRGVzY3JpcHRpb24iIEJhc2VUeXBl PSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVsYXRpdmVQYXRo IiBUeXBlTmFtZT0idG5zOlJlbGF0aXZlUGF0aCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF0 dHJpYnV0ZUlkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IkluZGV4UmFuZ2UiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik5vZGVUeXBlRGVzY3JpcHRpb24i IEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHlw ZURlZmluaXRpb25Ob2RlIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJbmNsdWRlU3ViVHlwZXMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEYXRhVG9SZXR1cm4iIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVG9SZXR1cm4iIFR5cGVOYW1lPSJ0bnM6 UXVlcnlEYXRhRGVzY3JpcHRpb24iIExlbmd0aEZpZWxkPSJOb09mRGF0YVRvUmV0dXJuIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkZp bHRlck9wZXJhdG9yIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1 ZSBOYW1lPSJFcXVhbHMiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IklzTnVsbCIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i R3JlYXRlclRoYW4iIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 Ikxlc3NUaGFuIiBWYWx1ZT0iMyIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJH cmVhdGVyVGhhbk9yRXF1YWwiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9Ikxlc3NUaGFuT3JFcXVhbCIgVmFsdWU9IjUiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVk VmFsdWUgTmFtZT0iTGlrZSIgVmFsdWU9IjYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iTm90IiBWYWx1ZT0iNyIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJC ZXR3ZWVuIiBWYWx1ZT0iOCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJJbkxp c3QiIFZhbHVlPSI5IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkFuZCIgVmFs dWU9IjEwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9yIiBWYWx1ZT0iMTEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iQ2FzdCIgVmFsdWU9IjEyIiAvPg0K ICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkluVmlldyIgVmFsdWU9IjEzIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik9mVHlwZSIgVmFsdWU9IjE0IiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJlbGF0ZWRUbyIgVmFsdWU9IjE1IiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkJpdHdpc2VBbmQiIFZhbHVlPSIxNiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJCaXR3aXNlT3IiIFZhbHVlPSIxNyIgLz4NCiAgPC9v cGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJRdWVyeURh dGFTZXQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6RXhwYW5kZWROb2RlSWQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJUeXBlRGVmaW5pdGlvbk5vZGUiIFR5cGVOYW1lPSJ1YTpFeHBhbmRlZE5vZGVJZCIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZWYWx1ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZXMiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiBM ZW5ndGhGaWVsZD0iTm9PZlZhbHVlcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAg PG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJOb2RlUmVmZXJlbmNlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVh Ok5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlZmVyZW5jZVR5cGVJZCIgVHlwZU5h bWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IklzRm9yd2FyZCIgVHlwZU5h bWU9Im9wYzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlZmVyZW5jZWRO b2RlSWRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVm ZXJlbmNlZE5vZGVJZHMiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIExlbmd0aEZpZWxkPSJOb09mUmVm ZXJlbmNlZE5vZGVJZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnQiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRmlsdGVyT3BlcmF0b3IiIFR5cGVO YW1lPSJ0bnM6RmlsdGVyT3BlcmF0b3IiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRmls dGVyT3BlcmFuZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJGaWx0ZXJPcGVyYW5kcyIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgTGVuZ3RoRmll bGQ9Ik5vT2ZGaWx0ZXJPcGVyYW5kcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAg PG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDb250ZW50RmlsdGVyIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZFbGVtZW50cyIgVHlwZU5h bWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVsZW1lbnRzIiBUeXBlTmFt ZT0idG5zOkNvbnRlbnRGaWx0ZXJFbGVtZW50IiBMZW5ndGhGaWVsZD0iTm9PZkVsZW1lbnRzIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 IkZpbHRlck9wZXJhbmQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkVsZW1lbnRPcGVy YW5kIiBCYXNlVHlwZT0idG5zOkZpbHRlck9wZXJhbmQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SW5kZXgiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4N Cg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkxpdGVyYWxPcGVyYW5kIiBCYXNlVHlwZT0i dG5zOkZpbHRlck9wZXJhbmQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1l PSJ1YTpWYXJpYW50IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkF0dHJpYnV0ZU9wZXJhbmQiIEJhc2VUeXBlPSJ0bnM6RmlsdGVyT3Bl cmFuZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBbGlhcyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VQYXRoIiBUeXBlTmFtZT0idG5zOlJlbGF0aXZl UGF0aCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF0dHJpYnV0ZUlkIiBUeXBlTmFtZT0ib3Bj OlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkluZGV4UmFuZ2UiIFR5cGVOYW1lPSJv cGM6U3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIEJhc2VUeXBlPSJ0bnM6RmlsdGVy T3BlcmFuZCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUeXBlRGVmaW5pdGlvbklkIiBUeXBlTmFt ZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkJyb3dzZVBhdGgiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCcm93c2VQYXRoIiBU eXBlTmFtZT0idWE6UXVhbGlmaWVkTmFtZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZCcm93c2VQYXRoIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1lPSJvcGM6VUludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5kZXhSYW5nZSIgVHlwZU5hbWU9Im9wYzpTdHJp bmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnRSZXN1bHQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0 YXR1c0NvZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mT3BlcmFuZFN0YXR1c0NvZGVz IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iT3BlcmFuZFN0 YXR1c0NvZGVzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZPcGVy YW5kU3RhdHVzQ29kZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mT3BlcmFuZERpYWdu b3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik9wZXJhbmREaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVu Z3RoRmllbGQ9Ik5vT2ZPcGVyYW5kRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNvbnRlbnRGaWx0ZXJSZXN1 bHQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i Tm9PZkVsZW1lbnRSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iRWxlbWVudFJlc3VsdHMiIFR5cGVOYW1lPSJ0bnM6Q29udGVudEZpbHRlckVsZW1l bnRSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mRWxlbWVudFJlc3VsdHMiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJOb09mRWxlbWVudERpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVsZW1lbnREaWFnbm9zdGljSW5mb3MiIFR5cGVO YW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZFbGVtZW50RGlhZ25vc3Rp Y0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IlBhcnNpbmdSZXN1bHQiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVzQ29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVN0YXR1c0NvZGVzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGF0YVN0YXR1c0NvZGVzIiBUeXBl TmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5vT2ZEYXRhU3RhdHVzQ29kZXMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YURpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFEaWFnbm9zdGljSW5mb3Mi IFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEYXRhRGlhZ25v c3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlF1ZXJ5Rmlyc3RSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6 UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlZpZXciIFR5cGVOYW1lPSJ0 bnM6Vmlld0Rlc2NyaXB0aW9uIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk5vZGVUeXBl cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vZGVUeXBl cyIgVHlwZU5hbWU9InRuczpOb2RlVHlwZURlc2NyaXB0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZk5v ZGVUeXBlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRlciIgVHlwZU5hbWU9InRuczpD b250ZW50RmlsdGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4RGF0YVNldHNUb1JldHVy biIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhSZWZl cmVuY2VzVG9SZXR1cm4iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlF1ZXJ5Rmlyc3RSZXNwb25z ZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZRdWVyeURhdGFTZXRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iUXVlcnlEYXRhU2V0cyIgVHlwZU5hbWU9InRuczpRdWVyeURh dGFTZXQiIExlbmd0aEZpZWxkPSJOb09mUXVlcnlEYXRhU2V0cyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkNvbnRpbnVhdGlvblBvaW50IiBUeXBlTmFtZT0ib3BjOkJ5dGVTdHJpbmciIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUGFyc2luZ1Jlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQYXJzaW5nUmVzdWx0cyIgVHlwZU5hbWU9InRu czpQYXJzaW5nUmVzdWx0IiBMZW5ndGhGaWVsZD0iTm9PZlBhcnNpbmdSZXN1bHRzIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVh OkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRlclJlc3VsdCIgVHlwZU5hbWU9InRuczpDb250ZW50Rmls dGVyUmVzdWx0IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlF1ZXJ5TmV4dFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmpl Y3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVsZWFzZUNvbnRpbnVhdGlv blBvaW50IiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJD b250aW51YXRpb25Qb2ludCIgVHlwZU5hbWU9Im9wYzpCeXRlU3RyaW5nIiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlF1ZXJ5TmV4dFJl c3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZlF1ZXJ5RGF0YVNldHMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJRdWVyeURhdGFTZXRzIiBUeXBlTmFtZT0idG5zOlF1 ZXJ5RGF0YVNldCIgTGVuZ3RoRmllbGQ9Ik5vT2ZRdWVyeURhdGFTZXRzIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmV2aXNlZENvbnRpbnVhdGlvblBvaW50IiBUeXBlTmFtZT0ib3BjOkJ5dGVT dHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5 cGUgTmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3Bj OkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTb3VyY2UiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlNlcnZlciIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iQm90aCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFs dWUgTmFtZT0iTmVpdGhlciIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUg TmFtZT0iSW52YWxpZCIgVmFsdWU9IjQiIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVhZFZhbHVlSWQiIEJhc2VUeXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6 Tm9kZUlkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQXR0cmlidXRlSWQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5kZXhSYW5nZSIgVHlwZU5hbWU9 Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhRW5jb2RpbmciIFR5cGVO YW1lPSJ1YTpRdWFsaWZpZWROYW1lIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8 b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlYWRSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1l PSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heEFnZSIgVHlw ZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUaW1lc3RhbXBzVG9S ZXR1cm4iIFR5cGVOYW1lPSJ0bnM6VGltZXN0YW1wc1RvUmV0dXJuIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZk5vZGVzVG9SZWFkIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9kZXNUb1JlYWQiIFR5cGVOYW1lPSJ0bnM6UmVhZFZhbHVlSWQiIExl bmd0aEZpZWxkPSJOb09mTm9kZXNUb1JlYWQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVhZFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6 RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBU eXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9P ZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJS ZXN1bHRzIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBMZW5ndGhGaWVsZD0iTm9PZlJlc3VsdHMi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3RpY0luZm9zIiBUeXBl TmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlhZ25vc3RpY0luZm9z IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9Ikhpc3RvcnlSZWFkVmFsdWVJZCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb2RlSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJJbmRleFJhbmdlIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFFbmNvZGluZyIgVHlwZU5hbWU9InVhOlF1YWxpZmllZE5h bWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDb250aW51YXRpb25Qb2ludCIgVHlwZU5hbWU9 Im9wYzpCeXRlU3RyaW5nIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlSZWFkUmVzdWx0IiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1 YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ29udGludWF0aW9uUG9pbnQi IFR5cGVOYW1lPSJvcGM6Qnl0ZVN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3Rv cnlEYXRhIiBUeXBlTmFtZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlSZWFkRGV0YWls cyIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVhZEV2ZW50RGV0YWlscyIgQmFzZVR5 cGU9InRuczpIaXN0b3J5UmVhZERldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTnVtVmFs dWVzUGVyTm9kZSIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJFbmRUaW1lIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iRmlsdGVyIiBUeXBlTmFtZT0idG5zOkV2ZW50RmlsdGVyIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlJlYWRSYXdNb2RpZmll ZERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeVJlYWREZXRhaWxzIj4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IklzUmVhZE1vZGlmaWVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4iIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJFbmRUaW1lIiBUeXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTnVtVmFsdWVzUGVyTm9kZSIgVHlwZU5hbWU9Im9wYzpVSW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXR1cm5Cb3VuZHMiIFR5cGVOYW1lPSJvcGM6 Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJSZWFkUHJvY2Vzc2VkRGV0YWlscyIgQmFzZVR5cGU9InRuczpIaXN0b3J5UmVh ZERldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhcnRUaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5kVGltZSIgVHlwZU5hbWU9Im9w YzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2Nlc3NpbmdJbnRlcnZhbCIg VHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQWdncmVn YXRlVHlwZSIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFn Z3JlZ2F0ZVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIExlbmd0aEZpZWxkPSJOb09mQWdncmVn YXRlVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24i IFR5cGVOYW1lPSJ0bnM6QWdncmVnYXRlQ29uZmlndXJhdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJSZWFkQXRUaW1lRGV0YWls cyIgQmFzZVR5cGU9InRuczpIaXN0b3J5UmVhZERldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZlJlcVRpbWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iUmVxVGltZXMiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIExlbmd0aEZpZWxkPSJOb09m UmVxVGltZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJVc2VTaW1wbGVCb3VuZHMiIFR5cGVO YW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJIaXN0b3J5RGF0YSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9i amVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGF0YVZhbHVlcyIgVHlwZU5hbWU9Im9w YzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRhdGFWYWx1ZXMiIFR5cGVOYW1lPSJ1 YTpEYXRhVmFsdWUiIExlbmd0aEZpZWxkPSJOb09mRGF0YVZhbHVlcyIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb2RpZmljYXRpb25J bmZvIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik1vZGlmaWNhdGlvblRpbWUiIFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJVcGRhdGVUeXBlIiBUeXBlTmFtZT0idG5zOkhpc3RvcnlVcGRhdGVUeXBlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlck5hbWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ikhpc3RvcnlNb2RpZmllZERhdGEiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeURhdGEiPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTm9PZkRhdGFWYWx1ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRhVmFsdWVzIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBM ZW5ndGhGaWVsZD0iTm9PZkRhdGFWYWx1ZXMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09m TW9kaWZpY2F0aW9uSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNb2RpZmljYXRpb25JbmZvcyIgVHlwZU5hbWU9InRuczpNb2RpZmljYXRpb25JbmZv IiBMZW5ndGhGaWVsZD0iTm9PZk1vZGlmaWNhdGlvbkluZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlFdmVudCIgQmFz ZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZl bnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnRz IiBUeXBlTmFtZT0idG5zOkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZF dmVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iSGlzdG9yeVJlYWRSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVx dWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3RvcnlSZWFkRGV0YWlscyIg VHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRp bWVzdGFtcHNUb1JldHVybiIgVHlwZU5hbWU9InRuczpUaW1lc3RhbXBzVG9SZXR1cm4iIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZWxlYXNlQ29udGludWF0aW9uUG9pbnRzIiBUeXBlTmFtZT0i b3BjOkJvb2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTm9kZXNUb1JlYWQiIFR5 cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb2Rlc1RvUmVhZCIg VHlwZU5hbWU9InRuczpIaXN0b3J5UmVhZFZhbHVlSWQiIExlbmd0aEZpZWxkPSJOb09mTm9kZXNU b1JlYWQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iSGlzdG9yeVJlYWRSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVj dCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5h bWU9InRuczpIaXN0b3J5UmVhZFJlc3VsdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZXN1bHRzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9 InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJX cml0ZVZhbHVlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkF0dHJpYnV0ZUlkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkluZGV4UmFuZ2UiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iVmFsdWUiIFR5cGVOYW1lPSJ1YTpEYXRhVmFsdWUiIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVSZXF1ZXN0IiBC YXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZOb2Rlc1RvV3JpdGUiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb2Rlc1RvV3JpdGUiIFR5cGVOYW1lPSJ0bnM6V3JpdGVWYWx1ZSIgTGVu Z3RoRmllbGQ9Ik5vT2ZOb2Rlc1RvV3JpdGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0K DQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iV3JpdGVSZXNwb25zZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIg VHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5v T2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i UmVzdWx0cyIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0 cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5 cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5m b3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUg TmFtZT0iSGlzdG9yeVVwZGF0ZURldGFpbHMiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0K ICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9Ikhp c3RvcnlVcGRhdGVUeXBlIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRW YWx1ZSBOYW1lPSJJbnNlcnQiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlJlcGxhY2UiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5h bWU9IlVwZGF0ZSIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0i RGVsZXRlIiBWYWx1ZT0iNCIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpF bnVtZXJhdGVkVHlwZSBOYW1lPSJQZXJmb3JtVXBkYXRlVHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+ DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iSW5zZXJ0IiBWYWx1ZT0iMSIgLz4NCiAg ICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJSZXBsYWNlIiBWYWx1ZT0iMiIgLz4NCiAgICA8 b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJVcGRhdGUiIFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IlJlbW92ZSIgVmFsdWU9IjQiIC8+DQogIDwvb3BjOkVudW1l cmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iVXBkYXRlRGF0YURldGFp bHMiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9y eVVwZGF0ZURldGFpbHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQZXJmb3JtSW5zZXJ0UmVw bGFjZSIgVHlwZU5hbWU9InRuczpQZXJmb3JtVXBkYXRlVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZVcGRhdGVWYWx1ZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJVcGRhdGVWYWx1ZXMiIFR5cGVOYW1lPSJ1YTpEYXRhVmFsdWUiIExlbmd0 aEZpZWxkPSJOb09mVXBkYXRlVmFsdWVzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlVwZGF0ZVN0cnVjdHVyZURhdGFEZXRhaWxzIiBC YXNlVHlwZT0idG5zOkhpc3RvcnlVcGRhdGVEZXRhaWxzIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 Ik5vZGVJZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgU291cmNlVHlwZT0idG5zOkhpc3RvcnlVcGRh dGVEZXRhaWxzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGVyZm9ybUluc2VydFJlcGxhY2Ui IFR5cGVOYW1lPSJ0bnM6UGVyZm9ybVVwZGF0ZVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mVXBkYXRlVmFsdWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iVXBkYXRlVmFsdWVzIiBUeXBlTmFtZT0idWE6RGF0YVZhbHVlIiBMZW5ndGhGaWVs ZD0iTm9PZlVwZGF0ZVZhbHVlcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJVcGRhdGVFdmVudERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6 SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQZXJmb3JtSW5zZXJ0UmVwbGFjZSIgVHlwZU5hbWU9InRu czpQZXJmb3JtVXBkYXRlVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRlciIgVHlw ZU5hbWU9InRuczpFdmVudEZpbHRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZFdmVu dERhdGEiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVu dERhdGEiIFR5cGVOYW1lPSJ0bnM6SGlzdG9yeUV2ZW50RmllbGRMaXN0IiBMZW5ndGhGaWVsZD0i Tm9PZkV2ZW50RGF0YSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVSYXdNb2RpZmllZERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6 SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJJc0RlbGV0ZU1vZGlmaWVkIiBUeXBlTmFtZT0ib3BjOkJv b2xlYW4iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6 RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFbmRUaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IkRlbGV0ZUF0VGltZURldGFpbHMiIEJhc2VUeXBlPSJ0bnM6SGlzdG9yeVVw ZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBlTmFtZT0idWE6 Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJOb09mUmVxVGltZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXFUaW1lcyIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgTGVuZ3Ro RmllbGQ9Ik5vT2ZSZXFUaW1lcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVFdmVudERldGFpbHMiIEJhc2VUeXBlPSJ0bnM6 SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9kZUlkIiBUeXBl TmFtZT0idWE6Tm9kZUlkIiBTb3VyY2VUeXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZlbnRJZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVudElkcyIgVHlwZU5hbWU9Im9wYzpCeXRlU3Ry aW5nIiBMZW5ndGhGaWVsZD0iTm9PZkV2ZW50SWRzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlVcGRhdGVSZXN1bHQiIEJh c2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3RhdHVz Q29kZSIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mT3BlcmF0aW9uUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik9wZXJhdGlvblJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5n dGhGaWVsZD0iTm9PZk9wZXJhdGlvblJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExl bmd0aEZpZWxkPSJOb09mRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ikhpc3RvcnlVcGRhdGVSZXF1ZXN0IiBC YXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVl c3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZIaXN0b3J5VXBkYXRlRGV0YWlscyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3RvcnlVcGRhdGVEZXRhaWxzIiBUeXBlTmFtZT0idWE6 RXh0ZW5zaW9uT2JqZWN0IiBMZW5ndGhGaWVsZD0iTm9PZkhpc3RvcnlVcGRhdGVEZXRhaWxzIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ikhpc3RvcnlVcGRhdGVSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25z ZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InRu czpIaXN0b3J5VXBkYXRlUmVzdWx0IiBMZW5ndGhGaWVsZD0iTm9PZlJlc3VsdHMiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0ib3BjOkludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0idWE6 RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlhZ25vc3RpY0luZm9zIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNhbGxN ZXRob2RSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ik9iamVjdElkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTWV0aG9kSWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mSW5wdXRBcmd1bWVudHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJJbnB1dEFyZ3VtZW50cyIgVHlwZU5hbWU9InVhOlZhcmlhbnQiIExl bmd0aEZpZWxkPSJOb09mSW5wdXRBcmd1bWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQ2FsbE1ldGhvZFJlc3VsdCIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGF0dXNDb2Rl IiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZJ bnB1dEFyZ3VtZW50UmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IklucHV0QXJndW1lbnRSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIg TGVuZ3RoRmllbGQ9Ik5vT2ZJbnB1dEFyZ3VtZW50UmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZJbnB1dEFyZ3VtZW50RGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0ib3BjOklu dDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW5wdXRBcmd1bWVudERpYWdub3N0aWNJbmZv cyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZklucHV0QXJn dW1lbnREaWFnbm9zdGljSW5mb3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mT3V0cHV0 QXJndW1lbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i T3V0cHV0QXJndW1lbnRzIiBUeXBlTmFtZT0idWE6VmFyaWFudCIgTGVuZ3RoRmllbGQ9Ik5vT2ZP dXRwdXRBcmd1bWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iQ2FsbFJlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmpl Y3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpS ZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZk1ldGhvZHNUb0NhbGwi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNZXRob2RzVG9D YWxsIiBUeXBlTmFtZT0idG5zOkNhbGxNZXRob2RSZXF1ZXN0IiBMZW5ndGhGaWVsZD0iTm9PZk1l dGhvZHNUb0NhbGwiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0 dXJlZFR5cGUgTmFtZT0iQ2FsbFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJl c3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVO YW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFt ZT0idG5zOkNhbGxNZXRob2RSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1 YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iTW9u aXRvcmluZ01vZGUiIExlbmd0aEluQml0cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IkRpc2FibGVkIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBO YW1lPSJTYW1wbGluZyIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFt ZT0iUmVwb3J0aW5nIiBWYWx1ZT0iMiIgLz4NCiAgPC9vcGM6RW51bWVyYXRlZFR5cGU+DQoNCiAg PG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJEYXRhQ2hhbmdlVHJpZ2dlciIgTGVuZ3RoSW5CaXRz PSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU3RhdHVzIiBWYWx1ZT0iMCIg Lz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJTdGF0dXNWYWx1ZSIgVmFsdWU9IjEi IC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU3RhdHVzVmFsdWVUaW1lc3RhbXAi IFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0 ZWRUeXBlIE5hbWU9IkRlYWRiYW5kVHlwZSIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpF bnVtZXJhdGVkVmFsdWUgTmFtZT0iTm9uZSIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iQWJzb2x1dGUiIFZhbHVlPSIxIiAvPg0KICAgIDxvcGM6RW51bWVyYXRl ZFZhbHVlIE5hbWU9IlBlcmNlbnQiIFZhbHVlPSIyIiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik1vbml0b3JpbmdGaWx0ZXIiIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8 b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFDaGFuZ2VGaWx0ZXIiIEJhc2VUeXBlPSJ0bnM6 TW9uaXRvcmluZ0ZpbHRlciI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmlnZ2VyIiBUeXBlTmFt ZT0idG5zOkRhdGFDaGFuZ2VUcmlnZ2VyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVhZGJh bmRUeXBlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl YWRiYW5kVmFsdWUiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkV2ZW50RmlsdGVyIiBCYXNlVHlw ZT0idG5zOk1vbml0b3JpbmdGaWx0ZXIiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlbGVj dENsYXVzZXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJT ZWxlY3RDbGF1c2VzIiBUeXBlTmFtZT0idG5zOlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIExlbmd0 aEZpZWxkPSJOb09mU2VsZWN0Q2xhdXNlcyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldoZXJl Q2xhdXNlIiBUeXBlTmFtZT0idG5zOkNvbnRlbnRGaWx0ZXIiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWdncmVnYXRlQ29uZmlndXJh dGlvbiIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJVc2VTZXJ2ZXJDYXBhYmlsaXRpZXNEZWZhdWx0cyIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJlYXRVbmNlcnRhaW5Bc0JhZCIgVHlwZU5hbWU9Im9w YzpCb29sZWFuIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUGVyY2VudERhdGFCYWQiIFR5cGVO YW1lPSJvcGM6Qnl0ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlBlcmNlbnREYXRhR29vZCIg VHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlU2xvcGVkRXh0 cmFwb2xhdGlvbiIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVk VHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkFnZ3JlZ2F0ZUZpbHRlciIgQmFz ZVR5cGU9InRuczpNb25pdG9yaW5nRmlsdGVyIj4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXJ0 VGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFn Z3JlZ2F0ZVR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJQcm9jZXNzaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQWdncmVnYXRlQ29uZmlndXJhdGlvbiIgVHlwZU5hbWU9InRuczpBZ2dyZWdh dGVDb25maWd1cmF0aW9uIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0 cnVjdHVyZWRUeXBlIE5hbWU9Ik1vbml0b3JpbmdGaWx0ZXJSZXN1bHQiIEJhc2VUeXBlPSJ1YTpF eHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkV2ZW50RmlsdGVyUmVzdWx0IiBCYXNlVHlwZT0idG5zOk1vbml0b3Jp bmdGaWx0ZXJSZXN1bHQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlbGVjdENsYXVzZVJl c3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWxl Y3RDbGF1c2VSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9Ik5v T2ZTZWxlY3RDbGF1c2VSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlNlbGVj dENsYXVzZURpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlbGVjdENsYXVzZURpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRp YWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZlNlbGVjdENsYXVzZURpYWdub3N0aWNJbmZv cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldoZXJlQ2xhdXNlUmVzdWx0IiBUeXBlTmFtZT0i dG5zOkNvbnRlbnRGaWx0ZXJSZXN1bHQiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQWdncmVnYXRlRmlsdGVyUmVzdWx0IiBCYXNlVHlw ZT0idG5zOk1vbml0b3JpbmdGaWx0ZXJSZXN1bHQiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmV2 aXNlZFN0YXJ0VGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IlJldmlzZWRQcm9jZXNzaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmV2aXNlZEFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24iIFR5 cGVOYW1lPSJ0bnM6QWdncmVnYXRlQ29uZmlndXJhdGlvbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJl ZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb25pdG9yaW5nUGFyYW1ldGVy cyIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJD bGllbnRIYW5kbGUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2FtcGxpbmdJbnRlcnZhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJGaWx0ZXIiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJRdWV1ZVNpemUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iRGlzY2FyZE9sZGVzdCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9 Ik1vbml0b3JlZEl0ZW1DcmVhdGVSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikl0ZW1Ub01vbml0b3IiIFR5cGVOYW1lPSJ0bnM6UmVh ZFZhbHVlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNb25pdG9yaW5nTW9kZSIgVHlwZU5h bWU9InRuczpNb25pdG9yaW5nTW9kZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3Rl ZFBhcmFtZXRlcnMiIFR5cGVOYW1lPSJ0bnM6TW9uaXRvcmluZ1BhcmFtZXRlcnMiIC8+DQogIDwv b3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTW9uaXRv cmVkSXRlbUNyZWF0ZVJlc3VsdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTdGF0dXNDb2RlIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1vbml0b3JlZEl0ZW1JZCIgVHlwZU5hbWU9Im9wYzpVSW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXZpc2VkU2FtcGxpbmdJbnRlcnZhbCIgVHlw ZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXZpc2VkUXVldWVT aXplIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkZpbHRl clJlc3VsdCIgVHlwZU5hbWU9InVhOkV4dGVuc2lvbk9iamVjdCIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJDcmVhdGVNb25pdG9yZWRJ dGVtc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRuczpSZXF1ZXN0SGVhZGVyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iU3Vic2NyaXB0aW9uSWQiIFR5cGVOYW1lPSJvcGM6VUludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIiBUeXBlTmFtZT0i dG5zOlRpbWVzdGFtcHNUb1JldHVybiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZJdGVt c1RvQ3JlYXRlIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i SXRlbXNUb0NyZWF0ZSIgVHlwZU5hbWU9InRuczpNb25pdG9yZWRJdGVtQ3JlYXRlUmVxdWVzdCIg TGVuZ3RoRmllbGQ9Ik5vT2ZJdGVtc1RvQ3JlYXRlIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlw ZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkNyZWF0ZU1vbml0b3JlZEl0ZW1zUmVz cG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ0bnM6TW9uaXRvcmVkSXRlbUNy ZWF0ZVJlc3VsdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJ bmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0 dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb25pdG9yZWRJdGVtTW9k aWZ5UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNb25pdG9yZWRJdGVtSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmVxdWVzdGVkUGFyYW1ldGVycyIgVHlwZU5hbWU9InRuczpNb25pdG9y aW5nUGFyYW1ldGVycyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJNb25pdG9yZWRJdGVtTW9kaWZ5UmVzdWx0IiBCYXNlVHlwZT0idWE6 RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXR1c0NvZGUiIFR5cGVO YW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmV2aXNlZFNhbXBs aW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmV2aXNlZFF1ZXVlU2l6ZSIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJGaWx0ZXJSZXN1bHQiIFR5cGVOYW1lPSJ1YTpFeHRlbnNpb25PYmplY3QiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i TW9kaWZ5TW9uaXRvcmVkSXRlbXNSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVx dWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRpbWVzdGFtcHNUb1Jl dHVybiIgVHlwZU5hbWU9InRuczpUaW1lc3RhbXBzVG9SZXR1cm4iIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mSXRlbXNUb01vZGlmeSIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ikl0ZW1zVG9Nb2RpZnkiIFR5cGVOYW1lPSJ0bnM6TW9uaXRvcmVkSXRl bU1vZGlmeVJlcXVlc3QiIExlbmd0aEZpZWxkPSJOb09mSXRlbXNUb01vZGlmeSIgLz4NCiAgPC9v cGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb2RpZnlN b25pdG9yZWRJdGVtc1Jlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNl SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJv cGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idG5z Ok1vbml0b3JlZEl0ZW1Nb2RpZnlSZXN1bHQiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1l PSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+ DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0i U2V0TW9uaXRvcmluZ01vZGVSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVz dEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBlTmFt ZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1vbml0b3JpbmdNb2RlIiBU eXBlTmFtZT0idG5zOk1vbml0b3JpbmdNb2RlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9P Zk1vbml0b3JlZEl0ZW1JZHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJNb25pdG9yZWRJdGVtSWRzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmll bGQ9Ik5vT2ZNb25pdG9yZWRJdGVtSWRzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0K ICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlNldE1vbml0b3JpbmdNb2RlUmVzcG9uc2UiIEJh c2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzcG9u c2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mUmVzdWx0cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlJlc3VsdHMiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhGaWVsZD0i Tm9PZlJlc3VsdHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRGlhZ25vc3RpY0luZm9z IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlhZ25vc3Rp Y0luZm9zIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mRGlh Z25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlNldFRyaWdnZXJpbmdSZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1l PSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlv bklkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyaWdn ZXJpbmdJdGVtSWQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iTm9PZkxpbmtzVG9BZGQiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJMaW5rc1RvQWRkIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5v T2ZMaW5rc1RvQWRkIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxpbmtzVG9SZW1vdmUi IFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMaW5rc1RvUmVt b3ZlIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZMaW5rc1RvUmVtb3Zl IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IlNldFRyaWdnZXJpbmdSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNw b25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBZGRSZXN1bHRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWRkUmVzdWx0cyIgVHlw ZU5hbWU9InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mQWRkUmVzdWx0cyIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBZGREaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6 SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBZGREaWFnbm9zdGljSW5mb3MiIFR5cGVO YW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZBZGREaWFnbm9zdGljSW5m b3MiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVtb3ZlUmVzdWx0cyIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlbW92ZVJlc3VsdHMiIFR5cGVO YW1lPSJ1YTpTdGF0dXNDb2RlIiBMZW5ndGhGaWVsZD0iTm9PZlJlbW92ZVJlc3VsdHMiIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mUmVtb3ZlRGlhZ25vc3RpY0luZm9zIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVtb3ZlRGlhZ25vc3RpY0luZm9z IiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIExlbmd0aEZpZWxkPSJOb09mUmVtb3ZlRGlh Z25vc3RpY0luZm9zIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBU eXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdWJz Y3JpcHRpb25JZCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJOb09mTW9uaXRvcmVkSXRlbUlkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik1vbml0b3JlZEl0ZW1JZHMiIFR5cGVOYW1lPSJvcGM6VUludDMyIiBMZW5n dGhGaWVsZD0iTm9PZk1vbml0b3JlZEl0ZW1JZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGVsZXRlTW9uaXRvcmVkSXRlbXNSZXNw b25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InVhOlN0YXR1c0NvZGUiIExlbmd0 aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9z dGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJE aWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9 Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxv cGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iQ3JlYXRlU3Vic2NyaXB0aW9uUmVxdWVzdCIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVh ZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdGVkTGlmZXRpbWVDb3VudCIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0ZWRNYXhLZWVwQWxpdmVD b3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYXhO b3RpZmljYXRpb25zUGVyUHVibGlzaCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJQdWJsaXNoaW5nRW5hYmxlZCIgVHlwZU5hbWU9Im9wYzpCb29sZWFuIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJpb3JpdHkiIFR5cGVOYW1lPSJvcGM6Qnl0ZSIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJD cmVhdGVTdWJzY3JpcHRpb25SZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNw b25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRQdWJsaXNo aW5nSW50ZXJ2YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmV2aXNlZExpZmV0aW1lQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmV2aXNlZE1heEtlZXBBbGl2ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJ bnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlw ZSBOYW1lPSJNb2RpZnlTdWJzY3JpcHRpb25SZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0 bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklk IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3Rl ZFB1Ymxpc2hpbmdJbnRlcnZhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXF1ZXN0ZWRMaWZldGltZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50IiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1heE5vdGlmaWNhdGlv bnNQZXJQdWJsaXNoIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlByaW9yaXR5IiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRU eXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTW9kaWZ5U3Vic2NyaXB0aW9uUmVz cG9uc2UiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iUmVzcG9uc2VIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJSZXZpc2VkUHVibGlzaGluZ0ludGVydmFsIiBUeXBlTmFtZT0ib3Bj OkRvdWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRMaWZldGltZUNvdW50IiBU eXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJldmlzZWRNYXhL ZWVwQWxpdmVDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2V0UHVibGlzaGluZ01vZGVS ZXF1ZXN0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlcXVlc3RIZWFkZXIiIFR5cGVOYW1lPSJ0bnM6UmVxdWVzdEhlYWRlciIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlB1Ymxpc2hpbmdFbmFibGVkIiBUeXBlTmFtZT0ib3BjOkJvb2xlYW4i IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU3Vic2NyaXB0aW9uSWRzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3Vic2NyaXB0aW9uSWRzIiBUeXBl TmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmllbGQ9Ik5vT2ZTdWJzY3JpcHRpb25JZHMiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2V0 UHVibGlzaGluZ01vZGVSZXNwb25zZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25zZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25z ZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0i b3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InVh OlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFnbm9zdGlj SW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3BjOlN0cnVj dHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iTm90aWZpY2F0aW9uTWVz c2FnZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJTZXF1ZW5jZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJQdWJsaXNoVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZOb3RpZmljYXRpb25EYXRhIiBUeXBlTmFtZT0ib3BjOkludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm90aWZpY2F0aW9uRGF0YSIgVHlwZU5hbWU9InVhOkV4 dGVuc2lvbk9iamVjdCIgTGVuZ3RoRmllbGQ9Ik5vT2ZOb3RpZmljYXRpb25EYXRhIiAvPg0KICA8 L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik5vdGlm aWNhdGlvbkRhdGEiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkRhdGFDaGFuZ2VOb3Rp ZmljYXRpb24iIEJhc2VUeXBlPSJ0bnM6Tm90aWZpY2F0aW9uRGF0YSI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJOb09mTW9uaXRvcmVkSXRlbXMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJNb25pdG9yZWRJdGVtcyIgVHlwZU5hbWU9InRuczpNb25pdG9yZWRJ dGVtTm90aWZpY2F0aW9uIiBMZW5ndGhGaWVsZD0iTm9PZk1vbml0b3JlZEl0ZW1zIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvcyIgVHlwZU5hbWU9InVh OkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAg PC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJNb25p dG9yZWRJdGVtTm90aWZpY2F0aW9uIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudEhhbmRsZSIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9InVhOkRhdGFWYWx1ZSIgLz4N CiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJF dmVudE5vdGlmaWNhdGlvbkxpc3QiIEJhc2VUeXBlPSJ0bnM6Tm90aWZpY2F0aW9uRGF0YSI+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZlbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnRzIiBUeXBlTmFtZT0idG5zOkV2ZW50RmllbGRMaXN0 IiBMZW5ndGhGaWVsZD0iTm9PZkV2ZW50cyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoN CiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJFdmVudEZpZWxkTGlzdCIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDbGllbnRIYW5kbGUiIFR5 cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkV2ZW50Rmll bGRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRXZlbnRG aWVsZHMiIFR5cGVOYW1lPSJ1YTpWYXJpYW50IiBMZW5ndGhGaWVsZD0iTm9PZkV2ZW50RmllbGRz IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9Ikhpc3RvcnlFdmVudEZpZWxkTGlzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRXZlbnRGaWVsZHMiIFR5cGVOYW1lPSJvcGM6SW50 MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFdmVudEZpZWxkcyIgVHlwZU5hbWU9InVhOlZh cmlhbnQiIExlbmd0aEZpZWxkPSJOb09mRXZlbnRGaWVsZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU3RhdHVzQ2hhbmdlTm90aWZp Y2F0aW9uIiBCYXNlVHlwZT0idG5zOk5vdGlmaWNhdGlvbkRhdGEiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iU3RhdHVzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9IkRpYWdub3N0aWNJbmZvIiBUeXBlTmFtZT0idWE6RGlhZ25vc3RpY0luZm8iIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU3Vi c2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNjcmlwdGlvbklkIiBUeXBlTmFtZT0ib3BjOlVJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlcXVlbmNlTnVtYmVyIiBUeXBlTmFtZT0ib3Bj OlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVk VHlwZSBOYW1lPSJQdWJsaXNoUmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVl c3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mU3Vic2NyaXB0aW9uQWNrbm93 bGVkZ2VtZW50cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlN1YnNjcmlwdGlvbkFja25vd2xlZGdlbWVudHMiIFR5cGVOYW1lPSJ0bnM6U3Vic2NyaXB0aW9u QWNrbm93bGVkZ2VtZW50IiBMZW5ndGhGaWVsZD0iTm9PZlN1YnNjcmlwdGlvbkFja25vd2xlZGdl bWVudHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5 cGUgTmFtZT0iUHVibGlzaFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3Bv bnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU3Vic2NyaXB0aW9uSWQiIFR5cGVO YW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkF2YWlsYWJsZVNl cXVlbmNlTnVtYmVycyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIExlbmd0 aEZpZWxkPSJOb09mQXZhaWxhYmxlU2VxdWVuY2VOdW1iZXJzIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTW9yZU5vdGlmaWNhdGlvbnMiIFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9Ik5vdGlmaWNhdGlvbk1lc3NhZ2UiIFR5cGVOYW1lPSJ0bnM6Tm90aWZp Y2F0aW9uTWVzc2FnZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBl TmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5h bWU9InVhOlN0YXR1c0NvZGUiIExlbmd0aEZpZWxkPSJOb09mUmVzdWx0cyIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEaWFnbm9zdGljSW5mb3MiIFR5cGVOYW1lPSJ1YTpEaWFn bm9zdGljSW5mbyIgTGVuZ3RoRmllbGQ9Ik5vT2ZEaWFnbm9zdGljSW5mb3MiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUmVwdWJsaXNo UmVxdWVzdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJSZXF1ZXN0SGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJTdWJzY3JpcHRpb25JZCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXRyYW5zbWl0U2VxdWVuY2VOdW1iZXIiIFR5cGVOYW1l PSJvcGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVj dHVyZWRUeXBlIE5hbWU9IlJlcHVibGlzaFJlc3BvbnNlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3BvbnNlSGVhZGVyIiBUeXBlTmFtZT0i dG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm90aWZpY2F0aW9u TWVzc2FnZSIgVHlwZU5hbWU9InRuczpOb3RpZmljYXRpb25NZXNzYWdlIiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlRyYW5zZmVyUmVz dWx0IiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9 IlN0YXR1c0NvZGUiIFR5cGVOYW1lPSJ1YTpTdGF0dXNDb2RlIiAvPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iTm9PZkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mQXZhaWxhYmxlU2VxdWVuY2VOdW1iZXJz IiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IlRyYW5zZmVyU3Vic2NyaXB0aW9uc1JlcXVlc3QiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVxdWVzdEhlYWRlciIgVHlwZU5hbWU9InRu czpSZXF1ZXN0SGVhZGVyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZlN1YnNjcmlwdGlv bklkcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN1YnNj cmlwdGlvbklkcyIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIExlbmd0aEZpZWxkPSJOb09mU3Vic2Ny aXB0aW9uSWRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VuZEluaXRpYWxWYWx1ZXMiIFR5 cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9w YzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJUcmFuc2ZlclN1YnNjcmlwdGlvbnNSZXNwb25zZSIgQmFz ZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXNwb25z ZUhlYWRlciIgVHlwZU5hbWU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZSZXN1bHRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iUmVzdWx0cyIgVHlwZU5hbWU9InRuczpUcmFuc2ZlclJlc3VsdCIgTGVuZ3RoRmll bGQ9Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJ bmZvcyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdu b3N0aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9P ZkRpYWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJEZWxldGVTdWJzY3JpcHRpb25zUmVxdWVzdCIgQmFzZVR5cGU9 InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXF1ZXN0SGVhZGVy IiBUeXBlTmFtZT0idG5zOlJlcXVlc3RIZWFkZXIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mU3Vic2NyaXB0aW9uSWRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iU3Vic2NyaXB0aW9uSWRzIiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgTGVuZ3RoRmll bGQ9Ik5vT2ZTdWJzY3JpcHRpb25JZHMiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRGVsZXRlU3Vic2NyaXB0aW9uc1Jlc3BvbnNlIiBC YXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlJlc3Bv bnNlSGVhZGVyIiBUeXBlTmFtZT0idG5zOlJlc3BvbnNlSGVhZGVyIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iTm9PZlJlc3VsdHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJSZXN1bHRzIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29kZSIgTGVuZ3RoRmllbGQ9 Ik5vT2ZSZXN1bHRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkRpYWdub3N0aWNJbmZv cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0 aWNJbmZvcyIgVHlwZU5hbWU9InVhOkRpYWdub3N0aWNJbmZvIiBMZW5ndGhGaWVsZD0iTm9PZkRp YWdub3N0aWNJbmZvcyIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1 Y3R1cmVkVHlwZSBOYW1lPSJCdWlsZEluZm8iIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHJvZHVjdFVyaSIgVHlwZU5hbWU9Im9wYzpTdHJpbmci IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNYW51ZmFjdHVyZXJOYW1lIiBUeXBlTmFtZT0ib3Bj OlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlByb2R1Y3ROYW1lIiBUeXBlTmFtZT0i b3BjOlN0cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNvZnR3YXJlVmVyc2lvbiIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCdWlsZE51bWJlciIg VHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJCdWlsZERhdGUi IFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iUmVkdW5kYW5jeVN1cHBvcnQiIExlbmd0aEluQml0 cz0iMzIiPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ik5vbmUiIFZhbHVlPSIwIiAv Pg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkNvbGQiIFZhbHVlPSIxIiAvPg0KICAg IDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9Ildhcm0iIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6 RW51bWVyYXRlZFZhbHVlIE5hbWU9IkhvdCIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iVHJhbnNwYXJlbnQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVy YXRlZFZhbHVlIE5hbWU9IkhvdEFuZE1pcnJvcmVkIiBWYWx1ZT0iNSIgLz4NCiAgPC9vcGM6RW51 bWVyYXRlZFR5cGU+DQoNCiAgPG9wYzpFbnVtZXJhdGVkVHlwZSBOYW1lPSJTZXJ2ZXJTdGF0ZSIg TGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUnVubmlu ZyIgVmFsdWU9IjAiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iRmFpbGVkIiBW YWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJOb0NvbmZpZ3VyYXRp b24iIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlN1c3BlbmRl ZCIgVmFsdWU9IjMiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iU2h1dGRvd24i IFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IlRlc3QiIFZhbHVl PSI1IiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkNvbW11bmljYXRpb25GYXVs dCIgVmFsdWU9IjYiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iVW5rbm93biIg VmFsdWU9IjciIC8+DQogIDwvb3BjOkVudW1lcmF0ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNp b25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVySWQiIFR5cGVOYW1lPSJvcGM6 U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmljZUxldmVsIiBUeXBlTmFtZT0i b3BjOkJ5dGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJTdGF0ZSIgVHlwZU5hbWU9 InRuczpTZXJ2ZXJTdGF0ZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpT dHJ1Y3R1cmVkVHlwZSBOYW1lPSJFbmRwb2ludFVybExpc3REYXRhVHlwZSIgQmFzZVR5cGU9InVh OkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mRW5kcG9pbnRVcmxM aXN0IiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5kcG9p bnRVcmxMaXN0IiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgTGVuZ3RoRmllbGQ9Ik5vT2ZFbmRwb2lu dFVybExpc3QiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iTmV0d29ya0dyb3VwRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25P YmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyVXJpIiBUeXBlTmFtZT0ib3BjOlN0 cmluZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZOZXR3b3JrUGF0aHMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOZXR3b3JrUGF0aHMiIFR5cGVO YW1lPSJ0bnM6RW5kcG9pbnRVcmxMaXN0RGF0YVR5cGUiIExlbmd0aEZpZWxkPSJOb09mTmV0d29y a1BhdGhzIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRU eXBlIE5hbWU9IlNhbXBsaW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNhbXBsaW5nSW50ZXJ2 YWwiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTW9uaXRv cmVkSXRlbUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik1heE1vbml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEaXNhYmxlZE1vbml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iU2VydmVyRGlhZ25vc3RpY3NTdW1tYXJ5RGF0YVR5cGUiIEJhc2VUeXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2VydmVyVmlld0NvdW50 IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkN1cnJlbnRT ZXNzaW9uQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iQ3VtdWxhdGVkU2Vzc2lvbkNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlNlY3VyaXR5UmVqZWN0ZWRTZXNzaW9uQ291bnQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVqZWN0ZWRTZXNzaW9uQ291bnQi IFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2Vzc2lvblRp bWVvdXRDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJTZXNzaW9uQWJvcnRDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJDdXJyZW50U3Vic2NyaXB0aW9uQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMy IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3VtdWxhdGVkU3Vic2NyaXB0aW9uQ291bnQiIFR5 cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaGluZ0lu dGVydmFsQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iU2VjdXJpdHlSZWplY3RlZFJlcXVlc3RzQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUmVqZWN0ZWRSZXF1ZXN0c0NvdW50IiBUeXBlTmFtZT0i b3BjOlVJbnQzMiIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJTZXJ2ZXJTdGF0dXNEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lv bk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGFydFRpbWUiIFR5cGVOYW1lPSJvcGM6 RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDdXJyZW50VGltZSIgVHlwZU5hbWU9 Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlN0YXRlIiBUeXBlTmFtZT0i dG5zOlNlcnZlclN0YXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQnVpbGRJbmZvIiBUeXBl TmFtZT0idG5zOkJ1aWxkSW5mbyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlNlY29uZHNUaWxs U2h1dGRvd24iIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i U2h1dGRvd25SZWFzb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpT dHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IlNlc3Npb25EaWFn bm9zdGljc0RhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlc3Npb25JZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlc3Npb25OYW1lIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkNsaWVudERlc2NyaXB0aW9uIiBUeXBlTmFtZT0idG5zOkFwcGxpY2F0 aW9uRGVzY3JpcHRpb24iIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXJ2ZXJVcmkiIFR5cGVO YW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRW5kcG9pbnRVcmwiIFR5 cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxvY2FsZUlk cyIgVHlwZU5hbWU9Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkxvY2FsZUlk cyIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIExlbmd0aEZpZWxkPSJOb09mTG9jYWxlSWRzIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iQWN0dWFsU2Vzc2lvblRpbWVvdXQiIFR5cGVOYW1lPSJvcGM6 RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4UmVzcG9uc2VNZXNzYWdlU2l6ZSIg VHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDbGllbnRDb25u ZWN0aW9uVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IkNsaWVudExhc3RDb250YWN0VGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IkN1cnJlbnRTdWJzY3JpcHRpb25zQ291bnQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3VycmVudE1vbml0b3JlZEl0ZW1z Q291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ3Vy cmVudFB1Ymxpc2hSZXF1ZXN0c0luUXVldWUiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAg IDxvcGM6RmllbGQgTmFtZT0iVG90YWxSZXF1ZXN0Q291bnQiIFR5cGVOYW1lPSJ0bnM6U2Vydmlj ZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlVuYXV0aG9yaXplZFJl cXVlc3RDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZWFkQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9Ikhpc3RvcnlSZWFkQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2Vydmlj ZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IldyaXRlQ291bnQiIFR5 cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ikhpc3RvcnlVcGRhdGVDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFU eXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQ2FsbENvdW50IiBUeXBlTmFtZT0idG5zOlNl cnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJDcmVhdGVNb25p dG9yZWRJdGVtc0NvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNb2RpZnlNb25pdG9yZWRJdGVtc0NvdW50IiBUeXBlTmFt ZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJT ZXRNb25pdG9yaW5nTW9kZUNvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5 cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXRUcmlnZ2VyaW5nQ291bnQiIFR5cGVOYW1l PSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRl bGV0ZU1vbml0b3JlZEl0ZW1zQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRh VHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZVN1YnNjcmlwdGlvbkNvdW50IiBU eXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBO YW1lPSJNb2RpZnlTdWJzY3JpcHRpb25Db3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRl ckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iU2V0UHVibGlzaGluZ01vZGVDb3Vu dCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6Rmll bGQgTmFtZT0iUHVibGlzaENvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5 cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXB1Ymxpc2hDb3VudCIgVHlwZU5hbWU9InRu czpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJhbnNm ZXJTdWJzY3JpcHRpb25zQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlw ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlvbnNDb3VudCIgVHlw ZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iQWRkTm9kZXNDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWRkUmVmZXJlbmNlc0NvdW50IiBUeXBlTmFtZT0idG5z OlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEZWxldGVO b2Rlc0NvdW50IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAg PG9wYzpGaWVsZCBOYW1lPSJEZWxldGVSZWZlcmVuY2VzQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2Vy dmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkJyb3dzZUNvdW50 IiBUeXBlTmFtZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJCcm93c2VOZXh0Q291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRh VHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyYW5zbGF0ZUJyb3dzZVBhdGhzVG9Ob2Rl SWRzQ291bnQiIFR5cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IlF1ZXJ5Rmlyc3RDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291 bnRlckRhdGFUeXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUXVlcnlOZXh0Q291bnQiIFR5 cGVOYW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9IlJlZ2lzdGVyTm9kZXNDb3VudCIgVHlwZU5hbWU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFU eXBlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVW5yZWdpc3Rlck5vZGVzQ291bnQiIFR5cGVO YW1lPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5 cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJTZXNzaW9uU2VjdXJpdHlEaWFnbm9z dGljc0RhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IlNlc3Npb25JZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9IkNsaWVudFVzZXJJZE9mU2Vzc2lvbiIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mQ2xpZW50VXNlcklkSGlzdG9yeSIgVHlwZU5hbWU9 Im9wYzpJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudFVzZXJJZEhpc3Rvcnki IFR5cGVOYW1lPSJvcGM6U3RyaW5nIiBMZW5ndGhGaWVsZD0iTm9PZkNsaWVudFVzZXJJZEhpc3Rv cnkiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBdXRoZW50aWNhdGlvbk1lY2hhbmlzbSIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJFbmNvZGluZyIgVHlw ZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUcmFuc3BvcnRQcm90 b2NvbCIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZWN1 cml0eU1vZGUiIFR5cGVOYW1lPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9IlNlY3VyaXR5UG9saWN5VXJpIiBUeXBlTmFtZT0ib3BjOlN0cmluZyIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IkNsaWVudENlcnRpZmljYXRlIiBUeXBlTmFtZT0ib3BjOkJ5 dGVTdHJpbmciIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJl ZFR5cGUgTmFtZT0iU2VydmljZUNvdW50ZXJEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lv bk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJUb3RhbENvdW50IiBUeXBlTmFtZT0ib3Bj OlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVycm9yQ291bnQiIFR5cGVOYW1lPSJv cGM6VUludDMyIiAvPg0KICA8L29wYzpTdHJ1Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVy ZWRUeXBlIE5hbWU9IlN0YXR1c1Jlc3VsdCIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdGF0dXNDb2RlIiBUeXBlTmFtZT0idWE6U3RhdHVzQ29k ZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRpYWdub3N0aWNJbmZvIiBUeXBlTmFtZT0idWE6 RGlhZ25vc3RpY0luZm8iIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3Ry dWN0dXJlZFR5cGUgTmFtZT0iU3Vic2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgQmFzZVR5 cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTZXNzaW9uSWQi IFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJTdWJzY3JpcHRp b25JZCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJQcmlv cml0eSIgVHlwZU5hbWU9Im9wYzpCeXRlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlz aGluZ0ludGVydmFsIiBUeXBlTmFtZT0ib3BjOkRvdWJsZSIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik1heEtlZXBBbGl2ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3Bj OkZpZWxkIE5hbWU9Ik1heExpZmV0aW1lQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0K ICAgIDxvcGM6RmllbGQgTmFtZT0iTWF4Tm90aWZpY2F0aW9uc1BlclB1Ymxpc2giIFR5cGVOYW1l PSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaGluZ0VuYWJsZWQi IFR5cGVOYW1lPSJvcGM6Qm9vbGVhbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1vZGlmeUNv dW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkVuYWJs ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkRp c2FibGVDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1l PSJSZXB1Ymxpc2hSZXF1ZXN0Q291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iUmVwdWJsaXNoTWVzc2FnZVJlcXVlc3RDb3VudCIgVHlwZU5hbWU9Im9w YzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJSZXB1Ymxpc2hNZXNzYWdlQ291bnQi IFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVHJhbnNmZXJS ZXF1ZXN0Q291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iVHJhbnNmZXJyZWRUb0FsdENsaWVudENvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9IlRyYW5zZmVycmVkVG9TYW1lQ2xpZW50Q291bnQiIFR5cGVO YW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iUHVibGlzaFJlcXVlc3RD b3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJEYXRh Q2hhbmdlTm90aWZpY2F0aW9uc0NvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8 b3BjOkZpZWxkIE5hbWU9IkV2ZW50Tm90aWZpY2F0aW9uc0NvdW50IiBUeXBlTmFtZT0ib3BjOlVJ bnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vdGlmaWNhdGlvbnNDb3VudCIgVHlwZU5h bWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXRlUHVibGlzaFJlcXVl c3RDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJD dXJyZW50S2VlcEFsaXZlQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQ3VycmVudExpZmV0aW1lQ291bnQiIFR5cGVOYW1lPSJvcGM6VUludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVW5hY2tub3dsZWRnZWRNZXNzYWdlQ291bnQiIFR5cGVO YW1lPSJvcGM6VUludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzY2FyZGVkTWVzc2Fn ZUNvdW50IiBUeXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1v bml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJEaXNhYmxlZE1vbml0b3JlZEl0ZW1Db3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJNb25pdG9yaW5nUXVldWVPdmVyZmxvd0NvdW50IiBU eXBlTmFtZT0ib3BjOlVJbnQzMiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5leHRTZXF1ZW5j ZU51bWJlciIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJF dmVudFF1ZXVlT3ZlckZsb3dDb3VudCIgVHlwZU5hbWU9Im9wYzpVSW50MzIiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iTW9kZWxDaGFu Z2VTdHJ1Y3R1cmVWZXJiTWFzayIgTGVuZ3RoSW5CaXRzPSIzMiI+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iTm9kZUFkZGVkIiBWYWx1ZT0iMSIgLz4NCiAgICA8b3BjOkVudW1lcmF0 ZWRWYWx1ZSBOYW1lPSJOb2RlRGVsZXRlZCIgVmFsdWU9IjIiIC8+DQogICAgPG9wYzpFbnVtZXJh dGVkVmFsdWUgTmFtZT0iUmVmZXJlbmNlQWRkZWQiIFZhbHVlPSI0IiAvPg0KICAgIDxvcGM6RW51 bWVyYXRlZFZhbHVlIE5hbWU9IlJlZmVyZW5jZURlbGV0ZWQiIFZhbHVlPSI4IiAvPg0KICAgIDxv cGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkRhdGFUeXBlQ2hhbmdlZCIgVmFsdWU9IjE2IiAvPg0K ICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9Ik1v ZGVsQ2hhbmdlU3RydWN0dXJlRGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQWZmZWN0ZWQiIFR5cGVOYW1lPSJ1YTpOb2RlSWQiIC8+ DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBZmZlY3RlZFR5cGUiIFR5cGVOYW1lPSJ1YTpOb2RlSWQi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWZXJiIiBUeXBlTmFtZT0ib3BjOkJ5dGUiIC8+DQog IDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iU2Vt YW50aWNDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlwZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVj dCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBZmZlY3RlZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIg Lz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkFmZmVjdGVkVHlwZSIgVHlwZU5hbWU9InVhOk5vZGVJ ZCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBO YW1lPSJSYW5nZSIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJMb3ciIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICAgIDxvcGM6RmllbGQgTmFt ZT0iSGlnaCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBl Pg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRVVJbmZvcm1hdGlvbiIgQmFzZVR5cGU9 InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOYW1lc3BhY2VVcmki IFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVW5pdElkIiBU eXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGlzcGxheU5hbWUi IFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iRGVz Y3JpcHRpb24iIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICA8L29wYzpTdHJ1Y3R1 cmVkVHlwZT4NCg0KICA8b3BjOkVudW1lcmF0ZWRUeXBlIE5hbWU9IkF4aXNTY2FsZUVudW1lcmF0 aW9uIiBMZW5ndGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJM aW5lYXIiIFZhbHVlPSIwIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9IkxvZyIg VmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iTG4iIFZhbHVlPSIy IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5h bWU9IkNvbXBsZXhOdW1iZXJUeXBlIiBCYXNlVHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAg ICA8b3BjOkZpZWxkIE5hbWU9IlJlYWwiIFR5cGVOYW1lPSJvcGM6RmxvYXQiIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJJbWFnaW5hcnkiIFR5cGVOYW1lPSJvcGM6RmxvYXQiIC8+DQogIDwvb3Bj OlN0cnVjdHVyZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iRG91YmxlQ29t cGxleE51bWJlclR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iUmVhbCIgVHlwZU5hbWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVs ZCBOYW1lPSJJbWFnaW5hcnkiIFR5cGVOYW1lPSJvcGM6RG91YmxlIiAvPg0KICA8L29wYzpTdHJ1 Y3R1cmVkVHlwZT4NCg0KICA8b3BjOlN0cnVjdHVyZWRUeXBlIE5hbWU9IkF4aXNJbmZvcm1hdGlv biIgQmFzZVR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCI+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJF bmdpbmVlcmluZ1VuaXRzIiBUeXBlTmFtZT0idG5zOkVVSW5mb3JtYXRpb24iIC8+DQogICAgPG9w YzpGaWVsZCBOYW1lPSJFVVJhbmdlIiBUeXBlTmFtZT0idG5zOlJhbmdlIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iVGl0bGUiIFR5cGVOYW1lPSJ1YTpMb2NhbGl6ZWRUZXh0IiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iQXhpc1NjYWxlVHlwZSIgVHlwZU5hbWU9InRuczpBeGlzU2NhbGVFbnVt ZXJhdGlvbiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik5vT2ZBeGlzU3RlcHMiIFR5cGVOYW1l PSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJBeGlzU3RlcHMiIFR5cGVOYW1l PSJvcGM6RG91YmxlIiBMZW5ndGhGaWVsZD0iTm9PZkF4aXNTdGVwcyIgLz4NCiAgPC9vcGM6U3Ry dWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJYVlR5cGUiIEJhc2VU eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iWCIgVHlwZU5h bWU9Im9wYzpEb3VibGUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJWYWx1ZSIgVHlwZU5hbWU9 Im9wYzpGbG9hdCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1 cmVkVHlwZSBOYW1lPSJQcm9ncmFtRGlhZ25vc3RpY0RhdGFUeXBlIiBCYXNlVHlwZT0idWE6RXh0 ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZVNlc3Npb25JZCIgVHlw ZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9IkNyZWF0ZUNsaWVudE5h bWUiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iSW52b2Nh dGlvbkNyZWF0aW9uVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4NCiAgICA8b3BjOkZp ZWxkIE5hbWU9Ikxhc3RUcmFuc2l0aW9uVGltZSIgVHlwZU5hbWU9Im9wYzpEYXRlVGltZSIgLz4N CiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RNZXRob2RDYWxsIiBUeXBlTmFtZT0ib3BjOlN0cmlu ZyIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RNZXRob2RTZXNzaW9uSWQiIFR5cGVOYW1l PSJ1YTpOb2RlSWQiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJOb09mTGFzdE1ldGhvZElucHV0 QXJndW1lbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0i TGFzdE1ldGhvZElucHV0QXJndW1lbnRzIiBUeXBlTmFtZT0idG5zOkFyZ3VtZW50IiBMZW5ndGhG aWVsZD0iTm9PZkxhc3RNZXRob2RJbnB1dEFyZ3VtZW50cyIgLz4NCiAgICA8b3BjOkZpZWxkIE5h bWU9Ik5vT2ZMYXN0TWV0aG9kT3V0cHV0QXJndW1lbnRzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAv Pg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZE91dHB1dEFyZ3VtZW50cyIgVHlwZU5h bWU9InRuczpBcmd1bWVudCIgTGVuZ3RoRmllbGQ9Ik5vT2ZMYXN0TWV0aG9kT3V0cHV0QXJndW1l bnRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZENhbGxUaW1lIiBUeXBlTmFt ZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZFJldHVy blN0YXR1cyIgVHlwZU5hbWU9InRuczpTdGF0dXNSZXN1bHQiIC8+DQogIDwvb3BjOlN0cnVjdHVy ZWRUeXBlPg0KDQogIDxvcGM6U3RydWN0dXJlZFR5cGUgTmFtZT0iUHJvZ3JhbURpYWdub3N0aWMy RGF0YVR5cGUiIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiPg0KICAgIDxvcGM6RmllbGQg TmFtZT0iQ3JlYXRlU2Vzc2lvbklkIiBUeXBlTmFtZT0idWE6Tm9kZUlkIiAvPg0KICAgIDxvcGM6 RmllbGQgTmFtZT0iQ3JlYXRlQ2xpZW50TmFtZSIgVHlwZU5hbWU9Im9wYzpTdHJpbmciIC8+DQog ICAgPG9wYzpGaWVsZCBOYW1lPSJJbnZvY2F0aW9uQ3JlYXRpb25UaW1lIiBUeXBlTmFtZT0ib3Bj OkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdFRyYW5zaXRpb25UaW1lIiBU eXBlTmFtZT0ib3BjOkRhdGVUaW1lIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFzdE1ldGhv ZENhbGwiIFR5cGVOYW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTGFz dE1ldGhvZFNlc3Npb25JZCIgVHlwZU5hbWU9InVhOk5vZGVJZCIgLz4NCiAgICA8b3BjOkZpZWxk IE5hbWU9Ik5vT2ZMYXN0TWV0aG9kSW5wdXRBcmd1bWVudHMiIFR5cGVOYW1lPSJvcGM6SW50MzIi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0aG9kSW5wdXRBcmd1bWVudHMiIFR5cGVO YW1lPSJ0bnM6QXJndW1lbnQiIExlbmd0aEZpZWxkPSJOb09mTGFzdE1ldGhvZElucHV0QXJndW1l bnRzIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iTm9PZkxhc3RNZXRob2RPdXRwdXRBcmd1bWVu dHMiIFR5cGVOYW1lPSJvcGM6SW50MzIiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0 aG9kT3V0cHV0QXJndW1lbnRzIiBUeXBlTmFtZT0idG5zOkFyZ3VtZW50IiBMZW5ndGhGaWVsZD0i Tm9PZkxhc3RNZXRob2RPdXRwdXRBcmd1bWVudHMiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJO b09mTGFzdE1ldGhvZElucHV0VmFsdWVzIiBUeXBlTmFtZT0ib3BjOkludDMyIiAvPg0KICAgIDxv cGM6RmllbGQgTmFtZT0iTGFzdE1ldGhvZElucHV0VmFsdWVzIiBUeXBlTmFtZT0idWE6VmFyaWFu dCIgTGVuZ3RoRmllbGQ9Ik5vT2ZMYXN0TWV0aG9kSW5wdXRWYWx1ZXMiIC8+DQogICAgPG9wYzpG aWVsZCBOYW1lPSJOb09mTGFzdE1ldGhvZE91dHB1dFZhbHVlcyIgVHlwZU5hbWU9Im9wYzpJbnQz MiIgLz4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ikxhc3RNZXRob2RPdXRwdXRWYWx1ZXMiIFR5cGVO YW1lPSJ1YTpWYXJpYW50IiBMZW5ndGhGaWVsZD0iTm9PZkxhc3RNZXRob2RPdXRwdXRWYWx1ZXMi IC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0aG9kQ2FsbFRpbWUiIFR5cGVOYW1lPSJv cGM6RGF0ZVRpbWUiIC8+DQogICAgPG9wYzpGaWVsZCBOYW1lPSJMYXN0TWV0aG9kUmV0dXJuU3Rh dHVzIiBUeXBlTmFtZT0idG5zOlN0YXR1c1Jlc3VsdCIgLz4NCiAgPC9vcGM6U3RydWN0dXJlZFR5 cGU+DQoNCiAgPG9wYzpTdHJ1Y3R1cmVkVHlwZSBOYW1lPSJBbm5vdGF0aW9uIiBCYXNlVHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0Ij4NCiAgICA8b3BjOkZpZWxkIE5hbWU9Ik1lc3NhZ2UiIFR5cGVO YW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iVXNlck5hbWUiIFR5cGVO YW1lPSJvcGM6U3RyaW5nIiAvPg0KICAgIDxvcGM6RmllbGQgTmFtZT0iQW5ub3RhdGlvblRpbWUi IFR5cGVOYW1lPSJvcGM6RGF0ZVRpbWUiIC8+DQogIDwvb3BjOlN0cnVjdHVyZWRUeXBlPg0KDQog IDxvcGM6RW51bWVyYXRlZFR5cGUgTmFtZT0iRXhjZXB0aW9uRGV2aWF0aW9uRm9ybWF0IiBMZW5n dGhJbkJpdHM9IjMyIj4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJBYnNvbHV0ZVZh bHVlIiBWYWx1ZT0iMCIgLz4NCiAgICA8b3BjOkVudW1lcmF0ZWRWYWx1ZSBOYW1lPSJQZXJjZW50 T2ZWYWx1ZSIgVmFsdWU9IjEiIC8+DQogICAgPG9wYzpFbnVtZXJhdGVkVmFsdWUgTmFtZT0iUGVy Y2VudE9mUmFuZ2UiIFZhbHVlPSIyIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVlIE5hbWU9 IlBlcmNlbnRPZkVVUmFuZ2UiIFZhbHVlPSIzIiAvPg0KICAgIDxvcGM6RW51bWVyYXRlZFZhbHVl IE5hbWU9IlVua25vd24iIFZhbHVlPSI0IiAvPg0KICA8L29wYzpFbnVtZXJhdGVkVHlwZT4NCg0K PC9vcGM6VHlwZURpY3Rpb25hcnk+ NamespaceUri A URI that uniquely identifies the dictionary. i=68 i=7617 http://opcfoundation.org/UA/ Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 i=7617 true KeyValuePair i=69 i=7617 KeyValuePair EndpointType i=69 i=7617 EndpointType IdentityMappingRuleType i=69 i=7617 IdentityMappingRuleType TrustListDataType i=69 i=7617 TrustListDataType DataTypeSchemaHeader i=69 i=7617 DataTypeSchemaHeader DataTypeDescription i=69 i=7617 DataTypeDescription StructureDescription i=69 i=7617 StructureDescription EnumDescription i=69 i=7617 EnumDescription SimpleTypeDescription i=69 i=7617 SimpleTypeDescription UABinaryFileDataType i=69 i=7617 UABinaryFileDataType DataSetMetaDataType i=69 i=7617 DataSetMetaDataType FieldMetaData i=69 i=7617 FieldMetaData ConfigurationVersionDataType i=69 i=7617 ConfigurationVersionDataType PublishedDataSetDataType i=69 i=7617 PublishedDataSetDataType PublishedDataSetSourceDataType i=69 i=7617 PublishedDataSetSourceDataType PublishedVariableDataType i=69 i=7617 PublishedVariableDataType PublishedDataItemsDataType i=69 i=7617 PublishedDataItemsDataType PublishedEventsDataType i=69 i=7617 PublishedEventsDataType DataSetWriterDataType i=69 i=7617 DataSetWriterDataType DataSetWriterTransportDataType i=69 i=7617 DataSetWriterTransportDataType DataSetWriterMessageDataType i=69 i=7617 DataSetWriterMessageDataType PubSubGroupDataType i=69 i=7617 PubSubGroupDataType WriterGroupDataType i=69 i=7617 WriterGroupDataType WriterGroupTransportDataType i=69 i=7617 WriterGroupTransportDataType WriterGroupMessageDataType i=69 i=7617 WriterGroupMessageDataType PubSubConnectionDataType i=69 i=7617 PubSubConnectionDataType ConnectionTransportDataType i=69 i=7617 ConnectionTransportDataType NetworkAddressDataType i=69 i=7617 NetworkAddressDataType NetworkAddressUrlDataType i=69 i=7617 NetworkAddressUrlDataType ReaderGroupDataType i=69 i=7617 ReaderGroupDataType ReaderGroupTransportDataType i=69 i=7617 ReaderGroupTransportDataType ReaderGroupMessageDataType i=69 i=7617 ReaderGroupMessageDataType DataSetReaderDataType i=69 i=7617 DataSetReaderDataType DataSetReaderTransportDataType i=69 i=7617 DataSetReaderTransportDataType DataSetReaderMessageDataType i=69 i=7617 DataSetReaderMessageDataType SubscribedDataSetDataType i=69 i=7617 SubscribedDataSetDataType TargetVariablesDataType i=69 i=7617 TargetVariablesDataType FieldTargetDataType i=69 i=7617 FieldTargetDataType SubscribedDataSetMirrorDataType i=69 i=7617 SubscribedDataSetMirrorDataType PubSubConfigurationDataType i=69 i=7617 PubSubConfigurationDataType UadpWriterGroupMessageDataType i=69 i=7617 UadpWriterGroupMessageDataType UadpDataSetWriterMessageDataType i=69 i=7617 UadpDataSetWriterMessageDataType UadpDataSetReaderMessageDataType i=69 i=7617 UadpDataSetReaderMessageDataType JsonWriterGroupMessageDataType i=69 i=7617 JsonWriterGroupMessageDataType JsonDataSetWriterMessageDataType i=69 i=7617 JsonDataSetWriterMessageDataType JsonDataSetReaderMessageDataType i=69 i=7617 JsonDataSetReaderMessageDataType DatagramConnectionTransportDataType i=69 i=7617 DatagramConnectionTransportDataType DatagramWriterGroupTransportDataType i=69 i=7617 DatagramWriterGroupTransportDataType BrokerConnectionTransportDataType i=69 i=7617 BrokerConnectionTransportDataType BrokerWriterGroupTransportDataType i=69 i=7617 BrokerWriterGroupTransportDataType BrokerDataSetWriterTransportDataType i=69 i=7617 BrokerDataSetWriterTransportDataType BrokerDataSetReaderTransportDataType i=69 i=7617 BrokerDataSetReaderTransportDataType RolePermissionType i=69 i=7617 RolePermissionType DataTypeDefinition i=69 i=7617 DataTypeDefinition StructureField i=69 i=7617 StructureField StructureDefinition i=69 i=7617 StructureDefinition EnumDefinition i=69 i=7617 EnumDefinition Argument i=69 i=7617 Argument EnumValueType i=69 i=7617 EnumValueType EnumField i=69 i=7617 EnumField OptionSet i=69 i=7617 OptionSet Union i=69 i=7617 Union TimeZoneDataType i=69 i=7617 TimeZoneDataType ApplicationDescription i=69 i=7617 ApplicationDescription ServerOnNetwork i=69 i=7617 ServerOnNetwork UserTokenPolicy i=69 i=7617 UserTokenPolicy EndpointDescription i=69 i=7617 EndpointDescription RegisteredServer i=69 i=7617 RegisteredServer DiscoveryConfiguration i=69 i=7617 DiscoveryConfiguration MdnsDiscoveryConfiguration i=69 i=7617 MdnsDiscoveryConfiguration SignedSoftwareCertificate i=69 i=7617 SignedSoftwareCertificate UserIdentityToken i=69 i=7617 UserIdentityToken AnonymousIdentityToken i=69 i=7617 AnonymousIdentityToken UserNameIdentityToken i=69 i=7617 UserNameIdentityToken X509IdentityToken i=69 i=7617 X509IdentityToken IssuedIdentityToken i=69 i=7617 IssuedIdentityToken AddNodesItem i=69 i=7617 AddNodesItem AddReferencesItem i=69 i=7617 AddReferencesItem DeleteNodesItem i=69 i=7617 DeleteNodesItem DeleteReferencesItem i=69 i=7617 DeleteReferencesItem RelativePathElement i=69 i=7617 RelativePathElement RelativePath i=69 i=7617 RelativePath EndpointConfiguration i=69 i=7617 EndpointConfiguration ContentFilterElement i=69 i=7617 ContentFilterElement ContentFilter i=69 i=7617 ContentFilter FilterOperand i=69 i=7617 FilterOperand ElementOperand i=69 i=7617 ElementOperand LiteralOperand i=69 i=7617 LiteralOperand AttributeOperand i=69 i=7617 AttributeOperand SimpleAttributeOperand i=69 i=7617 SimpleAttributeOperand HistoryEvent i=69 i=7617 HistoryEvent MonitoringFilter i=69 i=7617 MonitoringFilter EventFilter i=69 i=7617 EventFilter AggregateConfiguration i=69 i=7617 AggregateConfiguration HistoryEventFieldList i=69 i=7617 HistoryEventFieldList BuildInfo i=69 i=7617 BuildInfo RedundantServerDataType i=69 i=7617 RedundantServerDataType EndpointUrlListDataType i=69 i=7617 EndpointUrlListDataType NetworkGroupDataType i=69 i=7617 NetworkGroupDataType SamplingIntervalDiagnosticsDataType i=69 i=7617 SamplingIntervalDiagnosticsDataType ServerDiagnosticsSummaryDataType i=69 i=7617 ServerDiagnosticsSummaryDataType ServerStatusDataType i=69 i=7617 ServerStatusDataType SessionDiagnosticsDataType i=69 i=7617 SessionDiagnosticsDataType SessionSecurityDiagnosticsDataType i=69 i=7617 SessionSecurityDiagnosticsDataType ServiceCounterDataType i=69 i=7617 ServiceCounterDataType StatusResult i=69 i=7617 StatusResult SubscriptionDiagnosticsDataType i=69 i=7617 SubscriptionDiagnosticsDataType ModelChangeStructureDataType i=69 i=7617 ModelChangeStructureDataType SemanticChangeStructureDataType i=69 i=7617 SemanticChangeStructureDataType Range i=69 i=7617 Range EUInformation i=69 i=7617 EUInformation ComplexNumberType i=69 i=7617 ComplexNumberType DoubleComplexNumberType i=69 i=7617 DoubleComplexNumberType AxisInformation i=69 i=7617 AxisInformation XVType i=69 i=7617 XVType ProgramDiagnosticDataType i=69 i=7617 ProgramDiagnosticDataType ProgramDiagnostic2DataType i=69 i=7617 ProgramDiagnostic2DataType Annotation i=69 i=7617 Annotation Default XML i=14533 i=14829 i=76 Default XML i=15528 i=16024 i=76 Default XML i=15634 i=15730 i=76 Default XML i=12554 i=12677 i=76 Default XML i=15534 i=16027 i=76 Default XML i=14525 i=14811 i=76 Default XML i=15487 i=15591 i=76 Default XML i=15488 i=15594 i=76 Default XML i=15005 i=15585 i=76 Default XML i=15006 i=15588 i=76 Default XML i=14523 i=14805 i=76 Default XML i=14524 i=14808 i=76 Default XML i=14593 i=14832 i=76 Default XML i=15578 i=16030 i=76 Default XML i=15580 i=16033 i=76 Default XML i=14273 i=14320 i=76 Default XML i=15581 i=16037 i=76 Default XML i=15582 i=16040 i=76 Default XML i=15597 i=16047 i=76 Default XML i=15598 i=16050 i=76 Default XML i=15605 i=16053 i=76 Default XML i=15609 i=16056 i=76 Default XML i=15480 i=21180 i=76 Default XML i=15611 i=16062 i=76 Default XML i=15616 i=16065 i=76 Default XML i=15617 i=16068 i=76 Default XML i=15618 i=16071 i=76 Default XML i=15502 i=21183 i=76 Default XML i=15510 i=21186 i=76 Default XML i=15520 i=21189 i=76 Default XML i=15621 i=16077 i=76 Default XML i=15622 i=16080 i=76 Default XML i=15623 i=16083 i=76 Default XML i=15628 i=16086 i=76 Default XML i=15629 i=16089 i=76 Default XML i=15630 i=16092 i=76 Default XML i=15631 i=16095 i=76 Default XML i=14744 i=14835 i=76 Default XML i=15635 i=16098 i=76 Default XML i=15530 i=21192 i=76 Default XML i=15645 i=16104 i=76 Default XML i=15652 i=16107 i=76 Default XML i=15653 i=16110 i=76 Default XML i=15657 i=16113 i=76 Default XML i=15664 i=16116 i=76 Default XML i=15665 i=16119 i=76 Default XML i=17467 i=17473 i=76 Default XML i=15532 i=21195 i=76 Default XML i=15007 i=15640 i=76 Default XML i=15667 i=16125 i=76 Default XML i=15669 i=16144 i=76 Default XML i=15670 i=16147 i=76 Default XML i=96 i=16127 i=76 Default XML i=97 i=18166 i=76 Default XML i=101 i=18169 i=76 Default XML i=99 i=18172 i=76 Default XML i=100 i=18175 i=76 Default XML i=296 i=8285 i=76 Default XML i=7594 i=8291 i=76 Default XML i=102 i=14826 i=76 Default XML i=12755 i=12759 i=76 Default XML i=12756 i=12762 i=76 Default XML i=8912 i=8918 i=76 Default XML i=308 i=8300 i=76 Default XML i=12189 i=12201 i=76 Default XML i=304 i=8297 i=76 Default XML i=312 i=8303 i=76 Default XML i=432 i=8417 i=76 Default XML i=12890 i=12894 i=76 Default XML i=12891 i=12897 i=76 Default XML i=344 i=8333 i=76 Default XML i=316 i=8306 i=76 Default XML i=319 i=8309 i=76 Default XML i=322 i=8312 i=76 Default XML i=325 i=8315 i=76 Default XML i=938 i=8318 i=76 Default XML i=376 i=8363 i=76 Default XML i=379 i=8366 i=76 Default XML i=382 i=8369 i=76 Default XML i=385 i=8372 i=76 Default XML i=537 i=12712 i=76 Default XML i=540 i=12715 i=76 Default XML i=331 i=8321 i=76 Default XML i=583 i=8564 i=76 Default XML i=586 i=8567 i=76 Default XML i=589 i=8570 i=76 Default XML i=592 i=8573 i=76 Default XML i=595 i=8576 i=76 Default XML i=598 i=8579 i=76 Default XML i=601 i=8582 i=76 Default XML i=659 i=8639 i=76 Default XML i=719 i=8702 i=76 Default XML i=725 i=8708 i=76 Default XML i=948 i=8711 i=76 Default XML i=920 i=8807 i=76 Default XML i=338 i=8327 i=76 Default XML i=853 i=8843 i=76 Default XML i=11943 i=11951 i=76 Default XML i=11944 i=11954 i=76 Default XML i=856 i=8846 i=76 Default XML i=859 i=8849 i=76 Default XML i=862 i=8852 i=76 Default XML i=865 i=8855 i=76 Default XML i=868 i=8858 i=76 Default XML i=871 i=8861 i=76 Default XML i=299 i=8294 i=76 Default XML i=874 i=8864 i=76 Default XML i=877 i=8867 i=76 Default XML i=897 i=8870 i=76 Default XML i=884 i=8873 i=76 Default XML i=887 i=8876 i=76 Default XML i=12171 i=12175 i=76 Default XML i=12172 i=12178 i=76 Default XML i=12079 i=12083 i=76 Default XML i=12080 i=12086 i=76 Default XML i=894 i=8882 i=76 Default XML i=15396 i=15402 i=76 Default XML i=891 i=8879 i=76 Opc.Ua i=8254 i=15039 i=14829 i=16024 i=15730 i=12677 i=16027 i=14811 i=15591 i=15594 i=15585 i=15588 i=14805 i=14808 i=14832 i=16030 i=16033 i=14320 i=16037 i=16040 i=16047 i=16050 i=16053 i=16056 i=21180 i=16062 i=16065 i=16068 i=16071 i=21183 i=21186 i=21189 i=16077 i=16080 i=16083 i=16086 i=16089 i=16092 i=16095 i=14835 i=16098 i=21192 i=16104 i=16107 i=16110 i=16113 i=16116 i=16119 i=17473 i=21195 i=15640 i=16125 i=16144 i=16147 i=16127 i=18166 i=18169 i=18172 i=18175 i=8285 i=8291 i=14826 i=12759 i=12762 i=8918 i=8300 i=12201 i=8297 i=8303 i=8417 i=12894 i=12897 i=8333 i=8306 i=8309 i=8312 i=8315 i=8318 i=8363 i=8366 i=8369 i=8372 i=12712 i=12715 i=8321 i=8564 i=8567 i=8570 i=8573 i=8576 i=8579 i=8582 i=8639 i=8702 i=8708 i=8711 i=8807 i=8327 i=8843 i=11951 i=11954 i=8846 i=8849 i=8852 i=8855 i=8858 i=8861 i=8294 i=8864 i=8867 i=8870 i=8873 i=8876 i=12175 i=12178 i=12083 i=12086 i=8882 i=15402 i=8879 i=92 i=72 PHhzOnNjaGVtYQ0KICB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEi DQogIHhtbG5zOnVhPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvVUEvMjAwOC8wMi9UeXBlcy54 c2QiDQogIHhtbG5zOnRucz0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBLzIwMDgvMDIvVHlw ZXMueHNkIg0KICB0YXJnZXROYW1lc3BhY2U9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9yZy9VQS8y MDA4LzAyL1R5cGVzLnhzZCINCiAgZWxlbWVudEZvcm1EZWZhdWx0PSJxdWFsaWZpZWQiDQo+DQog IDx4czplbGVtZW50IG5hbWU9IkJvb2xlYW4iIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czpib29s ZWFuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCb29sZWFuIj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCb29sZWFuIiB0eXBlPSJ4czpi b29sZWFuIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RP ZkJvb2xlYW4iIHR5cGU9InRuczpMaXN0T2ZCb29sZWFuIiBuaWxsYWJsZT0idHJ1ZSI+PC94czpl bGVtZW50Pg0KDQogIDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiBuaWxsYWJsZT0idHJ1ZSIgdHlw ZT0ieHM6Ynl0ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU0J5dGUiPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiB0eXBlPSJ4 czpieXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RP ZlNCeXRlIiB0eXBlPSJ0bnM6TGlzdE9mU0J5dGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnl0ZSIgbmlsbGFibGU9InRydWUiIHR5cGU9Inhz OnVuc2lnbmVkQnl0ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQnl0ZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnl0ZSIgdHlwZT0i eHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZkJ5dGUiIHR5cGU9InRuczpMaXN0T2ZCeXRlIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czplbGVtZW50IG5hbWU9IkludDE2IiBuaWxsYWJsZT0idHJ1ZSIg dHlwZT0ieHM6c2hvcnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkludDE2 Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbnQxNiIgdHlw ZT0ieHM6c2hvcnQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mSW50MTYiIHR5cGU9InRuczpMaXN0T2ZJbnQxNiIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVSW50MTYiIG5pbGxhYmxlPSJ0cnVlIiB0 eXBlPSJ4czp1bnNpZ25lZFNob3J0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZVSW50MTYiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlVJ bnQxNiIgdHlwZT0ieHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZVSW50MTYiIHR5cGU9InRuczpMaXN0T2ZVSW50MTYiIG5p bGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iSW50MzIi IG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czppbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikxpc3RPZkludDMyIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbnQzMiIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3Vu ZGVkIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9Ikxpc3RPZkludDMyIiB0eXBlPSJ0bnM6TGlzdE9mSW50MzIiIG5pbGxhYmxl PSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iVUludDMyIiBuaWxs YWJsZT0idHJ1ZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZlVJbnQzMiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVUludDMyIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiBtYXhP Y2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZVSW50MzIiIHR5cGU9InRuczpMaXN0T2ZV SW50MzIiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFt ZT0iSW50NjQiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czpsb25nIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZJbnQ2NCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iSW50NjQiIHR5cGU9InhzOmxvbmciIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mSW50NjQiIHR5cGU9InRuczpMaXN0T2ZJbnQ2 NCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJV SW50NjQiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czp1bnNpZ25lZExvbmciIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlVJbnQ2NCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iVUludDY0IiB0eXBlPSJ4czp1bnNpZ25lZExvbmciIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mVUludDY0IiB0eXBl PSJ0bnM6TGlzdE9mVUludDY0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4 czplbGVtZW50IG5hbWU9IkZsb2F0IiBuaWxsYWJsZT0idHJ1ZSIgdHlwZT0ieHM6ZmxvYXQiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkZsb2F0Ij4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGbG9hdCIgdHlwZT0ieHM6ZmxvYXQiIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRmxvYXQiIHR5cGU9 InRuczpMaXN0T2ZGbG9hdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJEb3VibGUiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4czpkb3VibGUiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkRvdWJsZSI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRG91YmxlIiB0eXBlPSJ4czpkb3VibGUiIG1p bk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRG91YmxlIiB0 eXBlPSJ0bnM6TGlzdE9mRG91YmxlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czplbGVtZW50IG5hbWU9IlN0cmluZyIgbmlsbGFibGU9InRydWUiIHR5cGU9InhzOnN0cmlu ZyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3RyaW5nIj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdHJpbmciIHR5cGU9InhzOnN0cmlu ZyIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVl bmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTdHJp bmciIHR5cGU9InRuczpMaXN0T2ZTdHJpbmciIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+ DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0ZVRpbWUiIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4 czpkYXRlVGltZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0ZVRpbWUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGVUaW1lIiB0 eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZEYXRlVGltZSIgdHlwZT0idG5zOkxpc3RPZkRhdGVUaW1lIiBuaWxsYWJsZT0i dHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJHdWlkIj4NCiAg ICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czphcHBpbmZvPg0KICAgICAgICA8SXNWYWx1ZVR5 cGUgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vMjAwMy8xMC9TZXJpYWxpemF0 aW9uLyI+dHJ1ZTwvSXNWYWx1ZVR5cGU+DQogICAgICA8L3hzOmFwcGluZm8+DQogICAgPC94czph bm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0 cmluZyIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0iMSIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iR3VpZCIgdHlwZT0idG5zOkd1aWQiIG5pbGxhYmxlPSJ0cnVlIj48 L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkd1aWQiPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikd1aWQiIHR5cGU9InRuczpH dWlkIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkd1 aWQiIHR5cGU9InRuczpMaXN0T2ZHdWlkIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czplbGVtZW50IG5hbWU9IkJ5dGVTdHJpbmciIG5pbGxhYmxlPSJ0cnVlIiB0eXBlPSJ4 czpiYXNlNjRCaW5hcnkiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJ5dGVT dHJpbmciPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGVT dHJpbmciIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQnl0ZVN0cmluZyIgdHlwZT0i dG5zOkxpc3RPZkJ5dGVTdHJpbmciIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlhtbEVsZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlhtbEVsZW1lbnQiIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAgPHhzOmNvbXBsZXhU eXBlPg0KICAgICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICAgIDx4czphbnkgbWluT2Nj dXJzPSIwIiBwcm9jZXNzQ29udGVudHM9ImxheCIvPg0KICAgICAgICAgIDwveHM6c2VxdWVuY2U+ DQogICAgICAgIDwveHM6Y29tcGxleFR5cGU+DQogICAgICA8L3hzOmVsZW1lbnQ+DQogICAgPC94 czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlz dE9mWG1sRWxlbWVudCIgdHlwZT0idG5zOkxpc3RPZlhtbEVsZW1lbnQiIG5pbGxhYmxlPSJ0cnVl Ij48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGVJZCI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSWRlbnRpZmllciIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0iMSIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTm9kZUlkIiB0eXBlPSJ0bnM6Tm9kZUlkIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZOb2RlSWQiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVJZCIgdHlwZT0idG5zOk5vZGVJ ZCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTGlzdE9mTm9kZUlkIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZUlkIiBuaWxsYWJsZT0idHJ1 ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFeHBhbmRlZE5vZGVJ ZCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSWRlbnRpZmll ciIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0iMSIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpFeHBhbmRlZE5vZGVJZCIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TGlzdE9mRXhwYW5kZWROb2RlSWQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkV4cGFuZGVkTm9kZUlkIiB0eXBlPSJ0bnM6RXhwYW5kZWROb2RlSWQiIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkV4cGFuZGVkTm9kZUlkIiB0eXBlPSJ0bnM6TGlzdE9mRXhwYW5kZWROb2RlSWQiIG5pbGxh YmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlN0YXR1 c0NvZGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmFwcGluZm8+DQogICAgICAg IDxJc1ZhbHVlVHlwZSB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS8yMDAzLzEw L1NlcmlhbGl6YXRpb24vIj50cnVlPC9Jc1ZhbHVlVHlwZT4NCiAgICAgIDwveHM6YXBwaW5mbz4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQ29kZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJTdGF0dXNDb2RlIiB0eXBlPSJ0bnM6U3RhdHVzQ29kZSIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3RhdHVzQ29kZSI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlw ZT0idG5zOlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+ DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTGlzdE9mU3RhdHVzQ29kZSIgdHlwZT0idG5zOkxpc3RPZlN0YXR1c0NvZGUiIG5pbGxh YmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRpYWdu b3N0aWNJbmZvIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJT eW1ib2xpY0lkIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Ik5hbWVzcGFjZVVyaSIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGUiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxpemVkVGV4dCIgdHlwZT0ieHM6aW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGRpdGlvbmFsSW5m byIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbm5lclN0YXR1c0NvZGUiIHR5cGU9InRuczpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbm5lckRpYWdub3N0aWNJbmZvIiB0eXBlPSJ0 bnM6RGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mbyIg dHlwZT0idG5zOkRpYWdub3N0aWNJbmZvIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZEaWFnbm9zdGljSW5mbyI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm8iIHR5cGU9 InRuczpEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGlhZ25vc3RpY0luZm8iIHR5cGU9InRuczpM aXN0T2ZEaWFnbm9zdGljSW5mbyIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTG9jYWxpemVkVGV4dCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxlIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUZXh0IiB0 eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxv Y2FsaXplZFRleHQiIHR5cGU9InRuczpMb2NhbGl6ZWRUZXh0IiBuaWxsYWJsZT0idHJ1ZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTG9jYWxpemVkVGV4dCI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxpemVkVGV4dCIgdHlwZT0i dG5zOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkxvY2FsaXplZFRleHQiIHR5cGU9InRuczpMaXN0 T2ZMb2NhbGl6ZWRUZXh0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJRdWFsaWZpZWROYW1lIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lc3BhY2VJbmRleCIgdHlwZT0ieHM6dW5zaWduZWRTaG9y dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlF1YWxpZmll ZE5hbWUiIHR5cGU9InRuczpRdWFsaWZpZWROYW1lIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUXVhbGlmaWVkTmFtZSI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVhbGlmaWVkTmFtZSIgdHlwZT0idG5zOlF1 YWxpZmllZE5hbWUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ikxpc3RPZlF1YWxpZmllZE5hbWUiIHR5cGU9InRuczpMaXN0T2ZRdWFs aWZpZWROYW1lIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDwhLS0NCiAgICBT b21lIGVudmlyb25tZW50cyByZXF1aXJlIGEgV1NETC9YU0Qgd2hpY2ggZXhwbGljaXRseSBkZWZp bmVzIGFsbCBwb3NzaWJsZSB0eXBlcy4NCiAgICBUaGUgVUEgV1NETC9YU0QgY2FuIGJlIG1vZGlm aWVkIHRvIHN1cHBvcnQgdGhlc2UgZW52aXJvbm1lbnRzIGJ5IHJlcGxhY2luZyB0aGUNCiAgICBk ZWZpbml0aW9ucyBvZiB0aGUgRXh0ZW5zaW9uT2JqZWN0Qm9keSBhbmQgVmFyaWFudFZhbHVlIGNv bXBsZXggdHlwZXMgd2l0aCB0aGUNCiAgICBkZWZpbml0aW9ucyBpbiB0aGUgY29tbWVudHMgc2hv d24gaGVyZS4gRGV2ZWxvcGVycyB3b3VsZCB0aGVuIGRlZmluZSBzdWJ0eXBlcw0KICAgIG9mIHRo ZSBFeHRlbnNpb25PYmplY3RCb2R5IHR5cGUgd2hpY2ggZXhwbGljaXRseSBkZWNsYXJlIGEgY2hv aWNlIGJldHdlZW4gYWxsIG9mIHRoZQ0KICAgIGNvbXBsZXggdHlwZXMgdXNlZCBieSB0aGUgc3lz dGVtLiBUaGUgRXhhbXBsZUV4dGVuc2lvbk9iamVjdEJvZHkgc3VidHlwZSBpcyBwcm92aWRlcw0K ICAgIGEgdGVtcGxhdGUgYmFzZWQgb24gYSBmZXcgY29tbW9uIFVBLWRlZmluZWQgY29tcGxleCB0 eXBlcy4NCiAgICAtLT4NCg0KICA8IS0tDQogICAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkV4dGVu c2lvbk9iamVjdEJvZHkiIC8+DQoNCiAgICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRXhhbXBsZUV4 dGVuc2lvbk9iamVjdEJvZHkiPg0KICAgICAgPHhzOmNvbXBsZXhDb250ZW50Pg0KICAgICAgICA8 eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpFeHRlbnNpb25PYmplY3RCb2R5Ij4NCiAgICAgICAgICA8 eHM6Y2hvaWNlPg0KICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXJndW1lbnQiIHR5cGU9 InRuczpBcmd1bWVudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAg ICAgIDx4czplbGVtZW50IG5hbWU9IlVzZXJJZGVudGl0eVRva2VuIiB0eXBlPSJ0bnM6VXNlcklk ZW50aXR5VG9rZW4iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyTmFtZUlkZW50aXR5VG9rZW4iIHR5cGU9InRuczpVc2Vy TmFtZUlkZW50aXR5VG9rZW4iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICAgICAgPC94czpjaG9pY2U+DQogICAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgICAgPC94czpj b21wbGV4Q29udGVudD4NCiAgICA8L3hzOmNvbXBsZXhUeXBlPg0KDQogICAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IkV4dGVuc2lvbk9iamVjdCI+DQogICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAg IDx4czplbGVtZW50IG5hbWU9IlR5cGVJZCIgdHlwZT0idG5zOkV4cGFuZGVkTm9kZUlkIiBtaW5P Y2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJC b2R5IiBtaW5PY2N1cnM9IjAiIHR5cGU9InRuczpFeHRlbnNpb25PYmplY3RCb2R5IiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgPC94czpjb21wbGV4VHlwZT4N CiAgICA8eHM6ZWxlbWVudCBuYW1lPSJFeHRlbnNpb25PYmplY3QiIHR5cGU9InRuczpFeHRlbnNp b25PYmplY3QiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIC0tPg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJFeHRlbnNpb25PYmplY3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlR5cGVJZCIgdHlwZT0idG5zOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJvZHkiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiPg0KICAgICAgICA8eHM6Y29tcGxleFR5cGU+DQogICAgICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICAgICAgPHhzOmFueSBtaW5PY2N1cnM9IjAiIHByb2Nlc3ND b250ZW50cz0ibGF4Ii8+DQogICAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgICAgPC94czpj b21wbGV4VHlwZT4NCiAgICAgIDwveHM6ZWxlbWVudD4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJFeHRlbnNpb25PYmplY3QiIHR5 cGU9InRuczpFeHRlbnNpb25PYmplY3QiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZFeHRlbnNpb25PYmplY3QiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkV4dGVuc2lvbk9iamVjdCIgdHlwZT0idG5zOkV4dGVu c2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mRXh0ZW5zaW9uT2JqZWN0IiB0eXBlPSJ0bnM6TGlzdE9mRXh0 ZW5zaW9uT2JqZWN0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDwhLS0NCiAg ICBTb21lIFdTREwvWE1MIGNvbXBpbGVycyBoYXZlIGlzc3VlcyB3aXRoIHRoZSB4czpjaG9pY2Ug Y29uc3RydWN0LiBGb3IgdGhhdCByZWFzb24NCiAgICB0aGUgZGVmYXVsdCBkZWNsYXJhdGlvbiBv ZiBhIFZhcmlhbnQgdXNlcyB4czphbnkgY29uc3RydWN0LiBUaGUgc2NoZW1hIGFjdXR1YWxseQ0K ICAgIGRlZmluZWQgYnkgdGhlIHNwZWNpZmljYXRpb24gaXMgcHJvdmlkZWQgYnkgdGhlIE1hdHJp eCBhbmQgVmFyaWFudFZhbHVlIGNvbXBsZXggdHlwZXMNCiAgICBzaG93biBpbiBjb21tZW50cyBi ZWxvdy4gQXBwbGljYXRpb24gZGV2ZWxvcGVycyBjYW4gcmVwbGFjZSB0aGUgVmFyaWFudFZhbHVl IGRlY2xhcmF0aW9uDQogICAgd2l0aCB0aGUgc3BlY2lmaWMgZGVjbGFyYXRpb24gaWYgdGhleSBo YXZlIGEgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgdGhhdCBjYW4gaGFuZGxlDQogICAgdGhlIHhz OmNob2ljZSBjb25zdHJ1Y3QgaW4gYSByZWFzb25hYmxlIHdheS4NCiAgICAtLT4NCg0KICA8IS0t DQogICAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1hdHJpeCI+DQogICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpbWVuc2lvbnMiIHR5cGU9InRuczpMaXN0T2ZV SW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDx4czplbGVt ZW50IG5hbWU9IlZhbHVlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAg ICA8eHM6Y29tcGxleFR5cGUgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgICAgICAgIDx4czpjaG9pY2Ug bWF4T2NjdXJzPSJ1bmJvdW5kZWQiPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJC b29sZWFuIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgICAg IDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiB0eXBlPSJ4czpieXRlIiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGUiIHR5cGU9InhzOnVuc2lnbmVk Qnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJ bnQxNiIgdHlwZT0ieHM6c2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iVUludDE2IiB0eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkludDMyIiB0eXBlPSJ4czpp bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVUlu dDMyIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJJbnQ2NCIgdHlwZT0ieHM6bG9uZyIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVSW50NjQiIHR5cGU9InhzOnVuc2ln bmVkTG9uZyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJGbG9hdCIgdHlwZT0ieHM6ZmxvYXQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRG91YmxlIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RyaW5nIiB0eXBlPSJ4czpzdHJp bmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0 ZVRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgICAg IDx4czplbGVtZW50IG5hbWU9Ikd1aWQiIHR5cGU9InRuczpHdWlkIiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGVTdHJpbmciIHR5cGU9InhzOmJh c2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJYbWxFbGVtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAg ICAgICAgICA8eHM6Y29tcGxleFR5cGU+DQogICAgICAgICAgICAgICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgICAgICAgICAgICAgIDx4czphbnkgbWluT2NjdXJzPSIwIiBwcm9jZXNzQ29udGVu dHM9ImxheCIgLz4NCiAgICAgICAgICAgICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICAgICAg ICAgICAgPC94czpjb21wbGV4VHlwZT4NCiAgICAgICAgICAgICAgPC94czplbGVtZW50Pg0KICAg ICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ0bnM6U3RhdHVz Q29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJO b2RlSWQiIHR5cGU9InRuczpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpFeHBhbmRlZE5vZGVJ ZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWFs aWZpZWROYW1lIiB0eXBlPSJ0bnM6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGl6ZWRUZXh0IiB0eXBlPSJ0bnM6TG9j YWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJFeHRlbnNpb25PYmplY3QiIHR5cGU9InRuczpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFudCIgdHlwZT0i dG5zOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICAgIDwveHM6Y2hvaWNlPg0K ICAgICAgICAgIDwveHM6Y29tcGxleFR5cGU+DQogICAgICAgIDwveHM6ZWxlbWVudD4NCiAgICAg IDwveHM6c2VxdWVuY2U+DQogICAgPC94czpjb21wbGV4VHlwZT4NCiAgICA8eHM6ZWxlbWVudCBu YW1lPSJNYXRyaXgiIHR5cGU9InRuczpNYXRyaXgiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KDQogICAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IlZhcmlhbnRWYWx1ZSI+DQogICAgICA8eHM6Y2hvaWNlPg0K ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCb29sZWFuIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNCeXRlIiB0eXBlPSJ4czpi eXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGUiIHR5 cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJJbnQxNiIgdHlwZT0ieHM6c2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVUludDE2IiB0eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkludDMyIiB0eXBlPSJ4czppbnQi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVUludDMyIiB0eXBl PSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbnQ2NCIgdHlwZT0ieHM6bG9uZyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJVSW50NjQiIHR5cGU9InhzOnVuc2lnbmVkTG9uZyIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGbG9hdCIgdHlwZT0ieHM6ZmxvYXQiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRG91YmxlIiB0eXBlPSJ4 czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3Ry aW5nIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRGF0ZVRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikd1aWQiIHR5cGU9InRuczpHdWlkIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJ5dGVTdHJpbmciIHR5cGU9InhzOmJh c2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJY bWxFbGVtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIj4NCiAgICAgICAgICA8eHM6 Y29tcGxleFR5cGU+DQogICAgICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgICAgIDx4 czphbnkgbWluT2NjdXJzPSIwIiBwcm9jZXNzQ29udGVudHM9ImxheCIgLz4NCiAgICAgICAgICAg IDwveHM6c2VxdWVuY2U+DQogICAgICAgICAgPC94czpjb21wbGV4VHlwZT4NCiAgICAgICAgPC94 czplbGVtZW50Pg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ0 bnM6U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJOb2RlSWQiIHR5cGU9InRuczpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpFeHBhbmRlZE5vZGVJZCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWFsaWZpZWROYW1l IiB0eXBlPSJ0bnM6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJMb2NhbGl6ZWRUZXh0IiB0eXBlPSJ0bnM6TG9jYWxpemVkVGV4dCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFeHRlbnNpb25PYmplY3Qi IHR5cGU9InRuczpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mQm9vbGVhbiIgdHlwZT0idG5zOkxpc3RPZkJvb2xlYW4iIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mU0J5dGUiIHR5 cGU9InRuczpMaXN0T2ZTQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZCeXRlIiB0eXBlPSJ0bnM6TGlzdE9mQnl0ZSIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZJbnQxNiIgdHlwZT0idG5zOkxpc3RP ZkludDE2IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RP ZlVJbnQxNiIgdHlwZT0idG5zOkxpc3RPZlVJbnQxNiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZJbnQzMiIgdHlwZT0idG5zOkxpc3RPZkludDMyIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVJbnQzMiIg dHlwZT0idG5zOkxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJMaXN0T2ZJbnQ2NCIgdHlwZT0idG5zOkxpc3RPZkludDY0IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVJbnQ2NCIgdHlwZT0idG5z Okxpc3RPZlVJbnQ2NCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJMaXN0T2ZGbG9hdCIgdHlwZT0idG5zOkxpc3RPZkZsb2F0IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRvdWJsZSIgdHlwZT0idG5zOkxpc3RPZkRv dWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZT dHJpbmciIHR5cGU9InRuczpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0ZVRpbWUiIHR5cGU9InRuczpMaXN0T2ZEYXRlVGlt ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZHdWlk IiB0eXBlPSJ0bnM6TGlzdE9mR3VpZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJMaXN0T2ZCeXRlU3RyaW5nIiB0eXBlPSJ0bnM6TGlzdE9mQnl0ZVN0cmluZyIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZYbWxFbGVt ZW50IiB0eXBlPSJ0bnM6TGlzdE9mWG1sRWxlbWVudCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTdGF0dXNDb2RlIiB0eXBlPSJ0bnM6TGlzdE9mU3Rh dHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZOb2RlSWQiIHR5cGU9InRuczpMaXN0T2ZOb2RlSWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRXhwYW5kZWROb2RlSWQiIHR5cGU9InRuczpMaXN0 T2ZFeHBhbmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZRdWFsaWZpZWROYW1lIiB0eXBlPSJ0bnM6TGlzdE9mUXVhbGlmaWVkTmFtZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZMb2NhbGl6 ZWRUZXh0IiB0eXBlPSJ0bnM6TGlzdE9mTG9jYWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZFeHRlbnNpb25PYmplY3QiIHR5cGU9InRu czpMaXN0T2ZFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mVmFyaWFudCIgdHlwZT0idG5zOkxpc3RPZlZhcmlhbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF0cml4IiB0eXBlPSJ0bnM6 TWF0cml4IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8L3hzOmNob2ljZT4NCiAgICA8L3hzOmNv bXBsZXhUeXBlPg0KDQogICAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlZhcmlhbnQiPg0KICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0idG5z OlZhcmlhbnRWYWx1ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDwv eHM6c2VxdWVuY2U+DQogICAgPC94czpjb21wbGV4VHlwZT4NCiAgICA8eHM6ZWxlbWVudCBuYW1l PSJWYXJpYW50IiB0eXBlPSJ0bnM6VmFyaWFudCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgLS0+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlZhcmlhbnQiPg0KICAgIDx4czphbm5vdGF0aW9u Pg0KICAgICAgPHhzOmFwcGluZm8+DQogICAgICAgIDxJc1ZhbHVlVHlwZSB4bWxucz0iaHR0cDov L3NjaGVtYXMubWljcm9zb2Z0LmNvbS8yMDAzLzEwL1NlcmlhbGl6YXRpb24vIj50cnVlPC9Jc1Zh bHVlVHlwZT4NCiAgICAgIDwveHM6YXBwaW5mbz4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiPg0KICAgICAgICA8eHM6Y29tcGxleFR5cGU+DQogICAgICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICAgICAgPHhzOmFueSBtaW5PY2N1cnM9IjAiIHByb2Nlc3ND b250ZW50cz0ibGF4IiAvPg0KICAgICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICAgIDwveHM6 Y29tcGxleFR5cGU+DQogICAgICA8L3hzOmVsZW1lbnQ+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFudCIgdHlwZT0idG5z OlZhcmlhbnQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJM aXN0T2ZWYXJpYW50Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJWYXJpYW50IiB0eXBlPSJ0bnM6VmFyaWFudCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZWYXJpYW50IiB0eXBlPSJ0bnM6TGlzdE9mVmFyaWFudCIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i RGF0YVZhbHVlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJW YWx1ZSIgdHlwZT0idG5zOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlN0YXR1c0NvZGUiIHR5cGU9InRuczpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTb3VyY2VUaW1lc3RhbXAiIHR5cGU9InhzOmRh dGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTb3VyY2VQ aWNvc2Vjb25kcyIgdHlwZT0ieHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyVGltZXN0YW1wIiB0eXBlPSJ4czpkYXRlVGltZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyUGljb3NlY29u ZHMiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVmFs dWUiIHR5cGU9InRuczpEYXRhVmFsdWUiIG5pbGxhYmxlPSJ0cnVlIi8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkRhdGFWYWx1ZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVZhbHVlIiB0eXBlPSJ0bnM6RGF0YVZhbHVlIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZEYXRhVmFsdWUiIHR5cGU9InRuczpMaXN0T2ZEYXRhVmFsdWUiIG5pbGxhYmxlPSJ0cnVlIj48 L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iSW52b2tlU2VydmljZVJlcXVlc3Qi IHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbmlsbGFibGU9InRydWUiIC8+DQogIDx4czplbGVtZW50 IG5hbWU9Ikludm9rZVNlcnZpY2VSZXNwb25zZSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBuaWxs YWJsZT0idHJ1ZSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJbWFnZUJNUCIgdHlwZT0ieHM6 YmFzZTY0QmluYXJ5IiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkltYWdlR0lGIiB0eXBlPSJ4 czpiYXNlNjRCaW5hcnkiIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iSW1hZ2VKUEciIHR5cGU9 InhzOmJhc2U2NEJpbmFyeSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJbWFnZVBORyIgdHlw ZT0ieHM6YmFzZTY0QmluYXJ5IiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkF1ZGlvRGF0YVR5 cGUiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJCaXRG aWVsZE1hc2tEYXRhVHlwZSIgdHlwZT0ieHM6dW5zaWduZWRMb25nIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJLZXlWYWx1ZVBhaXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IktleSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0eXBl PSJ1YTpWYXJpYW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iS2V5VmFsdWVQYWlyIiB0eXBlPSJ0 bnM6S2V5VmFsdWVQYWlyIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZLZXlW YWx1ZVBhaXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Iktl eVZhbHVlUGFpciIgdHlwZT0idG5zOktleVZhbHVlUGFpciIgbWluT2NjdXJzPSIwIiBtYXhPY2N1 cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mS2V5VmFsdWVQYWly IiB0eXBlPSJ0bnM6TGlzdE9mS2V5VmFsdWVQYWlyIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbmRwb2ludFR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpz dHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZWN1cml0eU1vZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eVBvbGljeVVyaSIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVHJhbnNwb3J0UHJvZmlsZVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkVuZHBvaW50VHlwZSIgdHlwZT0i dG5zOkVuZHBvaW50VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRW5k cG9pbnRUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJF bmRwb2ludFR5cGUiIHR5cGU9InRuczpFbmRwb2ludFR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkVuZHBvaW50VHlw ZSIgdHlwZT0idG5zOkxpc3RPZkVuZHBvaW50VHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iT3BlbkZpbGVNb2RlIj4NCiAgICA8eHM6 cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iUmVhZF8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJXcml0ZV8yIiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJFcmFzZUV4aXN0aW5nXzQiIC8+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFwcGVuZF84IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iT3BlbkZpbGVNb2RlIiB0 eXBlPSJ0bnM6T3BlbkZpbGVNb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZPcGVuRmlsZU1vZGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9Ik9wZW5GaWxlTW9kZSIgdHlwZT0idG5zOk9wZW5GaWxlTW9kZSIgbWluT2NjdXJzPSIwIiBt YXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZPcGVuRmlsZU1vZGUiIHR5cGU9InRu czpMaXN0T2ZPcGVuRmlsZU1vZGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOnNpbXBsZVR5cGUgIG5hbWU9IklkZW50aXR5Q3JpdGVyaWFUeXBlIj4NCiAgICA8eHM6cmVz dHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i VXNlck5hbWVfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVGh1bWJwcmludF8y IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSb2xlXzMiIC8+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9Ikdyb3VwSWRfNCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iQW5vbnltb3VzXzUiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkF1dGhl bnRpY2F0ZWRVc2VyXzYiIC8+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJZGVudGl0eUNyaXRlcmlhVHlwZSIgdHlwZT0idG5z OklkZW50aXR5Q3JpdGVyaWFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZJZGVudGl0eUNyaXRlcmlhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iSWRlbnRpdHlDcml0ZXJpYVR5cGUiIHR5cGU9InRuczpJZGVudGl0eUNyaXRl cmlhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZJZGVudGl0eUNyaXRlcmlhVHlwZSIgdHlwZT0idG5zOkxpc3RPZklkZW50aXR5Q3JpdGVyaWFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJJZGVudGl0eU1hcHBpbmdSdWxlVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iQ3JpdGVyaWFUeXBlIiB0eXBlPSJ0bnM6SWRlbnRpdHlDcml0ZXJp YVR5cGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNyaXRlcmlh IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i SWRlbnRpdHlNYXBwaW5nUnVsZVR5cGUiIHR5cGU9InRuczpJZGVudGl0eU1hcHBpbmdSdWxlVHlw ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mSWRlbnRpdHlNYXBwaW5nUnVs ZVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IklkZW50 aXR5TWFwcGluZ1J1bGVUeXBlIiB0eXBlPSJ0bnM6SWRlbnRpdHlNYXBwaW5nUnVsZVR5cGUiIG1p bk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikxpc3RPZklkZW50aXR5TWFwcGluZ1J1bGVUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mSWRlbnRpdHlN YXBwaW5nUnVsZVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNp bXBsZVR5cGUgIG5hbWU9IlRydXN0TGlzdE1hc2tzIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFz ZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9uZV8wIiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJUcnVzdGVkQ2VydGlmaWNhdGVzXzEiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlRydXN0ZWRDcmxzXzIiIC8+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9Iklzc3VlckNlcnRpZmljYXRlc180IiAvPg0KICAgICAgPHhzOmVu dW1lcmF0aW9uIHZhbHVlPSJJc3N1ZXJDcmxzXzgiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9IkFsbF8xNSIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRydXN0TGlzdE1hc2tzIiB0eXBlPSJ0bnM6VHJ1c3RM aXN0TWFza3MiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRydXN0TGlzdERhdGFUeXBl Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTcGVjaWZpZWRM aXN0cyIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlRydXN0ZWRDZXJ0aWZpY2F0ZXMiIHR5cGU9InVhOkxpc3RPZkJ5dGVTdHJp bmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJUcnVzdGVkQ3JscyIgdHlwZT0idWE6TGlzdE9mQnl0ZVN0cmluZyIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Iklzc3VlckNlcnRp ZmljYXRlcyIgdHlwZT0idWE6TGlzdE9mQnl0ZVN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Iklzc3VlckNybHMiIHR5cGU9InVh Okxpc3RPZkJ5dGVTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i VHJ1c3RMaXN0RGF0YVR5cGUiIHR5cGU9InRuczpUcnVzdExpc3REYXRhVHlwZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVHJ1c3RMaXN0RGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRydXN0TGlzdERhdGFUeXBlIiB0eXBl PSJ0bnM6VHJ1c3RMaXN0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlRydXN0TGlzdERhdGFUeXBlIiB0eXBl PSJ0bnM6TGlzdE9mVHJ1c3RMaXN0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlY2ltYWxEYXRhVHlwZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2NhbGUiIHR5cGU9InhzOnNob3J0 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0i eHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRl Y2ltYWxEYXRhVHlwZSIgdHlwZT0idG5zOkRlY2ltYWxEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iRGF0YVR5cGVTY2hlbWFIZWFkZXIiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWVzcGFjZXMiIHR5cGU9InVhOkxpc3RPZlN0cmlu ZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlN0cnVjdHVyZURhdGFUeXBlcyIgdHlwZT0idG5zOkxpc3RPZlN0cnVjdHVyZURlc2NyaXB0 aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRW51bURhdGFUeXBlcyIgdHlwZT0idG5zOkxpc3RPZkVudW1EZXNjcmlwdGlvbiIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNp bXBsZURhdGFUeXBlcyIgdHlwZT0idG5zOkxpc3RPZlNpbXBsZVR5cGVEZXNjcmlwdGlvbiIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlwZVNjaGVtYUhlYWRlciIg dHlwZT0idG5zOkRhdGFUeXBlU2NoZW1hSGVhZGVyIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJMaXN0T2ZEYXRhVHlwZVNjaGVtYUhlYWRlciI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGVTY2hlbWFIZWFkZXIiIHR5cGU9InRuczpEYXRh VHlwZVNjaGVtYUhlYWRlciIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmls bGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0YVR5cGVTY2hlbWFIZWFkZXIiIHR5cGU9InRu czpMaXN0T2ZEYXRhVHlwZVNjaGVtYUhlYWRlciIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRGF0YVR5cGVEZXNjcmlwdGlvbiI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGVJZCIgdHlwZT0i dWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlwZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6RGF0 YVR5cGVEZXNjcmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0 YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRGF0YVR5cGVEZXNjcmlwdGlvbiIgdHlwZT0idG5zOkRhdGFUeXBlRGVzY3JpcHRpb24i IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZkRhdGFUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpMaXN0T2ZEYXRhVHlwZURl c2NyaXB0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJTdHJ1Y3R1cmVEZXNjcmlwdGlvbiI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50 IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpEYXRhVHlwZURl c2NyaXB0aW9uIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IlN0cnVjdHVyZURlZmluaXRpb24iIHR5cGU9InRuczpTdHJ1Y3R1cmVEZWZpbml0aW9u IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNl Pg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU3RydWN0dXJlRGVzY3JpcHRpb24i IHR5cGU9InRuczpTdHJ1Y3R1cmVEZXNjcmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTGlzdE9mU3RydWN0dXJlRGVzY3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlN0cnVjdHVyZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6U3Ry dWN0dXJlRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN0cnVjdHVyZURlc2NyaXB0aW9uIiB0eXBlPSJ0 bnM6TGlzdE9mU3RydWN0dXJlRGVzY3JpcHRpb24iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVudW1EZXNjcmlwdGlvbiI+DQogICAgPHhz OmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9 InRuczpEYXRhVHlwZURlc2NyaXB0aW9uIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAg ICAgIDx4czplbGVtZW50IG5hbWU9IkVudW1EZWZpbml0aW9uIiB0eXBlPSJ0bnM6RW51bURlZmlu aXRpb24iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iQnVpbHRJblR5cGUiIHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iRW51bURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6RW51bURlc2NyaXB0aW9uIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZFbnVtRGVzY3JpcHRpb24iPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVudW1EZXNjcmlwdGlvbiIgdHlw ZT0idG5zOkVudW1EZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRl ZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRW51bURlc2NyaXB0aW9uIiB0eXBlPSJ0 bnM6TGlzdE9mRW51bURlc2NyaXB0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTaW1wbGVUeXBlRGVzY3JpcHRpb24iPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6RGF0YVR5cGVEZXNjcmlwdGlvbiI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCYXNlRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJCdWlsdEluVHlwZSIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNv bXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJT aW1wbGVUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpTaW1wbGVUeXBlRGVzY3JpcHRpb24iIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNpbXBsZVR5cGVEZXNjcmlwdGlvbiI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2ltcGxlVHlwZURl c2NyaXB0aW9uIiB0eXBlPSJ0bnM6U2ltcGxlVHlwZURlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAi IG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVl bmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTaW1w bGVUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpMaXN0T2ZTaW1wbGVUeXBlRGVzY3JpcHRpb24i IG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IlVBQmluYXJ5RmlsZURhdGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZh bHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkRhdGFUeXBlU2NoZW1hSGVhZGVy Ij4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNj aGVtYUxvY2F0aW9uIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmlsZUhlYWRlciIgdHlwZT0idG5z Okxpc3RPZktleVZhbHVlUGFpciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCb2R5IiB0eXBlPSJ1YTpWYXJpYW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4N CiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJVQUJpbmFyeUZpbGVEYXRhVHlwZSIgdHlwZT0idG5zOlVBQmluYXJ5RmlsZURh dGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZVQUJpbmFyeUZpbGVE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVUFC aW5hcnlGaWxlRGF0YVR5cGUiIHR5cGU9InRuczpVQUJpbmFyeUZpbGVEYXRhVHlwZSIgbWluT2Nj dXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94 czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlz dE9mVUFCaW5hcnlGaWxlRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZVQUJpbmFyeUZpbGVEYXRh VHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAg bmFtZT0iUHViU3ViU3RhdGUiPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmci Pg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEaXNhYmxlZF8wIiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJQYXVzZWRfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iT3BlcmF0aW9uYWxfMiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iRXJy b3JfMyIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IlB1YlN1YlN0YXRlIiB0eXBlPSJ0bnM6UHViU3ViU3RhdGUiIC8+DQoN CiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlB1YlN1YlN0YXRlIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJTdWJTdGF0ZSIgdHlwZT0idG5zOlB1 YlN1YlN0YXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZlB1YlN1YlN0YXRlIiB0eXBlPSJ0bnM6TGlzdE9mUHViU3ViU3RhdGUiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRhdGFTZXRNZXRh RGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAg PHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6RGF0YVR5cGVTY2hlbWFIZWFkZXIiPg0KICAgICAgICA8 eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0ieHM6 c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9IkRlc2NyaXB0aW9uIiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkZp ZWxkcyIgdHlwZT0idG5zOkxpc3RPZkZpZWxkTWV0YURhdGEiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldENsYXNzSWQi IHR5cGU9InVhOkd1aWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJDb25maWd1cmF0aW9uVmVyc2lvbiIgdHlwZT0idG5zOkNvbmZpZ3VyYXRpb25WZXJzaW9u RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6 c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50 Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0TWV0YURh dGFUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldE1ldGFEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mRGF0YVNldE1ldGFEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldE1ldGFEYXRhVHlwZSIgdHlwZT0idG5z OkRhdGFTZXRNZXRhRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFTZXRNZXRhRGF0YVR5cGUiIHR5cGU9 InRuczpMaXN0T2ZEYXRhU2V0TWV0YURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJGaWVsZE1ldGFEYXRhIj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lIiB0eXBlPSJ4czpzdHJpbmci IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEZXNjcmlwdGlvbiIgdHlwZT0idWE6TG9jYWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpZWxkRmxhZ3MiIHR5cGU9 InRuczpEYXRhU2V0RmllbGRGbGFncyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQnVpbHRJblR5cGUiIHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IlZhbHVlUmFuayIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJBcnJheURpbWVuc2lvbnMiIHR5cGU9InVhOkxpc3RPZlVJbnQzMiIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1heFN0 cmluZ0xlbmd0aCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRGaWVsZElkIiB0eXBlPSJ1YTpHdWlkIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQcm9wZXJ0aWVzIiB0eXBlPSJ0bnM6 TGlzdE9mS2V5VmFsdWVQYWlyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IkZpZWxkTWV0YURhdGEiIHR5cGU9InRuczpGaWVsZE1ldGFEYXRhIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZGaWVsZE1ldGFEYXRhIj4NCiAgICA8eHM6c2VxdWVuY2U+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGaWVsZE1ldGFEYXRhIiB0eXBlPSJ0bnM6RmllbGRNZXRh RGF0YSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mRmllbGRNZXRhRGF0YSIgdHlwZT0idG5zOkxpc3RPZkZpZWxkTWV0YURh dGEiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5h bWU9IkRhdGFTZXRGaWVsZEZsYWdzIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5z aWduZWRTaG9ydCI+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0RmllbGRGbGFncyIgdHlwZT0idG5zOkRhdGFTZXRG aWVsZEZsYWdzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDb25maWd1cmF0aW9uVmVy c2lvbkRhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJNYWpvclZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNaW5vclZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29uZmlndXJhdGlvblZlcnNpb25EYXRhVHlwZSIgdHlw ZT0idG5zOkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9Ikxpc3RPZkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNvbmZpZ3VyYXRpb25WZXJzaW9uRGF0 YVR5cGUiIHR5cGU9InRuczpDb25maWd1cmF0aW9uVmVyc2lvbkRhdGFUeXBlIiBtaW5PY2N1cnM9 IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZD b25maWd1cmF0aW9uVmVyc2lvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mQ29uZmlndXJhdGlv blZlcnNpb25EYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iUHVibGlzaGVkRGF0YVNldERhdGFUeXBlIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE YXRhU2V0Rm9sZGVyIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0TWV0YURhdGEiIHR5 cGU9InRuczpEYXRhU2V0TWV0YURhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXh0ZW5zaW9uRmllbGRzIiB0eXBlPSJ0bnM6 TGlzdE9mS2V5VmFsdWVQYWlyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFNvdXJjZSIgdHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFT ZXREYXRhVHlwZSIgdHlwZT0idG5zOlB1Ymxpc2hlZERhdGFTZXREYXRhVHlwZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUHVibGlzaGVkRGF0YVNldERhdGFUeXBlIj4NCiAg ICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWREYXRhU2V0 RGF0YVR5cGUiIHR5cGU9InRuczpQdWJsaXNoZWREYXRhU2V0RGF0YVR5cGUiIG1pbk9jY3Vycz0i MCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlB1 Ymxpc2hlZERhdGFTZXREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlB1Ymxpc2hlZERhdGFTZXRE YXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iUHVibGlzaGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUHVibGlzaGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiB0eXBlPSJ0bnM6UHVibGlz aGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJM aXN0T2ZQdWJsaXNoZWREYXRhU2V0U291cmNlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSIg dHlwZT0idG5zOlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBt YXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHVibGlz aGVkRGF0YVNldFNvdXJjZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mUHVibGlzaGVkRGF0YVNl dFNvdXJjZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJQdWJsaXNoZWRWYXJpYWJsZURhdGFUeXBlIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWRWYXJpYWJsZSIgdHlwZT0i dWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iQXR0cmlidXRlSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTYW1wbGluZ0ludGVydmFsSGludCIgdHlw ZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE ZWFkYmFuZFR5cGUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJEZWFkYmFuZFZhbHVlIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlN1YnN0aXR1dGVWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWV0YURhdGFQcm9wZXJ0aWVzIiB0eXBlPSJ1 YTpMaXN0T2ZRdWFsaWZpZWROYW1lIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9IlB1Ymxpc2hlZFZhcmlhYmxlRGF0YVR5cGUiIHR5cGU9InRuczpQdWJsaXNoZWRWYXJpYWJs ZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZQdWJsaXNoZWRW YXJpYWJsZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJQdWJsaXNoZWRWYXJpYWJsZURhdGFUeXBlIiB0eXBlPSJ0bnM6UHVibGlzaGVkVmFyaWFi bGVEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mUHVibGlzaGVkVmFyaWFibGVEYXRhVHlwZSIgdHlwZT0idG5z Okxpc3RPZlB1Ymxpc2hlZFZhcmlhYmxlRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVs ZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFU eXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpl eHRlbnNpb24gYmFzZT0idG5zOlB1Ymxpc2hlZERhdGFTZXRTb3VyY2VEYXRhVHlwZSI+DQogICAg ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWRE YXRhIiB0eXBlPSJ0bnM6TGlzdE9mUHVibGlzaGVkVmFyaWFibGVEYXRhVHlwZSIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwv eHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIiB0eXBl PSJ0bnM6UHVibGlzaGVkRGF0YUl0ZW1zRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoZWREYXRhSXRlbXNEYXRhVHlwZSIg dHlwZT0idG5zOlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9j Y3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZQdWJsaXNoZWRE YXRhSXRlbXNEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlB1Ymxpc2hlZERhdGFJdGVtc0RhdGFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJQdWJsaXNoZWRFdmVudHNEYXRhVHlwZSI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1p eGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpQdWJsaXNoZWREYXRh U2V0U291cmNlRGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRXZlbnROb3RpZmllciIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlbGVj dGVkRmllbGRzIiB0eXBlPSJ0bnM6TGlzdE9mU2ltcGxlQXR0cmlidXRlT3BlcmFuZCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJG aWx0ZXIiIHR5cGU9InRuczpDb250ZW50RmlsdGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUHVibGlzaGVkRXZlbnRzRGF0YVR5cGUiIHR5cGU9InRuczpQdWJsaXNoZWRFdmVu dHNEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUHVibGlzaGVk RXZlbnRzRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlB1Ymxpc2hlZEV2ZW50c0RhdGFUeXBlIiB0eXBlPSJ0bnM6UHVibGlzaGVkRXZlbnRzRGF0 YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ikxpc3RPZlB1Ymxpc2hlZEV2ZW50c0RhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9m UHVibGlzaGVkRXZlbnRzRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoN CiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkRhdGFTZXRGaWVsZENvbnRlbnRNYXNrIj4NCiAgICA8 eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5zaWduZWRJbnQiPg0KICAgIDwveHM6cmVzdHJpY3Rp b24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldEZpZWxk Q29udGVudE1hc2siIHR5cGU9InRuczpEYXRhU2V0RmllbGRDb250ZW50TWFzayIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YVNldEZpZWxkQ29udGVudE1hc2siPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRGaWVsZENvbnRl bnRNYXNrIiB0eXBlPSJ0bnM6RGF0YVNldEZpZWxkQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIg bWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0YVNldEZpZWxkQ29udGVudE1h c2siIHR5cGU9InRuczpMaXN0T2ZEYXRhU2V0RmllbGRDb250ZW50TWFzayIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRGF0YVNldFdyaXRl ckRhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJO YW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmFibGVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0V3JpdGVySWQiIHR5cGU9 InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkRhdGFTZXRGaWVsZENvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6RGF0YVNldEZpZWxkQ29udGVu dE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IktleUZyYW1l Q291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJEYXRhU2V0TmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFdyaXRl clByb3BlcnRpZXMiIHR5cGU9InRuczpMaXN0T2ZLZXlWYWx1ZVBhaXIiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRTZXR0 aW5ncyIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWVzc2FnZVNldHRpbmdzIiB0eXBlPSJ1 YTpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i RGF0YVNldFdyaXRlckRhdGFUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldFdyaXRlckRhdGFUeXBlIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZEYXRhU2V0V3JpdGVyRGF0YVR5cGUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRXcml0 ZXJEYXRhVHlwZSIgdHlwZT0idG5zOkRhdGFTZXRXcml0ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0 YVNldFdyaXRlckRhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YVNldFdyaXRlckRhdGFUeXBl IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhU2V0V3JpdGVy VHJhbnNwb3J0RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkRh dGFTZXRXcml0ZXJUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFdyaXRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0 bnM6RGF0YVNldFdyaXRlclRyYW5zcG9ydERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vy cz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZEYXRhU2V0V3JpdGVy VHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZEYXRhU2V0V3JpdGVyVHJhbnNwb3J0 RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldFdy aXRlck1lc3NhZ2VEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9m RGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5z OkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFTZXRXcml0ZXJNZXNz YWdlRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBl IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJQdWJTdWJHcm91cERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmFibGVkIiB0eXBlPSJ4czpib29s ZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eU1v ZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eUdyb3VwSWQiIHR5cGU9InhzOnN0cmluZyIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNl Y3VyaXR5S2V5U2VydmljZXMiIHR5cGU9InRuczpMaXN0T2ZFbmRwb2ludERlc2NyaXB0aW9uIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i TWF4TmV0d29ya01lc3NhZ2VTaXplIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iR3JvdXBQcm9wZXJ0aWVzIiB0eXBlPSJ0bnM6 TGlzdE9mS2V5VmFsdWVQYWlyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlB1YlN1Ykdyb3VwRGF0YVR5cGUiIHR5cGU9InRuczpQdWJTdWJHcm91cERhdGFUeXBlIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZQdWJTdWJHcm91cERhdGFUeXBlIj4NCiAg ICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJTdWJHcm91cERhdGFU eXBlIiB0eXBlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1 cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHViU3ViR3JvdXBE YXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlB1YlN1Ykdyb3VwRGF0YVR5cGUiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IldyaXRlckdyb3Vw RGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAg PHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSI+DQogICAgICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXcml0ZXJHcm91cElkIiB0 eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUHVibGlzaGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJLZWVwQWxpdmVUaW1lIiB0eXBl PSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJQcmlvcml0eSIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxlSWRzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmci IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iVHJhbnNwb3J0U2V0dGluZ3MiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJN ZXNzYWdlU2V0dGluZ3MiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0V3Jp dGVycyIgdHlwZT0idG5zOkxpc3RPZkRhdGFTZXRXcml0ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6 ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IldyaXRlckdyb3VwRGF0YVR5cGUiIHR5cGU9InRuczpXcml0 ZXJHcm91cERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZXcml0 ZXJHcm91cERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJXcml0ZXJHcm91cERhdGFUeXBlIiB0eXBlPSJ0bnM6V3JpdGVyR3JvdXBEYXRhVHlwZSIg bWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mV3JpdGVyR3JvdXBEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZldyaXRlckdyb3Vw RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6V3JpdGVyR3Jv dXBUcmFuc3BvcnREYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9m V3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5z OldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZldyaXRlckdyb3VwVHJhbnNw b3J0RGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBl IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ildy aXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6V3JpdGVyR3JvdXBNZXNzYWdlRGF0 YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZldyaXRlckdyb3VwTWVz c2FnZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5zOldyaXRlckdyb3VwTWVzc2Fn ZURhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJMaXN0T2ZXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5z Okxpc3RPZldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czpl bGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJQdWJTdWJDb25uZWN0aW9uRGF0YVR5 cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWUiIHR5 cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkVuYWJsZWQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlcklkIiB0eXBlPSJ1YTpWYXJpYW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRQcm9m aWxlVXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGRyZXNzIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmpl Y3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJDb25uZWN0aW9uUHJvcGVydGllcyIgdHlwZT0idG5zOkxpc3RPZktleVZhbHVlUGFpciIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IlRyYW5zcG9ydFNldHRpbmdzIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXcml0ZXJHcm91 cHMiIHR5cGU9InRuczpMaXN0T2ZXcml0ZXJHcm91cERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZGVyR3JvdXBzIiB0 eXBlPSJ0bnM6TGlzdE9mUmVhZGVyR3JvdXBEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJQdWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIHR5cGU9InRuczpQdWJT dWJDb25uZWN0aW9uRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RP ZlB1YlN1YkNvbm5lY3Rpb25EYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUHViU3ViQ29ubmVjdGlvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6UHViU3Vi Q29ubmVjdGlvbkRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZQdWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIHR5 cGU9InRuczpMaXN0T2ZQdWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48 L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNvbm5lY3Rpb25UcmFuc3Bv cnREYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNvbm5lY3Rpb25UcmFuc3BvcnRE YXRhVHlwZSIgdHlwZT0idG5zOkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDb25uZWN0aW9uVHJh bnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpDb25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5cGUiIG1p bk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikxpc3RPZkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkNvbm5l Y3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTmV0d29ya0FkZHJlc3NEYXRhVHlwZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0d29ya0ludGVyZmFjZSIgdHlw ZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik5ldHdv cmtBZGRyZXNzRGF0YVR5cGUiIHR5cGU9InRuczpOZXR3b3JrQWRkcmVzc0RhdGFUeXBlIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZOZXR3b3JrQWRkcmVzc0RhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOZXR3b3JrQWRkcmVz c0RhdGFUeXBlIiB0eXBlPSJ0bnM6TmV0d29ya0FkZHJlc3NEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTmV0 d29ya0FkZHJlc3NEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZk5ldHdvcmtBZGRyZXNzRGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ik5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBt aXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6TmV0d29ya0FkZHJl c3NEYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJVcmwiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAg IDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9Ik5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiIHR5cGU9InRuczpOZXR3b3JrQWRkcmVz c1VybERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZOZXR3b3Jr QWRkcmVzc1VybERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJOZXR3b3JrQWRkcmVzc1VybERhdGFUeXBlIiB0eXBlPSJ0bnM6TmV0d29ya0FkZHJl c3NVcmxEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTmV0d29ya0FkZHJlc3NVcmxEYXRhVHlwZSIgdHlwZT0i dG5zOkxpc3RPZk5ldHdvcmtBZGRyZXNzVXJsRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hz OmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlYWRlckdyb3VwRGF0YVR5cGUi Pg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVu c2lvbiBiYXNlPSJ0bnM6UHViU3ViR3JvdXBEYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRTZXR0aW5ncyIgdHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2VTZXR0aW5ncyIgdHlwZT0idWE6RXh0ZW5z aW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4 czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJzIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YVNldFJl YWRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8 L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29u dGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZGVyR3Jv dXBEYXRhVHlwZSIgdHlwZT0idG5zOlJlYWRlckdyb3VwRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlJlYWRlckdyb3VwRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1 ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlYWRlckdyb3VwRGF0YVR5cGUiIHR5cGU9 InRuczpSZWFkZXJHcm91cERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3Vu ZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZSZWFkZXJHcm91cERhdGFUeXBlIiB0 eXBlPSJ0bnM6TGlzdE9mUmVhZGVyR3JvdXBEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZGVyR3JvdXBUcmFuc3BvcnRE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJlYWRlckdyb3VwVHJhbnNwb3J0RGF0 YVR5cGUiIHR5cGU9InRuczpSZWFkZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZSZWFkZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWFkZXJHcm91cFRy YW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6UmVhZGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIg bWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mUmVhZGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlJl YWRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlYWRlckdyb3VwTWVzc2FnZURhdGFUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiIHR5cGU9 InRuczpSZWFkZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTGlzdE9mUmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlYWRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0 eXBlPSJ0bnM6UmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlYWRlckdyb3Vw TWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mUmVhZGVyR3JvdXBNZXNzYWdlRGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkRhdGFTZXRSZWFkZXJEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5hYmxlZCIgdHlwZT0ieHM6 Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHVibGlz aGVySWQiIHR5cGU9InVhOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IldyaXRlckdyb3VwSWQiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRXcml0ZXJJZCIgdHlwZT0i eHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iRGF0YVNldE1ldGFEYXRhIiB0eXBlPSJ0bnM6RGF0YVNldE1ldGFEYXRhVHlwZSIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFT ZXRGaWVsZENvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6RGF0YVNldEZpZWxkQ29udGVudE1hc2siIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2VSZWNlaXZlVGlt ZW91dCIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZWN1cml0eU1vZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eUdyb3VwSWQiIHR5 cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNlY3VyaXR5S2V5U2VydmljZXMiIHR5cGU9InRuczpMaXN0T2ZFbmRw b2ludERlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFJlYWRlclByb3BlcnRpZXMiIHR5cGU9InRuczpMaXN0 T2ZLZXlWYWx1ZVBhaXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRTZXR0aW5ncyIgdHlwZT0idWE6RXh0ZW5zaW9uT2Jq ZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTWVzc2FnZVNldHRpbmdzIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3Jp YmVkRGF0YVNldCIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJEYXRhVHlwZSIgdHlwZT0idG5zOkRhdGFT ZXRSZWFkZXJEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0 YVNldFJlYWRlckRhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJEYXRhU2V0UmVhZGVyRGF0YVR5cGUiIHR5cGU9InRuczpEYXRhU2V0UmVhZGVyRGF0 YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ikxpc3RPZkRhdGFTZXRSZWFkZXJEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkRh dGFTZXRSZWFkZXJEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIj4NCiAg ICA8eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBl PSJ0bnM6RGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZEYXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJUcmFuc3Bv cnREYXRhVHlwZSIgdHlwZT0idG5zOkRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSIgbWlu T2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0 YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50 Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBl Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSIg dHlwZT0idG5zOkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRSZWFkZXJNZXNzYWdl RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YVNldFJl YWRlck1lc3NhZ2VEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iU3Vic2NyaWJlZERhdGFTZXREYXRhVHlwZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiIHR5cGU9InRuczpTdWJz Y3JpYmVkRGF0YVNldERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0 T2ZTdWJzY3JpYmVkRGF0YVNldERhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpYmVkRGF0YVNldERhdGFUeXBlIiB0eXBlPSJ0bnM6U3Vi c2NyaWJlZERhdGFTZXREYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRl ZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mU3Vic2NyaWJlZERhdGFTZXREYXRhVHlw ZSIgdHlwZT0idG5zOkxpc3RPZlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRhcmdldFZhcmlh Ymxlc0RhdGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAg ICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiPg0K ICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGFyZ2V0 VmFyaWFibGVzIiB0eXBlPSJ0bnM6TGlzdE9mRmllbGRUYXJnZXREYXRhVHlwZSIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwv eHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRhcmdldFZhcmlhYmxlc0RhdGFUeXBlIiB0eXBlPSJ0 bnM6VGFyZ2V0VmFyaWFibGVzRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 Ikxpc3RPZlRhcmdldFZhcmlhYmxlc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXRWYXJpYWJsZXNEYXRhVHlwZSIgdHlwZT0idG5zOlRh cmdldFZhcmlhYmxlc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVk IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZUYXJnZXRWYXJpYWJsZXNEYXRhVHlwZSIg dHlwZT0idG5zOkxpc3RPZlRhcmdldFZhcmlhYmxlc0RhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+ PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJGaWVsZFRhcmdldERhdGFU eXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0 RmllbGRJZCIgdHlwZT0idWE6R3VpZCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVjZWl2ZXJJbmRleFJhbmdlIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXROb2Rl SWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkF0dHJpYnV0ZUlkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVJbmRleFJhbmdl IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJPdmVycmlkZVZhbHVlSGFuZGxpbmciIHR5cGU9InRuczpPdmVy cmlkZVZhbHVlSGFuZGxpbmciIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9Ik92ZXJyaWRlVmFsdWUiIHR5cGU9InVhOlZhcmlhbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJGaWVsZFRhcmdldERhdGFUeXBlIiB0eXBlPSJ0bnM6RmllbGRUYXJnZXREYXRhVHlwZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRmllbGRUYXJnZXREYXRhVHlwZSI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmllbGRUYXJnZXREYXRh VHlwZSIgdHlwZT0idG5zOkZpZWxkVGFyZ2V0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkZpZWxkVGFyZ2V0 RGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZGaWVsZFRhcmdldERhdGFUeXBlIiBuaWxsYWJsZT0i dHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJPdmVycmlkZVZh bHVlSGFuZGxpbmciPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEaXNhYmxlZF8wIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJMYXN0VXNlYWJsZVZhbHVlXzEiIC8+DQogICAgICA8eHM6ZW51bWVyYXRp b24gdmFsdWU9Ik92ZXJyaWRlVmFsdWVfMiIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8 L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik92ZXJyaWRlVmFsdWVIYW5kbGlu ZyIgdHlwZT0idG5zOk92ZXJyaWRlVmFsdWVIYW5kbGluZyIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iTGlzdE9mT3ZlcnJpZGVWYWx1ZUhhbmRsaW5nIj4NCiAgICA8eHM6c2VxdWVuY2U+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJPdmVycmlkZVZhbHVlSGFuZGxpbmciIHR5cGU9InRu czpPdmVycmlkZVZhbHVlSGFuZGxpbmciIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mT3ZlcnJpZGVWYWx1ZUhhbmRsaW5nIiB0eXBlPSJ0bnM6TGlzdE9m T3ZlcnJpZGVWYWx1ZUhhbmRsaW5nIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdWJzY3JpYmVkRGF0YVNldE1pcnJvckRhdGFUeXBlIj4N CiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNp b24gYmFzZT0idG5zOlN1YnNjcmliZWREYXRhU2V0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2Vx dWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUGFyZW50Tm9kZU5hbWUiIHR5cGU9 InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSb2xlUGVybWlzc2lvbnMiIHR5cGU9InRuczpMaXN0T2ZSb2xlUGVy bWlzc2lvblR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwv eHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250 ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpYmVk RGF0YVNldE1pcnJvckRhdGFUeXBlIiB0eXBlPSJ0bnM6U3Vic2NyaWJlZERhdGFTZXRNaXJyb3JE YXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3Vic2NyaWJlZERh dGFTZXRNaXJyb3JEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iU3Vic2NyaWJlZERhdGFTZXRNaXJyb3JEYXRhVHlwZSIgdHlwZT0idG5zOlN1YnNj cmliZWREYXRhU2V0TWlycm9yRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJv dW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN1YnNjcmliZWREYXRhU2V0TWly cm9yRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZTdWJzY3JpYmVkRGF0YVNldE1pcnJvckRhdGFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJQdWJTdWJDb25maWd1cmF0aW9uRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hlZERhdGFTZXRzIiB0eXBlPSJ0bnM6TGlzdE9m UHVibGlzaGVkRGF0YVNldERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29ubmVjdGlvbnMiIHR5cGU9InRuczpMaXN0T2ZQ dWJTdWJDb25uZWN0aW9uRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmFibGVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iUHViU3ViQ29uZmlndXJhdGlvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6 UHViU3ViQ29uZmlndXJhdGlvbkRhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJMaXN0T2ZQdWJTdWJDb25maWd1cmF0aW9uRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1YlN1YkNvbmZpZ3VyYXRpb25EYXRhVHlwZSIgdHlw ZT0idG5zOlB1YlN1YkNvbmZpZ3VyYXRpb25EYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1 cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHViU3ViQ29uZmln dXJhdGlvbkRhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mUHViU3ViQ29uZmlndXJhdGlvbkRhdGFU eXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBu YW1lPSJEYXRhU2V0T3JkZXJpbmdUeXBlIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6 c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVW5kZWZpbmVkXzAiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFzY2VuZGluZ1dyaXRlcklkXzEiIC8+DQogICAg ICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFzY2VuZGluZ1dyaXRlcklkU2luZ2xlXzIiIC8+DQog ICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJEYXRhU2V0T3JkZXJpbmdUeXBlIiB0eXBlPSJ0bnM6RGF0YVNldE9yZGVyaW5nVHlwZSIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YVNldE9yZGVyaW5nVHlwZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldE9yZGVy aW5nVHlwZSIgdHlwZT0idG5zOkRhdGFTZXRPcmRlcmluZ1R5cGUiIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mRGF0YVNldE9yZGVyaW5nVHlwZSIgdHlw ZT0idG5zOkxpc3RPZkRhdGFTZXRPcmRlcmluZ1R5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVs ZW1lbnQ+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRl bnRNYXNrIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5zaWduZWRJbnQiPg0KICAg IDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iVWFkcE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIHR5cGU9InRuczpVYWRwTmV0d29ya01l c3NhZ2VDb250ZW50TWFzayIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVWFk cE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlVhZHBOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6 VWFkcE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mVWFkcE5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIHR5 cGU9InRuczpMaXN0T2ZVYWRwTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVWFkcFdyaXRlckdy b3VwTWVzc2FnZURhdGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNl Ij4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOldyaXRlckdyb3VwTWVzc2FnZURhdGFU eXBlIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9 Ikdyb3VwVmVyc2lvbiIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0T3JkZXJpbmciIHR5cGU9InRuczpEYXRh U2V0T3JkZXJpbmdUeXBlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOlVhZHBOZXR3b3JrTWVz c2FnZUNvbnRlbnRNYXNrIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iU2FtcGxpbmdPZmZzZXQiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hpbmdPZmZzZXQiIHR5cGU9InVhOkxp c3RPZkRvdWJsZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94 czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRl bnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlVhZHBXcml0ZXJH cm91cE1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5zOlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRh VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVWFkcFdyaXRlckdyb3Vw TWVzc2FnZURhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJVYWRwV3JpdGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpVYWRwV3JpdGVy R3JvdXBNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRh VHlwZSIgdHlwZT0idG5zOkxpc3RPZlVhZHBXcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgbmls bGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iVWFk cERhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4 czp1bnNpZ25lZEludCI+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgdHlw ZT0idG5zOlVhZHBEYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVWFkcERhdGFTZXRNZXNzYWdlQ29u dGVudE1hc2siIHR5cGU9InRuczpVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgbWluT2Nj dXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZVYWRwRGF0YVNldE1l c3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOkxpc3RPZlVhZHBEYXRhU2V0TWVzc2FnZUNvbnRl bnRNYXNrIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpE YXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIHR5cGU9 InRuczpVYWRwRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IkNvbmZpZ3VyZWRTaXplIiB0eXBlPSJ4czp1bnNpZ25l ZFNob3J0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0 d29ya01lc3NhZ2VOdW1iZXIiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0T2Zmc2V0IiB0eXBlPSJ4czp1 bnNpZ25lZFNob3J0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQog ICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VE YXRhVHlwZSIgdHlwZT0idG5zOlVhZHBEYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVWFk cERhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpVYWRwRGF0YVNldFdyaXRl ck1lc3NhZ2VEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmls bGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mVWFkcERhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5 cGUiIHR5cGU9InRuczpMaXN0T2ZVYWRwRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgbmls bGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVWFk cERhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBt aXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6RGF0YVNldFJlYWRl ck1lc3NhZ2VEYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJHcm91cFZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0d29ya01lc3NhZ2VOdW1i ZXIiIHR5cGU9InhzOnVuc2lnbmVkU2hvcnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEYXRhU2V0T2Zmc2V0IiB0eXBlPSJ4czp1bnNpZ25lZFNob3J0IiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldENsYXNz SWQiIHR5cGU9InVhOkd1aWQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6VWFkcE5ldHdvcmtN ZXNzYWdlQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJEYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6VWFkcERhdGFTZXRN ZXNzYWdlQ29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJQdWJsaXNoaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlY2VpdmVPZmZzZXQiIHR5cGU9Inhz OmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlBy b2Nlc3NpbmdPZmZzZXQiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAg ICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4 Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVWFkcERh dGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpVYWRwRGF0YVNldFJlYWRlck1l c3NhZ2VEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVWFkcERh dGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlVhZHBEYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0 bnM6VWFkcERhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVhZHBEYXRhU2V0 UmVhZGVyTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mVWFkcERhdGFTZXRSZWFkZXJN ZXNzYWdlRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNp bXBsZVR5cGUgIG5hbWU9Ikpzb25OZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIj4NCiAgICA8eHM6 cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5zaWduZWRJbnQiPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSnNvbk5ldHdvcmtNZXNz YWdlQ29udGVudE1hc2siIHR5cGU9InRuczpKc29uTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mSnNvbk5ldHdvcmtNZXNzYWdlQ29u dGVudE1hc2siPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikpz b25OZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbk5ldHdvcmtNZXNzYWdl Q29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mSnNvbk5ldHdvcmtNZXNzYWdlQ29udGVudE1hc2siIHR5cGU9InRuczpMaXN0T2ZKc29u TmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSnNvbldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBl Ij4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRl bnNpb24gYmFzZT0idG5zOldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIj4NCiAgICAgICAgPHhz OnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5ldHdvcmtNZXNzYWdlQ29u dGVudE1hc2siIHR5cGU9InRuczpKc29uTmV0d29ya01lc3NhZ2VDb250ZW50TWFzayIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+ DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iSnNvbldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6SnNv bldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJMaXN0T2ZKc29uV3JpdGVyR3JvdXBNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikpzb25Xcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlw ZSIgdHlwZT0idG5zOkpzb25Xcml0ZXJHcm91cE1lc3NhZ2VEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mSnNv bldyaXRlckdyb3VwTWVzc2FnZURhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mSnNvbldyaXRlckdy b3VwTWVzc2FnZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4 czpzaW1wbGVUeXBlICBuYW1lPSJKc29uRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayI+DQogICAg PHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnVuc2lnbmVkSW50Ij4NCiAgICA8L3hzOnJlc3RyaWN0 aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikpzb25EYXRhU2V0 TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbkRhdGFTZXRNZXNzYWdlQ29udGVudE1h c2siIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkpzb25EYXRhU2V0TWVzc2Fn ZUNvbnRlbnRNYXNrIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJKc29uRGF0YVNldE1lc3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOkpzb25EYXRhU2V0TWVz c2FnZUNvbnRlbnRNYXNrIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZkpzb25EYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6TGlzdE9m SnNvbkRhdGFTZXRNZXNzYWdlQ29udGVudE1hc2siIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikpzb25EYXRhU2V0V3JpdGVyTWVzc2FnZURh dGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4 czpleHRlbnNpb24gYmFzZT0idG5zOkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVNldE1l c3NhZ2VDb250ZW50TWFzayIgdHlwZT0idG5zOkpzb25EYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNr IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4 dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgdHlw ZT0idG5zOkpzb25EYXRhU2V0V3JpdGVyTWVzc2FnZURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSnNvbkRhdGFTZXRXcml0 ZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRuczpKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRh VHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mSnNvbkRhdGFTZXRXcml0ZXJNZXNzYWdlRGF0YVR5cGUiIHR5cGU9InRu czpMaXN0T2ZKc29uRGF0YVNldFdyaXRlck1lc3NhZ2VEYXRhVHlwZSIgbmlsbGFibGU9InRydWUi PjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSnNvbkRhdGFTZXRSZWFk ZXJNZXNzYWdlRGF0YVR5cGUiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2Ui Pg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6RGF0YVNldFJlYWRlck1lc3NhZ2VEYXRh VHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJOZXR3b3JrTWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbk5ldHdvcmtNZXNzYWdl Q29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEYXRhU2V0TWVzc2FnZUNvbnRlbnRNYXNrIiB0eXBlPSJ0bnM6SnNvbkRhdGFTZXRNZXNzYWdl Q29udGVudE1hc2siIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAg ICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikpzb25EYXRhU2V0UmVhZGVyTWVzc2FnZURh dGFUeXBlIiB0eXBlPSJ0bnM6SnNvbkRhdGFTZXRSZWFkZXJNZXNzYWdlRGF0YVR5cGUiIC8+DQoN CiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkpzb25EYXRhU2V0UmVhZGVyTWVzc2FnZURh dGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJKc29u RGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlwZSIgdHlwZT0idG5zOkpzb25EYXRhU2V0UmVhZGVy TWVzc2FnZURhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZKc29uRGF0YVNldFJlYWRlck1lc3NhZ2VEYXRhVHlw ZSIgdHlwZT0idG5zOkxpc3RPZkpzb25EYXRhU2V0UmVhZGVyTWVzc2FnZURhdGFUeXBlIiBuaWxs YWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRh Z3JhbUNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50 IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpDb25uZWN0aW9u VHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRGlzY292ZXJ5QWRkcmVzcyIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNl Pg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YWdyYW1Db25uZWN0aW9uVHJh bnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhZ3JhbUNvbm5lY3Rpb25UcmFuc3BvcnREYXRh VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YWdyYW1Db25uZWN0 aW9uVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkRhdGFncmFtQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6 RGF0YWdyYW1Db25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFncmFtQ29u bmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mRGF0YWdyYW1Db25uZWN0 aW9uVHJhbnNwb3J0RGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlw ZSI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0 ZW5zaW9uIGJhc2U9InRuczpXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIj4NCiAgICAgICAg PHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2VSZXBlYXRD b3VudCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iTWVzc2FnZVJlcGVhdERlbGF5IiB0eXBlPSJ4czpkb3VibGUiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5z aW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgdHlw ZT0idG5zOkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnREYXRhVHlwZSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YWdyYW1Xcml0ZXJHcm91cFRyYW5zcG9ydERhdGFU eXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhZ3Jh bVdyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRuczpEYXRhZ3JhbVdyaXRlckdy b3VwVHJhbnNwb3J0RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3Bv cnREYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkRhdGFncmFtV3JpdGVyR3JvdXBUcmFuc3BvcnRE YXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIj4NCiAgICA8eHM6Y29t cGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5z OkNvbm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNvdXJjZVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5h bWU9IkF1dGhlbnRpY2F0aW9uUHJvZmlsZVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94 czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBl IiB0eXBlPSJ0bnM6QnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCcm9rZXJDb25uZWN0aW9uVHJhbnNwb3J0RGF0YVR5 cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb2tlckNv bm5lY3Rpb25UcmFuc3BvcnREYXRhVHlwZSIgdHlwZT0idG5zOkJyb2tlckNvbm5lY3Rpb25UcmFu c3BvcnREYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBl IiB0eXBlPSJ0bnM6TGlzdE9mQnJva2VyQ29ubmVjdGlvblRyYW5zcG9ydERhdGFUeXBlIiBuaWxs YWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJCcm9r ZXJUcmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0i eHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm90U3BlY2lmaWVkXzAi IC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkJlc3RFZmZvcnRfMSIgLz4NCiAgICAg IDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQXRMZWFzdE9uY2VfMiIgLz4NCiAgICAgIDx4czplbnVt ZXJhdGlvbiB2YWx1ZT0iQXRNb3N0T25jZV8zIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZh bHVlPSJFeGFjdGx5T25jZV80IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2lt cGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyVHJhbnNwb3J0UXVhbGl0eU9mU2Vy dmljZSIgdHlwZT0idG5zOkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIC8+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZp Y2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb2tlclRy YW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIHR5cGU9InRuczpCcm9rZXJUcmFuc3BvcnRRdWFsaXR5 T2ZTZXJ2aWNlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIHR5cGU9InRuczpMaXN0T2ZCcm9r ZXJUcmFuc3BvcnRRdWFsaXR5T2ZTZXJ2aWNlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50 Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERh dGFUeXBlIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4 czpleHRlbnNpb24gYmFzZT0idG5zOldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVldWVOYW1l IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzb3VyY2VVcmkiIHR5cGU9InhzOnN0cmluZyIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJBdXRoZW50aWNhdGlvblByb2ZpbGVVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0 ZWREZWxpdmVyeUd1YXJhbnRlZSIgdHlwZT0idG5zOkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNl cnZpY2UiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwv eHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb2tlcldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5 cGUiIHR5cGU9InRuczpCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiAvPg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCcm9rZXJXcml0ZXJHcm91cFRyYW5zcG9ydERh dGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCcm9r ZXJXcml0ZXJHcm91cFRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6QnJva2VyV3JpdGVyR3Jv dXBUcmFuc3BvcnREYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQnJva2VyV3JpdGVyR3JvdXBUcmFuc3BvcnRE YXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZkJyb2tlcldyaXRlckdyb3VwVHJhbnNwb3J0RGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkJyb2tlckRhdGFTZXRXcml0ZXJUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpE YXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVldWVOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzb3VyY2VVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdXRoZW50aWNhdGlvblByb2Zp bGVVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZXRhRGF0YVF1ZXVlTmFtZSIgdHlwZT0ieHM6 c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9Ik1ldGFEYXRhVXBkYXRlVGltZSIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4N CiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIHR5cGU9InRu czpCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb2tlckRhdGFTZXRXcml0ZXJUcmFuc3BvcnREYXRhVHlwZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyRGF0YVNl dFdyaXRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6QnJva2VyRGF0YVNldFdyaXRlclRy YW5zcG9ydERhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0 YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZCcm9rZXJEYXRhU2V0V3JpdGVyVHJhbnNwb3J0RGF0YVR5 cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkJyb2tlckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpE YXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVldWVOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzb3VyY2VVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdXRoZW50aWNhdGlvblByb2Zp bGVVcmkiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0ZWREZWxpdmVyeUd1YXJhbnRlZSIg dHlwZT0idG5zOkJyb2tlclRyYW5zcG9ydFF1YWxpdHlPZlNlcnZpY2UiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZXRhRGF0YVF1ZXVlTmFtZSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hz OnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVu dD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJva2VyRGF0YVNl dFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6QnJva2VyRGF0YVNldFJlYWRlclRy YW5zcG9ydERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZCcm9r ZXJEYXRhU2V0UmVhZGVyVHJhbnNwb3J0RGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkJyb2tlckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlw ZSIgdHlwZT0idG5zOkJyb2tlckRhdGFTZXRSZWFkZXJUcmFuc3BvcnREYXRhVHlwZSIgbWluT2Nj dXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94 czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlz dE9mQnJva2VyRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9m QnJva2VyRGF0YVNldFJlYWRlclRyYW5zcG9ydERhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJEaWFnbm9zdGljc0xldmVsIj4N CiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iQmFzaWNfMCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQWR2 YW5jZWRfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW5mb18yIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJMb2dfMyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlv biB2YWx1ZT0iRGVidWdfNCIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBs ZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNzTGV2ZWwiIHR5cGU9InRuczpE aWFnbm9zdGljc0xldmVsIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZEaWFn bm9zdGljc0xldmVsIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEaWFnbm9zdGljc0xldmVsIiB0eXBlPSJ0bnM6RGlhZ25vc3RpY3NMZXZlbCIgbWluT2NjdXJz PSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZEaWFnbm9zdGljc0xldmVs IiB0eXBlPSJ0bnM6TGlzdE9mRGlhZ25vc3RpY3NMZXZlbCIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iUHViU3ViRGlhZ25vc3RpY3NDb3Vu dGVyQ2xhc3NpZmljYXRpb24iPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmci Pg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJJbmZvcm1hdGlvbl8wIiAvPg0KICAgICAg PHhzOmVudW1lcmF0aW9uIHZhbHVlPSJFcnJvcl8xIiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUHViU3ViRGlhZ25vc3Rp Y3NDb3VudGVyQ2xhc3NpZmljYXRpb24iIHR5cGU9InRuczpQdWJTdWJEaWFnbm9zdGljc0NvdW50 ZXJDbGFzc2lmaWNhdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUHVi U3ViRGlhZ25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1YlN1YkRpYWdub3N0aWNzQ291bnRlckNsYXNzaWZp Y2F0aW9uIiB0eXBlPSJ0bnM6UHViU3ViRGlhZ25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24i IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUHViU3Vi RGlhZ25vc3RpY3NDb3VudGVyQ2xhc3NpZmljYXRpb24iIHR5cGU9InRuczpMaXN0T2ZQdWJTdWJE aWFnbm9zdGljc0NvdW50ZXJDbGFzc2lmaWNhdGlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iSWRUeXBlIj4NCiAgICA8eHM6YW5ub3Rh dGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSB0eXBlIG9mIGlkZW50aWZpZXIgdXNl ZCBpbiBhIG5vZGUgaWQuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iTnVtZXJpY18wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJT dHJpbmdfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iR3VpZF8yIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJPcGFxdWVfMyIgLz4NCiAgICA8L3hzOnJlc3RyaWN0 aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IklkVHlwZSIgdHlw ZT0idG5zOklkVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mSWRUeXBl Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJZFR5cGUiIHR5 cGU9InRuczpJZFR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mSWRUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mSWRUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+ PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJOb2RlQ2xhc3MiPg0KICAg IDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSBtYXNrIHNwZWNpZnlp bmcgdGhlIGNsYXNzIG9mIHRoZSBub2RlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFu bm90YXRpb24+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9IlVuc3BlY2lmaWVkXzAiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9Ik9iamVjdF8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJW YXJpYWJsZV8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJNZXRob2RfNCIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iT2JqZWN0VHlwZV84IiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJWYXJpYWJsZVR5cGVfMTYiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9IlJlZmVyZW5jZVR5cGVfMzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9IkRhdGFUeXBlXzY0IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJWaWV3 XzEyOCIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ik5vZGVDbGFzcyIgdHlwZT0idG5zOk5vZGVDbGFzcyIgLz4NCg0KICA8 eHM6c2ltcGxlVHlwZSAgbmFtZT0iQWNjZXNzTGV2ZWxUeXBlIj4NCiAgICA8eHM6cmVzdHJpY3Rp b24gYmFzZT0ieHM6dW5zaWduZWRCeXRlIj4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hz OnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFjY2Vzc0xldmVsVHlwZSIgdHlwZT0i dG5zOkFjY2Vzc0xldmVsVHlwZSIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iQWNjZXNz TGV2ZWxFeFR5cGUiPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czp1bnNpZ25lZEludCI+ DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJBY2Nlc3NMZXZlbEV4VHlwZSIgdHlwZT0idG5zOkFjY2Vzc0xldmVsRXhUeXBlIiAv Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJFdmVudE5vdGlmaWVyVHlwZSI+DQogICAgPHhz OnJlc3RyaWN0aW9uIGJhc2U9InhzOnVuc2lnbmVkSW50Ij4NCiAgICA8L3hzOnJlc3RyaWN0aW9u Pg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV2ZW50Tm90aWZpZXJU eXBlIiB0eXBlPSJ0bnM6RXZlbnROb3RpZmllclR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9IlJvbGVQZXJtaXNzaW9uVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUm9sZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQZXJtaXNzaW9ucyIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSb2xlUGVybWlzc2lvblR5 cGUiIHR5cGU9InRuczpSb2xlUGVybWlzc2lvblR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZlJvbGVQZXJtaXNzaW9uVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUm9sZVBlcm1pc3Npb25UeXBlIiB0eXBlPSJ0bnM6Um9sZVBl cm1pc3Npb25UeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZSb2xlUGVybWlzc2lvblR5cGUiIHR5cGU9InRuczpMaXN0 T2ZSb2xlUGVybWlzc2lvblR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRhdGFUeXBlRGVmaW5pdGlvbiI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IkRhdGFUeXBlRGVmaW5pdGlvbiIgdHlwZT0idG5zOkRhdGFUeXBlRGVmaW5pdGlv biIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRGF0YVR5cGVEZWZpbml0aW9u Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlwZURl ZmluaXRpb24iIHR5cGU9InRuczpEYXRhVHlwZURlZmluaXRpb24iIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkRhdGFUeXBl RGVmaW5pdGlvbiIgdHlwZT0idG5zOkxpc3RPZkRhdGFUeXBlRGVmaW5pdGlvbiIgbmlsbGFibGU9 InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iU3RydWN0dXJl VHlwZSI+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9IlN0cnVjdHVyZV8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJTdHJ1Y3R1cmVXaXRoT3B0aW9uYWxGaWVsZHNfMSIgLz4NCiAgICAgIDx4czplbnVt ZXJhdGlvbiB2YWx1ZT0iVW5pb25fMiIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hz OnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlN0cnVjdHVyZVR5cGUiIHR5cGU9InRu czpTdHJ1Y3R1cmVUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdHJ1Y3R1cmVG aWVsZCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE YXRhVHlwZSIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWVSYW5rIiB0eXBlPSJ4czppbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFycmF5RGltZW5zaW9ucyIgdHlw ZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4U3RyaW5nTGVuZ3RoIiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNPcHRpb25hbCIg dHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlN0cnVjdHVyZUZpZWxkIiB0 eXBlPSJ0bnM6U3RydWN0dXJlRmllbGQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxp c3RPZlN0cnVjdHVyZUZpZWxkIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTdHJ1Y3R1cmVGaWVsZCIgdHlwZT0idG5zOlN0cnVjdHVyZUZpZWxkIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZTdHJ1Y3R1cmVGaWVsZCIgdHlwZT0idG5zOkxpc3RPZlN0cnVjdHVyZUZpZWxkIiBuaWxsYWJs ZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdHJ1Y3R1 cmVEZWZpbml0aW9uIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAg ICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkRhdGFUeXBlRGVmaW5pdGlvbiI+DQogICAgICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEZWZhdWx0RW5jb2Rp bmdJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkJhc2VEYXRhVHlwZSIgdHlwZT0idWE6Tm9kZUlk IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IlN0cnVjdHVyZVR5cGUiIHR5cGU9InRuczpTdHJ1Y3R1cmVUeXBlIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmllbGRzIiB0eXBlPSJ0bnM6TGlz dE9mU3RydWN0dXJlRmllbGQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBs ZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTdHJ1 Y3R1cmVEZWZpbml0aW9uIiB0eXBlPSJ0bnM6U3RydWN0dXJlRGVmaW5pdGlvbiIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3RydWN0dXJlRGVmaW5pdGlvbiI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RydWN0dXJlRGVmaW5pdGlvbiIg dHlwZT0idG5zOlN0cnVjdHVyZURlZmluaXRpb24iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN0cnVjdHVyZURlZmluaXRp b24iIHR5cGU9InRuczpMaXN0T2ZTdHJ1Y3R1cmVEZWZpbml0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+ PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbnVtRGVmaW5pdGlvbiI+ DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5z aW9uIGJhc2U9InRuczpEYXRhVHlwZURlZmluaXRpb24iPg0KICAgICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmllbGRzIiB0eXBlPSJ0bnM6TGlzdE9mRW51 bUZpZWxkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNl cXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRW51bURlZmluaXRpb24i IHR5cGU9InRuczpFbnVtRGVmaW5pdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TGlzdE9mRW51bURlZmluaXRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkVudW1EZWZpbml0aW9uIiB0eXBlPSJ0bnM6RW51bURlZmluaXRpb24iIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkVudW1EZWZpbml0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mRW51bURlZmluaXRpb24iIG5pbGxh YmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGUi Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+U3BlY2lmaWVz IHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBhbGwgbm9kZXMuPC94czpkb2N1bWVudGF0 aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVDbGFzcyIgdHlwZT0i dG5zOk5vZGVDbGFzcyIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i QnJvd3NlTmFtZSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlOYW1lIiB0eXBlPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJX cml0ZU1hc2siIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJVc2VyV3JpdGVNYXNrIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUm9sZVBlcm1pc3Npb25zIiB0 eXBlPSJ0bnM6TGlzdE9mUm9sZVBlcm1pc3Npb25UeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlclJvbGVQZXJtaXNzaW9ucyIg dHlwZT0idG5zOkxpc3RPZlJvbGVQZXJtaXNzaW9uVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFjY2Vzc1Jlc3RyaWN0aW9ucyIg dHlwZT0ieHM6dW5zaWduZWRTaG9ydCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVmZXJlbmNlcyIgdHlwZT0idG5zOkxpc3RPZlJlZmVyZW5jZU5vZGUiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZSIgdHlwZT0idG5zOk5vZGUiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZk5vZGUiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGUiIHR5cGU9InRuczpOb2RlIiBtaW5PY2N1 cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0 T2ZOb2RlIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSW5zdGFuY2VOb2RlIj4NCiAgICA8eHM6Y29t cGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5z Ok5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQog ICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJJbnN0YW5jZU5vZGUiIHR5cGU9InRuczpJ bnN0YW5jZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlR5cGVOb2RlIj4NCiAg ICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24g YmFzZT0idG5zOk5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgIDwveHM6c2Vx dWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUeXBlTm9kZSIgdHlwZT0i dG5zOlR5cGVOb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJPYmplY3ROb2RlIj4N CiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0 aGUgYXR0cmlidXRlcyB3aGljaCBiZWxvbmcgdG8gb2JqZWN0IG5vZGVzLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpJbnN0YW5jZU5vZGUiPg0K ICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXZlbnRO b3RpZmllciIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAg IDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhD b250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJPYmplY3RO b2RlIiB0eXBlPSJ0bnM6T2JqZWN0Tm9kZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i T2JqZWN0VHlwZU5vZGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50 YXRpb24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBvYmplY3QgdHlw ZSBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6VHlwZU5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94 czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iT2JqZWN0VHlwZU5vZGUiIHR5cGU9InRuczpPYmplY3RUeXBlTm9kZSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iVmFyaWFibGVOb2RlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0aGUgYXR0cmlidXRlcyB3aGljaCBiZWxv bmcgdG8gdmFyaWFibGUgbm9kZXMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3Rh dGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpl eHRlbnNpb24gYmFzZT0idG5zOkluc3RhbmNlTm9kZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFUeXBlIiB0eXBl PSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVmFsdWVSYW5rIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBcnJheURpbWVuc2lvbnMiIHR5cGU9InVh Okxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJBY2Nlc3NMZXZlbCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlckFjY2Vzc0xl dmVsIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJNaW5pbXVtU2FtcGxpbmdJbnRlcnZhbCIgdHlwZT0ieHM6ZG91Ymxl IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yaXpp bmciIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJBY2Nlc3NMZXZlbEV4IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iVmFyaWFibGVOb2RlIiB0eXBlPSJ0bnM6VmFyaWFibGVOb2RlIiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJWYXJpYWJsZVR5cGVOb2RlIj4NCiAgICA8eHM6YW5ub3RhdGlv bj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0aGUgYXR0cmlidXRlcyB3aGlj aCBiZWxvbmcgdG8gdmFyaWFibGUgdHlwZSBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAg PC94czphbm5vdGF0aW9uPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0K ICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6VHlwZU5vZGUiPg0KICAgICAgICA8eHM6c2Vx dWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIHR5cGU9InVhOlZhcmlh bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVHlw ZSIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlUmFuayIgdHlwZT0ieHM6aW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXJyYXlEaW1lbnNpb25zIiB0 eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9vbGVhbiIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRl bnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFibGVUeXBlTm9kZSIgdHlwZT0idG5zOlZhcmlhYmxlVHlw ZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlZmVyZW5jZVR5cGVOb2RlIj4N CiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyB0 aGUgYXR0cmlidXRlcyB3aGljaCBiZWxvbmcgdG8gcmVmZXJlbmNlIHR5cGUgbm9kZXMuPC94czpk b2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRl bnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOlR5cGVOb2Rl Ij4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Iklz QWJzdHJhY3QiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJTeW1tZXRyaWMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbnZlcnNlTmFtZSIgdHlwZT0idWE6 TG9jYWxpemVkVGV4dCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAg PC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENv bnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5j ZVR5cGVOb2RlIiB0eXBlPSJ0bnM6UmVmZXJlbmNlVHlwZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ik1ldGhvZE5vZGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhz OmRvY3VtZW50YXRpb24+U3BlY2lmaWVzIHRoZSBhdHRyaWJ1dGVzIHdoaWNoIGJlbG9uZyB0byBt ZXRob2Qgbm9kZXMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAg ICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24g YmFzZT0idG5zOkluc3RhbmNlTm9kZSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJFeGVjdXRhYmxlIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlckV4ZWN1dGFibGUiIHR5 cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4N CiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1ldGhvZE5vZGUiIHR5cGU9InRuczpN ZXRob2ROb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJWaWV3Tm9kZSI+DQogICAg PHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJh c2U9InRuczpJbnN0YW5jZU5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iQ29udGFpbnNOb0xvb3BzIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXZlbnROb3RpZmllciIg dHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2Vx dWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJWaWV3Tm9kZSIgdHlwZT0i dG5zOlZpZXdOb2RlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRhVHlwZU5vZGUi Pg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVu c2lvbiBiYXNlPSJ0bnM6VHlwZU5vZGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFUeXBlRGVmaW5pdGlv biIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAg PC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iRGF0YVR5cGVOb2RlIiB0eXBlPSJ0bnM6RGF0YVR5cGVOb2RlIiAvPg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJSZWZlcmVuY2VOb2RlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlNwZWNpZmllcyBhIHJlZmVyZW5jZSB3aGljaCBiZWxvbmdz IHRvIGEgbm9kZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZVR5cGVJZCIg dHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iSXNJbnZlcnNlIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXRJZCIgdHlwZT0idWE6RXhwYW5k ZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNl Tm9kZSIgdHlwZT0idG5zOlJlZmVyZW5jZU5vZGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikxpc3RPZlJlZmVyZW5jZU5vZGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlZmVyZW5jZU5vZGUiIHR5cGU9InRuczpSZWZlcmVuY2VOb2RlIiBtaW5P Y2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJM aXN0T2ZSZWZlcmVuY2VOb2RlIiB0eXBlPSJ0bnM6TGlzdE9mUmVmZXJlbmNlTm9kZSIgbmlsbGFi bGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQXJndW1l bnQiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QW4gYXJn dW1lbnQgZm9yIGEgbWV0aG9kLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRp b24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTmFtZSIgdHlw ZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlUmFuayIgdHlw ZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBcnJh eURpbWVuc2lvbnMiIHR5cGU9InVhOkxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlc2NyaXB0aW9uIiB0eXBlPSJ1 YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFy Z3VtZW50IiB0eXBlPSJ0bnM6QXJndW1lbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 Ikxpc3RPZkFyZ3VtZW50Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJBcmd1bWVudCIgdHlwZT0idG5zOkFyZ3VtZW50IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vy cz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZBcmd1bWVudCIgdHlw ZT0idG5zOkxpc3RPZkFyZ3VtZW50IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbnVtVmFsdWVUeXBlIj4NCiAgICA8eHM6YW5ub3RhdGlv bj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgbWFwcGluZyBiZXR3ZWVuIGEgdmFsdWUgb2Yg YW4gZW51bWVyYXRlZCB0eXBlIGFuZCBhIG5hbWUgYW5kIGRlc2NyaXB0aW9uLjwveHM6ZG9jdW1l bnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIHR5cGU9InhzOmxvbmciIG1pbk9jY3Vycz0iMCIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlOYW1lIiB0eXBlPSJ1YTpMb2NhbGl6ZWRU ZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRW51bVZhbHVlVHlwZSIgdHlwZT0idG5zOkVudW1WYWx1 ZVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkVudW1WYWx1ZVR5cGUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVudW1WYWx1ZVR5 cGUiIHR5cGU9InRuczpFbnVtVmFsdWVUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5i b3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZFbnVtVmFsdWVUeXBlIiB0eXBl PSJ0bnM6TGlzdE9mRW51bVZhbHVlVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRW51bUZpZWxkIj4NCiAgICA8eHM6Y29tcGxleENv bnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkVudW1W YWx1ZVR5cGUiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAg PC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iRW51bUZpZWxkIiB0eXBlPSJ0bnM6RW51bUZpZWxkIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZFbnVtRmllbGQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkVudW1GaWVsZCIgdHlwZT0idG5zOkVudW1GaWVsZCIgbWluT2NjdXJz PSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpz ZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9m RW51bUZpZWxkIiB0eXBlPSJ0bnM6TGlzdE9mRW51bUZpZWxkIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJPcHRpb25TZXQiPg0KICAgIDx4 czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhpcyBhYnN0cmFjdCBTdHJ1 Y3R1cmVkIERhdGFUeXBlIGlzIHRoZSBiYXNlIERhdGFUeXBlIGZvciBhbGwgRGF0YVR5cGVzIHJl cHJlc2VudGluZyBhIGJpdCBtYXNrLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90 YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUi IHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbGlkQml0cyIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5 IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik9wdGlvblNldCIgdHlwZT0i dG5zOk9wdGlvblNldCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mT3B0aW9u U2V0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJPcHRpb25T ZXQiIHR5cGU9InRuczpPcHRpb25TZXQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZk9wdGlvblNldCIgdHlwZT0idG5zOkxp c3RPZk9wdGlvblNldCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iVW5pb24iPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRv Y3VtZW50YXRpb24+VGhpcyBhYnN0cmFjdCBEYXRhVHlwZSBpcyB0aGUgYmFzZSBEYXRhVHlwZSBm b3IgYWxsIHVuaW9uIERhdGFUeXBlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVbmlvbiIgdHlwZT0idG5zOlVuaW9uIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZVbmlvbiI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVW5pb24iIHR5cGU9InRuczpVbmlvbiIgbWlu T2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i TGlzdE9mVW5pb24iIHR5cGU9InRuczpMaXN0T2ZVbmlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6 ZWxlbWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJOb3JtYWxpemVkU3RyaW5nIiB0eXBlPSJ4 czpzdHJpbmciIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGVjaW1hbFN0cmluZyIgdHlwZT0i eHM6c3RyaW5nIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkR1cmF0aW9uU3RyaW5nIiB0eXBl PSJ4czpzdHJpbmciIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZVN0cmluZyIgdHlwZT0i eHM6c3RyaW5nIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkRhdGVTdHJpbmciIHR5cGU9Inhz OnN0cmluZyIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEdXJhdGlvbiIgdHlwZT0ieHM6ZG91 YmxlIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IlV0Y1RpbWUiIHR5cGU9InhzOmRhdGVUaW1l IiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkxvY2FsZUlkIiB0eXBlPSJ4czpzdHJpbmciIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRpbWVab25lRGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik9mZnNldCIgdHlwZT0ieHM6c2hvcnQi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRheWxpZ2h0U2F2aW5n SW5PZmZzZXQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1lWm9u ZURhdGFUeXBlIiB0eXBlPSJ0bnM6VGltZVpvbmVEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mVGltZVpvbmVEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZVpvbmVEYXRhVHlwZSIgdHlwZT0idG5zOlRpbWVa b25lRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ikxpc3RPZlRpbWVab25lRGF0YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZU aW1lWm9uZURhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpl bGVtZW50IG5hbWU9IkludGVnZXJJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIC8+DQoNCiAgPHhz OnNpbXBsZVR5cGUgIG5hbWU9IkFwcGxpY2F0aW9uVHlwZSI+DQogICAgPHhzOmFubm90YXRpb24+ DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgdHlwZXMgb2YgYXBwbGljYXRpb25zLjwveHM6 ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnJlc3RyaWN0aW9u IGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlNlcnZlcl8w IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJDbGllbnRfMSIgLz4NCiAgICAgIDx4 czplbnVtZXJhdGlvbiB2YWx1ZT0iQ2xpZW50QW5kU2VydmVyXzIiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IkRpc2NvdmVyeVNlcnZlcl8zIiAvPg0KICAgIDwveHM6cmVzdHJpY3Rp b24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25U eXBlIiB0eXBlPSJ0bnM6QXBwbGljYXRpb25UeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJBcHBsaWNhdGlvbkRlc2NyaXB0aW9uIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAg IDx4czpkb2N1bWVudGF0aW9uPkRlc2NyaWJlcyBhbiBhcHBsaWNhdGlvbiBhbmQgaG93IHRvIGZp bmQgaXQuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBcHBsaWNhdGlvblVyaSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUHJvZHVjdFVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25OYW1l IiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25UeXBlIiB0eXBlPSJ0bnM6QXBw bGljYXRpb25UeXBlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJH YXRld2F5U2VydmVyVXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjb3ZlcnlQcm9maWxlVXJpIiB0 eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEaXNjb3ZlcnlVcmxzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQXBwbGljYXRpb25EZXNjcmlwdGlv biIgdHlwZT0idG5zOkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9Ikxpc3RPZkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIHR5cGU9 InRuczpBcHBsaWNhdGlvbkRlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5i b3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZBcHBsaWNhdGlvbkRlc2NyaXB0 aW9uIiB0eXBlPSJ0bnM6TGlzdE9mQXBwbGljYXRpb25EZXNjcmlwdGlvbiIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVxdWVzdEhlYWRl ciI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgaGVh ZGVyIHBhc3NlZCB3aXRoIGV2ZXJ5IHNlcnZlciByZXF1ZXN0LjwveHM6ZG9jdW1lbnRhdGlvbj4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQXV0aGVudGljYXRpb25Ub2tlbiIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZXN0YW1w IiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdEhhbmRsZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldHVybkRpYWdub3N0aWNzIiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXVk aXRFbnRyeUlkIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1lb3V0SGludCIgdHlwZT0ieHM6dW5zaWdu ZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFkZGl0aW9u YWxIZWFkZXIiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVzcG9uc2VIZWFkZXIiPg0KICAgIDx4czph bm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhlIGhlYWRlciBwYXNzZWQgd2l0 aCBldmVyeSBzZXJ2ZXIgcmVzcG9uc2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5u b3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1l c3RhbXAiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJSZXF1ZXN0SGFuZGxlIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmljZVJlc3VsdCIgdHlwZT0idWE6 U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vy dmljZURpYWdub3N0aWNzIiB0eXBlPSJ1YTpEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0cmluZ1RhYmxlIiB0 eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGRpdGlvbmFsSGVhZGVyIiB0eXBlPSJ1YTpFeHRlbnNp b25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VI ZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1l PSJWZXJzaW9uVGltZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IlNlcnZpY2VGYXVsdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5UaGUgcmVzcG9uc2UgcmV0dXJuZWQgYnkgYWxsIHNlcnZpY2VzIHdoZW4g dGhlcmUgaXMgYSBzZXJ2aWNlIGxldmVsIGVycm9yLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8 L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2aWNlRmF1bHQiIHR5cGU9InRuczpTZXJ2aWNl RmF1bHQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlNlc3Npb25sZXNzSW52b2tlUmVx dWVzdFR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlVy aXNWZXJzaW9uIiB0eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOYW1lc3BhY2VVcmlzIiB0eXBlPSJ1 YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJVcmlzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2Nh bGVJZHMiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZpY2VJZCIgdHlwZT0ieHM6dW5zaWdu ZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9ubGVzc0ludm9rZVJlcXVlc3RUeXBl IiB0eXBlPSJ0bnM6U2Vzc2lvbmxlc3NJbnZva2VSZXF1ZXN0VHlwZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iU2Vzc2lvbmxlc3NJbnZva2VSZXNwb25zZVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWVzcGFjZVVyaXMiIHR5cGU9InVh Okxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNlcnZlclVyaXMiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZp Y2VJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9u bGVzc0ludm9rZVJlc3BvbnNlVHlwZSIgdHlwZT0idG5zOlNlc3Npb25sZXNzSW52b2tlUmVzcG9u c2VUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJGaW5kU2VydmVyc1JlcXVlc3Qi Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+RmluZHMgdGhl IHNlcnZlcnMga25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZHBv aW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGVJZHMiIHR5cGU9InVhOkxpc3RPZlN0cmlu ZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlNlcnZlclVyaXMiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJGaW5kU2VydmVyc1JlcXVlc3QiIHR5cGU9InRuczpGaW5kU2Vy dmVyc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkZpbmRTZXJ2ZXJzUmVz cG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Rmlu ZHMgdGhlIHNlcnZlcnMga25vd24gdG8gdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC94czpkb2N1bWVu dGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVy IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2VydmVycyIgdHlwZT0idG5zOkxpc3RPZkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRmluZFNlcnZlcnNSZXNwb25zZSIgdHlw ZT0idG5zOkZpbmRTZXJ2ZXJzUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IlNlcnZlck9uTmV0d29yayI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVjb3JkSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNj b3ZlcnlVcmwiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgdHlwZT0idWE6 TGlzdE9mU3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNlcnZl ck9uTmV0d29yayIgdHlwZT0idG5zOlNlcnZlck9uTmV0d29yayIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mU2VydmVyT25OZXR3b3JrIj4NCiAgICA8eHM6c2VxdWVuY2U+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJPbk5ldHdvcmsiIHR5cGU9InRuczpTZXJ2ZXJP bk5ldHdvcmsiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9Ikxpc3RPZlNlcnZlck9uTmV0d29yayIgdHlwZT0idG5zOkxpc3RPZlNlcnZl ck9uTmV0d29yayIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iRmluZFNlcnZlcnNPbk5ldHdvcmtSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVx dWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlN0YXJ0aW5nUmVjb3JkSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhSZWNvcmRzVG9SZXR1cm4i IHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZXJ2ZXJDYXBhYmlsaXR5RmlsdGVyIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRmluZFNlcnZlcnNPbk5ldHdvcmtS ZXF1ZXN0IiB0eXBlPSJ0bnM6RmluZFNlcnZlcnNPbk5ldHdvcmtSZXF1ZXN0IiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJGaW5kU2VydmVyc09uTmV0d29ya1Jlc3BvbnNlIj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlw ZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGFzdENvdW50ZXJSZXNldFRpbWUiIHR5cGU9InhzOmRh dGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJz IiB0eXBlPSJ0bnM6TGlzdE9mU2VydmVyT25OZXR3b3JrIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IkZpbmRTZXJ2ZXJzT25OZXR3b3JrUmVzcG9uc2UiIHR5cGU9InRuczpG aW5kU2VydmVyc09uTmV0d29ya1Jlc3BvbnNlIiAvPg0KDQogIDx4czplbGVtZW50IG5hbWU9IkFw cGxpY2F0aW9uSW5zdGFuY2VDZXJ0aWZpY2F0ZSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiAvPg0K DQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJNZXNzYWdlU2VjdXJpdHlNb2RlIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSB0eXBlIG9mIHNlY3VyaXR5 IHRvIHVzZSBvbiBhIG1lc3NhZ2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3Rh dGlvbj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iSW52YWxpZF8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZh bHVlPSJOb25lXzEiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlNpZ25fMiIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iU2lnbkFuZEVuY3J5cHRfMyIgLz4NCiAgICA8 L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ik1lc3NhZ2VTZWN1cml0eU1vZGUiIHR5cGU9InRuczpNZXNzYWdlU2VjdXJpdHlNb2RlIiAvPg0K DQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJVc2VyVG9rZW5UeXBlIj4NCiAgICA8eHM6YW5ub3Rh dGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBwb3NzaWJsZSB1c2VyIHRva2VuIHR5 cGVzLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnJl c3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9 IkFub255bW91c18wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJVc2VyTmFtZV8x IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJDZXJ0aWZpY2F0ZV8yIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJJc3N1ZWRUb2tlbl8zIiAvPg0KICAgIDwveHM6cmVz dHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlclRv a2VuVHlwZSIgdHlwZT0idG5zOlVzZXJUb2tlblR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9IlVzZXJUb2tlblBvbGljeSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5EZXNjcmliZXMgYSB1c2VyIHRva2VuIHRoYXQgY2FuIGJlIHVzZWQgd2l0 aCBhIHNlcnZlci48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlBvbGljeUlkIiB0eXBlPSJ4 czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJUb2tlblR5cGUiIHR5cGU9InRuczpVc2VyVG9rZW5UeXBlIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc3N1ZWRUb2tlblR5cGUiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Iklzc3VlckVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWN1cml0eVBv bGljeVVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IlVzZXJUb2tlblBvbGljeSIgdHlwZT0idG5zOlVzZXJUb2tlblBvbGljeSIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mVXNlclRva2VuUG9saWN5Ij4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyVG9rZW5Qb2xpY3kiIHR5cGU9 InRuczpVc2VyVG9rZW5Qb2xpY3kiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlVzZXJUb2tlblBvbGljeSIgdHlwZT0idG5z Okxpc3RPZlVzZXJUb2tlblBvbGljeSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRW5kcG9pbnREZXNjcmlwdGlvbiI+DQogICAgPHhzOmFu bm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgZGVzY3JpcHRpb24gb2YgYSBl bmRwb2ludCB0aGF0IGNhbiBiZSB1c2VkIHRvIGFjY2VzcyBhIHNlcnZlci48L3hzOmRvY3VtZW50 YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXIiIHR5 cGU9InRuczpBcHBsaWNhdGlvbkRlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyQ2VydGlmaWNhdGUiIHR5cGU9 InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5TW9kZSIgdHlwZT0idG5zOk1lc3NhZ2VTZWN1cml0 eU1vZGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5 UG9saWN5VXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VySWRlbnRpdHlUb2tlbnMiIHR5cGU9InRu czpMaXN0T2ZVc2VyVG9rZW5Qb2xpY3kiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRQcm9maWxlVXJpIiB0eXBlPSJ4czpz dHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJTZWN1cml0eUxldmVsIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJFbmRwb2ludERlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6RW5kcG9pbnREZXNjcmlw dGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRW5kcG9pbnREZXNjcmlw dGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5kcG9p bnREZXNjcmlwdGlvbiIgdHlwZT0idG5zOkVuZHBvaW50RGVzY3JpcHRpb24iIG1pbk9jY3Vycz0i MCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkVu ZHBvaW50RGVzY3JpcHRpb24iIHR5cGU9InRuczpMaXN0T2ZFbmRwb2ludERlc2NyaXB0aW9uIiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJH ZXRFbmRwb2ludHNSZXF1ZXN0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5IHRoZSBzZXJ2ZXIuPC94czpkb2N1 bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRl ciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMb2NhbGVJZHMiIHR5cGU9InVhOkxp c3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlByb2ZpbGVVcmlzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iR2V0RW5kcG9pbnRzUmVxdWVzdCIgdHlwZT0i dG5zOkdldEVuZHBvaW50c1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikdl dEVuZHBvaW50c1Jlc3BvbnNlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPkdldHMgdGhlIGVuZHBvaW50cyB1c2VkIGJ5IHRoZSBzZXJ2ZXIuPC94czpkb2N1 bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVh ZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRW5kcG9pbnRzIiB0eXBlPSJ0bnM6TGlzdE9mRW5kcG9pbnREZXNjcmlwdGlvbiIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJHZXRFbmRwb2ludHNSZXNwb25zZSIg dHlwZT0idG5zOkdldEVuZHBvaW50c1Jlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJSZWdpc3RlcmVkU2VydmVyIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpk b2N1bWVudGF0aW9uPlRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byByZWdpc3RlciBhIHNlcnZl ciB3aXRoIGEgZGlzY292ZXJ5IHNlcnZlci48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czph bm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNl cnZlclVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJvZHVjdFVyaSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i U2VydmVyTmFtZXMiIHR5cGU9InVhOkxpc3RPZkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJUeXBlIiB0 eXBlPSJ0bnM6QXBwbGljYXRpb25UeXBlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJHYXRld2F5U2VydmVyVXJpIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjb3ZlcnlV cmxzIiB0eXBlPSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZW1hcGhvcmVGaWxlUGF0aCIgdHlwZT0ieHM6 c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iSXNPbmxpbmUiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJSZWdpc3RlcmVkU2VydmVyIiB0eXBlPSJ0bnM6UmVnaXN0ZXJlZFNlcnZlciIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUmVnaXN0ZXJlZFNlcnZlciI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVnaXN0ZXJlZFNlcnZlciIgdHlwZT0i dG5zOlJlZ2lzdGVyZWRTZXJ2ZXIiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlZ2lzdGVyZWRTZXJ2ZXIiIHR5cGU9InRu czpMaXN0T2ZSZWdpc3RlcmVkU2VydmVyIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdpc3RlclNlcnZlclJlcXVlc3QiPg0KICAgIDx4 czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+UmVnaXN0ZXJzIGEgc2VydmVy IHdpdGggdGhlIGRpc2NvdmVyeSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6 YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlciIgdHlwZT0idG5z OlJlZ2lzdGVyZWRTZXJ2ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg PC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i UmVnaXN0ZXJTZXJ2ZXJSZXF1ZXN0IiB0eXBlPSJ0bnM6UmVnaXN0ZXJTZXJ2ZXJSZXF1ZXN0IiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdpc3RlclNlcnZlclJlc3BvbnNlIj4NCiAg ICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlJlZ2lzdGVycyBhIHNl cnZlciB3aXRoIHRoZSBkaXNjb3Zlcnkgc2VydmVyLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8 L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSZWdpc3RlclNlcnZlclJlc3BvbnNlIiB0eXBlPSJ0 bnM6UmVnaXN0ZXJTZXJ2ZXJSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i RGlzY292ZXJ5Q29uZmlndXJhdGlvbiI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5BIGJhc2UgdHlwZSBmb3IgZGlzY292ZXJ5IGNvbmZpZ3VyYXRpb24gaW5m b3JtYXRpb24uPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iRGlzY292ZXJ5Q29uZmlndXJhdGlvbiIgdHlwZT0idG5zOkRpc2Nv dmVyeUNvbmZpZ3VyYXRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1kbnNEaXNj b3ZlcnlDb25maWd1cmF0aW9uIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPlRoZSBkaXNjb3ZlcnkgaW5mb3JtYXRpb24gbmVlZGVkIGZvciBtRE5TIHJlZ2lz dHJhdGlvbi48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6RGlzY292ZXJ5Q29uZmlndXJhdGlvbiI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZG5zU2VydmVyTmFtZSIgdHlwZT0ieHM6c3RyaW5n IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IlNlcnZlckNhcGFiaWxpdGllcyIgdHlwZT0idWE6TGlzdE9mU3RyaW5nIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAg PC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTWRuc0Rpc2NvdmVyeUNvbmZpZ3VyYXRpb24iIHR5 cGU9InRuczpNZG5zRGlzY292ZXJ5Q29uZmlndXJhdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iUmVnaXN0ZXJTZXJ2ZXIyUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFk ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTZXJ2ZXIiIHR5cGU9InRuczpSZWdpc3RlcmVkU2VydmVyIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlzY292ZXJ5Q29uZmln dXJhdGlvbiIgdHlwZT0idWE6TGlzdE9mRXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IlJlZ2lzdGVyU2VydmVyMlJlcXVlc3QiIHR5cGU9InRuczpS ZWdpc3RlclNlcnZlcjJSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdp c3RlclNlcnZlcjJSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNvbmZp Z3VyYXRpb25SZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0lu Zm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJSZWdpc3RlclNlcnZlcjJSZXNwb25zZSIgdHlwZT0idG5zOlJlZ2lz dGVyU2VydmVyMlJlc3BvbnNlIiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJTZWN1cml0 eVRva2VuUmVxdWVzdFR5cGUiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3Vt ZW50YXRpb24+SW5kaWNhdGVzIHdoZXRoZXIgYSB0b2tlbiBpZiBiZWluZyBjcmVhdGVkIG9yIHJl bmV3ZWQuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6 cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iSXNzdWVfMCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iUmVuZXdfMSIgLz4N CiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IlNlY3VyaXR5VG9rZW5SZXF1ZXN0VHlwZSIgdHlwZT0idG5zOlNlY3VyaXR5VG9rZW5S ZXF1ZXN0VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2hhbm5lbFNlY3VyaXR5 VG9rZW4iPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhl IHRva2VuIHRoYXQgaWRlbnRpZmllcyBhIHNldCBvZiBrZXlzIGZvciBhbiBhY3RpdmUgc2VjdXJl IGNoYW5uZWwuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDaGFubmVsSWQiIHR5cGU9Inhz OnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJU b2tlbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iQ3JlYXRlZEF0IiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZExpZmV0aW1lIiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNoYW5uZWxTZWN1cml0eVRva2VuIiB0 eXBlPSJ0bnM6Q2hhbm5lbFNlY3VyaXR5VG9rZW4iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ik9wZW5TZWN1cmVDaGFubmVsUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAg ICA8eHM6ZG9jdW1lbnRhdGlvbj5DcmVhdGVzIGEgc2VjdXJlIGNoYW5uZWwgd2l0aCBhIHNlcnZl ci48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1 ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpS ZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iQ2xpZW50UHJvdG9jb2xWZXJzaW9uIiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdFR5cGUi IHR5cGU9InRuczpTZWN1cml0eVRva2VuUmVxdWVzdFR5cGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5TW9kZSIgdHlwZT0idG5zOk1lc3NhZ2VTZWN1 cml0eU1vZGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVu dE5vbmNlIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0ZWRMaWZldGltZSIgdHlwZT0i eHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJPcGVuU2VjdXJlQ2hhbm5lbFJl cXVlc3QiIHR5cGU9InRuczpPcGVuU2VjdXJlQ2hhbm5lbFJlcXVlc3QiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9Ik9wZW5TZWN1cmVDaGFubmVsUmVzcG9uc2UiPg0KICAgIDx4czphbm5v dGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q3JlYXRlcyBhIHNlY3VyZSBjaGFubmVs IHdpdGggYSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRl ciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyUHJvdG9jb2xWZXJzaW9uIiB0eXBl PSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2VjdXJpdHlUb2tlbiIgdHlwZT0idG5zOkNoYW5uZWxTZWN1cml0eVRva2VuIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVy Tm9uY2UiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJPcGVuU2VjdXJlQ2hhbm5lbFJlc3BvbnNlIiB0eXBlPSJ0bnM6T3BlblNlY3Vy ZUNoYW5uZWxSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2xvc2VTZWN1 cmVDaGFubmVsUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1l bnRhdGlvbj5DbG9zZXMgYSBzZWN1cmUgY2hhbm5lbC48L3hzOmRvY3VtZW50YXRpb24+DQogICAg PC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNsb3NlU2VjdXJlQ2hhbm5lbFJlcXVlc3QiIHR5cGU9 InRuczpDbG9zZVNlY3VyZUNoYW5uZWxSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJDbG9zZVNlY3VyZUNoYW5uZWxSZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+DQog ICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5DbG9zZXMgYSBzZWN1cmUgY2hhbm5lbC48L3hzOmRvY3Vt ZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFk ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xvc2VTZWN1cmVDaGFu bmVsUmVzcG9uc2UiIHR5cGU9InRuczpDbG9zZVNlY3VyZUNoYW5uZWxSZXNwb25zZSIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU2lnbmVkU29mdHdhcmVDZXJ0aWZpY2F0ZSI+DQogICAg PHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHNvZnR3YXJlIGNlcnRp ZmljYXRlIHdpdGggYSBkaWdpdGFsIHNpZ25hdHVyZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAg PC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNlcnRpZmljYXRlRGF0YSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2lnbmF0dXJlIiB0 eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iU2lnbmVkU29mdHdhcmVDZXJ0aWZpY2F0ZSIgdHlwZT0idG5zOlNpZ25lZFNvZnR3YXJlQ2Vy dGlmaWNhdGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNpZ25lZFNvZnR3 YXJlQ2VydGlmaWNhdGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlNpZ25lZFNvZnR3YXJlQ2VydGlmaWNhdGUiIHR5cGU9InRuczpTaWduZWRTb2Z0d2FyZUNl cnRpZmljYXRlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJMaXN0T2ZTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRlIiB0eXBlPSJ0bnM6 TGlzdE9mU2lnbmVkU29mdHdhcmVDZXJ0aWZpY2F0ZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9uQXV0aGVudGljYXRpb25Ub2tlbiIg dHlwZT0idWE6Tm9kZUlkIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTaWduYXR1cmVE YXRhIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgZGln aXRhbCBzaWduYXR1cmUuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBbGdvcml0aG0iIHR5 cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNpZ25hdHVyZSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNpZ25hdHVyZURhdGEiIHR5cGU9InRuczpT aWduYXR1cmVEYXRhIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDcmVhdGVTZXNzaW9u UmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5D cmVhdGVzIGEgbmV3IHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwveHM6ZG9jdW1lbnRhdGlvbj4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDbGllbnRE ZXNjcmlwdGlvbiIgdHlwZT0idG5zOkFwcGxpY2F0aW9uRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJVcmki IHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkVuZHBvaW50VXJsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXNzaW9u TmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50Tm9uY2UiIHR5cGU9InhzOmJhc2U2NEJpbmFy eSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNsaWVudENlcnRpZmljYXRlIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0ZWRT ZXNzaW9uVGltZW91dCIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJNYXhSZXNwb25zZU1lc3NhZ2VTaXplIiB0eXBlPSJ4czp1bnNpZ25l ZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNyZWF0ZVNlc3Npb25SZXF1ZXN0IiB0eXBlPSJ0 bnM6Q3JlYXRlU2Vzc2lvblJlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNy ZWF0ZVNlc3Npb25SZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9j dW1lbnRhdGlvbj5DcmVhdGVzIGEgbmV3IHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwveHM6ZG9j dW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhl YWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlNlc3Npb25JZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXV0aGVudGljYXRpb25Ub2tlbiIg dHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFNlc3Npb25UaW1lb3V0IiB0eXBlPSJ4czpkb3VibGUi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlck5vbmNlIiB0 eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJDZXJ0aWZpY2F0ZSIgdHlwZT0ieHM6YmFzZTY0 QmluYXJ5IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iU2VydmVyRW5kcG9pbnRzIiB0eXBlPSJ0bnM6TGlzdE9mRW5kcG9pbnREZXNjcmlw dGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlNlcnZlclNvZnR3YXJlQ2VydGlmaWNhdGVzIiB0eXBlPSJ0bnM6TGlzdE9mU2lnbmVk U29mdHdhcmVDZXJ0aWZpY2F0ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlclNpZ25hdHVyZSIgdHlwZT0idG5zOlNpZ25hdHVy ZURhdGEiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJNYXhSZXF1ZXN0TWVzc2FnZVNpemUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlU2Vzc2lvblJlc3BvbnNlIiB0eXBlPSJ0bnM6Q3JlYXRl U2Vzc2lvblJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJVc2VySWRlbnRp dHlUb2tlbiI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5B IGJhc2UgdHlwZSBmb3IgYSB1c2VyIGlkZW50aXR5IHRva2VuLjwveHM6ZG9jdW1lbnRhdGlvbj4N CiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUG9saWN5SWQiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJVc2VySWRlbnRpdHlUb2tlbiIgdHlwZT0idG5zOlVzZXJJZGVudGl0 eVRva2VuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBbm9ueW1vdXNJZGVudGl0eVRv a2VuIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgdG9r ZW4gcmVwcmVzZW50aW5nIGFuIGFub255bW91cyB1c2VyLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAg ICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+ DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpVc2VySWRlbnRpdHlUb2tlbiI+DQogICAg ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0 ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IkFub255bW91c0lkZW50aXR5VG9rZW4iIHR5cGU9InRuczpBbm9u eW1vdXNJZGVudGl0eVRva2VuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJVc2VyTmFt ZUlkZW50aXR5VG9rZW4iPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50 YXRpb24+QSB0b2tlbiByZXByZXNlbnRpbmcgYSB1c2VyIGlkZW50aWZpZWQgYnkgYSB1c2VyIG5h bWUgYW5kIHBhc3N3b3JkLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+ DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5z aW9uIGJhc2U9InRuczpVc2VySWRlbnRpdHlUb2tlbiI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyTmFtZSIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5h bWU9IlBhc3N3b3JkIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5jcnlwdGlvbkFsZ29y aXRobSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpj b21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0i VXNlck5hbWVJZGVudGl0eVRva2VuIiB0eXBlPSJ0bnM6VXNlck5hbWVJZGVudGl0eVRva2VuIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJYNTA5SWRlbnRpdHlUb2tlbiI+DQogICAgPHhz OmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHRva2VuIHJlcHJlc2VudGlu ZyBhIHVzZXIgaWRlbnRpZmllZCBieSBhbiBYNTA5IGNlcnRpZmljYXRlLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpVc2VySWRlbnRpdHlUb2tl biI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJD ZXJ0aWZpY2F0ZURhdGEiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5z aW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ilg1MDlJZGVudGl0eVRva2VuIiB0eXBlPSJ0bnM6WDUwOUlkZW50aXR5 VG9rZW4iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Iklzc3VlZElkZW50aXR5VG9rZW4i Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSB0b2tlbiBy ZXByZXNlbnRpbmcgYSB1c2VyIGlkZW50aWZpZWQgYnkgYSBXUy1TZWN1cml0eSBYTUwgdG9rZW4u PC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxl eENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOlVz ZXJJZGVudGl0eVRva2VuIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9IlRva2VuRGF0YSIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuY3J5 cHRpb25BbGdvcml0aG0iIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0K ICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Iklzc3VlZElkZW50aXR5VG9rZW4iIHR5cGU9InRuczpJc3N1ZWRJZGVudGl0eVRv a2VuIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBY3RpdmF0ZVNlc3Npb25SZXF1ZXN0 Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkFjdGl2YXRl cyBhIHNlc3Npb24gd2l0aCB0aGUgc2VydmVyLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hz OmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i UmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDbGllbnRTaWduYXR1cmUi IHR5cGU9InRuczpTaWduYXR1cmVEYXRhIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50U29mdHdhcmVDZXJ0aWZpY2F0ZXMiIHR5 cGU9InRuczpMaXN0T2ZTaWduZWRTb2Z0d2FyZUNlcnRpZmljYXRlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG9jYWxlSWRzIiB0eXBl PSJ1YTpMaXN0T2ZTdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VySWRlbnRpdHlUb2tlbiIgdHlwZT0idWE6RXh0ZW5zaW9u T2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVXNlclRva2VuU2lnbmF0dXJlIiB0eXBlPSJ0bnM6U2lnbmF0dXJlRGF0YSIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hz OmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJBY3RpdmF0ZVNlc3Npb25SZXF1ZXN0 IiB0eXBlPSJ0bnM6QWN0aXZhdGVTZXNzaW9uUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iQWN0aXZhdGVTZXNzaW9uUmVzcG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0K ICAgICAgPHhzOmRvY3VtZW50YXRpb24+QWN0aXZhdGVzIGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2 ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5z OlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyTm9uY2UiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJl c3VsdHMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9 InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IkFjdGl2YXRlU2Vzc2lvblJlc3BvbnNlIiB0eXBlPSJ0bnM6QWN0aXZhdGVTZXNzaW9u UmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNsb3NlU2Vzc2lvblJlcXVl c3QiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q2xvc2Vz IGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6 YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlv bnMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNl Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDbG9zZVNlc3Npb25S ZXF1ZXN0IiB0eXBlPSJ0bnM6Q2xvc2VTZXNzaW9uUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iQ2xvc2VTZXNzaW9uUmVzcG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0K ICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q2xvc2VzIGEgc2Vzc2lvbiB3aXRoIHRoZSBzZXJ2ZXIu PC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJl c3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNsb3Nl U2Vzc2lvblJlc3BvbnNlIiB0eXBlPSJ0bnM6Q2xvc2VTZXNzaW9uUmVzcG9uc2UiIC8+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNhbmNlbFJlcXVlc3QiPg0KICAgIDx4czphbm5vdGF0aW9u Pg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+Q2FuY2VscyBhbiBvdXRzdGFuZGluZyByZXF1ZXN0 LjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJl cXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGFuZGxlIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2Nj dXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IkNhbmNlbFJlcXVlc3QiIHR5cGU9InRuczpDYW5jZWxSZXF1ZXN0IiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDYW5jZWxSZXNwb25zZSI+DQogICAgPHhzOmFu bm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5DYW5jZWxzIGFuIG91dHN0YW5kaW5n IHJlcXVlc3QuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlw ZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2FuY2VsQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ2FuY2VsUmVzcG9uc2UiIHR5cGU9InRuczpDYW5jZWxS ZXNwb25zZSIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iTm9kZUF0dHJpYnV0ZXNNYXNr Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBiaXRz IHVzZWQgdG8gc3BlY2lmeSBkZWZhdWx0IGF0dHJpYnV0ZXMgZm9yIGEgbmV3IG5vZGUuPC94czpk b2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6cmVzdHJpY3Rpb24g YmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9uZV8wIiAv Pg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJBY2Nlc3NMZXZlbF8xIiAvPg0KICAgICAg PHhzOmVudW1lcmF0aW9uIHZhbHVlPSJBcnJheURpbWVuc2lvbnNfMiIgLz4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iQnJvd3NlTmFtZV80IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJDb250YWluc05vTG9vcHNfOCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iRGF0YVR5cGVfMTYiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkRlc2NyaXB0 aW9uXzMyIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEaXNwbGF5TmFtZV82NCIg Lz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iRXZlbnROb3RpZmllcl8xMjgiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkV4ZWN1dGFibGVfMjU2IiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJIaXN0b3JpemluZ181MTIiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9IkludmVyc2VOYW1lXzEwMjQiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9IklzQWJzdHJhY3RfMjA0OCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i TWluaW11bVNhbXBsaW5nSW50ZXJ2YWxfNDA5NiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iTm9kZUNsYXNzXzgxOTIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9Ik5v ZGVJZF8xNjM4NCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iU3ltbWV0cmljXzMy NzY4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJVc2VyQWNjZXNzTGV2ZWxfNjU1 MzYiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlVzZXJFeGVjdXRhYmxlXzEzMTA3 MiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVXNlcldyaXRlTWFza18yNjIxNDQi IC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlZhbHVlUmFua181MjQyODgiIC8+DQog ICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IldyaXRlTWFza18xMDQ4NTc2IiAvPg0KICAgICAg PHhzOmVudW1lcmF0aW9uIHZhbHVlPSJWYWx1ZV8yMDk3MTUyIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJEYXRhVHlwZURlZmluaXRpb25fNDE5NDMwNCIgLz4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iUm9sZVBlcm1pc3Npb25zXzgzODg2MDgiIC8+DQogICAgICA8eHM6 ZW51bWVyYXRpb24gdmFsdWU9IkFjY2Vzc1Jlc3RyaWN0aW9uc18xNjc3NzIxNiIgLz4NCiAgICAg IDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQWxsXzMzNTU0NDMxIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJCYXNlTm9kZV8yNjUwMTIyMCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlv biB2YWx1ZT0iT2JqZWN0XzI2NTAxMzQ4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVl PSJPYmplY3RUeXBlXzI2NTAzMjY4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJW YXJpYWJsZV8yNjU3MTM4MyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVmFyaWFi bGVUeXBlXzI4NjAwNDM4IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJNZXRob2Rf MjY2MzI1NDgiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlZmVyZW5jZVR5cGVf MjY1MzcwNjAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlZpZXdfMjY1MDEzNTYi IC8+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJOb2RlQXR0cmlidXRlc01hc2siIHR5cGU9InRuczpOb2RlQXR0cmlidXRlc01h c2siIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGVBdHRyaWJ1dGVzIj4NCiAgICA8 eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBiYXNlIGF0dHJpYnV0 ZXMgZm9yIGFsbCBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9u Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNwZWNpZmllZEF0 dHJpYnV0ZXMiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEaXNwbGF5TmFtZSIgdHlwZT0idWE6TG9jYWxpemVkVGV4dCIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRl c2NyaXB0aW9uIiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVNYXNrIiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNl cldyaXRlTWFzayIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJO b2RlQXR0cmlidXRlcyIgdHlwZT0idG5zOk5vZGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJPYmplY3RBdHRyaWJ1dGVzIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhbiBvYmplY3Qgbm9kZS48 L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpjb21wbGV4 Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6Tm9k ZUF0dHJpYnV0ZXMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRXZlbnROb3RpZmllciIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAg ICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJPYmplY3RBdHRyaWJ1dGVzIiB0eXBlPSJ0bnM6T2JqZWN0QXR0cmlidXRlcyIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVmFyaWFibGVBdHRyaWJ1dGVzIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBh IHZhcmlhYmxlIG5vZGUuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNp b24gYmFzZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0eXBlPSJ1YTpWYXJpYW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVh Ok5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJWYWx1ZVJhbmsiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkFycmF5RGltZW5zaW9ucyIgdHlwZT0idWE6TGlz dE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4 czplbGVtZW50IG5hbWU9IkFjY2Vzc0xldmVsIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VyQWNjZXNzTGV2ZWwi IHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9Ik1pbmltdW1TYW1wbGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3JpemluZyIg dHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNl Pg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVmFyaWFibGVBdHRyaWJ1dGVzIiB0 eXBlPSJ0bnM6VmFyaWFibGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJNZXRob2RBdHRyaWJ1dGVzIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1 bWVudGF0aW9uPlRoZSBhdHRyaWJ1dGVzIGZvciBhIG1ldGhvZCBub2RlLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpOb2RlQXR0cmlidXRlcyI+ DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFeGVj dXRhYmxlIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iVXNlckV4ZWN1dGFibGUiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0K ICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ik1ldGhvZEF0dHJpYnV0ZXMiIHR5cGU9InRuczpNZXRob2RBdHRyaWJ1dGVzIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJPYmplY3RUeXBlQXR0cmlidXRlcyI+DQogICAg PHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRlcyBm b3IgYW4gb2JqZWN0IHR5cGUgbm9kZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhz OmV4dGVuc2lvbiBiYXNlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgICAgICA8eHM6c2VxdWVu Y2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNBYnN0cmFjdCIgdHlwZT0ieHM6Ym9v bGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94 czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iT2JqZWN0VHlwZUF0dHJpYnV0ZXMiIHR5cGU9InRuczpP YmplY3RUeXBlQXR0cmlidXRlcyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVmFyaWFi bGVUeXBlQXR0cmlidXRlcyI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1l bnRhdGlvbj5UaGUgYXR0cmlidXRlcyBmb3IgYSB2YXJpYWJsZSB0eXBlIG5vZGUuPC94czpkb2N1 bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQg bWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk5vZGVBdHRyaWJ1 dGVzIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9 IlZhbHVlIiB0eXBlPSJ1YTpWYXJpYW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iRGF0YVR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZVJhbmsi IHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5h bWU9IkFycmF5RGltZW5zaW9ucyIgdHlwZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IklzQWJzdHJh Y3QiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1 ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlZhcmlhYmxlVHlwZUF0dHJp YnV0ZXMiIHR5cGU9InRuczpWYXJpYWJsZVR5cGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJSZWZlcmVuY2VUeXBlQXR0cmlidXRlcyI+DQogICAgPHhzOmFubm90YXRp b24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgYXR0cmlidXRlcyBmb3IgYSByZWZlcmVu Y2UgdHlwZSBub2RlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQog ICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9u IGJhc2U9InRuczpOb2RlQXR0cmlidXRlcyI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0Fic3RyYWN0IiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3ltbWV0cmljIiB0eXBl PSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iSW52ZXJzZU5hbWUiIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVu c2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJSZWZlcmVuY2VUeXBlQXR0cmlidXRlcyIgdHlwZT0idG5zOlJlZmVy ZW5jZVR5cGVBdHRyaWJ1dGVzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEYXRhVHlw ZUF0dHJpYnV0ZXMiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRp b24+VGhlIGF0dHJpYnV0ZXMgZm9yIGEgZGF0YSB0eXBlIG5vZGUuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZh bHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk5vZGVBdHRyaWJ1dGVzIj4NCiAg ICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IklzQWJzdHJh Y3QiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1 ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRhdGFUeXBlQXR0cmlidXRl cyIgdHlwZT0idG5zOkRhdGFUeXBlQXR0cmlidXRlcyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iVmlld0F0dHJpYnV0ZXMiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRv Y3VtZW50YXRpb24+VGhlIGF0dHJpYnV0ZXMgZm9yIGEgdmlldyBub2RlLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVk PSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpOb2RlQXR0cmlidXRlcyI+ DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDb250 YWluc05vTG9vcHMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJFdmVudE5vdGlmaWVyIiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0 ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IlZpZXdBdHRyaWJ1dGVzIiB0eXBlPSJ0bnM6Vmlld0F0dHJpYnV0 ZXMiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXR0cmlidXRlSWQi IHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikdl bmVyaWNBdHRyaWJ1dGVWYWx1ZSIgdHlwZT0idG5zOkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mR2VuZXJpY0F0dHJpYnV0ZVZhbHVlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJHZW5lcmljQXR0cmli dXRlVmFsdWUiIHR5cGU9InRuczpHZW5lcmljQXR0cmlidXRlVmFsdWUiIG1pbk9jY3Vycz0iMCIg bWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkdlbmVy aWNBdHRyaWJ1dGVWYWx1ZSIgdHlwZT0idG5zOkxpc3RPZkdlbmVyaWNBdHRyaWJ1dGVWYWx1ZSIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i R2VuZXJpY0F0dHJpYnV0ZXMiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2Ui Pg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6Tm9kZUF0dHJpYnV0ZXMiPg0KICAgICAg ICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXR0cmlidXRlVmFs dWVzIiB0eXBlPSJ0bnM6TGlzdE9mR2VuZXJpY0F0dHJpYnV0ZVZhbHVlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpl eHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iR2VuZXJpY0F0dHJpYnV0ZXMiIHR5cGU9InRuczpHZW5lcmlj QXR0cmlidXRlcyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQWRkTm9kZXNJdGVtIj4N CiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkEgcmVxdWVzdCB0 byBhZGQgYSBub2RlIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRp b24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlBhcmVudE5vZGVJZCIgdHlwZT0idWE6RXhwYW5kZWROb2RlSWQiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWZl cmVuY2VUeXBlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RlZE5ld05vZGVJZCIgdHlwZT0i dWE6RXhwYW5kZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJCcm93c2VOYW1lIiB0eXBlPSJ1YTpRdWFsaWZpZWROYW1lIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i Tm9kZUNsYXNzIiB0eXBlPSJ0bnM6Tm9kZUNsYXNzIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJOb2RlQXR0cmlidXRlcyIgdHlwZT0idWE6RXh0ZW5zaW9uT2JqZWN0 IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iVHlwZURlZmluaXRpb24iIHR5cGU9InVhOkV4cGFuZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZE5vZGVzSXRlbSIgdHlwZT0idG5zOkFkZE5vZGVz SXRlbSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQWRkTm9kZXNJdGVtIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZGROb2Rlc0l0ZW0i IHR5cGU9InRuczpBZGROb2Rlc0l0ZW0iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkFkZE5vZGVzSXRlbSIgdHlwZT0idG5z Okxpc3RPZkFkZE5vZGVzSXRlbSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iQWRkTm9kZXNSZXN1bHQiPg0KICAgIDx4czphbm5vdGF0aW9u Pg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSByZXN1bHQgb2YgYW4gYWRkIG5vZGUgb3BlcmF0 aW9uLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3Rh dHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWRkZWRO b2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJBZGROb2Rlc1Jlc3VsdCIgdHlwZT0idG5zOkFkZE5vZGVzUmVzdWx0IiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZBZGROb2Rlc1Jlc3VsdCI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWRkTm9kZXNSZXN1bHQiIHR5cGU9InRuczpB ZGROb2Rlc1Jlc3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQWRkTm9kZXNSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZB ZGROb2Rlc1Jlc3VsdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iQWRkTm9kZXNSZXF1ZXN0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPkFkZHMgb25lIG9yIG1vcmUgbm9kZXMgdG8gdGhlIHNlcnZl ciBhZGRyZXNzIHNwYWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRl ciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2Rlc1RvQWRkIiB0eXBlPSJ0bnM6TGlzdE9m QWRkTm9kZXNJdGVtIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZE5v ZGVzUmVxdWVzdCIgdHlwZT0idG5zOkFkZE5vZGVzUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iQWRkTm9kZXNSZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAg ICA8eHM6ZG9jdW1lbnRhdGlvbj5BZGRzIG9uZSBvciBtb3JlIG5vZGVzIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVy IiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ0bnM6TGlzdE9mQWRk Tm9kZXNSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJ bmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZE5vZGVzUmVzcG9u c2UiIHR5cGU9InRuczpBZGROb2Rlc1Jlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJBZGRSZWZlcmVuY2VzSXRlbSI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5BIHJlcXVlc3QgdG8gYWRkIGEgcmVmZXJlbmNlIHRvIHRoZSBzZXJ2ZXIg YWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNvdXJjZU5vZGVJZCIg dHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNlVHlwZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0Zv cndhcmQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlRhcmdldFNlcnZlclVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGFyZ2V0Tm9kZUlk IiB0eXBlPSJ1YTpFeHBhbmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRhcmdldE5vZGVDbGFzcyIgdHlwZT0idG5zOk5v ZGVDbGFzcyIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFkZFJlZmVyZW5jZXNJdGVtIiB0eXBlPSJ0 bnM6QWRkUmVmZXJlbmNlc0l0ZW0iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RP ZkFkZFJlZmVyZW5jZXNJdGVtIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJBZGRSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkFkZFJlZmVyZW5jZXNJdGVtIiBt aW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJMaXN0T2ZBZGRSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkxpc3RPZkFkZFJlZmVyZW5jZXNJ dGVtIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJBZGRSZWZlcmVuY2VzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8 eHM6ZG9jdW1lbnRhdGlvbj5BZGRzIG9uZSBvciBtb3JlIHJlZmVyZW5jZXMgdG8gdGhlIHNlcnZl ciBhZGRyZXNzIHNwYWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRl ciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWZlcmVuY2VzVG9BZGQiIHR5cGU9InRuczpM aXN0T2ZBZGRSZWZlcmVuY2VzSXRlbSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJBZGRSZWZlcmVuY2VzUmVxdWVzdCIgdHlwZT0idG5zOkFkZFJlZmVyZW5jZXNSZXF1ZXN0 IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBZGRSZWZlcmVuY2VzUmVzcG9uc2UiPg0K ICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QWRkcyBvbmUgb3Ig bW9yZSByZWZlcmVuY2VzIHRvIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50 YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJSZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0 eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJBZGRSZWZlcmVuY2VzUmVzcG9uc2UiIHR5cGU9InRuczpBZGRSZWZlcmVuY2Vz UmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZU5vZGVzSXRlbSI+ DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHJlcXVlc3Qg dG8gZGVsZXRlIGEgbm9kZSB0byB0aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVu dGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVRhcmdldFJl ZmVyZW5jZXMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVO b2Rlc0l0ZW0iIHR5cGU9InRuczpEZWxldGVOb2Rlc0l0ZW0iIC8+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9Ikxpc3RPZkRlbGV0ZU5vZGVzSXRlbSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlTm9kZXNJdGVtIiB0eXBlPSJ0bnM6RGVsZXRlTm9k ZXNJdGVtIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJMaXN0T2ZEZWxldGVOb2Rlc0l0ZW0iIHR5cGU9InRuczpMaXN0T2ZEZWxldGVO b2Rlc0l0ZW0iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhU eXBlIG5hbWU9IkRlbGV0ZU5vZGVzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAg ICA8eHM6ZG9jdW1lbnRhdGlvbj5EZWxldGUgb25lIG9yIG1vcmUgbm9kZXMgZnJvbSB0aGUgc2Vy dmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlv bj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVh ZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVzVG9EZWxldGUiIHR5cGU9InRuczpM aXN0T2ZEZWxldGVOb2Rlc0l0ZW0iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iRGVsZXRlTm9kZXNSZXF1ZXN0IiB0eXBlPSJ0bnM6RGVsZXRlTm9kZXNSZXF1ZXN0IiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJEZWxldGVOb2Rlc1Jlc3BvbnNlIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSBu b2RlcyBmcm9tIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQog ICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRz IiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpM aXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJEZWxldGVOb2Rlc1Jlc3BvbnNlIiB0eXBlPSJ0bnM6RGVsZXRlTm9kZXNSZXNwb25zZSIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRGVsZXRlUmVmZXJlbmNlc0l0ZW0iPg0KICAgIDx4 czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSByZXF1ZXN0IHRvIGRlbGV0 ZSBhIG5vZGUgZnJvbSB0aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJTb3VyY2VOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZVR5cGVJ ZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNGb3J3YXJkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJnZXROb2RlSWQiIHR5cGU9InVh OkV4cGFuZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlQmlkaXJlY3Rpb25hbCIgdHlwZT0ieHM6Ym9vbGVhbiIg bWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVJlZmVyZW5jZXNJdGVtIiB0eXBlPSJ0bnM6RGVs ZXRlUmVmZXJlbmNlc0l0ZW0iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkRl bGV0ZVJlZmVyZW5jZXNJdGVtIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJEZWxldGVSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkRlbGV0ZVJlZmVyZW5jZXNJ dGVtIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZEZWxldGVSZWZlcmVuY2VzSXRlbSIgdHlwZT0idG5zOkxpc3RPZkRlbGV0 ZVJlZmVyZW5jZXNJdGVtIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJEZWxldGVSZWZlcmVuY2VzUmVxdWVzdCI+DQogICAgPHhzOmFubm90 YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5EZWxldGUgb25lIG9yIG1vcmUgcmVmZXJl bmNlcyBmcm9tIHRoZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQog ICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNl c1RvRGVsZXRlIiB0eXBlPSJ0bnM6TGlzdE9mRGVsZXRlUmVmZXJlbmNlc0l0ZW0iIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlUmVmZXJlbmNlc1JlcXVlc3QiIHR5 cGU9InRuczpEZWxldGVSZWZlcmVuY2VzUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iRGVsZXRlUmVmZXJlbmNlc1Jlc3BvbnNlIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPkRlbGV0ZSBvbmUgb3IgbW9yZSByZWZlcmVuY2VzIGZyb20g dGhlIHNlcnZlciBhZGRyZXNzIHNwYWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFu bm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVz cG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3VsdHMiIHR5cGU9InVh Okxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdu b3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVJl ZmVyZW5jZXNSZXNwb25zZSIgdHlwZT0idG5zOkRlbGV0ZVJlZmVyZW5jZXNSZXNwb25zZSIgLz4N Cg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iQXR0cmlidXRlV3JpdGVNYXNrIj4NCiAgICA8eHM6 YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkRlZmluZSBiaXRzIHVzZWQgdG8g aW5kaWNhdGUgd2hpY2ggYXR0cmlidXRlcyBhcmUgd3JpdGFibGUuPC94czpkb2N1bWVudGF0aW9u Pg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6dW5z aWduZWRJbnQiPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iQXR0cmlidXRlV3JpdGVNYXNrIiB0eXBlPSJ0bnM6QXR0cmlidXRl V3JpdGVNYXNrIiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJCcm93c2VEaXJlY3Rpb24i Pg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+VGhlIGRpcmVj dGlvbnMgb2YgdGhlIHJlZmVyZW5jZXMgdG8gcmV0dXJuLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAg ICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkZvcndhcmRfMCIgLz4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iSW52ZXJzZV8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZh bHVlPSJCb3RoXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkludmFsaWRfMyIg Lz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IkJyb3dzZURpcmVjdGlvbiIgdHlwZT0idG5zOkJyb3dzZURpcmVjdGlvbiIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVmlld0Rlc2NyaXB0aW9uIj4NCiAgICA8eHM6YW5u b3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSB2aWV3IHRvIGJyb3dzZS48L3hz OmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZpZXdJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGltZXN0 YW1wIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVmlld1ZlcnNpb24iIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iVmlld0Rlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6Vmlld0Rlc2NyaXB0aW9uIiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJCcm93c2VEZXNjcmlwdGlvbiI+DQogICAgPHhzOmFu bm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5BIHJlcXVlc3QgdG8gYnJvd3NlIHRo ZSB0aGUgcmVmZXJlbmNlcyBmcm9tIGEgbm9kZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94 czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 Ik5vZGVJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlRGlyZWN0aW9uIiB0eXBlPSJ0bnM6QnJv d3NlRGlyZWN0aW9uIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZWZlcmVuY2VUeXBlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluY2x1ZGVTdWJ0eXBlcyIgdHlwZT0i eHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9k ZUNsYXNzTWFzayIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlc3VsdE1hc2siIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlRGVzY3JpcHRpb24iIHR5cGU9InRuczpCcm93c2VEZXNj cmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQnJvd3NlRGVzY3Jp cHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dz ZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6QnJvd3NlRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0iMCIg bWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkJyb3dz ZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mQnJvd3NlRGVzY3JpcHRpb24iIG5pbGxhYmxl PSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkJyb3dzZVJl c3VsdE1hc2siPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+ QSBiaXQgbWFzayB3aGljaCBzcGVjaWZpZXMgd2hhdCBzaG91bGQgYmUgcmV0dXJuZWQgaW4gYSBi cm93c2UgcmVzcG9uc2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iTm9uZV8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSZWZl cmVuY2VUeXBlSWRfMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSXNGb3J3YXJk XzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9Ik5vZGVDbGFzc180IiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJCcm93c2VOYW1lXzgiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IkRpc3BsYXlOYW1lXzE2IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJUeXBlRGVmaW5pdGlvbl8zMiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1 ZT0iQWxsXzYzIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSZWZlcmVuY2VUeXBl SW5mb18zIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJUYXJnZXRJbmZvXzYwIiAv Pg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iQnJvd3NlUmVzdWx0TWFzayIgdHlwZT0idG5zOkJyb3dzZVJlc3VsdE1hc2siIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlJlZmVyZW5jZURlc2NyaXB0aW9uIj4NCiAgICA8 eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSBkZXNjcmlwdGlvbiBv ZiBhIHJlZmVyZW5jZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5vdGF0aW9uPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZVR5cGVJ ZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSXNGb3J3YXJkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOkV4cGFu ZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iQnJvd3NlTmFtZSIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlO YW1lIiB0eXBlPSJ1YTpMb2NhbGl6ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZUNsYXNzIiB0eXBlPSJ0bnM6Tm9kZUNs YXNzIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUeXBlRGVmaW5p dGlvbiIgdHlwZT0idWE6RXhwYW5kZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iUmVmZXJlbmNlRGVzY3JpcHRpb24iIHR5cGU9InRuczpSZWZlcmVuY2VEZXNj cmlwdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUmVmZXJlbmNlRGVz Y3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJl ZmVyZW5jZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6UmVmZXJlbmNlRGVzY3JpcHRpb24iIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZlJlZmVyZW5jZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mUmVmZXJlbmNlRGVzY3Jp cHRpb24iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmVsZW1lbnQgbmFt ZT0iQ29udGludWF0aW9uUG9pbnQiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iQnJvd3NlUmVzdWx0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAg ICAgIDx4czpkb2N1bWVudGF0aW9uPlRoZSByZXN1bHQgb2YgYSBicm93c2Ugb3BlcmF0aW9uLjwv eHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29k ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGludWF0aW9u UG9pbnQiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZXMiIHR5cGU9InRuczpMaXN0 T2ZSZWZlcmVuY2VEZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJCcm93c2VSZXN1bHQiIHR5cGU9InRuczpCcm93c2VSZXN1bHQiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb3dzZVJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlUmVzdWx0IiB0eXBlPSJ0bnM6QnJvd3NlUmVz dWx0IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZCcm93c2VSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZCcm93c2VSZXN1bHQi IG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IkJyb3dzZVJlcXVlc3QiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50 YXRpb24+QnJvd3NlIHRoZSByZWZlcmVuY2VzIGZvciBvbmUgb3IgbW9yZSBub2RlcyBmcm9tIHRo ZSBzZXJ2ZXIgYWRkcmVzcyBzcGFjZS48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVl c3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmlldyIgdHlwZT0idG5zOlZpZXdE ZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlcXVlc3RlZE1heFJlZmVyZW5jZXNQZXJOb2RlIiB0eXBlPSJ4czp1bnNp Z25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZXNU b0Jyb3dzZSIgdHlwZT0idG5zOkxpc3RPZkJyb3dzZURlc2NyaXB0aW9uIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVJlcXVlc3QiIHR5cGU9InRuczpCcm93c2VS ZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJCcm93c2VSZXNwb25zZSI+DQog ICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5Ccm93c2UgdGhlIHJl ZmVyZW5jZXMgZm9yIG9uZSBvciBtb3JlIG5vZGVzIGZyb20gdGhlIHNlcnZlciBhZGRyZXNzIHNw YWNlLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRu czpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZCcm93c2VSZXN1bHQi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVJlc3BvbnNlIiB0eXBlPSJ0bnM6 QnJvd3NlUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkJyb3dzZU5leHRS ZXF1ZXN0Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPkNv bnRpbnVlcyBvbmUgb3IgbW9yZSBicm93c2Ugb3BlcmF0aW9ucy48L3hzOmRvY3VtZW50YXRpb24+ DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVsZWFz ZUNvbnRpbnVhdGlvblBvaW50cyIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGludWF0aW9uUG9pbnRzIiB0eXBlPSJ1YTpMaXN0 T2ZCeXRlU3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6 c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkJyb3dz ZU5leHRSZXF1ZXN0IiB0eXBlPSJ0bnM6QnJvd3NlTmV4dFJlcXVlc3QiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IkJyb3dzZU5leHRSZXNwb25zZSI+DQogICAgPHhzOmFubm90YXRpb24+ DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5Db250aW51ZXMgb25lIG9yIG1vcmUgYnJvd3NlIG9w ZXJhdGlvbnMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlw ZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5zOkxpc3RPZkJyb3dzZVJl c3VsdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3NlTmV4dFJlc3BvbnNlIiB0 eXBlPSJ0bnM6QnJvd3NlTmV4dFJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJSZWxhdGl2ZVBhdGhFbGVtZW50Ij4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpk b2N1bWVudGF0aW9uPkFuIGVsZW1lbnQgaW4gYSByZWxhdGl2ZSBwYXRoLjwveHM6ZG9jdW1lbnRh dGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUmVmZXJlbmNlVHlwZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0ludmVy c2UiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkluY2x1ZGVTdWJ0eXBlcyIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVGFyZ2V0TmFtZSIgdHlwZT0idWE6UXVhbGlmaWVk TmFtZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNl Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSZWxhdGl2ZVBhdGhF bGVtZW50IiB0eXBlPSJ0bnM6UmVsYXRpdmVQYXRoRWxlbWVudCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mUmVsYXRpdmVQYXRoRWxlbWVudCI+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVsYXRpdmVQYXRoRWxlbWVudCIgdHlwZT0idG5z OlJlbGF0aXZlUGF0aEVsZW1lbnQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlbGF0aXZlUGF0aEVsZW1lbnQiIHR5cGU9 InRuczpMaXN0T2ZSZWxhdGl2ZVBhdGhFbGVtZW50IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWxhdGl2ZVBhdGgiPg0KICAgIDx4czph bm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+QSByZWxhdGl2ZSBwYXRoIGNvbnN0 cnVjdGVkIGZyb20gcmVmZXJlbmNlIHR5cGVzIGFuZCBicm93c2UgbmFtZXMuPC94czpkb2N1bWVu dGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJFbGVtZW50cyIgdHlwZT0idG5zOkxpc3RPZlJlbGF0aXZlUGF0aEVs ZW1lbnQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVsYXRpdmVQYXRo IiB0eXBlPSJ0bnM6UmVsYXRpdmVQYXRoIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJC cm93c2VQYXRoIj4NCiAgICA8eHM6YW5ub3RhdGlvbj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9u PkEgcmVxdWVzdCB0byB0cmFuc2xhdGUgYSBwYXRoIGludG8gYSBub2RlIGlkLjwveHM6ZG9jdW1l bnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRpb24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU3RhcnRpbmdOb2RlIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWxhdGl2 ZVBhdGgiIHR5cGU9InRuczpSZWxhdGl2ZVBhdGgiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iQnJvd3NlUGF0aCIgdHlwZT0idG5zOkJyb3dzZVBhdGgiIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb3dzZVBhdGgiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVBhdGgiIHR5cGU9InRuczpCcm93c2VQYXRo IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZCcm93c2VQYXRoIiB0eXBlPSJ0bnM6TGlzdE9mQnJvd3NlUGF0aCIgbmlsbGFi bGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQnJvd3Nl UGF0aFRhcmdldCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1lbnRhdGlv bj5UaGUgdGFyZ2V0IG9mIHRoZSB0cmFuc2xhdGVkIHBhdGguPC94czpkb2N1bWVudGF0aW9uPg0K ICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJUYXJnZXRJZCIgdHlwZT0idWE6RXhwYW5kZWROb2RlSWQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZW1haW5pbmdQYXRo SW5kZXgiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpz ZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3Nl UGF0aFRhcmdldCIgdHlwZT0idG5zOkJyb3dzZVBhdGhUYXJnZXQiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikxpc3RPZkJyb3dzZVBhdGhUYXJnZXQiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVBhdGhUYXJnZXQiIHR5cGU9InRuczpCcm93 c2VQYXRoVGFyZ2V0IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZCcm93c2VQYXRoVGFyZ2V0IiB0eXBlPSJ0bnM6TGlzdE9m QnJvd3NlUGF0aFRhcmdldCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iQnJvd3NlUGF0aFJlc3VsdCI+DQogICAgPHhzOmFubm90YXRpb24+ DQogICAgICA8eHM6ZG9jdW1lbnRhdGlvbj5UaGUgcmVzdWx0IG9mIGEgdHJhbnNsYXRlIG9wZWFy YXRpb24uPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6 c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ1YTpT dGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUYXJn ZXRzIiB0eXBlPSJ0bnM6TGlzdE9mQnJvd3NlUGF0aFRhcmdldCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJCcm93c2VQYXRoUmVzdWx0IiB0eXBlPSJ0bnM6QnJvd3NlUGF0 aFJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQnJvd3NlUGF0aFJl c3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnJvd3Nl UGF0aFJlc3VsdCIgdHlwZT0idG5zOkJyb3dzZVBhdGhSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbWF4 T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkJyb3dzZVBh dGhSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZCcm93c2VQYXRoUmVzdWx0IiBuaWxsYWJsZT0idHJ1 ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJUcmFuc2xhdGVCcm93 c2VQYXRoc1RvTm9kZUlkc1JlcXVlc3QiPg0KICAgIDx4czphbm5vdGF0aW9uPg0KICAgICAgPHhz OmRvY3VtZW50YXRpb24+VHJhbnNsYXRlcyBvbmUgb3IgbW9yZSBwYXRocyBpbiB0aGUgc2VydmVy IGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVy IiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZVBhdGhzIiB0eXBlPSJ0bnM6TGlzdE9m QnJvd3NlUGF0aCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc2xh dGVCcm93c2VQYXRoc1RvTm9kZUlkc1JlcXVlc3QiIHR5cGU9InRuczpUcmFuc2xhdGVCcm93c2VQ YXRoc1RvTm9kZUlkc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlRyYW5z bGF0ZUJyb3dzZVBhdGhzVG9Ob2RlSWRzUmVzcG9uc2UiPg0KICAgIDx4czphbm5vdGF0aW9uPg0K ICAgICAgPHhzOmRvY3VtZW50YXRpb24+VHJhbnNsYXRlcyBvbmUgb3IgbW9yZSBwYXRocyBpbiB0 aGUgc2VydmVyIGFkZHJlc3Mgc3BhY2UuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5u b3RhdGlvbj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNw b25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5z Okxpc3RPZkJyb3dzZVBhdGhSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RP ZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRy YW5zbGF0ZUJyb3dzZVBhdGhzVG9Ob2RlSWRzUmVzcG9uc2UiIHR5cGU9InRuczpUcmFuc2xhdGVC cm93c2VQYXRoc1RvTm9kZUlkc1Jlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJSZWdpc3Rlck5vZGVzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6 ZG9jdW1lbnRhdGlvbj5SZWdpc3RlcnMgb25lIG9yIG1vcmUgbm9kZXMgZm9yIHJlcGVhdGVkIHVz ZSB3aXRoaW4gYSBzZXNzaW9uLjwveHM6ZG9jdW1lbnRhdGlvbj4NCiAgICA8L3hzOmFubm90YXRp b24+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhl YWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2Rlc1RvUmVnaXN0ZXIiIHR5cGU9InVh Okxpc3RPZk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJSZWdp c3Rlck5vZGVzUmVxdWVzdCIgdHlwZT0idG5zOlJlZ2lzdGVyTm9kZXNSZXF1ZXN0IiAvPg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWdpc3Rlck5vZGVzUmVzcG9uc2UiPg0KICAgIDx4czph bm5vdGF0aW9uPg0KICAgICAgPHhzOmRvY3VtZW50YXRpb24+UmVnaXN0ZXJzIG9uZSBvciBtb3Jl IG5vZGVzIGZvciByZXBlYXRlZCB1c2Ugd2l0aGluIGEgc2Vzc2lvbi48L3hzOmRvY3VtZW50YXRp b24+DQogICAgPC94czphbm5vdGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZWdpc3RlcmVkTm9kZUlkcyIgdHlwZT0idWE6TGlzdE9mTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IlJlZ2lzdGVyTm9kZXNSZXNwb25zZSIgdHlwZT0idG5zOlJl Z2lzdGVyTm9kZXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVW5yZWdp c3Rlck5vZGVzUmVxdWVzdCI+DQogICAgPHhzOmFubm90YXRpb24+DQogICAgICA8eHM6ZG9jdW1l bnRhdGlvbj5VbnJlZ2lzdGVycyBvbmUgb3IgbW9yZSBwcmV2aW91c2x5IHJlZ2lzdGVyZWQgbm9k ZXMuPC94czpkb2N1bWVudGF0aW9uPg0KICAgIDwveHM6YW5ub3RhdGlvbj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6 UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ik5vZGVzVG9VbnJlZ2lzdGVyIiB0eXBlPSJ1YTpMaXN0T2ZOb2RlSWQi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVW5yZWdpc3Rlck5vZGVzUmVx dWVzdCIgdHlwZT0idG5zOlVucmVnaXN0ZXJOb2Rlc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9IlVucmVnaXN0ZXJOb2Rlc1Jlc3BvbnNlIj4NCiAgICA8eHM6YW5ub3RhdGlv bj4NCiAgICAgIDx4czpkb2N1bWVudGF0aW9uPlVucmVnaXN0ZXJzIG9uZSBvciBtb3JlIHByZXZp b3VzbHkgcmVnaXN0ZXJlZCBub2Rlcy48L3hzOmRvY3VtZW50YXRpb24+DQogICAgPC94czphbm5v dGF0aW9uPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3Bv bnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iVW5yZWdpc3Rlck5vZGVzUmVzcG9uc2UiIHR5cGU9InRuczpVbnJl Z2lzdGVyTm9kZXNSZXNwb25zZSIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDb3VudGVyIiB0 eXBlPSJ4czp1bnNpZ25lZEludCIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJOdW1lcmljUmFu Z2UiIHR5cGU9InhzOnN0cmluZyIgLz4NCg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUaW1lIiB0eXBl PSJ4czpzdHJpbmciIC8+DQoNCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0ZSIgdHlwZT0ieHM6ZGF0 ZVRpbWUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVuZHBvaW50Q29uZmlndXJhdGlv biI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iT3BlcmF0aW9u VGltZW91dCIgdHlwZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJVc2VCaW5hcnlFbmNvZGluZyIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4U3RyaW5nTGVuZ3RoIiB0eXBlPSJ4czpp bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1heEJ5dGVTdHJp bmdMZW5ndGgiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iTWF4QXJyYXlMZW5ndGgiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4TWVzc2FnZVNpemUiIHR5cGU9InhzOmludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4QnVmZmVyU2l6ZSIgdHlw ZT0ieHM6aW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDaGFu bmVsTGlmZXRpbWUiIHR5cGU9InhzOmludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iU2VjdXJpdHlUb2tlbkxpZmV0aW1lIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJFbmRwb2ludENvbmZpZ3VyYXRpb24iIHR5cGU9InRuczpFbmRwb2ludENv bmZpZ3VyYXRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkVuZHBvaW50 Q29uZmlndXJhdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iRW5kcG9pbnRDb25maWd1cmF0aW9uIiB0eXBlPSJ0bnM6RW5kcG9pbnRDb25maWd1cmF0aW9u IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZFbmRwb2ludENvbmZpZ3VyYXRpb24iIHR5cGU9InRuczpMaXN0T2ZFbmRwb2lu dENvbmZpZ3VyYXRpb24iIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IlF1ZXJ5RGF0YURlc2NyaXB0aW9uIj4NCiAgICA8eHM6c2VxdWVuY2U+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWxhdGl2ZVBhdGgiIHR5cGU9InRuczpSZWxhdGl2 ZVBhdGgiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJBdHRyaWJ1dGVJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmluZyIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeURhdGFEZXNjcmlwdGlv biIgdHlwZT0idG5zOlF1ZXJ5RGF0YURlc2NyaXB0aW9uIiAvPg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJMaXN0T2ZRdWVyeURhdGFEZXNjcmlwdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVlcnlEYXRhRGVzY3JpcHRpb24iIHR5cGU9InRuczpR dWVyeURhdGFEZXNjcmlwdGlvbiIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mUXVlcnlEYXRhRGVzY3JpcHRpb24iIHR5cGU9 InRuczpMaXN0T2ZRdWVyeURhdGFEZXNjcmlwdGlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTm9kZVR5cGVEZXNjcmlwdGlvbiI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHlwZURlZmluaXRpb25O b2RlIiB0eXBlPSJ1YTpFeHBhbmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluY2x1ZGVTdWJUeXBlcyIgdHlwZT0ieHM6 Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YVRv UmV0dXJuIiB0eXBlPSJ0bnM6TGlzdE9mUXVlcnlEYXRhRGVzY3JpcHRpb24iIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZVR5cGVEZXNjcmlwdGlvbiIgdHlwZT0idG5z Ok5vZGVUeXBlRGVzY3JpcHRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RP Zk5vZGVUeXBlRGVzY3JpcHRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Ik5vZGVUeXBlRGVzY3JpcHRpb24iIHR5cGU9InRuczpOb2RlVHlwZURlc2NyaXB0 aW9uIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJMaXN0T2ZOb2RlVHlwZURlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZVR5 cGVEZXNjcmlwdGlvbiIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6c2lt cGxlVHlwZSAgbmFtZT0iRmlsdGVyT3BlcmF0b3IiPg0KICAgIDx4czpyZXN0cmljdGlvbiBiYXNl PSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJFcXVhbHNfMCIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSXNOdWxsXzEiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IkdyZWF0ZXJUaGFuXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24g dmFsdWU9Ikxlc3NUaGFuXzMiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkdyZWF0 ZXJUaGFuT3JFcXVhbF80IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJMZXNzVGhh bk9yRXF1YWxfNSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTGlrZV82IiAvPg0K ICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJOb3RfNyIgLz4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iQmV0d2Vlbl84IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJJ bkxpc3RfOSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQW5kXzEwIiAvPg0KICAg ICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJPcl8xMSIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlv biB2YWx1ZT0iQ2FzdF8xMiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW5WaWV3 XzEzIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJPZlR5cGVfMTQiIC8+DQogICAg ICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlbGF0ZWRUb18xNSIgLz4NCiAgICAgIDx4czplbnVt ZXJhdGlvbiB2YWx1ZT0iQml0d2lzZUFuZF8xNiIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2 YWx1ZT0iQml0d2lzZU9yXzE3IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2lt cGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRmlsdGVyT3BlcmF0b3IiIHR5cGU9InRuczpG aWx0ZXJPcGVyYXRvciIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUXVlcnlEYXRhU2V0 Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5 cGU9InVhOkV4cGFuZGVkTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHlwZURlZmluaXRpb25Ob2RlIiB0eXBlPSJ1YTpFeHBh bmRlZE5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlZhbHVlcyIgdHlwZT0idWE6TGlzdE9mVmFyaWFudCIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeURhdGFTZXQiIHR5cGU9InRuczpRdWVyeURh dGFTZXQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlF1ZXJ5RGF0YVNldCI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUXVlcnlEYXRhU2V0 IiB0eXBlPSJ0bnM6UXVlcnlEYXRhU2V0IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3Vu ZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZRdWVyeURhdGFTZXQiIHR5cGU9InRu czpMaXN0T2ZRdWVyeURhdGFTZXQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik5vZGVSZWZlcmVuY2UiPg0KICAgIDx4czpzZXF1ZW5jZT4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVmZXJl bmNlVHlwZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc0ZvcndhcmQiIHR5cGU9InhzOmJvb2xlYW4i IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlZmVyZW5jZWROb2Rl SWRzIiB0eXBlPSJ1YTpMaXN0T2ZOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTm9kZVJlZmVyZW5jZSIgdHlwZT0idG5zOk5vZGVSZWZlcmVuY2UiIC8+DQoNCiAg PHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZk5vZGVSZWZlcmVuY2UiPg0KICAgIDx4czpzZXF1 ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5vZGVSZWZlcmVuY2UiIHR5cGU9InRuczpO b2RlUmVmZXJlbmNlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZOb2RlUmVmZXJlbmNlIiB0eXBlPSJ0bnM6TGlzdE9mTm9k ZVJlZmVyZW5jZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlck9wZXJhdG9yIiB0eXBlPSJ0bnM6RmlsdGVyT3Bl cmF0b3IiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlck9w ZXJhbmRzIiB0eXBlPSJ1YTpMaXN0T2ZFeHRlbnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGVudEZpbHRlckVsZW1lbnQiIHR5cGU9InRuczpDb250 ZW50RmlsdGVyRWxlbWVudCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mQ29u dGVudEZpbHRlckVsZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkNvbnRlbnRGaWx0ZXJFbGVtZW50IiB0eXBlPSJ0bnM6Q29udGVudEZpbHRlckVsZW1l bnQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9Ikxpc3RPZkNvbnRlbnRGaWx0ZXJFbGVtZW50IiB0eXBlPSJ0bnM6TGlzdE9mQ29udGVu dEZpbHRlckVsZW1lbnQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IkNvbnRlbnRGaWx0ZXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkVsZW1lbnRzIiB0eXBlPSJ0bnM6TGlzdE9mQ29udGVudEZpbHRl ckVsZW1lbnQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGVudEZp bHRlciIgdHlwZT0idG5zOkNvbnRlbnRGaWx0ZXIiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikxpc3RPZkNvbnRlbnRGaWx0ZXIiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkNvbnRlbnRGaWx0ZXIiIHR5cGU9InRuczpDb250ZW50RmlsdGVyIiBtaW5P Y2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJM aXN0T2ZDb250ZW50RmlsdGVyIiB0eXBlPSJ0bnM6TGlzdE9mQ29udGVudEZpbHRlciIgbmlsbGFi bGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRmlsdGVy T3BlcmFuZCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkZpbHRlck9wZXJhbmQiIHR5cGU9InRu czpGaWx0ZXJPcGVyYW5kIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFbGVtZW50T3Bl cmFuZCI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6 ZXh0ZW5zaW9uIGJhc2U9InRuczpGaWx0ZXJPcGVyYW5kIj4NCiAgICAgICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4IiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpl eHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iRWxlbWVudE9wZXJhbmQiIHR5cGU9InRuczpFbGVtZW50T3Bl cmFuZCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGl0ZXJhbE9wZXJhbmQiPg0KICAg IDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBi YXNlPSJ0bnM6RmlsdGVyT3BlcmFuZCI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJWYWx1ZSIgdHlwZT0idWE6VmFyaWFudCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAg PC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQg bmFtZT0iTGl0ZXJhbE9wZXJhbmQiIHR5cGU9InRuczpMaXRlcmFsT3BlcmFuZCIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iQXR0cmlidXRlT3BlcmFuZCI+DQogICAgPHhzOmNvbXBsZXhD b250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpGaWx0 ZXJPcGVyYW5kIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9Ik5vZGVJZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkFsaWFzIiB0eXBlPSJ4czpzdHJp bmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iQnJvd3NlUGF0aCIgdHlwZT0idG5zOlJlbGF0aXZlUGF0aCIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdHRyaWJ1 dGVJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJJbmRleFJhbmdlIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hz OmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBl Pg0KICA8eHM6ZWxlbWVudCBuYW1lPSJBdHRyaWJ1dGVPcGVyYW5kIiB0eXBlPSJ0bnM6QXR0cmli dXRlT3BlcmFuZCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU2ltcGxlQXR0cmlidXRl T3BlcmFuZCI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8 eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpGaWx0ZXJPcGVyYW5kIj4NCiAgICAgICAgPHhzOnNlcXVl bmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlR5cGVEZWZpbml0aW9uSWQiIHR5cGU9 InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJCcm93c2VQYXRoIiB0eXBlPSJ1YTpMaXN0T2ZRdWFsaWZpZWROYW1l IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IkF0dHJpYnV0ZUlkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmlu ZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5j ZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNpbXBsZUF0dHJpYnV0ZU9wZXJh bmQiIHR5cGU9InRuczpTaW1wbGVBdHRyaWJ1dGVPcGVyYW5kIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZTaW1wbGVBdHRyaWJ1dGVPcGVyYW5kIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTaW1wbGVBdHRyaWJ1dGVPcGVyYW5kIiB0eXBl PSJ0bnM6U2ltcGxlQXR0cmlidXRlT3BlcmFuZCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVu Ym91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mU2ltcGxlQXR0cmlidXRlT3Bl cmFuZCIgdHlwZT0idG5zOkxpc3RPZlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIG5pbGxhYmxlPSJ0 cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNvbnRlbnRGaWx0 ZXJFbGVtZW50UmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTdGF0dXNDb2RlIiB0eXBlPSJ1YTpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJPcGVyYW5kU3RhdHVzQ29kZXMiIHR5cGU9InVhOkxpc3RP ZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJPcGVyYW5kRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFn bm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDb250ZW50 RmlsdGVyRWxlbWVudFJlc3VsdCIgdHlwZT0idG5zOkNvbnRlbnRGaWx0ZXJFbGVtZW50UmVzdWx0 IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZDb250ZW50RmlsdGVyRWxlbWVu dFJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29u dGVudEZpbHRlckVsZW1lbnRSZXN1bHQiIHR5cGU9InRuczpDb250ZW50RmlsdGVyRWxlbWVudFJl c3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mQ29udGVudEZpbHRlckVsZW1lbnRSZXN1bHQiIHR5cGU9InRuczpMaXN0 T2ZDb250ZW50RmlsdGVyRWxlbWVudFJlc3VsdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ29udGVudEZpbHRlclJlc3VsdCI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRWxlbWVudFJlc3VsdHMiIHR5 cGU9InRuczpMaXN0T2ZDb250ZW50RmlsdGVyRWxlbWVudFJlc3VsdCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVsZW1lbnREaWFnbm9z dGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9IkNvbnRlbnRGaWx0ZXJSZXN1bHQiIHR5cGU9InRuczpDb250 ZW50RmlsdGVyUmVzdWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJQYXJzaW5nUmVz dWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXND b2RlIiB0eXBlPSJ1YTpTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJEYXRhU3RhdHVzQ29kZXMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE YXRhRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJQYXJzaW5nUmVzdWx0IiB0eXBlPSJ0bnM6 UGFyc2luZ1Jlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mUGFyc2lu Z1Jlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUGFy c2luZ1Jlc3VsdCIgdHlwZT0idG5zOlBhcnNpbmdSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbWF4T2Nj dXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlBhcnNpbmdSZXN1 bHQiIHR5cGU9InRuczpMaXN0T2ZQYXJzaW5nUmVzdWx0IiBuaWxsYWJsZT0idHJ1ZSI+PC94czpl bGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJRdWVyeUZpcnN0UmVxdWVzdCI+DQog ICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIg dHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJWaWV3IiB0eXBlPSJ0bnM6Vmlld0Rlc2NyaXB0aW9u IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iTm9kZVR5cGVzIiB0eXBlPSJ0bnM6TGlzdE9mTm9kZVR5cGVEZXNjcmlwdGlvbiIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRl ciIgdHlwZT0idG5zOkNvbnRlbnRGaWx0ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhEYXRhU2V0c1RvUmV0dXJuIiB0eXBlPSJ4 czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i TWF4UmVmZXJlbmNlc1RvUmV0dXJuIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IlF1ZXJ5Rmlyc3RSZXF1ZXN0IiB0eXBlPSJ0bnM6UXVlcnlGaXJzdFJlcXVlc3Qi IC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlF1ZXJ5Rmlyc3RSZXNwb25zZSI+DQogICAg PHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5 cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlF1ZXJ5RGF0YVNldHMiIHR5cGU9InRuczpMaXN0T2ZR dWVyeURhdGFTZXQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJDb250aW51YXRpb25Qb2ludCIgdHlwZT0ieHM6YmFzZTY0QmluYXJ5IiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i UGFyc2luZ1Jlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZQYXJzaW5nUmVzdWx0IiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3Rp Y0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlclJlc3VsdCIgdHlw ZT0idG5zOkNvbnRlbnRGaWx0ZXJSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUXVlcnlGaXJzdFJlc3BvbnNlIiB0eXBlPSJ0bnM6UXVlcnlGaXJzdFJlc3BvbnNl IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJRdWVyeU5leHRSZXF1ZXN0Ij4NCiAgICA8 eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBl PSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlJlbGVhc2VDb250aW51YXRpb25Qb2ludCIgdHlwZT0ieHM6 Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGlu dWF0aW9uUG9pbnQiIHR5cGU9InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJRdWVyeU5leHRSZXF1ZXN0IiB0eXBlPSJ0bnM6UXVlcnlOZXh0UmVx dWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUXVlcnlOZXh0UmVzcG9uc2UiPg0K ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVy IiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeURhdGFTZXRzIiB0eXBlPSJ0bnM6TGlz dE9mUXVlcnlEYXRhU2V0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZENvbnRpbnVhdGlvblBvaW50IiB0eXBlPSJ4czpiYXNl NjRCaW5hcnkiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUXVlcnlOZXh0 UmVzcG9uc2UiIHR5cGU9InRuczpRdWVyeU5leHRSZXNwb25zZSIgLz4NCg0KICA8eHM6c2ltcGxl VHlwZSAgbmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFz ZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iU291cmNlXzAiIC8+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlNlcnZlcl8xIiAvPg0KICAgICAgPHhzOmVu dW1lcmF0aW9uIHZhbHVlPSJCb3RoXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9 Ik5laXRoZXJfMyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW52YWxpZF80IiAv Pg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iVGltZXN0YW1wc1RvUmV0dXJuIiB0eXBlPSJ0bnM6VGltZXN0YW1wc1RvUmV0dXJu IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWFkVmFsdWVJZCI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZUlkIiB0eXBlPSJ1YTpOb2RlSWQi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJBdHRyaWJ1dGVJZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmluZyIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFF bmNvZGluZyIgdHlwZT0idWE6UXVhbGlmaWVkTmFtZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJSZWFkVmFsdWVJZCIgdHlwZT0idG5zOlJlYWRWYWx1ZUlkIiAvPg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZSZWFkVmFsdWVJZCI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVhZFZhbHVlSWQiIHR5cGU9InRuczpSZWFk VmFsdWVJZCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mUmVhZFZhbHVlSWQiIHR5cGU9InRuczpMaXN0T2ZSZWFkVmFsdWVJ ZCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iUmVhZFJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4QWdlIiB0eXBl PSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRp bWVzdGFtcHNUb1JldHVybiIgdHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZXNUb1JlYWQiIHR5cGU9InRuczpM aXN0T2ZSZWFkVmFsdWVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJS ZWFkUmVxdWVzdCIgdHlwZT0idG5zOlJlYWRSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJSZWFkUmVzcG9uc2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1 bHRzIiB0eXBlPSJ1YTpMaXN0T2ZEYXRhVmFsdWUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVh Okxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9IlJlYWRSZXNwb25zZSIgdHlwZT0idG5zOlJlYWRSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iSGlzdG9yeVJlYWRWYWx1ZUlkIj4NCiAgICA8eHM6c2VxdWVuY2U+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkluZGV4UmFu Z2UiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IkRhdGFFbmNvZGluZyIgdHlwZT0idWE6UXVhbGlmaWVkTmFt ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNvbnRpbnVhdGlvblBvaW50IiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeVJlYWRWYWx1ZUlkIiB0eXBlPSJ0bnM6 SGlzdG9yeVJlYWRWYWx1ZUlkIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZI aXN0b3J5UmVhZFZhbHVlSWQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9Ikhpc3RvcnlSZWFkVmFsdWVJZCIgdHlwZT0idG5zOkhpc3RvcnlSZWFkVmFsdWVJZCIg bWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iTGlzdE9mSGlzdG9yeVJlYWRWYWx1ZUlkIiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9yeVJlYWRW YWx1ZUlkIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlw ZSBuYW1lPSJIaXN0b3J5UmVhZFJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ29udGludWF0aW9uUG9pbnQiIHR5cGU9 InhzOmJhc2U2NEJpbmFyeSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlEYXRhIiB0eXBlPSJ1YTpFeHRlbnNpb25PYmplY3Qi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeVJlYWRSZXN1bHQi IHR5cGU9InRuczpIaXN0b3J5UmVhZFJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iTGlzdE9mSGlzdG9yeVJlYWRSZXN1bHQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ikhpc3RvcnlSZWFkUmVzdWx0IiB0eXBlPSJ0bnM6SGlzdG9yeVJlYWRS ZXN1bHQiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVl IiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ikxpc3RPZkhpc3RvcnlSZWFkUmVzdWx0IiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9y eVJlYWRSZXN1bHQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9Ikhpc3RvcnlSZWFkRGV0YWlscyI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikhpc3RvcnlSZWFkRGV0YWlscyIgdHlwZT0idG5zOkhpc3RvcnlSZWFkRGV0YWlscyIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZEV2ZW50RGV0YWlscyI+DQogICAgPHhzOmNvbXBs ZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpI aXN0b3J5UmVhZERldGFpbHMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTnVtVmFsdWVzUGVyTm9kZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1p bk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGFydFRpbWUiIHR5 cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iRW5kVGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGaWx0ZXIiIHR5cGU9InRuczpFdmVudEZpbHRlciIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAg ICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJlYWRFdmVudERldGFpbHMiIHR5cGU9InRu czpSZWFkRXZlbnREZXRhaWxzIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJSZWFkUmF3 TW9kaWZpZWREZXRhaWxzIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4N CiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkhpc3RvcnlSZWFkRGV0YWlscyI+DQogICAg ICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJc1JlYWRNb2Rp ZmllZCIgdHlwZT0ieHM6Ym9vbGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czpl bGVtZW50IG5hbWU9IlN0YXJ0VGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmRUaW1lIiB0eXBlPSJ4czpkYXRlVGlt ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9Ik51bVZhbHVl c1Blck5vZGUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV0dXJuQm91bmRzIiB0eXBlPSJ4czpib29sZWFuIiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lv bj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJSZWFkUmF3TW9kaWZpZWREZXRhaWxzIiB0eXBlPSJ0bnM6UmVhZFJhd01v ZGlmaWVkRGV0YWlscyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZFByb2Nlc3Nl ZERldGFpbHMiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAg PHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlzdG9yeVJlYWREZXRhaWxzIj4NCiAgICAgICAgPHhz OnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0YXJ0VGltZSIgdHlwZT0i eHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1l PSJFbmRUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAg IDx4czplbGVtZW50IG5hbWU9IlByb2Nlc3NpbmdJbnRlcnZhbCIgdHlwZT0ieHM6ZG91YmxlIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWdncmVnYXRlVHlw ZSIgdHlwZT0idWE6TGlzdE9mTm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24iIHR5 cGU9InRuczpBZ2dyZWdhdGVDb25maWd1cmF0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iUmVhZFByb2Nlc3NlZERldGFpbHMiIHR5cGU9InRuczpSZWFkUHJvY2Vzc2VkRGV0 YWlscyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUmVhZEF0VGltZURldGFpbHMiPg0K ICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lv biBiYXNlPSJ0bnM6SGlzdG9yeVJlYWREZXRhaWxzIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcVRpbWVzIiB0eXBlPSJ1YTpMaXN0T2ZEYXRl VGltZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJVc2VTaW1wbGVCb3VuZHMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAg IDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50 IG5hbWU9IlJlYWRBdFRpbWVEZXRhaWxzIiB0eXBlPSJ0bnM6UmVhZEF0VGltZURldGFpbHMiIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikhpc3RvcnlEYXRhIj4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhVmFsdWVzIiB0eXBlPSJ1YTpMaXN0T2ZE YXRhVmFsdWUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeURh dGEiIHR5cGU9InRuczpIaXN0b3J5RGF0YSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TW9kaWZpY2F0aW9uSW5mbyI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTW9kaWZpY2F0aW9uVGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlVwZGF0ZVR5cGUiIHR5cGU9InRuczpIaXN0b3J5 VXBkYXRlVHlwZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNl ck5hbWUiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJNb2RpZmljYXRpb25JbmZvIiB0eXBlPSJ0bnM6TW9kaWZpY2F0aW9uSW5mbyIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTW9kaWZpY2F0aW9uSW5mbyI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9kaWZpY2F0aW9uSW5mbyIgdHlw ZT0idG5zOk1vZGlmaWNhdGlvbkluZm8iIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5k ZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZk1vZGlmaWNhdGlvbkluZm8iIHR5cGU9 InRuczpMaXN0T2ZNb2RpZmljYXRpb25JbmZvIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50 Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJIaXN0b3J5TW9kaWZpZWREYXRhIj4NCiAgICA8 eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFz ZT0idG5zOkhpc3RvcnlEYXRhIj4NCiAgICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4 czplbGVtZW50IG5hbWU9Ik1vZGlmaWNhdGlvbkluZm9zIiB0eXBlPSJ0bnM6TGlzdE9mTW9kaWZp Y2F0aW9uSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94 czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRl bnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlNb2Rp ZmllZERhdGEiIHR5cGU9InRuczpIaXN0b3J5TW9kaWZpZWREYXRhIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJIaXN0b3J5RXZlbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkV2ZW50cyIgdHlwZT0idG5zOkxpc3RPZkhpc3RvcnlFdmVudEZpZWxk TGlzdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNl Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5RXZlbnQi IHR5cGU9InRuczpIaXN0b3J5RXZlbnQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikhp c3RvcnlSZWFkUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5UmVh ZERldGFpbHMiIHR5cGU9InVhOkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRpbWVzdGFtcHNUb1JldHVybiIg dHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUmVsZWFzZUNvbnRpbnVhdGlvblBvaW50cyIgdHlwZT0ieHM6Ym9vbGVh biIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZXNUb1JlYWQi IHR5cGU9InRuczpMaXN0T2ZIaXN0b3J5UmVhZFZhbHVlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9yeVJlYWRSZXF1ZXN0IiB0eXBlPSJ0bnM6SGlzdG9yeVJl YWRSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJIaXN0b3J5UmVhZFJlc3Bv bnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25z ZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5zOkxp c3RPZkhpc3RvcnlSZWFkUmVzdWx0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZE aWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0 b3J5UmVhZFJlc3BvbnNlIiB0eXBlPSJ0bnM6SGlzdG9yeVJlYWRSZXNwb25zZSIgLz4NCg0KICA8 eHM6Y29tcGxleFR5cGUgbmFtZT0iV3JpdGVWYWx1ZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iTm9kZUlkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBdHRyaWJ1dGVJ ZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkluZGV4UmFuZ2UiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0eXBlPSJ1YTpE YXRhVmFsdWUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVWYWx1 ZSIgdHlwZT0idG5zOldyaXRlVmFsdWUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxp c3RPZldyaXRlVmFsdWUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IldyaXRlVmFsdWUiIHR5cGU9InRuczpXcml0ZVZhbHVlIiBtaW5PY2N1cnM9IjAiIG1heE9j Y3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZXcml0ZVZhbHVl IiB0eXBlPSJ0bnM6TGlzdE9mV3JpdGVWYWx1ZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iV3JpdGVSZXF1ZXN0Ij4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6 UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ik5vZGVzVG9Xcml0ZSIgdHlwZT0idG5zOkxpc3RPZldyaXRlVmFsdWUi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVSZXF1ZXN0IiB0eXBl PSJ0bnM6V3JpdGVSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJXcml0ZVJl c3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNw b25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idWE6 TGlzdE9mU3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25v c3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iV3JpdGVSZXNw b25zZSIgdHlwZT0idG5zOldyaXRlUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9Ikhpc3RvcnlVcGRhdGVEZXRhaWxzIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJOb2RlSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5VXBkYXRlRGV0YWlscyIgdHlwZT0idG5zOkhpc3Rv cnlVcGRhdGVEZXRhaWxzIiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJIaXN0b3J5VXBk YXRlVHlwZSI+DQogICAgPHhzOnJlc3RyaWN0aW9uIGJhc2U9InhzOnN0cmluZyI+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9Ikluc2VydF8xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJSZXBsYWNlXzIiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlVwZGF0 ZV8zIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJEZWxldGVfNCIgLz4NCiAgICA8 L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ikhpc3RvcnlVcGRhdGVUeXBlIiB0eXBlPSJ0bnM6SGlzdG9yeVVwZGF0ZVR5cGUiIC8+DQoNCiAg PHhzOnNpbXBsZVR5cGUgIG5hbWU9IlBlcmZvcm1VcGRhdGVUeXBlIj4NCiAgICA8eHM6cmVzdHJp Y3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSW5z ZXJ0XzEiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlcGxhY2VfMiIgLz4NCiAg ICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVXBkYXRlXzMiIC8+DQogICAgICA8eHM6ZW51bWVy YXRpb24gdmFsdWU9IlJlbW92ZV80IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6 c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUGVyZm9ybVVwZGF0ZVR5cGUiIHR5cGU9 InRuczpQZXJmb3JtVXBkYXRlVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVXBk YXRlRGF0YURldGFpbHMiPg0KICAgIDx4czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0K ICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlzdG9yeVVwZGF0ZURldGFpbHMiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUGVyZm9ybUlu c2VydFJlcGxhY2UiIHR5cGU9InRuczpQZXJmb3JtVXBkYXRlVHlwZSIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlVwZGF0ZVZhbHVlcyIgdHlwZT0idWE6TGlz dE9mRGF0YVZhbHVlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8 L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29u dGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iVXBkYXRlRGF0 YURldGFpbHMiIHR5cGU9InRuczpVcGRhdGVEYXRhRGV0YWlscyIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iVXBkYXRlU3RydWN0dXJlRGF0YURldGFpbHMiPg0KICAgIDx4czpjb21wbGV4 Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlz dG9yeVVwZGF0ZURldGFpbHMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUGVyZm9ybUluc2VydFJlcGxhY2UiIHR5cGU9InRuczpQZXJmb3JtVXBk YXRlVHlwZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlVw ZGF0ZVZhbHVlcyIgdHlwZT0idWE6TGlzdE9mRGF0YVZhbHVlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNp b24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iVXBkYXRlU3RydWN0dXJlRGF0YURldGFpbHMiIHR5cGU9InRuczpVcGRh dGVTdHJ1Y3R1cmVEYXRhRGV0YWlscyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVXBk YXRlRXZlbnREZXRhaWxzIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4N CiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOkhpc3RvcnlVcGRhdGVEZXRhaWxzIj4NCiAg ICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlBlcmZvcm1J bnNlcnRSZXBsYWNlIiB0eXBlPSJ0bnM6UGVyZm9ybVVwZGF0ZVR5cGUiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJGaWx0ZXIiIHR5cGU9InRuczpFdmVudEZp bHRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJFdmVudERhdGEiIHR5cGU9InRuczpMaXN0T2ZIaXN0b3J5RXZlbnRGaWVsZExp c3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVu Y2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJVcGRhdGVFdmVudERldGFpbHMi IHR5cGU9InRuczpVcGRhdGVFdmVudERldGFpbHMiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkRlbGV0ZVJhd01vZGlmaWVkRGV0YWlscyI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1p eGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpIaXN0b3J5VXBkYXRl RGV0YWlscyI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJc0RlbGV0ZU1vZGlmaWVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhcnRUaW1lIiB0eXBlPSJ4czpkYXRlVGlt ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZFRpbWUi IHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgIDwveHM6c2VxdWVu Y2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVSYXdNb2RpZmllZERl dGFpbHMiIHR5cGU9InRuczpEZWxldGVSYXdNb2RpZmllZERldGFpbHMiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IkRlbGV0ZUF0VGltZURldGFpbHMiPg0KICAgIDx4czpjb21wbGV4Q29u dGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0bnM6SGlzdG9y eVVwZGF0ZURldGFpbHMiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUmVxVGltZXMiIHR5cGU9InVhOkxpc3RPZkRhdGVUaW1lIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94 czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlQXRUaW1lRGV0YWlscyIgdHlwZT0idG5zOkRl bGV0ZUF0VGltZURldGFpbHMiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZUV2 ZW50RGV0YWlscyI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAg ICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpIaXN0b3J5VXBkYXRlRGV0YWlscyI+DQogICAgICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFdmVudElkcyIgdHlw ZT0idWE6TGlzdE9mQnl0ZVN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6 Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IkRlbGV0ZUV2ZW50RGV0YWlscyIgdHlwZT0idG5zOkRlbGV0ZUV2ZW50RGV0YWlscyIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iSGlzdG9yeVVwZGF0ZVJlc3VsdCI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3Rh dHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iT3BlcmF0 aW9uUmVzdWx0cyIgdHlwZT0idWE6TGlzdE9mU3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIg dHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iSGlzdG9yeVVwZGF0ZVJlc3VsdCIgdHlwZT0idG5zOkhpc3RvcnlVcGRhdGVS ZXN1bHQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZkhpc3RvcnlVcGRhdGVS ZXN1bHQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikhpc3Rv cnlVcGRhdGVSZXN1bHQiIHR5cGU9InRuczpIaXN0b3J5VXBkYXRlUmVzdWx0IiBtaW5PY2N1cnM9 IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZI aXN0b3J5VXBkYXRlUmVzdWx0IiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9yeVVwZGF0ZVJlc3VsdCIg bmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i SGlzdG9yeVVwZGF0ZVJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVyIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSGlzdG9y eVVwZGF0ZURldGFpbHMiIHR5cGU9InVhOkxpc3RPZkV4dGVuc2lvbk9iamVjdCIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5VXBkYXRlUmVxdWVzdCIgdHlwZT0i dG5zOkhpc3RvcnlVcGRhdGVSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJI aXN0b3J5VXBkYXRlUmVzcG9uc2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1 bHRzIiB0eXBlPSJ0bnM6TGlzdE9mSGlzdG9yeVVwZGF0ZVJlc3VsdCIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpYWdub3N0aWNJbmZv cyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iSGlzdG9yeVVwZGF0ZVJlc3BvbnNlIiB0eXBlPSJ0bnM6SGlzdG9yeVVw ZGF0ZVJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJDYWxsTWV0aG9kUmVx dWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iT2JqZWN0 SWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ik1ldGhvZElkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbnB1dEFy Z3VtZW50cyIgdHlwZT0idWE6TGlzdE9mVmFyaWFudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJDYWxsTWV0aG9kUmVxdWVzdCIgdHlwZT0idG5zOkNhbGxNZXRob2RSZXF1 ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZDYWxsTWV0aG9kUmVxdWVz dCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2FsbE1ldGhv ZFJlcXVlc3QiIHR5cGU9InRuczpDYWxsTWV0aG9kUmVxdWVzdCIgbWluT2NjdXJzPSIwIiBtYXhP Y2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mQ2FsbE1ldGhv ZFJlcXVlc3QiIHR5cGU9InRuczpMaXN0T2ZDYWxsTWV0aG9kUmVxdWVzdCIgbmlsbGFibGU9InRy dWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2FsbE1ldGhvZFJl c3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVz Q29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iSW5wdXRBcmd1bWVudFJlc3VsdHMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0Nv ZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJJbnB1dEFyZ3VtZW50RGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9z dGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9Ik91dHB1dEFyZ3VtZW50cyIgdHlwZT0idWE6TGlzdE9mVmFyaWFudCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDYWxsTWV0aG9kUmVzdWx0IiB0eXBlPSJ0 bnM6Q2FsbE1ldGhvZFJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9m Q2FsbE1ldGhvZFJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iQ2FsbE1ldGhvZFJlc3VsdCIgdHlwZT0idG5zOkNhbGxNZXRob2RSZXN1bHQiIG1pbk9j Y3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxp c3RPZkNhbGxNZXRob2RSZXN1bHQiIHR5cGU9InRuczpMaXN0T2ZDYWxsTWV0aG9kUmVzdWx0IiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJD YWxsUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i UmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNZXRob2RzVG9DYWxsIiB0 eXBlPSJ0bnM6TGlzdE9mQ2FsbE1ldGhvZFJlcXVlc3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iQ2FsbFJlcXVlc3QiIHR5cGU9InRuczpDYWxsUmVxdWVzdCIgLz4NCg0K ICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ2FsbFJlc3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3Bv bnNlSGVhZGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUmVzdWx0cyIgdHlwZT0idG5zOkxpc3RPZkNhbGxNZXRob2RSZXN1bHQiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJE aWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNhbGxSZXNwb25zZSIgdHlwZT0idG5zOkNhbGxS ZXNwb25zZSIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iTW9uaXRvcmluZ01vZGUiPg0K ICAgIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0 aW9uIHZhbHVlPSJEaXNhYmxlZF8wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJT YW1wbGluZ18xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJSZXBvcnRpbmdfMiIg Lz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9Ik1vbml0b3JpbmdNb2RlIiB0eXBlPSJ0bnM6TW9uaXRvcmluZ01vZGUiIC8+DQoN CiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkRhdGFDaGFuZ2VUcmlnZ2VyIj4NCiAgICA8eHM6cmVz dHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i U3RhdHVzXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlN0YXR1c1ZhbHVlXzEi IC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlN0YXR1c1ZhbHVlVGltZXN0YW1wXzIi IC8+DQogICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxl bWVudCBuYW1lPSJEYXRhQ2hhbmdlVHJpZ2dlciIgdHlwZT0idG5zOkRhdGFDaGFuZ2VUcmlnZ2Vy IiAvPg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJEZWFkYmFuZFR5cGUiPg0KICAgIDx4czpy ZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVl PSJOb25lXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkFic29sdXRlXzEiIC8+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlBlcmNlbnRfMiIgLz4NCiAgICA8L3hzOnJl c3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRlYWRi YW5kVHlwZSIgdHlwZT0idG5zOkRlYWRiYW5kVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTW9uaXRvcmluZ0ZpbHRlciI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3Jp bmdGaWx0ZXIiIHR5cGU9InRuczpNb25pdG9yaW5nRmlsdGVyIiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJEYXRhQ2hhbmdlRmlsdGVyIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4 ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk1vbml0b3JpbmdGaWx0 ZXIiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i VHJpZ2dlciIgdHlwZT0idG5zOkRhdGFDaGFuZ2VUcmlnZ2VyIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVhZGJhbmRUeXBlIiB0eXBlPSJ4czp1bnNpZ25l ZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlYWRi YW5kVmFsdWUiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICA8L3hz OnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQogICAgPC94czpjb21wbGV4Q29udGVu dD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRGF0YUNoYW5nZUZp bHRlciIgdHlwZT0idG5zOkRhdGFDaGFuZ2VGaWx0ZXIiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9IkV2ZW50RmlsdGVyIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNl Ij4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk1vbml0b3JpbmdGaWx0ZXIiPg0KICAg ICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VsZWN0Q2xh dXNlcyIgdHlwZT0idG5zOkxpc3RPZlNpbXBsZUF0dHJpYnV0ZU9wZXJhbmQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iV2hlcmVD bGF1c2UiIHR5cGU9InRuczpDb250ZW50RmlsdGVyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iRXZlbnRGaWx0ZXIiIHR5cGU9InRuczpFdmVudEZpbHRlciIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iQWdncmVnYXRlQ29uZmlndXJhdGlvbiI+DQogICAgPHhzOnNlcXVl bmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVXNlU2VydmVyQ2FwYWJpbGl0aWVzRGVmYXVs dHMiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlRyZWF0VW5jZXJ0YWluQXNCYWQiIHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlBlcmNlbnREYXRhQmFkIiB0eXBlPSJ4czp1 bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlBl cmNlbnREYXRhR29vZCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVc2VTbG9wZWRFeHRyYXBvbGF0aW9uIiB0eXBlPSJ4czpi b29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQWdncmVnYXRlQ29uZmlndXJhdGlvbiIgdHlw ZT0idG5zOkFnZ3JlZ2F0ZUNvbmZpZ3VyYXRpb24iIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkFnZ3JlZ2F0ZUZpbHRlciI+DQogICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxz ZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9uIGJhc2U9InRuczpNb25pdG9yaW5nRmlsdGVyIj4NCiAg ICAgICAgPHhzOnNlcXVlbmNlPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0YXJ0VGlt ZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8eHM6ZWxl bWVudCBuYW1lPSJBZ2dyZWdhdGVUeXBlIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJvY2Vzc2lu Z0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJBZ2dyZWdhdGVDb25maWd1cmF0aW9uIiB0eXBlPSJ0bnM6QWdncmVn YXRlQ29uZmlndXJhdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg ICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxl eENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkFnZ3Jl Z2F0ZUZpbHRlciIgdHlwZT0idG5zOkFnZ3JlZ2F0ZUZpbHRlciIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTW9uaXRvcmluZ0ZpbHRlclJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ik1vbml0b3JpbmdGaWx0ZXJSZXN1bHQiIHR5cGU9InRuczpNb25pdG9yaW5nRmlsdGVyUmVz dWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJFdmVudEZpbHRlclJlc3VsdCI+DQog ICAgPHhzOmNvbXBsZXhDb250ZW50IG1peGVkPSJmYWxzZSI+DQogICAgICA8eHM6ZXh0ZW5zaW9u IGJhc2U9InRuczpNb25pdG9yaW5nRmlsdGVyUmVzdWx0Ij4NCiAgICAgICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlbGVjdENsYXVzZVJlc3VsdHMiIHR5cGU9 InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VsZWN0Q2xhdXNlRGlhZ25vc3RpY0luZm9zIiB0 eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1 ZSIgLz4NCiAgICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXaGVyZUNsYXVzZVJlc3VsdCIgdHlw ZT0idG5zOkNvbnRlbnRGaWx0ZXJSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQogICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8 L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJFdmVudEZpbHRlclJlc3VsdCIgdHlwZT0idG5zOkV2ZW50RmlsdGVyUmVzdWx0IiAvPg0K DQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBZ2dyZWdhdGVGaWx0ZXJSZXN1bHQiPg0KICAgIDx4 czpjb21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNl PSJ0bnM6TW9uaXRvcmluZ0ZpbHRlclJlc3VsdCI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXZpc2VkU3RhcnRUaW1lIiB0eXBlPSJ4czpkYXRl VGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldmlz ZWRQcm9jZXNzaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldmlzZWRBZ2dyZWdhdGVDb25maWd1cmF0aW9u IiB0eXBlPSJ0bnM6QWdncmVnYXRlQ29uZmlndXJhdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4NCiAgICAgIDwveHM6ZXh0ZW5zaW9u Pg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9IkFnZ3JlZ2F0ZUZpbHRlclJlc3VsdCIgdHlwZT0idG5zOkFnZ3JlZ2F0ZUZp bHRlclJlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTW9uaXRvcmluZ1BhcmFt ZXRlcnMiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVu dEhhbmRsZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlNhbXBsaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRmlsdGVyIiB0eXBlPSJ1YTpFeHRl bnNpb25PYmplY3QiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJRdWV1ZVNpemUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjYXJkT2xkZXN0IiB0eXBlPSJ4czpi b29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRvcmluZ1BhcmFtZXRlcnMiIHR5cGU9 InRuczpNb25pdG9yaW5nUGFyYW1ldGVycyIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TW9uaXRvcmVkSXRlbUNyZWF0ZVJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9Ikl0ZW1Ub01vbml0b3IiIHR5cGU9InRuczpSZWFkVmFsdWVJZCIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1v bml0b3JpbmdNb2RlIiB0eXBlPSJ0bnM6TW9uaXRvcmluZ01vZGUiIG1pbk9jY3Vycz0iMCIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RlZFBhcmFtZXRlcnMiIHR5cGU9InRuczpN b25pdG9yaW5nUGFyYW1ldGVycyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJNb25pdG9yZWRJdGVtQ3JlYXRlUmVxdWVzdCIgdHlwZT0idG5zOk1vbml0b3JlZEl0ZW1DcmVh dGVSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJ dGVtQ3JlYXRlUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTW9uaXRvcmVkSXRlbUNyZWF0ZVJlcXVlc3QiIHR5cGU9InRuczpNb25pdG9yZWRJdGVt Q3JlYXRlUmVxdWVzdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbUNyZWF0ZVJlcXVlc3QiIHR5cGU9 InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtQ3JlYXRlUmVxdWVzdCIgbmlsbGFibGU9InRydWUiPjwv eHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTW9uaXRvcmVkSXRlbUNyZWF0 ZVJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3Rh dHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTW9uaXRvcmVkSXRlbUlkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFNhbXBsaW5nSW50 ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iUmV2aXNlZFF1ZXVlU2l6ZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlclJlc3VsdCIgdHlwZT0idWE6 RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1v bml0b3JlZEl0ZW1DcmVhdGVSZXN1bHQiIHR5cGU9InRuczpNb25pdG9yZWRJdGVtQ3JlYXRlUmVz dWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJdGVtQ3Jl YXRlUmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJN b25pdG9yZWRJdGVtQ3JlYXRlUmVzdWx0IiB0eXBlPSJ0bnM6TW9uaXRvcmVkSXRlbUNyZWF0ZVJl c3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbUNyZWF0ZVJlc3VsdCIgdHlwZT0idG5zOkxpc3RP Zk1vbml0b3JlZEl0ZW1DcmVhdGVSZXN1bHQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1lbnQ+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkNyZWF0ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCI+ DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRl ciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZCIgdHlwZT0ieHM6dW5z aWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRpbWVz dGFtcHNUb1JldHVybiIgdHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXRlbXNUb0NyZWF0ZSIgdHlwZT0idG5zOkxp c3RPZk1vbml0b3JlZEl0ZW1DcmVhdGVSZXF1ZXN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czpl bGVtZW50IG5hbWU9IkNyZWF0ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgdHlwZT0idG5zOkNyZWF0 ZU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ3Jl YXRlTW9uaXRvcmVkSXRlbXNSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IlJlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtQ3JlYXRlUmVzdWx0IiBtaW5P Y2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlh Z25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhU eXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJDcmVhdGVNb25pdG9yZWRJdGVtc1Jlc3BvbnNlIiB0 eXBlPSJ0bnM6Q3JlYXRlTW9uaXRvcmVkSXRlbXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTW9uaXRvcmVkSXRlbU1vZGlmeVJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5j ZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3JlZEl0ZW1JZCIgdHlwZT0ieHM6dW5z aWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVl c3RlZFBhcmFtZXRlcnMiIHR5cGU9InRuczpNb25pdG9yaW5nUGFyYW1ldGVycyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJNb25pdG9yZWRJdGVtTW9kaWZ5UmVxdWVzdCIg dHlwZT0idG5zOk1vbml0b3JlZEl0ZW1Nb2RpZnlSZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4 VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJdGVtTW9kaWZ5UmVxdWVzdCI+DQogICAgPHhzOnNl cXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRvcmVkSXRlbU1vZGlmeVJlcXVl c3QiIHR5cGU9InRuczpNb25pdG9yZWRJdGVtTW9kaWZ5UmVxdWVzdCIgbWluT2NjdXJzPSIwIiBt YXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5j ZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9mTW9uaXRv cmVkSXRlbU1vZGlmeVJlcXVlc3QiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtTW9kaWZ5 UmVxdWVzdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iTW9uaXRvcmVkSXRlbU1vZGlmeVJlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFNhbXBsaW5n SW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iUmV2aXNlZFF1ZXVlU2l6ZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkZpbHRlclJlc3VsdCIgdHlwZT0i dWE6RXh0ZW5zaW9uT2JqZWN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 Ik1vbml0b3JlZEl0ZW1Nb2RpZnlSZXN1bHQiIHR5cGU9InRuczpNb25pdG9yZWRJdGVtTW9kaWZ5 UmVzdWx0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb25pdG9yZWRJdGVt TW9kaWZ5UmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJNb25pdG9yZWRJdGVtTW9kaWZ5UmVzdWx0IiB0eXBlPSJ0bnM6TW9uaXRvcmVkSXRlbU1vZGlm eVJlc3VsdCIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbU1vZGlmeVJlc3VsdCIgdHlwZT0idG5zOkxp c3RPZk1vbml0b3JlZEl0ZW1Nb2RpZnlSZXN1bHQiIG5pbGxhYmxlPSJ0cnVlIj48L3hzOmVsZW1l bnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1vZGlmeU1vbml0b3JlZEl0ZW1zUmVxdWVz dCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhl YWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZCIgdHlwZT0ieHM6 dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRp bWVzdGFtcHNUb1JldHVybiIgdHlwZT0idG5zOlRpbWVzdGFtcHNUb1JldHVybiIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSXRlbXNUb01vZGlmeSIgdHlwZT0idG5z Okxpc3RPZk1vbml0b3JlZEl0ZW1Nb2RpZnlSZXF1ZXN0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9Ik1vZGlmeU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgdHlwZT0idG5zOk1v ZGlmeU1vbml0b3JlZEl0ZW1zUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i TW9kaWZ5TW9uaXRvcmVkSXRlbXNSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRl ciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlc3VsdHMiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtTW9kaWZ5UmVzdWx0IiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i RGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJNb2RpZnlNb25pdG9yZWRJdGVtc1Jlc3BvbnNl IiB0eXBlPSJ0bnM6TW9kaWZ5TW9uaXRvcmVkSXRlbXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29t cGxleFR5cGUgbmFtZT0iU2V0TW9uaXRvcmluZ01vZGVSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVu Y2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVx dWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRvcmluZ01vZGUiIHR5cGU9 InRuczpNb25pdG9yaW5nTW9kZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iTW9uaXRvcmVkSXRlbUlkcyIgdHlwZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxl eFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNldE1vbml0b3JpbmdNb2RlUmVxdWVzdCIgdHlw ZT0idG5zOlNldE1vbml0b3JpbmdNb2RlUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iU2V0TW9uaXRvcmluZ01vZGVSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhl YWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlc3VsdHMiIHR5cGU9InVhOkxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5m b3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4 czplbGVtZW50IG5hbWU9IlNldE1vbml0b3JpbmdNb2RlUmVzcG9uc2UiIHR5cGU9InRuczpTZXRN b25pdG9yaW5nTW9kZVJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTZXRU cmlnZ2VyaW5nUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRp b25JZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlRyaWdnZXJpbmdJdGVtSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMaW5rc1RvQWRkIiB0eXBlPSJ1 YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJMaW5rc1RvUmVtb3ZlIiB0eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2V0VHJpZ2dlcmluZ1JlcXVlc3Qi IHR5cGU9InRuczpTZXRUcmlnZ2VyaW5nUmVxdWVzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iU2V0VHJpZ2dlcmluZ1Jlc3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVy IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iQWRkUmVzdWx0cyIgdHlwZT0idWE6TGlzdE9mU3RhdHVzQ29kZSIgbWluT2NjdXJzPSIwIiBu aWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFkZERpYWdub3N0aWNJ bmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZW1vdmVSZXN1bHRzIiB0eXBl PSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVtb3ZlRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpM aXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJTZXRUcmlnZ2VyaW5nUmVzcG9uc2UiIHR5cGU9InRuczpTZXRUcmlnZ2VyaW5nUmVzcG9uc2Ui IC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1zUmVxdWVz dCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhl YWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZCIgdHlwZT0ieHM6 dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1v bml0b3JlZEl0ZW1JZHMiIHR5cGU9InVhOkxpc3RPZlVJbnQzMiIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0K ICA8eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVNb25pdG9yZWRJdGVtc1JlcXVlc3QiIHR5cGU9InRu czpEZWxldGVNb25pdG9yZWRJdGVtc1JlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5h bWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1zUmVzcG9uc2UiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VI ZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0lu Zm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJEZWxldGVNb25pdG9yZWRJdGVtc1Jlc3BvbnNlIiB0eXBlPSJ0bnM6 RGVsZXRlTW9uaXRvcmVkSXRlbXNSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iQ3JlYXRlU3Vic2NyaXB0aW9uUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFkZXIi IG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJSZXF1ZXN0ZWRQdWJsaXNoaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdGVkTGlmZXRpbWVDb3VudCIg dHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IlJlcXVlc3RlZE1heEtlZXBBbGl2ZUNvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTWF4Tm90aWZpY2F0aW9u c1BlclB1Ymxpc2giIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoaW5nRW5hYmxlZCIgdHlwZT0ieHM6Ym9vbGVhbiIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJpb3JpdHkiIHR5cGU9 InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQog IDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkNyZWF0ZVN1YnNjcmlwdGlv blJlcXVlc3QiIHR5cGU9InRuczpDcmVhdGVTdWJzY3JpcHRpb25SZXF1ZXN0IiAvPg0KDQogIDx4 czpjb21wbGV4VHlwZSBuYW1lPSJDcmVhdGVTdWJzY3JpcHRpb25SZXNwb25zZSI+DQogICAgPHhz OnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9 InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZElu dCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZFB1Ymxp c2hpbmdJbnRlcnZhbCIgdHlwZT0ieHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJSZXZpc2VkTGlmZXRpbWVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJ bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJldmlzZWRNYXhL ZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1l PSJDcmVhdGVTdWJzY3JpcHRpb25SZXNwb25zZSIgdHlwZT0idG5zOkNyZWF0ZVN1YnNjcmlwdGlv blJlc3BvbnNlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJNb2RpZnlTdWJzY3JpcHRp b25SZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJS ZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0 eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iUmVxdWVzdGVkUHVibGlzaGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RlZExpZmV0aW1lQ291 bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJSZXF1ZXN0ZWRNYXhLZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJ bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1heE5vdGlmaWNh dGlvbnNQZXJQdWJsaXNoIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHJpb3JpdHkiIHR5cGU9InhzOnVuc2lnbmVkQnl0ZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ik1vZGlmeVN1YnNjcmlwdGlvblJlcXVlc3QiIHR5cGU9InRu czpNb2RpZnlTdWJzY3JpcHRpb25SZXF1ZXN0IiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJNb2RpZnlTdWJzY3JpcHRpb25SZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRl ciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJldmlzZWRQdWJsaXNoaW5nSW50ZXJ2YWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmV2aXNlZExpZmV0aW1lQ291bnQiIHR5 cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJSZXZpc2VkTWF4S2VlcEFsaXZlQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5P Y2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAg PHhzOmVsZW1lbnQgbmFtZT0iTW9kaWZ5U3Vic2NyaXB0aW9uUmVzcG9uc2UiIHR5cGU9InRuczpN b2RpZnlTdWJzY3JpcHRpb25SZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i U2V0UHVibGlzaGluZ01vZGVSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1 Ymxpc2hpbmdFbmFibGVkIiB0eXBlPSJ4czpib29sZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25JZHMiIHR5cGU9InVhOkxpc3RPZlVJbnQz MiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXRQdWJsaXNoaW5nTW9k ZVJlcXVlc3QiIHR5cGU9InRuczpTZXRQdWJsaXNoaW5nTW9kZVJlcXVlc3QiIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9IlNldFB1Ymxpc2hpbmdNb2RlUmVzcG9uc2UiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVhZGVyIiB0eXBlPSJ0 bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i RGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZEaWFnbm9zdGljSW5mbyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBs ZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZXRQdWJsaXNoaW5nTW9kZVJlc3BvbnNlIiB0 eXBlPSJ0bnM6U2V0UHVibGlzaGluZ01vZGVSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5 cGUgbmFtZT0iTm90aWZpY2F0aW9uTWVzc2FnZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU2VxdWVuY2VOdW1iZXIiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNoVGltZSIgdHlw ZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 Ik5vdGlmaWNhdGlvbkRhdGEiIHR5cGU9InVhOkxpc3RPZkV4dGVuc2lvbk9iamVjdCIgbWluT2Nj dXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJOb3RpZmljYXRpb25NZXNzYWdlIiB0eXBl PSJ0bnM6Tm90aWZpY2F0aW9uTWVzc2FnZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i Tm90aWZpY2F0aW9uRGF0YSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik5vdGlmaWNhdGlvbkRh dGEiIHR5cGU9InRuczpOb3RpZmljYXRpb25EYXRhIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBu YW1lPSJEYXRhQ2hhbmdlTm90aWZpY2F0aW9uIj4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4 ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRlbnNpb24gYmFzZT0idG5zOk5vdGlmaWNhdGlvbkRh dGEiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i TW9uaXRvcmVkSXRlbXMiIHR5cGU9InRuczpMaXN0T2ZNb25pdG9yZWRJdGVtTm90aWZpY2F0aW9u IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgICAgIDx4czplbGVtZW50 IG5hbWU9IkRpYWdub3N0aWNJbmZvcyIgdHlwZT0idWE6TGlzdE9mRGlhZ25vc3RpY0luZm8iIG1p bk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICAgIDwveHM6c2VxdWVuY2U+DQog ICAgICA8L3hzOmV4dGVuc2lvbj4NCiAgICA8L3hzOmNvbXBsZXhDb250ZW50Pg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhQ2hhbmdlTm90aWZpY2F0aW9uIiB0 eXBlPSJ0bnM6RGF0YUNoYW5nZU5vdGlmaWNhdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iTW9uaXRvcmVkSXRlbU5vdGlmaWNhdGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50SGFuZGxlIiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVmFsdWUiIHR5cGU9InVh OkRhdGFWYWx1ZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJNb25pdG9y ZWRJdGVtTm90aWZpY2F0aW9uIiB0eXBlPSJ0bnM6TW9uaXRvcmVkSXRlbU5vdGlmaWNhdGlvbiIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTW9uaXRvcmVkSXRlbU5vdGlmaWNh dGlvbiI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9uaXRv cmVkSXRlbU5vdGlmaWNhdGlvbiIgdHlwZT0idG5zOk1vbml0b3JlZEl0ZW1Ob3RpZmljYXRpb24i IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZk1vbml0b3JlZEl0ZW1Ob3RpZmljYXRpb24iIHR5cGU9InRuczpMaXN0T2ZNb25p dG9yZWRJdGVtTm90aWZpY2F0aW9uIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQog IDx4czpjb21wbGV4VHlwZSBuYW1lPSJFdmVudE5vdGlmaWNhdGlvbkxpc3QiPg0KICAgIDx4czpj b21wbGV4Q29udGVudCBtaXhlZD0iZmFsc2UiPg0KICAgICAgPHhzOmV4dGVuc2lvbiBiYXNlPSJ0 bnM6Tm90aWZpY2F0aW9uRGF0YSI+DQogICAgICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJFdmVudHMiIHR5cGU9InRuczpMaXN0T2ZFdmVudEZpZWxkTGlzdCIg bWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgICAgPC94czpzZXF1ZW5jZT4N CiAgICAgIDwveHM6ZXh0ZW5zaW9uPg0KICAgIDwveHM6Y29tcGxleENvbnRlbnQ+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV2ZW50Tm90aWZpY2F0aW9uTGlzdCIg dHlwZT0idG5zOkV2ZW50Tm90aWZpY2F0aW9uTGlzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUg bmFtZT0iRXZlbnRGaWVsZExpc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkNsaWVudEhhbmRsZSIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkV2ZW50RmllbGRzIiB0eXBlPSJ1YTpMaXN0 T2ZWYXJpYW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV2ZW50Rmll bGRMaXN0IiB0eXBlPSJ0bnM6RXZlbnRGaWVsZExpc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBl IG5hbWU9Ikxpc3RPZkV2ZW50RmllbGRMaXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJFdmVudEZpZWxkTGlzdCIgdHlwZT0idG5zOkV2ZW50RmllbGRMaXN0 IiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJMaXN0T2ZFdmVudEZpZWxkTGlzdCIgdHlwZT0idG5zOkxpc3RPZkV2ZW50RmllbGRMaXN0 IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1l PSJIaXN0b3J5RXZlbnRGaWVsZExpc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkV2ZW50RmllbGRzIiB0eXBlPSJ1YTpMaXN0T2ZWYXJpYW50IiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlFdmVudEZpZWxkTGlzdCIgdHlw ZT0idG5zOkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFt ZT0iTGlzdE9mSGlzdG9yeUV2ZW50RmllbGRMaXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJIaXN0b3J5RXZlbnRGaWVsZExpc3QiIHR5cGU9InRuczpIaXN0 b3J5RXZlbnRGaWVsZExpc3QiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgdHlwZT0i dG5zOkxpc3RPZkhpc3RvcnlFdmVudEZpZWxkTGlzdCIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxl bWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU3RhdHVzQ2hhbmdlTm90aWZpY2F0aW9u Ij4NCiAgICA8eHM6Y29tcGxleENvbnRlbnQgbWl4ZWQ9ImZhbHNlIj4NCiAgICAgIDx4czpleHRl bnNpb24gYmFzZT0idG5zOk5vdGlmaWNhdGlvbkRhdGEiPg0KICAgICAgICA8eHM6c2VxdWVuY2U+ DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzIiB0eXBlPSJ1YTpTdGF0dXNDb2Rl IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3Rp Y0luZm8iIHR5cGU9InVhOkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgICA8L3hzOnNlcXVlbmNlPg0KICAgICAgPC94czpleHRlbnNpb24+DQog ICAgPC94czpjb21wbGV4Q29udGVudD4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1l bnQgbmFtZT0iU3RhdHVzQ2hhbmdlTm90aWZpY2F0aW9uIiB0eXBlPSJ0bnM6U3RhdHVzQ2hhbmdl Tm90aWZpY2F0aW9uIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTdWJzY3JpcHRpb25B Y2tub3dsZWRnZW1lbnQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VxdWVuY2VOdW1iZXIiIHR5cGU9InhzOnVuc2ln bmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21w bGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU3Vic2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50 IiB0eXBlPSJ0bnM6U3Vic2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50IiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJMaXN0T2ZTdWJzY3JpcHRpb25BY2tub3dsZWRnZW1lbnQiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbkFja25vd2xl ZGdlbWVudCIgdHlwZT0idG5zOlN1YnNjcmlwdGlvbkFja25vd2xlZGdlbWVudCIgbWluT2NjdXJz PSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpz ZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTGlzdE9m U3Vic2NyaXB0aW9uQWNrbm93bGVkZ2VtZW50IiB0eXBlPSJ0bnM6TGlzdE9mU3Vic2NyaXB0aW9u QWNrbm93bGVkZ2VtZW50IiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpj b21wbGV4VHlwZSBuYW1lPSJQdWJsaXNoUmVxdWVzdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVxdWVzdEhlYWRlciIgdHlwZT0idG5zOlJlcXVlc3RIZWFk ZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTdWJzY3JpcHRpb25BY2tub3dsZWRnZW1lbnRzIiB0eXBlPSJ0bnM6TGlzdE9mU3Vic2Ny aXB0aW9uQWNrbm93bGVkZ2VtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9IlB1Ymxpc2hSZXF1ZXN0IiB0eXBlPSJ0bnM6UHVibGlzaFJlcXVlc3QiIC8+DQoNCiAgPHhz OmNvbXBsZXhUeXBlIG5hbWU9IlB1Ymxpc2hSZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVzcG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25z ZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkIiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJz PSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQXZhaWxhYmxlU2VxdWVuY2VOdW1iZXJz IiB0eXBlPSJ1YTpMaXN0T2ZVSW50MzIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb3JlTm90aWZpY2F0aW9ucyIgdHlwZT0ieHM6Ym9v bGVhbiIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm90aWZpY2F0 aW9uTWVzc2FnZSIgdHlwZT0idG5zOk5vdGlmaWNhdGlvbk1lc3NhZ2UiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBl PSJ1YTpMaXN0T2ZTdGF0dXNDb2RlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm9zIiB0eXBlPSJ1YTpMaXN0T2ZE aWFnbm9zdGljSW5mbyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hz OnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJs aXNoUmVzcG9uc2UiIHR5cGU9InRuczpQdWJsaXNoUmVzcG9uc2UiIC8+DQoNCiAgPHhzOmNvbXBs ZXhUeXBlIG5hbWU9IlJlcHVibGlzaFJlcXVlc3QiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IlJlcXVlc3RIZWFkZXIiIHR5cGU9InRuczpSZXF1ZXN0SGVhZGVy IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU3Vic2NyaXB0aW9uSWQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+ DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXRyYW5zbWl0U2VxdWVuY2VOdW1iZXIiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAg PC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoUmVxdWVzdCIg dHlwZT0idG5zOlJlcHVibGlzaFJlcXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 IlJlcHVibGlzaFJlc3BvbnNlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJSZXNwb25zZUhlYWRlciIgdHlwZT0idG5zOlJlc3BvbnNlSGVhZGVyIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTm90aWZp Y2F0aW9uTWVzc2FnZSIgdHlwZT0idG5zOk5vdGlmaWNhdGlvbk1lc3NhZ2UiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoUmVzcG9uc2UiIHR5cGU9InRuczpS ZXB1Ymxpc2hSZXNwb25zZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVHJhbnNmZXJS ZXN1bHQiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN0YXR1 c0NvZGUiIHR5cGU9InVhOlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkF2YWlsYWJsZVNlcXVlbmNlTnVtYmVycyIgdHlwZT0idWE6TGlzdE9mVUlu dDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRyYW5zZmVyUmVzdWx0 IiB0eXBlPSJ0bnM6VHJhbnNmZXJSZXN1bHQiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9 Ikxpc3RPZlRyYW5zZmVyUmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJUcmFuc2ZlclJlc3VsdCIgdHlwZT0idG5zOlRyYW5zZmVyUmVzdWx0IiBtaW5P Y2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8 L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJM aXN0T2ZUcmFuc2ZlclJlc3VsdCIgdHlwZT0idG5zOkxpc3RPZlRyYW5zZmVyUmVzdWx0IiBuaWxs YWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJUcmFu c2ZlclN1YnNjcmlwdGlvbnNSZXF1ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJSZXF1ZXN0SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1 YnNjcmlwdGlvbklkcyIgdHlwZT0idWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VuZEluaXRpYWxWYWx1ZXMi IHR5cGU9InhzOmJvb2xlYW4iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc2ZlclN1YnNjcmlw dGlvbnNSZXF1ZXN0IiB0eXBlPSJ0bnM6VHJhbnNmZXJTdWJzY3JpcHRpb25zUmVxdWVzdCIgLz4N Cg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iVHJhbnNmZXJTdWJzY3JpcHRpb25zUmVzcG9uc2Ui Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3BvbnNlSGVh ZGVyIiB0eXBlPSJ0bnM6UmVzcG9uc2VIZWFkZXIiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXN1bHRzIiB0eXBlPSJ0bnM6TGlzdE9m VHJhbnNmZXJSZXN1bHQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdub3N0 aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlRyYW5zZmVyU3Vi c2NyaXB0aW9uc1Jlc3BvbnNlIiB0eXBlPSJ0bnM6VHJhbnNmZXJTdWJzY3JpcHRpb25zUmVzcG9u c2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlvbnNSZXF1 ZXN0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZXF1ZXN0 SGVhZGVyIiB0eXBlPSJ0bnM6UmVxdWVzdEhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlN1YnNjcmlwdGlvbklkcyIgdHlwZT0i dWE6TGlzdE9mVUludDMyIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwv eHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRl bGV0ZVN1YnNjcmlwdGlvbnNSZXF1ZXN0IiB0eXBlPSJ0bnM6RGVsZXRlU3Vic2NyaXB0aW9uc1Jl cXVlc3QiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkRlbGV0ZVN1YnNjcmlwdGlvbnNS ZXNwb25zZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVz cG9uc2VIZWFkZXIiIHR5cGU9InRuczpSZXNwb25zZUhlYWRlciIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlc3VsdHMiIHR5cGU9InVh Okxpc3RPZlN0YXR1c0NvZGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJEaWFnbm9zdGljSW5mb3MiIHR5cGU9InVhOkxpc3RPZkRpYWdu b3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2Vx dWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZVN1 YnNjcmlwdGlvbnNSZXNwb25zZSIgdHlwZT0idG5zOkRlbGV0ZVN1YnNjcmlwdGlvbnNSZXNwb25z ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQnVpbGRJbmZvIj4NCiAgICA8eHM6c2Vx dWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQcm9kdWN0VXJpIiB0eXBlPSJ4czpzdHJp bmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJNYW51ZmFjdHVyZXJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQcm9kdWN0TmFtZSIgdHlw ZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iU29mdHdhcmVWZXJzaW9uIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJCdWlsZE51 bWJlciIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQnVpbGREYXRlIiB0eXBlPSJ4czpkYXRlVGltZSIgbWlu T2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQog IDx4czplbGVtZW50IG5hbWU9IkJ1aWxkSW5mbyIgdHlwZT0idG5zOkJ1aWxkSW5mbyIgLz4NCg0K ICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iUmVkdW5kYW5jeVN1cHBvcnQiPg0KICAgIDx4czpyZXN0 cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJO b25lXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkNvbGRfMSIgLz4NCiAgICAg IDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iV2FybV8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJIb3RfMyIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iVHJhbnNwYXJl bnRfNCIgLz4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iSG90QW5kTWlycm9yZWRfNSIg Lz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5cGU+DQogIDx4czplbGVt ZW50IG5hbWU9IlJlZHVuZGFuY3lTdXBwb3J0IiB0eXBlPSJ0bnM6UmVkdW5kYW5jeVN1cHBvcnQi IC8+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IlNlcnZlclN0YXRlIj4NCiAgICA8eHM6cmVz dHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0i UnVubmluZ18wIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJGYWlsZWRfMSIgLz4N CiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9Db25maWd1cmF0aW9uXzIiIC8+DQogICAg ICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IlN1c3BlbmRlZF8zIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJTaHV0ZG93bl80IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVl PSJUZXN0XzUiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9IkNvbW11bmljYXRpb25G YXVsdF82IiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJVbmtub3duXzciIC8+DQog ICAgPC94czpyZXN0cmljdGlvbj4NCiAgPC94czpzaW1wbGVUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJTZXJ2ZXJTdGF0ZSIgdHlwZT0idG5zOlNlcnZlclN0YXRlIiAvPg0KDQogIDx4czpjb21w bGV4VHlwZSBuYW1lPSJSZWR1bmRhbnRTZXJ2ZXJEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNl Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVySWQiIHR5cGU9InhzOnN0cmluZyIgbWlu T2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNl cnZpY2VMZXZlbCIgdHlwZT0ieHM6dW5zaWduZWRCeXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTZXJ2ZXJTdGF0ZSIgdHlwZT0idG5zOlNlcnZlclN0YXRlIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4N CiAgPHhzOmVsZW1lbnQgbmFtZT0iUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiIHR5cGU9InRuczpS ZWR1bmRhbnRTZXJ2ZXJEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlz dE9mUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IlJlZHVuZGFudFNlcnZlckRhdGFUeXBlIiB0eXBlPSJ0bnM6UmVkdW5k YW50U2VydmVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+ DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlJlZHVuZGFudFNlcnZlckRhdGFUeXBlIiB0eXBl PSJ0bnM6TGlzdE9mUmVkdW5kYW50U2VydmVyRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hz OmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVuZHBvaW50VXJsTGlzdERhdGFU eXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFbmRwb2lu dFVybExpc3QiIHR5cGU9InVhOkxpc3RPZlN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJFbmRwb2ludFVybExpc3REYXRhVHlwZSIgdHlwZT0idG5zOkVuZHBvaW50 VXJsTGlzdERhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZFbmRw b2ludFVybExpc3REYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRW5kcG9pbnRVcmxMaXN0RGF0YVR5cGUiIHR5cGU9InRuczpFbmRwb2ludFVybExp c3REYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9 InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhz OmVsZW1lbnQgbmFtZT0iTGlzdE9mRW5kcG9pbnRVcmxMaXN0RGF0YVR5cGUiIHR5cGU9InRuczpM aXN0T2ZFbmRwb2ludFVybExpc3REYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVu dD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTmV0d29ya0dyb3VwRGF0YVR5cGUiPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlcnZlclVyaSIgdHlwZT0i eHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTmV0d29ya1BhdGhzIiB0eXBlPSJ0bnM6TGlzdE9mRW5kcG9pbnRVcmxMaXN0 RGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1 ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTmV0d29ya0dy b3VwRGF0YVR5cGUiIHR5cGU9InRuczpOZXR3b3JrR3JvdXBEYXRhVHlwZSIgLz4NCg0KICA8eHM6 Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mTmV0d29ya0dyb3VwRGF0YVR5cGUiPg0KICAgIDx4czpz ZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5ldHdvcmtHcm91cERhdGFUeXBlIiB0 eXBlPSJ0bnM6TmV0d29ya0dyb3VwRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1 bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6 Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZk5ldHdvcmtHcm91cERhdGFU eXBlIiB0eXBlPSJ0bnM6TGlzdE9mTmV0d29ya0dyb3VwRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVl Ij48L3hzOmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlNhbXBsaW5nSW50ZXJ2 YWxEaWFnbm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxl bWVudCBuYW1lPSJTYW1wbGluZ0ludGVydmFsIiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3JlZEl0ZW1Db3VudCIgdHlwZT0i eHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 Ik1heE1vbml0b3JlZEl0ZW1Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc2FibGVkTW9uaXRvcmVkSXRlbUNvdW50 IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlNhbXBsaW5nSW50 ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6U2FtcGxpbmdJbnRlcnZhbERpYWdu b3N0aWNzRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNhbXBs aW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTYW1wbGluZ0ludGVydmFsRGlhZ25vc3RpY3NEYXRhVHlwZSIg dHlwZT0idG5zOlNhbXBsaW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiBtaW5PY2N1cnM9 IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNl cXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZT YW1wbGluZ0ludGVydmFsRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0idG5zOkxpc3RPZlNhbXBs aW5nSW50ZXJ2YWxEaWFnbm9zdGljc0RhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94czplbGVt ZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTZXJ2ZXJEaWFnbm9zdGljc1N1bW1hcnlE YXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vy dmVyVmlld0NvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3VycmVudFNlc3Npb25Db3VudCIgdHlwZT0ieHM6dW5zaWdu ZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkN1bXVsYXRl ZFNlc3Npb25Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlNlY3VyaXR5UmVqZWN0ZWRTZXNzaW9uQ291bnQiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJSZWplY3RlZFNlc3Npb25Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNlc3Npb25UaW1lb3V0Q291bnQiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJTZXNzaW9uQWJvcnRDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkN1cnJlbnRTdWJzY3JpcHRpb25Db3VudCIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkN1bXVsYXRlZFN1YnNjcmlwdGlvbkNvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWlu T2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUHVibGlzaGluZ0ludGVydmFs Q291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6 ZWxlbWVudCBuYW1lPSJTZWN1cml0eVJlamVjdGVkUmVxdWVzdHNDb3VudCIgdHlwZT0ieHM6dW5z aWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlamVj dGVkUmVxdWVzdHNDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4N CiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBu YW1lPSJTZXJ2ZXJEaWFnbm9zdGljc1N1bW1hcnlEYXRhVHlwZSIgdHlwZT0idG5zOlNlcnZlckRp YWdub3N0aWNzU3VtbWFyeURhdGFUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJT ZXJ2ZXJTdGF0dXNEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iU3RhcnRUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3VycmVudFRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBt aW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0ZSIgdHlwZT0idG5z OlNlcnZlclN0YXRlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJC dWlsZEluZm8iIHR5cGU9InRuczpCdWlsZEluZm8iIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTZWNvbmRzVGlsbFNodXRkb3duIiB0eXBl PSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2h1dGRvd25SZWFzb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIg bmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlw ZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmVyU3RhdHVzRGF0YVR5cGUiIHR5cGU9InRuczpT ZXJ2ZXJTdGF0dXNEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU2Vzc2lv bkRpYWdub3N0aWNzRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlNlc3Npb25JZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vzc2lvbk5hbWUiIHR5cGU9 InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkNsaWVudERlc2NyaXB0aW9uIiB0eXBlPSJ0bnM6QXBwbGljYXRpb25EZXNj cmlwdGlvbiIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlNlcnZlclVyaSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRW5kcG9pbnRVcmwiIHR5cGU9 InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IkxvY2FsZUlkcyIgdHlwZT0idWE6TGlzdE9mU3RyaW5nIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWN0dWFsU2Vz c2lvblRpbWVvdXQiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTWF4UmVzcG9uc2VNZXNzYWdlU2l6ZSIgdHlwZT0ieHM6dW5zaWduZWRJ bnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVudENvbm5l Y3Rpb25UaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iQ2xpZW50TGFzdENvbnRhY3RUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3VycmVudFN1YnNjcmlw dGlvbnNDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9IkN1cnJlbnRNb25pdG9yZWRJdGVtc0NvdW50IiB0eXBlPSJ4czp1 bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3Vy cmVudFB1Ymxpc2hSZXF1ZXN0c0luUXVldWUiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1 cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJUb3RhbFJlcXVlc3RDb3VudCIgdHlw ZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJVbmF1dGhvcml6ZWRSZXF1ZXN0Q291bnQi IHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJSZWFkQ291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5P Y2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iSGlz dG9yeVJlYWRDb3VudCIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJXcml0ZUNv dW50IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxs YWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikhpc3RvcnlVcGRhdGVDb3Vu dCIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDYWxsQ291bnQiIHR5cGU9InRu czpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAv Pg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlTW9uaXRvcmVkSXRlbXNDb3VudCIgdHlw ZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb2RpZnlNb25pdG9yZWRJdGVtc0NvdW50 IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlNldE1vbml0b3JpbmdNb2RlQ291 bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2V0VHJpZ2dlcmluZ0NvdW50 IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZU1vbml0b3JlZEl0ZW1z Q291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlU3Vic2NyaXB0 aW9uQ291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTW9kaWZ5U3Vic2Ny aXB0aW9uQ291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9 IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2V0UHVibGlz aGluZ01vZGVDb3VudCIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vy cz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJQdWJsaXNo Q291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoQ291bnQi IHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxl PSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHJhbnNmZXJTdWJzY3JpcHRpb25z Q291bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5p bGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlU3Vic2NyaXB0 aW9uc0NvdW50IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIw IiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFkZE5vZGVzQ291 bnQiIHR5cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQWRkUmVmZXJlbmNlc0NvdW50 IiB0eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRlbGV0ZU5vZGVzQ291bnQiIHR5 cGU9InRuczpTZXJ2aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0 cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGVsZXRlUmVmZXJlbmNlc0NvdW50IiB0 eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZUNvdW50IiB0eXBlPSJ0bnM6 U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IkJyb3dzZU5leHRDb3VudCIgdHlwZT0idG5zOlNlcnZp Y2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc2xhdGVCcm93c2VQYXRoc1RvTm9kZUlkc0NvdW50IiB0 eXBlPSJ0bnM6U2VydmljZUNvdW50ZXJEYXRhVHlwZSIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlF1ZXJ5Rmlyc3RDb3VudCIgdHlwZT0i dG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJRdWVyeU5leHRDb3VudCIgdHlwZT0idG5zOlNl cnZpY2VDb3VudGVyRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQog ICAgICA8eHM6ZWxlbWVudCBuYW1lPSJSZWdpc3Rlck5vZGVzQ291bnQiIHR5cGU9InRuczpTZXJ2 aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iVW5yZWdpc3Rlck5vZGVzQ291bnQiIHR5cGU9InRuczpTZXJ2 aWNlQ291bnRlckRhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlNlc3Npb25EaWFnbm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6U2Vzc2lvbkRpYWdub3N0aWNz RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNlc3Npb25EaWFn bm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTZXNzaW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0idG5zOlNlc3Npb25EaWFnbm9z dGljc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5ib3VuZGVkIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8 eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTZXNzaW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0i dG5zOkxpc3RPZlNlc3Npb25EaWFnbm9zdGljc0RhdGFUeXBlIiBuaWxsYWJsZT0idHJ1ZSI+PC94 czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJTZXNzaW9uU2VjdXJpdHlEaWFn bm9zdGljc0RhdGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJTZXNzaW9uSWQiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0i dHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkNsaWVudFVzZXJJZE9mU2Vzc2lvbiIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iQ2xpZW50VXNlcklkSGlzdG9yeSIgdHlwZT0idWE6TGlzdE9mU3Ry aW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iQXV0aGVudGljYXRpb25NZWNoYW5pc20iIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuY29kaW5n IiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJUcmFuc3BvcnRQcm90b2NvbCIgdHlwZT0ieHM6c3RyaW5nIiBt aW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0i U2VjdXJpdHlNb2RlIiB0eXBlPSJ0bnM6TWVzc2FnZVNlY3VyaXR5TW9kZSIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iU2VjdXJpdHlQb2xpY3lVcmkiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkNsaWVudENlcnRpZmljYXRlIiB0eXBlPSJ4czpiYXNlNjRCaW5hcnkiIG1pbk9j Y3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpj b21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2Vzc2lvblNlY3VyaXR5RGlhZ25vc3Rp Y3NEYXRhVHlwZSIgdHlwZT0idG5zOlNlc3Npb25TZWN1cml0eURpYWdub3N0aWNzRGF0YVR5cGUi IC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ikxpc3RPZlNlc3Npb25TZWN1cml0eURpYWdu b3N0aWNzRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlNlc3Npb25TZWN1cml0eURpYWdub3N0aWNzRGF0YVR5cGUiIHR5cGU9InRuczpTZXNzaW9u U2VjdXJpdHlEaWFnbm9zdGljc0RhdGFUeXBlIiBtaW5PY2N1cnM9IjAiIG1heE9jY3Vycz0idW5i b3VuZGVkIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNv bXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJMaXN0T2ZTZXNzaW9uU2VjdXJpdHlEaWFn bm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6TGlzdE9mU2Vzc2lvblNlY3VyaXR5RGlhZ25vc3Rp Y3NEYXRhVHlwZSIgbmlsbGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iU2VydmljZUNvdW50ZXJEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVG90YWxDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQi IG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVycm9yQ291bnQiIHR5 cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4N CiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iU2VydmljZUNvdW50ZXJE YXRhVHlwZSIgdHlwZT0idG5zOlNlcnZpY2VDb3VudGVyRGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNv bXBsZXhUeXBlIG5hbWU9IlN0YXR1c1Jlc3VsdCI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU3RhdHVzQ29kZSIgdHlwZT0idWE6U3RhdHVzQ29kZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlhZ25vc3RpY0luZm8iIHR5cGU9 InVhOkRpYWdub3N0aWNJbmZvIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlN0YXR1c1Jlc3VsdCIgdHlwZT0idG5zOlN0YXR1c1Jlc3VsdCIgLz4NCg0KICA8eHM6Y29tcGxl eFR5cGUgbmFtZT0iTGlzdE9mU3RhdHVzUmVzdWx0Ij4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAg ICA8eHM6ZWxlbWVudCBuYW1lPSJTdGF0dXNSZXN1bHQiIHR5cGU9InRuczpTdGF0dXNSZXN1bHQi IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQiIG5pbGxhYmxlPSJ0cnVlIiAvPg0K ICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5h bWU9Ikxpc3RPZlN0YXR1c1Jlc3VsdCIgdHlwZT0idG5zOkxpc3RPZlN0YXR1c1Jlc3VsdCIgbmls bGFibGU9InRydWUiPjwveHM6ZWxlbWVudD4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iU3Vi c2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iU2Vzc2lvbklkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRp b25JZCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlByaW9yaXR5IiB0eXBlPSJ4czp1bnNpZ25lZEJ5dGUiIG1pbk9jY3Vycz0i MCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hpbmdJbnRlcnZhbCIgdHlwZT0i eHM6ZG91YmxlIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhL ZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ik1heExpZmV0aW1lQ291bnQiIHR5cGU9InhzOnVuc2lnbmVk SW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNYXhOb3RpZmlj YXRpb25zUGVyUHVibGlzaCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hpbmdFbmFibGVkIiB0eXBlPSJ4czpib29s ZWFuIiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb2RpZnlDb3Vu dCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IkVuYWJsZUNvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRGlzYWJsZUNvdW50IiB0eXBlPSJ4czp1bnNp Z25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJs aXNoUmVxdWVzdENvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0K ICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iUmVwdWJsaXNoTWVzc2FnZVJlcXVlc3RDb3VudCIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IlJlcHVibGlzaE1lc3NhZ2VDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlRyYW5zZmVyUmVxdWVzdENvdW50IiB0 eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQg bmFtZT0iVHJhbnNmZXJyZWRUb0FsdENsaWVudENvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIg bWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iVHJhbnNmZXJyZWRUb1Nh bWVDbGllbnRDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9IlB1Ymxpc2hSZXF1ZXN0Q291bnQiIHR5cGU9InhzOnVuc2ln bmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEYXRhQ2hh bmdlTm90aWZpY2F0aW9uc0NvdW50IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIw IiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRXZlbnROb3RpZmljYXRpb25zQ291bnQiIHR5 cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJOb3RpZmljYXRpb25zQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9 IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXRlUHVibGlzaFJlcXVlc3RDb3VudCIg dHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50 IG5hbWU9IkN1cnJlbnRLZWVwQWxpdmVDb3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9j Y3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkN1cnJlbnRMaWZldGltZUNvdW50 IiB0eXBlPSJ4czp1bnNpZ25lZEludCIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVW5hY2tub3dsZWRnZWRNZXNzYWdlQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNjYXJkZWRNZXNz YWdlQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJNb25pdG9yZWRJdGVtQ291bnQiIHR5cGU9InhzOnVuc2lnbmVkSW50 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJEaXNhYmxlZE1vbml0 b3JlZEl0ZW1Db3VudCIgdHlwZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ik1vbml0b3JpbmdRdWV1ZU92ZXJmbG93Q291bnQiIHR5cGU9 InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1l PSJOZXh0U2VxdWVuY2VOdW1iZXIiIHR5cGU9InhzOnVuc2lnbmVkSW50IiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJFdmVudFF1ZXVlT3ZlckZsb3dDb3VudCIgdHlw ZT0ieHM6dW5zaWduZWRJbnQiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTdWJzY3JpcHRpb25EaWFn bm9zdGljc0RhdGFUeXBlIiB0eXBlPSJ0bnM6U3Vic2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlw ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU3Vic2NyaXB0aW9uRGlhZ25v c3RpY3NEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU3Vic2NyaXB0aW9uRGlhZ25vc3RpY3NEYXRhVHlwZSIgdHlwZT0idG5zOlN1YnNjcmlwdGlv bkRpYWdub3N0aWNzRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlN1YnNjcmlwdGlvbkRpYWdub3N0aWNzRGF0 YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZTdWJzY3JpcHRpb25EaWFnbm9zdGljc0RhdGFUeXBlIiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpzaW1wbGVUeXBlICBuYW1lPSJN b2RlbENoYW5nZVN0cnVjdHVyZVZlcmJNYXNrIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0i eHM6c3RyaW5nIj4NCiAgICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iTm9kZUFkZGVkXzEiIC8+ DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFsdWU9Ik5vZGVEZWxldGVkXzIiIC8+DQogICAgICA8 eHM6ZW51bWVyYXRpb24gdmFsdWU9IlJlZmVyZW5jZUFkZGVkXzQiIC8+DQogICAgICA8eHM6ZW51 bWVyYXRpb24gdmFsdWU9IlJlZmVyZW5jZURlbGV0ZWRfOCIgLz4NCiAgICAgIDx4czplbnVtZXJh dGlvbiB2YWx1ZT0iRGF0YVR5cGVDaGFuZ2VkXzE2IiAvPg0KICAgIDwveHM6cmVzdHJpY3Rpb24+ DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iTW9kZWxDaGFuZ2VTdHJ1 Y3R1cmVWZXJiTWFzayIgdHlwZT0idG5zOk1vZGVsQ2hhbmdlU3RydWN0dXJlVmVyYk1hc2siIC8+ DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9Ik1vZGVsQ2hhbmdlU3RydWN0dXJlRGF0YVR5cGUi Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkFmZmVjdGVkIiB0 eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8 eHM6ZWxlbWVudCBuYW1lPSJBZmZlY3RlZFR5cGUiIHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJz PSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZlcmIiIHR5 cGU9InhzOnVuc2lnbmVkQnl0ZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+ DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ik1vZGVsQ2hhbmdlU3Ry dWN0dXJlRGF0YVR5cGUiIHR5cGU9InRuczpNb2RlbENoYW5nZVN0cnVjdHVyZURhdGFUeXBlIiAv Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZNb2RlbENoYW5nZVN0cnVjdHVyZURh dGFUeXBlIj4NCiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJNb2Rl bENoYW5nZVN0cnVjdHVyZURhdGFUeXBlIiB0eXBlPSJ0bnM6TW9kZWxDaGFuZ2VTdHJ1Y3R1cmVE YXRhVHlwZSIgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgbmlsbGFibGU9InRy dWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4VHlwZT4NCiAgPHhzOmVs ZW1lbnQgbmFtZT0iTGlzdE9mTW9kZWxDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlwZSIgdHlwZT0idG5z Okxpc3RPZk1vZGVsQ2hhbmdlU3RydWN0dXJlRGF0YVR5cGUiIG5pbGxhYmxlPSJ0cnVlIj48L3hz OmVsZW1lbnQ+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IlNlbWFudGljQ2hhbmdlU3RydWN0 dXJlRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IkFmZmVjdGVkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBZmZlY3RlZFR5cGUiIHR5cGU9InVhOk5vZGVJ ZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0K ICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJTZW1hbnRpY0NoYW5nZVN0 cnVjdHVyZURhdGFUeXBlIiB0eXBlPSJ0bnM6U2VtYW50aWNDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlw ZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iTGlzdE9mU2VtYW50aWNDaGFuZ2VTdHJ1 Y3R1cmVEYXRhVHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iU2VtYW50aWNDaGFuZ2VTdHJ1Y3R1cmVEYXRhVHlwZSIgdHlwZT0idG5zOlNlbWFudGljQ2hh bmdlU3RydWN0dXJlRGF0YVR5cGUiIG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvdW5kZWQi IG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9Ikxpc3RPZlNlbWFudGljQ2hhbmdlU3RydWN0dXJlRGF0 YVR5cGUiIHR5cGU9InRuczpMaXN0T2ZTZW1hbnRpY0NoYW5nZVN0cnVjdHVyZURhdGFUeXBlIiBu aWxsYWJsZT0idHJ1ZSI+PC94czplbGVtZW50Pg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJS YW5nZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTG93IiB0 eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9 IkhpZ2giIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVu Y2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlJhbmdlIiB0eXBl PSJ0bnM6UmFuZ2UiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkVVSW5mb3JtYXRpb24i Pg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik5hbWVzcGFjZVVy aSIgdHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iVW5pdElkIiB0eXBlPSJ4czppbnQiIG1pbk9jY3Vycz0iMCIg Lz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkRpc3BsYXlOYW1lIiB0eXBlPSJ1YTpMb2NhbGl6 ZWRUZXh0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iRGVzY3JpcHRpb24iIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94czpjb21wbGV4 VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iRVVJbmZvcm1hdGlvbiIgdHlwZT0idG5zOkVVSW5m b3JtYXRpb24iIC8+DQoNCiAgPHhzOnNpbXBsZVR5cGUgIG5hbWU9IkF4aXNTY2FsZUVudW1lcmF0 aW9uIj4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAgICAgIDx4czpl bnVtZXJhdGlvbiB2YWx1ZT0iTGluZWFyXzAiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFs dWU9IkxvZ18xIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9uIHZhbHVlPSJMbl8yIiAvPg0KICAg IDwveHM6cmVzdHJpY3Rpb24+DQogIDwveHM6c2ltcGxlVHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFt ZT0iQXhpc1NjYWxlRW51bWVyYXRpb24iIHR5cGU9InRuczpBeGlzU2NhbGVFbnVtZXJhdGlvbiIg Lz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iQ29tcGxleE51bWJlclR5cGUiPg0KICAgIDx4 czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlJlYWwiIHR5cGU9InhzOmZsb2F0 IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJJbWFnaW5hcnkiIHR5 cGU9InhzOmZsb2F0IiBtaW5PY2N1cnM9IjAiIC8+DQogICAgPC94czpzZXF1ZW5jZT4NCiAgPC94 czpjb21wbGV4VHlwZT4NCiAgPHhzOmVsZW1lbnQgbmFtZT0iQ29tcGxleE51bWJlclR5cGUiIHR5 cGU9InRuczpDb21wbGV4TnVtYmVyVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0i RG91YmxlQ29tcGxleE51bWJlclR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9IlJlYWwiIHR5cGU9InhzOmRvdWJsZSIgbWluT2NjdXJzPSIwIiAvPg0KICAg ICAgPHhzOmVsZW1lbnQgbmFtZT0iSW1hZ2luYXJ5IiB0eXBlPSJ4czpkb3VibGUiIG1pbk9jY3Vy cz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6 ZWxlbWVudCBuYW1lPSJEb3VibGVDb21wbGV4TnVtYmVyVHlwZSIgdHlwZT0idG5zOkRvdWJsZUNv bXBsZXhOdW1iZXJUeXBlIiAvPg0KDQogIDx4czpjb21wbGV4VHlwZSBuYW1lPSJBeGlzSW5mb3Jt YXRpb24iPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IkVuZ2lu ZWVyaW5nVW5pdHMiIHR5cGU9InRuczpFVUluZm9ybWF0aW9uIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iRVVSYW5nZSIgdHlwZT0idG5z OlJhbmdlIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1l bnQgbmFtZT0iVGl0bGUiIHR5cGU9InVhOkxvY2FsaXplZFRleHQiIG1pbk9jY3Vycz0iMCIgbmls bGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBeGlzU2NhbGVUeXBlIiB0 eXBlPSJ0bnM6QXhpc1NjYWxlRW51bWVyYXRpb24iIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4 czplbGVtZW50IG5hbWU9IkF4aXNTdGVwcyIgdHlwZT0idWE6TGlzdE9mRG91YmxlIiBtaW5PY2N1 cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29t cGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkF4aXNJbmZvcm1hdGlvbiIgdHlwZT0idG5z OkF4aXNJbmZvcm1hdGlvbiIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iWFZUeXBlIj4N CiAgICA8eHM6c2VxdWVuY2U+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJYIiB0eXBlPSJ4czpk b3VibGUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9IlZhbHVlIiB0 eXBlPSJ4czpmbG9hdCIgbWluT2NjdXJzPSIwIiAvPg0KICAgIDwveHM6c2VxdWVuY2U+DQogIDwv eHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9IlhWVHlwZSIgdHlwZT0idG5zOlhW VHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUHJvZ3JhbURpYWdub3N0aWNEYXRh VHlwZSI+DQogICAgPHhzOnNlcXVlbmNlPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRl U2Vzc2lvbklkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJDcmVhdGVDbGllbnROYW1lIiB0eXBlPSJ4czpz dHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVu dCBuYW1lPSJJbnZvY2F0aW9uQ3JlYXRpb25UaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGFzdFRyYW5zaXRpb25UaW1lIiB0 eXBlPSJ4czpkYXRlVGltZSIgbWluT2NjdXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFt ZT0iTGFzdE1ldGhvZENhbGwiIHR5cGU9InhzOnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJs ZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RTZXNzaW9uSWQi IHR5cGU9InVhOk5vZGVJZCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAg IDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RJbnB1dEFyZ3VtZW50cyIgdHlwZT0idG5zOkxp c3RPZkFyZ3VtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhz OmVsZW1lbnQgbmFtZT0iTGFzdE1ldGhvZE91dHB1dEFyZ3VtZW50cyIgdHlwZT0idG5zOkxpc3RP ZkFyZ3VtZW50IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVs ZW1lbnQgbmFtZT0iTGFzdE1ldGhvZENhbGxUaW1lIiB0eXBlPSJ4czpkYXRlVGltZSIgbWluT2Nj dXJzPSIwIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iTGFzdE1ldGhvZFJldHVyblN0YXR1 cyIgdHlwZT0idG5zOlN0YXR1c1Jlc3VsdCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIg Lz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVu dCBuYW1lPSJQcm9ncmFtRGlhZ25vc3RpY0RhdGFUeXBlIiB0eXBlPSJ0bnM6UHJvZ3JhbURpYWdu b3N0aWNEYXRhVHlwZSIgLz4NCg0KICA8eHM6Y29tcGxleFR5cGUgbmFtZT0iUHJvZ3JhbURpYWdu b3N0aWMyRGF0YVR5cGUiPg0KICAgIDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5h bWU9IkNyZWF0ZVNlc3Npb25JZCIgdHlwZT0idWE6Tm9kZUlkIiBtaW5PY2N1cnM9IjAiIG5pbGxh YmxlPSJ0cnVlIiAvPg0KICAgICAgPHhzOmVsZW1lbnQgbmFtZT0iQ3JlYXRlQ2xpZW50TmFtZSIg dHlwZT0ieHM6c3RyaW5nIiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAgICAg PHhzOmVsZW1lbnQgbmFtZT0iSW52b2NhdGlvbkNyZWF0aW9uVGltZSIgdHlwZT0ieHM6ZGF0ZVRp bWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RUcmFuc2l0 aW9uVGltZSIgdHlwZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9Ikxhc3RNZXRob2RDYWxsIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0i MCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXN0TWV0aG9k U2Vzc2lvbklkIiB0eXBlPSJ1YTpOb2RlSWQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXN0TWV0aG9kSW5wdXRBcmd1bWVudHMiIHR5 cGU9InRuczpMaXN0T2ZBcmd1bWVudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4N CiAgICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RPdXRwdXRBcmd1bWVudHMiIHR5cGU9 InRuczpMaXN0T2ZBcmd1bWVudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAg ICAgIDx4czplbGVtZW50IG5hbWU9Ikxhc3RNZXRob2RJbnB1dFZhbHVlcyIgdHlwZT0idWE6TGlz dE9mVmFyaWFudCIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czpl bGVtZW50IG5hbWU9Ikxhc3RNZXRob2RPdXRwdXRWYWx1ZXMiIHR5cGU9InVhOkxpc3RPZlZhcmlh bnQiIG1pbk9jY3Vycz0iMCIgbmlsbGFibGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBu YW1lPSJMYXN0TWV0aG9kQ2FsbFRpbWUiIHR5cGU9InhzOmRhdGVUaW1lIiBtaW5PY2N1cnM9IjAi IC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJMYXN0TWV0aG9kUmV0dXJuU3RhdHVzIiB0eXBl PSJ0bnM6U3RhdHVzUmVzdWx0IiBtaW5PY2N1cnM9IjAiIG5pbGxhYmxlPSJ0cnVlIiAvPg0KICAg IDwveHM6c2VxdWVuY2U+DQogIDwveHM6Y29tcGxleFR5cGU+DQogIDx4czplbGVtZW50IG5hbWU9 IlByb2dyYW1EaWFnbm9zdGljMkRhdGFUeXBlIiB0eXBlPSJ0bnM6UHJvZ3JhbURpYWdub3N0aWMy RGF0YVR5cGUiIC8+DQoNCiAgPHhzOmNvbXBsZXhUeXBlIG5hbWU9IkFubm90YXRpb24iPg0KICAg IDx4czpzZXF1ZW5jZT4NCiAgICAgIDx4czplbGVtZW50IG5hbWU9Ik1lc3NhZ2UiIHR5cGU9Inhz OnN0cmluZyIgbWluT2NjdXJzPSIwIiBuaWxsYWJsZT0idHJ1ZSIgLz4NCiAgICAgIDx4czplbGVt ZW50IG5hbWU9IlVzZXJOYW1lIiB0eXBlPSJ4czpzdHJpbmciIG1pbk9jY3Vycz0iMCIgbmlsbGFi bGU9InRydWUiIC8+DQogICAgICA8eHM6ZWxlbWVudCBuYW1lPSJBbm5vdGF0aW9uVGltZSIgdHlw ZT0ieHM6ZGF0ZVRpbWUiIG1pbk9jY3Vycz0iMCIgLz4NCiAgICA8L3hzOnNlcXVlbmNlPg0KICA8 L3hzOmNvbXBsZXhUeXBlPg0KICA8eHM6ZWxlbWVudCBuYW1lPSJBbm5vdGF0aW9uIiB0eXBlPSJ0 bnM6QW5ub3RhdGlvbiIgLz4NCg0KICA8eHM6c2ltcGxlVHlwZSAgbmFtZT0iRXhjZXB0aW9uRGV2 aWF0aW9uRm9ybWF0Ij4NCiAgICA8eHM6cmVzdHJpY3Rpb24gYmFzZT0ieHM6c3RyaW5nIj4NCiAg ICAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iQWJzb2x1dGVWYWx1ZV8wIiAvPg0KICAgICAgPHhz OmVudW1lcmF0aW9uIHZhbHVlPSJQZXJjZW50T2ZWYWx1ZV8xIiAvPg0KICAgICAgPHhzOmVudW1l cmF0aW9uIHZhbHVlPSJQZXJjZW50T2ZSYW5nZV8yIiAvPg0KICAgICAgPHhzOmVudW1lcmF0aW9u IHZhbHVlPSJQZXJjZW50T2ZFVVJhbmdlXzMiIC8+DQogICAgICA8eHM6ZW51bWVyYXRpb24gdmFs dWU9IlVua25vd25fNCIgLz4NCiAgICA8L3hzOnJlc3RyaWN0aW9uPg0KICA8L3hzOnNpbXBsZVR5 cGU+DQogIDx4czplbGVtZW50IG5hbWU9IkV4Y2VwdGlvbkRldmlhdGlvbkZvcm1hdCIgdHlwZT0i dG5zOkV4Y2VwdGlvbkRldmlhdGlvbkZvcm1hdCIgLz4NCg0KPC94czpzY2hlbWE+ NamespaceUri A URI that uniquely identifies the dictionary. i=68 i=8252 http://opcfoundation.org/UA/2008/02/Types.xsd Deprecated Indicates that all of the definitions for the dictionary are available through a DataTypeDefinition Attribute. i=68 i=8252 true KeyValuePair i=69 i=8252 //xs:element[@name='KeyValuePair'] EndpointType i=69 i=8252 //xs:element[@name='EndpointType'] IdentityMappingRuleType i=69 i=8252 //xs:element[@name='IdentityMappingRuleType'] TrustListDataType i=69 i=8252 //xs:element[@name='TrustListDataType'] DataTypeSchemaHeader i=69 i=8252 //xs:element[@name='DataTypeSchemaHeader'] DataTypeDescription i=69 i=8252 //xs:element[@name='DataTypeDescription'] StructureDescription i=69 i=8252 //xs:element[@name='StructureDescription'] EnumDescription i=69 i=8252 //xs:element[@name='EnumDescription'] SimpleTypeDescription i=69 i=8252 //xs:element[@name='SimpleTypeDescription'] UABinaryFileDataType i=69 i=8252 //xs:element[@name='UABinaryFileDataType'] DataSetMetaDataType i=69 i=8252 //xs:element[@name='DataSetMetaDataType'] FieldMetaData i=69 i=8252 //xs:element[@name='FieldMetaData'] ConfigurationVersionDataType i=69 i=8252 //xs:element[@name='ConfigurationVersionDataType'] PublishedDataSetDataType i=69 i=8252 //xs:element[@name='PublishedDataSetDataType'] PublishedDataSetSourceDataType i=69 i=8252 //xs:element[@name='PublishedDataSetSourceDataType'] PublishedVariableDataType i=69 i=8252 //xs:element[@name='PublishedVariableDataType'] PublishedDataItemsDataType i=69 i=8252 //xs:element[@name='PublishedDataItemsDataType'] PublishedEventsDataType i=69 i=8252 //xs:element[@name='PublishedEventsDataType'] DataSetWriterDataType i=69 i=8252 //xs:element[@name='DataSetWriterDataType'] DataSetWriterTransportDataType i=69 i=8252 //xs:element[@name='DataSetWriterTransportDataType'] DataSetWriterMessageDataType i=69 i=8252 //xs:element[@name='DataSetWriterMessageDataType'] PubSubGroupDataType i=69 i=8252 //xs:element[@name='PubSubGroupDataType'] WriterGroupDataType i=69 i=8252 //xs:element[@name='WriterGroupDataType'] WriterGroupTransportDataType i=69 i=8252 //xs:element[@name='WriterGroupTransportDataType'] WriterGroupMessageDataType i=69 i=8252 //xs:element[@name='WriterGroupMessageDataType'] PubSubConnectionDataType i=69 i=8252 //xs:element[@name='PubSubConnectionDataType'] ConnectionTransportDataType i=69 i=8252 //xs:element[@name='ConnectionTransportDataType'] NetworkAddressDataType i=69 i=8252 //xs:element[@name='NetworkAddressDataType'] NetworkAddressUrlDataType i=69 i=8252 //xs:element[@name='NetworkAddressUrlDataType'] ReaderGroupDataType i=69 i=8252 //xs:element[@name='ReaderGroupDataType'] ReaderGroupTransportDataType i=69 i=8252 //xs:element[@name='ReaderGroupTransportDataType'] ReaderGroupMessageDataType i=69 i=8252 //xs:element[@name='ReaderGroupMessageDataType'] DataSetReaderDataType i=69 i=8252 //xs:element[@name='DataSetReaderDataType'] DataSetReaderTransportDataType i=69 i=8252 //xs:element[@name='DataSetReaderTransportDataType'] DataSetReaderMessageDataType i=69 i=8252 //xs:element[@name='DataSetReaderMessageDataType'] SubscribedDataSetDataType i=69 i=8252 //xs:element[@name='SubscribedDataSetDataType'] TargetVariablesDataType i=69 i=8252 //xs:element[@name='TargetVariablesDataType'] FieldTargetDataType i=69 i=8252 //xs:element[@name='FieldTargetDataType'] SubscribedDataSetMirrorDataType i=69 i=8252 //xs:element[@name='SubscribedDataSetMirrorDataType'] PubSubConfigurationDataType i=69 i=8252 //xs:element[@name='PubSubConfigurationDataType'] UadpWriterGroupMessageDataType i=69 i=8252 //xs:element[@name='UadpWriterGroupMessageDataType'] UadpDataSetWriterMessageDataType i=69 i=8252 //xs:element[@name='UadpDataSetWriterMessageDataType'] UadpDataSetReaderMessageDataType i=69 i=8252 //xs:element[@name='UadpDataSetReaderMessageDataType'] JsonWriterGroupMessageDataType i=69 i=8252 //xs:element[@name='JsonWriterGroupMessageDataType'] JsonDataSetWriterMessageDataType i=69 i=8252 //xs:element[@name='JsonDataSetWriterMessageDataType'] JsonDataSetReaderMessageDataType i=69 i=8252 //xs:element[@name='JsonDataSetReaderMessageDataType'] DatagramConnectionTransportDataType i=69 i=8252 //xs:element[@name='DatagramConnectionTransportDataType'] DatagramWriterGroupTransportDataType i=69 i=8252 //xs:element[@name='DatagramWriterGroupTransportDataType'] BrokerConnectionTransportDataType i=69 i=8252 //xs:element[@name='BrokerConnectionTransportDataType'] BrokerWriterGroupTransportDataType i=69 i=8252 //xs:element[@name='BrokerWriterGroupTransportDataType'] BrokerDataSetWriterTransportDataType i=69 i=8252 //xs:element[@name='BrokerDataSetWriterTransportDataType'] BrokerDataSetReaderTransportDataType i=69 i=8252 //xs:element[@name='BrokerDataSetReaderTransportDataType'] RolePermissionType i=69 i=8252 //xs:element[@name='RolePermissionType'] DataTypeDefinition i=69 i=8252 //xs:element[@name='DataTypeDefinition'] StructureField i=69 i=8252 //xs:element[@name='StructureField'] StructureDefinition i=69 i=8252 //xs:element[@name='StructureDefinition'] EnumDefinition i=69 i=8252 //xs:element[@name='EnumDefinition'] Argument i=69 i=8252 //xs:element[@name='Argument'] EnumValueType i=69 i=8252 //xs:element[@name='EnumValueType'] EnumField i=69 i=8252 //xs:element[@name='EnumField'] OptionSet i=69 i=8252 //xs:element[@name='OptionSet'] Union i=69 i=8252 //xs:element[@name='Union'] TimeZoneDataType i=69 i=8252 //xs:element[@name='TimeZoneDataType'] ApplicationDescription i=69 i=8252 //xs:element[@name='ApplicationDescription'] ServerOnNetwork i=69 i=8252 //xs:element[@name='ServerOnNetwork'] UserTokenPolicy i=69 i=8252 //xs:element[@name='UserTokenPolicy'] EndpointDescription i=69 i=8252 //xs:element[@name='EndpointDescription'] RegisteredServer i=69 i=8252 //xs:element[@name='RegisteredServer'] DiscoveryConfiguration i=69 i=8252 //xs:element[@name='DiscoveryConfiguration'] MdnsDiscoveryConfiguration i=69 i=8252 //xs:element[@name='MdnsDiscoveryConfiguration'] SignedSoftwareCertificate i=69 i=8252 //xs:element[@name='SignedSoftwareCertificate'] UserIdentityToken i=69 i=8252 //xs:element[@name='UserIdentityToken'] AnonymousIdentityToken i=69 i=8252 //xs:element[@name='AnonymousIdentityToken'] UserNameIdentityToken i=69 i=8252 //xs:element[@name='UserNameIdentityToken'] X509IdentityToken i=69 i=8252 //xs:element[@name='X509IdentityToken'] IssuedIdentityToken i=69 i=8252 //xs:element[@name='IssuedIdentityToken'] AddNodesItem i=69 i=8252 //xs:element[@name='AddNodesItem'] AddReferencesItem i=69 i=8252 //xs:element[@name='AddReferencesItem'] DeleteNodesItem i=69 i=8252 //xs:element[@name='DeleteNodesItem'] DeleteReferencesItem i=69 i=8252 //xs:element[@name='DeleteReferencesItem'] RelativePathElement i=69 i=8252 //xs:element[@name='RelativePathElement'] RelativePath i=69 i=8252 //xs:element[@name='RelativePath'] EndpointConfiguration i=69 i=8252 //xs:element[@name='EndpointConfiguration'] ContentFilterElement i=69 i=8252 //xs:element[@name='ContentFilterElement'] ContentFilter i=69 i=8252 //xs:element[@name='ContentFilter'] FilterOperand i=69 i=8252 //xs:element[@name='FilterOperand'] ElementOperand i=69 i=8252 //xs:element[@name='ElementOperand'] LiteralOperand i=69 i=8252 //xs:element[@name='LiteralOperand'] AttributeOperand i=69 i=8252 //xs:element[@name='AttributeOperand'] SimpleAttributeOperand i=69 i=8252 //xs:element[@name='SimpleAttributeOperand'] HistoryEvent i=69 i=8252 //xs:element[@name='HistoryEvent'] MonitoringFilter i=69 i=8252 //xs:element[@name='MonitoringFilter'] EventFilter i=69 i=8252 //xs:element[@name='EventFilter'] AggregateConfiguration i=69 i=8252 //xs:element[@name='AggregateConfiguration'] HistoryEventFieldList i=69 i=8252 //xs:element[@name='HistoryEventFieldList'] BuildInfo i=69 i=8252 //xs:element[@name='BuildInfo'] RedundantServerDataType i=69 i=8252 //xs:element[@name='RedundantServerDataType'] EndpointUrlListDataType i=69 i=8252 //xs:element[@name='EndpointUrlListDataType'] NetworkGroupDataType i=69 i=8252 //xs:element[@name='NetworkGroupDataType'] SamplingIntervalDiagnosticsDataType i=69 i=8252 //xs:element[@name='SamplingIntervalDiagnosticsDataType'] ServerDiagnosticsSummaryDataType i=69 i=8252 //xs:element[@name='ServerDiagnosticsSummaryDataType'] ServerStatusDataType i=69 i=8252 //xs:element[@name='ServerStatusDataType'] SessionDiagnosticsDataType i=69 i=8252 //xs:element[@name='SessionDiagnosticsDataType'] SessionSecurityDiagnosticsDataType i=69 i=8252 //xs:element[@name='SessionSecurityDiagnosticsDataType'] ServiceCounterDataType i=69 i=8252 //xs:element[@name='ServiceCounterDataType'] StatusResult i=69 i=8252 //xs:element[@name='StatusResult'] SubscriptionDiagnosticsDataType i=69 i=8252 //xs:element[@name='SubscriptionDiagnosticsDataType'] ModelChangeStructureDataType i=69 i=8252 //xs:element[@name='ModelChangeStructureDataType'] SemanticChangeStructureDataType i=69 i=8252 //xs:element[@name='SemanticChangeStructureDataType'] Range i=69 i=8252 //xs:element[@name='Range'] EUInformation i=69 i=8252 //xs:element[@name='EUInformation'] ComplexNumberType i=69 i=8252 //xs:element[@name='ComplexNumberType'] DoubleComplexNumberType i=69 i=8252 //xs:element[@name='DoubleComplexNumberType'] AxisInformation i=69 i=8252 //xs:element[@name='AxisInformation'] XVType i=69 i=8252 //xs:element[@name='XVType'] ProgramDiagnosticDataType i=69 i=8252 //xs:element[@name='ProgramDiagnosticDataType'] ProgramDiagnostic2DataType i=69 i=8252 //xs:element[@name='ProgramDiagnostic2DataType'] Annotation i=69 i=8252 //xs:element[@name='Annotation'] Default JSON i=14533 i=76 Default JSON i=15528 i=76 Default JSON i=15634 i=76 Default JSON i=12554 i=76 Default JSON i=15534 i=76 Default JSON i=14525 i=76 Default JSON i=15487 i=76 Default JSON i=15488 i=76 Default JSON i=15005 i=76 Default JSON i=15006 i=76 Default JSON i=14523 i=76 Default JSON i=14524 i=76 Default JSON i=14593 i=76 Default JSON i=15578 i=76 Default JSON i=15580 i=76 Default JSON i=14273 i=76 Default JSON i=15581 i=76 Default JSON i=15582 i=76 Default JSON i=15597 i=76 Default JSON i=15598 i=76 Default JSON i=15605 i=76 Default JSON i=15609 i=76 Default JSON i=15480 i=76 Default JSON i=15611 i=76 Default JSON i=15616 i=76 Default JSON i=15617 i=76 Default JSON i=15618 i=76 Default JSON i=15502 i=76 Default JSON i=15510 i=76 Default JSON i=15520 i=76 Default JSON i=15621 i=76 Default JSON i=15622 i=76 Default JSON i=15623 i=76 Default JSON i=15628 i=76 Default JSON i=15629 i=76 Default JSON i=15630 i=76 Default JSON i=15631 i=76 Default JSON i=14744 i=76 Default JSON i=15635 i=76 Default JSON i=15530 i=76 Default JSON i=15645 i=76 Default JSON i=15652 i=76 Default JSON i=15653 i=76 Default JSON i=15657 i=76 Default JSON i=15664 i=76 Default JSON i=15665 i=76 Default JSON i=17467 i=76 Default JSON i=15532 i=76 Default JSON i=15007 i=76 Default JSON i=15667 i=76 Default JSON i=15669 i=76 Default JSON i=15670 i=76 Default JSON i=96 i=76 Default JSON i=97 i=76 Default JSON i=101 i=76 Default JSON i=99 i=76 Default JSON i=100 i=76 Default JSON i=296 i=76 Default JSON i=7594 i=76 Default JSON i=102 i=76 Default JSON i=12755 i=76 Default JSON i=12756 i=76 Default JSON i=8912 i=76 Default JSON i=308 i=76 Default JSON i=12189 i=76 Default JSON i=304 i=76 Default JSON i=312 i=76 Default JSON i=432 i=76 Default JSON i=12890 i=76 Default JSON i=12891 i=76 Default JSON i=344 i=76 Default JSON i=316 i=76 Default JSON i=319 i=76 Default JSON i=322 i=76 Default JSON i=325 i=76 Default JSON i=938 i=76 Default JSON i=376 i=76 Default JSON i=379 i=76 Default JSON i=382 i=76 Default JSON i=385 i=76 Default JSON i=537 i=76 Default JSON i=540 i=76 Default JSON i=331 i=76 Default JSON i=583 i=76 Default JSON i=586 i=76 Default JSON i=589 i=76 Default JSON i=592 i=76 Default JSON i=595 i=76 Default JSON i=598 i=76 Default JSON i=601 i=76 Default JSON i=659 i=76 Default JSON i=719 i=76 Default JSON i=725 i=76 Default JSON i=948 i=76 Default JSON i=920 i=76 Default JSON i=338 i=76 Default JSON i=853 i=76 Default JSON i=11943 i=76 Default JSON i=11944 i=76 Default JSON i=856 i=76 Default JSON i=859 i=76 Default JSON i=862 i=76 Default JSON i=865 i=76 Default JSON i=868 i=76 Default JSON i=871 i=76 Default JSON i=299 i=76 Default JSON i=874 i=76 Default JSON i=877 i=76 Default JSON i=897 i=76 Default JSON i=884 i=76 Default JSON i=887 i=76 Default JSON i=12171 i=76 Default JSON i=12172 i=76 Default JSON i=12079 i=76 Default JSON i=12080 i=76 Default JSON i=894 i=76 Default JSON i=15396 i=76 Default JSON i=891 i=76 python-opcua-0.98.9/schemas/Opc.Ua.Services.wsdl000066400000000000000000001157571357637245100214710ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/Opc.Ua.Types.bsd000066400000000000000000005412461357637245100206050ustar00rootroot00000000000000 An XML element encoded as a UTF-8 string. The possible encodings for a NodeId value. An identifier for a node in a UA server address space. An identifier for a node in a UA server address space qualified with a complete namespace string. A 32-bit status code value. A recursive structure containing diagnostic information associated with a status code. A string qualified with a namespace index. A string qualified with a namespace index. A value with an associated timestamp, and quality. A serialized object prefixed with its data type identifier. A union of several types. An image encoded in BMP format. An image encoded in GIF format. An image encoded in JPEG format. An image encoded in PNG format. An image encoded in PNG format. A mask of 32 bits that can be updated individually by using the top 32 bits as a mask. The type of identifier used in a node id. A mask specifying the class of the node. Specifies the attributes which belong to all nodes. Specifies the attributes which belong to object nodes. Specifies the attributes which belong to object type nodes. Specifies the attributes which belong to variable nodes. Specifies the attributes which belong to variable type nodes. Specifies the attributes which belong to reference type nodes. Specifies the attributes which belong to method nodes. Specifies a reference which belongs to a node. An argument for a method. A mapping between a value of an enumerated type and a name and description. This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask. This abstract DataType is the base DataType for all union DataTypes. A string normalized based on the rules in the unicode specification. An arbitraty numeric value. A period of time formatted as defined in ISO 8601-2000. A time formatted as defined in ISO 8601-2000. A date formatted as defined in ISO 8601-2000. A period of time measured in milliseconds. A date/time value specified in Universal Coordinated Time (UTC). An identifier for a user locale. A numeric identifier for an object. The types of applications. Describes an application and how to find it. The header passed with every server request. The header passed with every server response. The response returned by all services when there is a service level error. Finds the servers known to the discovery server. Finds the servers known to the discovery server. A certificate for an instance of an application. The type of security to use on a message. The possible user token types. Describes a user token that can be used with a server. The description of a endpoint that can be used to access a server. Gets the endpoints used by the server. Gets the endpoints used by the server. The information required to register a server with a discovery server. Registers a server with the discovery server. Registers a server with the discovery server. A base type for discovery configuration information. The discovery information needed for mDNS registration. Indicates whether a token if being created or renewed. The token that identifies a set of keys for an active secure channel. Creates a secure channel with a server. Creates a secure channel with a server. Closes a secure channel. Closes a secure channel. A software certificate with a digital signature. A unique identifier for a session used to authenticate requests. A digital signature. Creates a new session with the server. Creates a new session with the server. A base type for a user identity token. A token representing an anonymous user. A token representing a user identified by a user name and password. A token representing a user identified by an X509 certificate. A token representing a user identified by a WS-Security XML token. Activates a session with the server. Activates a session with the server. Closes a session with the server. Closes a session with the server. Cancels an outstanding request. Cancels an outstanding request. The bits used to specify default attributes for a new node. The base attributes for all nodes. The attributes for an object node. The attributes for a variable node. The attributes for a method node. The attributes for an object type node. The attributes for a variable type node. The attributes for a reference type node. The attributes for a data type node. The attributes for a view node. A request to add a node to the server address space. A result of an add node operation. Adds one or more nodes to the server address space. Adds one or more nodes to the server address space. A request to add a reference to the server address space. Adds one or more references to the server address space. Adds one or more references to the server address space. A request to delete a node to the server address space. Delete one or more nodes from the server address space. Delete one or more nodes from the server address space. A request to delete a node from the server address space. Delete one or more references from the server address space. Delete one or more references from the server address space. Define bits used to indicate which attributes are writable. The directions of the references to return. The view to browse. A request to browse the the references from a node. A bit mask which specifies what should be returned in a browse response. The description of a reference. An identifier for a suspended query or browse operation. The result of a browse operation. Browse the references for one or more nodes from the server address space. Browse the references for one or more nodes from the server address space. Continues one or more browse operations. Continues one or more browse operations. An element in a relative path. A relative path constructed from reference types and browse names. A request to translate a path into a node id. The target of the translated path. The result of a translate opearation. Translates one or more paths in the server address space. Translates one or more paths in the server address space. Registers one or more nodes for repeated use within a session. Registers one or more nodes for repeated use within a session. Unregisters one or more previously registered nodes. Unregisters one or more previously registered nodes. A monotonically increasing value. Specifies a range of array indexes. A time value specified as HH:MM:SS.SSS. A date value. python-opcua-0.98.9/schemas/Opc.Ua.Types.xsd000066400000000000000000007620371357637245100206360ustar00rootroot00000000000000 true true true The type of identifier used in a node id. A mask specifying the class of the node. Specifies the attributes which belong to all nodes. Specifies the attributes which belong to object nodes. Specifies the attributes which belong to object type nodes. Specifies the attributes which belong to variable nodes. Specifies the attributes which belong to variable type nodes. Specifies the attributes which belong to reference type nodes. Specifies the attributes which belong to method nodes. Specifies a reference which belongs to a node. An argument for a method. A mapping between a value of an enumerated type and a name and description. This abstract Structured DataType is the base DataType for all DataTypes representing a bit mask. This abstract DataType is the base DataType for all union DataTypes. The types of applications. Describes an application and how to find it. The header passed with every server request. The header passed with every server response. The response returned by all services when there is a service level error. Finds the servers known to the discovery server. Finds the servers known to the discovery server. The type of security to use on a message. The possible user token types. Describes a user token that can be used with a server. The description of a endpoint that can be used to access a server. Gets the endpoints used by the server. Gets the endpoints used by the server. The information required to register a server with a discovery server. Registers a server with the discovery server. Registers a server with the discovery server. A base type for discovery configuration information. The discovery information needed for mDNS registration. Indicates whether a token if being created or renewed. The token that identifies a set of keys for an active secure channel. Creates a secure channel with a server. Creates a secure channel with a server. Closes a secure channel. Closes a secure channel. A software certificate with a digital signature. A digital signature. Creates a new session with the server. Creates a new session with the server. A base type for a user identity token. A token representing an anonymous user. A token representing a user identified by a user name and password. A token representing a user identified by an X509 certificate. A token representing a user identified by a WS-Security XML token. Activates a session with the server. Activates a session with the server. Closes a session with the server. Closes a session with the server. Cancels an outstanding request. Cancels an outstanding request. The bits used to specify default attributes for a new node. The base attributes for all nodes. The attributes for an object node. The attributes for a variable node. The attributes for a method node. The attributes for an object type node. The attributes for a variable type node. The attributes for a reference type node. The attributes for a data type node. The attributes for a view node. A request to add a node to the server address space. A result of an add node operation. Adds one or more nodes to the server address space. Adds one or more nodes to the server address space. A request to add a reference to the server address space. Adds one or more references to the server address space. Adds one or more references to the server address space. A request to delete a node to the server address space. Delete one or more nodes from the server address space. Delete one or more nodes from the server address space. A request to delete a node from the server address space. Delete one or more references from the server address space. Delete one or more references from the server address space. Define bits used to indicate which attributes are writable. The directions of the references to return. The view to browse. A request to browse the the references from a node. A bit mask which specifies what should be returned in a browse response. The description of a reference. The result of a browse operation. Browse the references for one or more nodes from the server address space. Browse the references for one or more nodes from the server address space. Continues one or more browse operations. Continues one or more browse operations. An element in a relative path. A relative path constructed from reference types and browse names. A request to translate a path into a node id. The target of the translated path. The result of a translate opearation. Translates one or more paths in the server address space. Translates one or more paths in the server address space. Registers one or more nodes for repeated use within a session. Registers one or more nodes for repeated use within a session. Unregisters one or more previously registered nodes. Unregisters one or more previously registered nodes. python-opcua-0.98.9/schemas/SecuredApplication.xsd000066400000000000000000000146231357637245100222130ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/StatusCode.csv000066400000000000000000000542601357637245100205110ustar00rootroot00000000000000BadUnexpectedError,0x80010000,An unexpected error occurred. BadInternalError,0x80020000,An internal error occurred as a result of a programming or configuration error. BadOutOfMemory,0x80030000,Not enough memory to complete the operation. BadResourceUnavailable,0x80040000,An operating system resource is not available. BadCommunicationError,0x80050000,A low level communication error occurred. BadEncodingError,0x80060000,Encoding halted because of invalid data in the objects being serialized. BadDecodingError,0x80070000,Decoding halted because of invalid data in the stream. BadEncodingLimitsExceeded,0x80080000,The message encoding/decoding limits imposed by the stack have been exceeded. BadRequestTooLarge,0x80B80000,The request message size exceeds limits set by the server. BadResponseTooLarge,0x80B90000,The response message size exceeds limits set by the client. BadUnknownResponse,0x80090000,An unrecognized response was received from the server. BadTimeout,0x800A0000,The operation timed out. BadServiceUnsupported,0x800B0000,The server does not support the requested service. BadShutdown,0x800C0000,The operation was cancelled because the application is shutting down. BadServerNotConnected,0x800D0000,The operation could not complete because the client is not connected to the server. BadServerHalted,0x800E0000,The server has stopped and cannot process any requests. BadNothingToDo,0x800F0000,There was nothing to do because the client passed a list of operations with no elements. BadTooManyOperations,0x80100000,The request could not be processed because it specified too many operations. BadTooManyMonitoredItems,0x80DB0000,The request could not be processed because there are too many monitored items in the subscription. BadDataTypeIdUnknown,0x80110000,The extension object cannot be (de)serialized because the data type id is not recognized. BadCertificateInvalid,0x80120000,The certificate provided as a parameter is not valid. BadSecurityChecksFailed,0x80130000,An error occurred verifying security. BadCertificatePolicyCheckFailed,0x81140000,The certificate does not meet the requirements of the security policy. BadCertificateTimeInvalid,0x80140000,The certificate has expired or is not yet valid. BadCertificateIssuerTimeInvalid,0x80150000,An issuer certificate has expired or is not yet valid. BadCertificateHostNameInvalid,0x80160000,The HostName used to connect to a server does not match a HostName in the certificate. BadCertificateUriInvalid,0x80170000,The URI specified in the ApplicationDescription does not match the URI in the certificate. BadCertificateUseNotAllowed,0x80180000,The certificate may not be used for the requested operation. BadCertificateIssuerUseNotAllowed,0x80190000,The issuer certificate may not be used for the requested operation. BadCertificateUntrusted,0x801A0000,The certificate is not trusted. BadCertificateRevocationUnknown,0x801B0000,It was not possible to determine if the certificate has been revoked. BadCertificateIssuerRevocationUnknown,0x801C0000,It was not possible to determine if the issuer certificate has been revoked. BadCertificateRevoked,0x801D0000,The certificate has been revoked. BadCertificateIssuerRevoked,0x801E0000,The issuer certificate has been revoked. BadCertificateChainIncomplete,0x810D0000,The certificate chain is incomplete. BadUserAccessDenied,0x801F0000,User does not have permission to perform the requested operation. BadIdentityTokenInvalid,0x80200000,The user identity token is not valid. BadIdentityTokenRejected,0x80210000,The user identity token is valid but the server has rejected it. BadSecureChannelIdInvalid,0x80220000,The specified secure channel is no longer valid. BadInvalidTimestamp,0x80230000,The timestamp is outside the range allowed by the server. BadNonceInvalid,0x80240000,The nonce does appear to be not a random value or it is not the correct length. BadSessionIdInvalid,0x80250000,The session id is not valid. BadSessionClosed,0x80260000,The session was closed by the client. BadSessionNotActivated,0x80270000,The session cannot be used because ActivateSession has not been called. BadSubscriptionIdInvalid,0x80280000,The subscription id is not valid. BadRequestHeaderInvalid,0x802A0000,The header for the request is missing or invalid. BadTimestampsToReturnInvalid,0x802B0000,The timestamps to return parameter is invalid. BadRequestCancelledByClient,0x802C0000,The request was cancelled by the client. BadTooManyArguments,0x80E50000,Too many arguments were provided. BadLicenseExpired,0x810E0000,The server requires a license to operate in general or to perform a service or operation, but existing license is expired. BadLicenseLimitsExceeded,0x810F0000,The server has limits on number of allowed operations / objects, based on installed licenses, and these limits where exceeded. BadLicenseNotAvailable,0x81100000,The server does not have a license which is required to operate in general or to perform a service or operation. GoodSubscriptionTransferred,0x002D0000,The subscription was transferred to another session. GoodCompletesAsynchronously,0x002E0000,The processing will complete asynchronously. GoodOverload,0x002F0000,Sampling has slowed down due to resource limitations. GoodClamped,0x00300000,The value written was accepted but was clamped. BadNoCommunication,0x80310000,Communication with the data source is defined, but not established, and there is no last known value available. BadWaitingForInitialData,0x80320000,Waiting for the server to obtain values from the underlying data source. BadNodeIdInvalid,0x80330000,The syntax of the node id is not valid. BadNodeIdUnknown,0x80340000,The node id refers to a node that does not exist in the server address space. BadAttributeIdInvalid,0x80350000,The attribute is not supported for the specified Node. BadIndexRangeInvalid,0x80360000,The syntax of the index range parameter is invalid. BadIndexRangeNoData,0x80370000,No data exists within the range of indexes specified. BadDataEncodingInvalid,0x80380000,The data encoding is invalid. BadDataEncodingUnsupported,0x80390000,The server does not support the requested data encoding for the node. BadNotReadable,0x803A0000,The access level does not allow reading or subscribing to the Node. BadNotWritable,0x803B0000,The access level does not allow writing to the Node. BadOutOfRange,0x803C0000,The value was out of range. BadNotSupported,0x803D0000,The requested operation is not supported. BadNotFound,0x803E0000,A requested item was not found or a search operation ended without success. BadObjectDeleted,0x803F0000,The object cannot be used because it has been deleted. BadNotImplemented,0x80400000,Requested operation is not implemented. BadMonitoringModeInvalid,0x80410000,The monitoring mode is invalid. BadMonitoredItemIdInvalid,0x80420000,The monitoring item id does not refer to a valid monitored item. BadMonitoredItemFilterInvalid,0x80430000,The monitored item filter parameter is not valid. BadMonitoredItemFilterUnsupported,0x80440000,The server does not support the requested monitored item filter. BadFilterNotAllowed,0x80450000,A monitoring filter cannot be used in combination with the attribute specified. BadStructureMissing,0x80460000,A mandatory structured parameter was missing or null. BadEventFilterInvalid,0x80470000,The event filter is not valid. BadContentFilterInvalid,0x80480000,The content filter is not valid. BadFilterOperatorInvalid,0x80C10000,An unregognized operator was provided in a filter. BadFilterOperatorUnsupported,0x80C20000,A valid operator was provided, but the server does not provide support for this filter operator. BadFilterOperandCountMismatch,0x80C30000,The number of operands provided for the filter operator was less then expected for the operand provided. BadFilterOperandInvalid,0x80490000,The operand used in a content filter is not valid. BadFilterElementInvalid,0x80C40000,The referenced element is not a valid element in the content filter. BadFilterLiteralInvalid,0x80C50000,The referenced literal is not a valid value. BadContinuationPointInvalid,0x804A0000,The continuation point provide is longer valid. BadNoContinuationPoints,0x804B0000,The operation could not be processed because all continuation points have been allocated. BadReferenceTypeIdInvalid,0x804C0000,The operation could not be processed because all continuation points have been allocated. BadBrowseDirectionInvalid,0x804D0000,The browse direction is not valid. BadNodeNotInView,0x804E0000,The node is not part of the view. BadNumericOverflow,0x81120000,The number was not accepted because of a numeric overflow. BadServerUriInvalid,0x804F0000,The ServerUri is not a valid URI. BadServerNameMissing,0x80500000,No ServerName was specified. BadDiscoveryUrlMissing,0x80510000,No DiscoveryUrl was specified. BadSempahoreFileMissing,0x80520000,The semaphore file specified by the client is not valid. BadRequestTypeInvalid,0x80530000,The security token request type is not valid. BadSecurityModeRejected,0x80540000,The security mode does not meet the requirements set by the server. BadSecurityPolicyRejected,0x80550000,The security policy does not meet the requirements set by the server. BadTooManySessions,0x80560000,The server has reached its maximum number of sessions. BadUserSignatureInvalid,0x80570000,The user token signature is missing or invalid. BadApplicationSignatureInvalid,0x80580000,The signature generated with the client certificate is missing or invalid. BadNoValidCertificates,0x80590000,The client did not provide at least one software certificate that is valid and meets the profile requirements for the server. BadIdentityChangeNotSupported,0x80C60000,The server does not support changing the user identity assigned to the session. BadRequestCancelledByRequest,0x805A0000,The request was cancelled by the client with the Cancel service. BadParentNodeIdInvalid,0x805B0000,The parent node id does not to refer to a valid node. BadReferenceNotAllowed,0x805C0000,The reference could not be created because it violates constraints imposed by the data model. BadNodeIdRejected,0x805D0000,The requested node id was reject because it was either invalid or server does not allow node ids to be specified by the client. BadNodeIdExists,0x805E0000,The requested node id is already used by another node. BadNodeClassInvalid,0x805F0000,The node class is not valid. BadBrowseNameInvalid,0x80600000,The browse name is invalid. BadBrowseNameDuplicated,0x80610000,The browse name is not unique among nodes that share the same relationship with the parent. BadNodeAttributesInvalid,0x80620000,The node attributes are not valid for the node class. BadTypeDefinitionInvalid,0x80630000,The type definition node id does not reference an appropriate type node. BadSourceNodeIdInvalid,0x80640000,The source node id does not reference a valid node. BadTargetNodeIdInvalid,0x80650000,The target node id does not reference a valid node. BadDuplicateReferenceNotAllowed,0x80660000,The reference type between the nodes is already defined. BadInvalidSelfReference,0x80670000,The server does not allow this type of self reference on this node. BadReferenceLocalOnly,0x80680000,The reference type is not valid for a reference to a remote server. BadNoDeleteRights,0x80690000,The server will not allow the node to be deleted. UncertainReferenceNotDeleted,0x40BC0000,The server was not able to delete all target references. BadServerIndexInvalid,0x806A0000,The server index is not valid. BadViewIdUnknown,0x806B0000,The view id does not refer to a valid view node. BadViewTimestampInvalid,0x80C90000,The view timestamp is not available or not supported. BadViewParameterMismatch,0x80CA0000,The view parameters are not consistent with each other. BadViewVersionInvalid,0x80CB0000,The view version is not available or not supported. UncertainNotAllNodesAvailable,0x40C00000,The list of references may not be complete because the underlying system is not available. GoodResultsMayBeIncomplete,0x00BA0000,The server should have followed a reference to a node in a remote server but did not. The result set may be incomplete. BadNotTypeDefinition,0x80C80000,The provided Nodeid was not a type definition nodeid. UncertainReferenceOutOfServer,0x406C0000,One of the references to follow in the relative path references to a node in the address space in another server. BadTooManyMatches,0x806D0000,The requested operation has too many matches to return. BadQueryTooComplex,0x806E0000,The requested operation requires too many resources in the server. BadNoMatch,0x806F0000,The requested operation has no match to return. BadMaxAgeInvalid,0x80700000,The max age parameter is invalid. BadSecurityModeInsufficient,0x80E60000,The operation is not permitted over the current secure channel. BadHistoryOperationInvalid,0x80710000,The history details parameter is not valid. BadHistoryOperationUnsupported,0x80720000,The server does not support the requested operation. BadInvalidTimestampArgument,0x80BD0000,The defined timestamp to return was invalid. BadWriteNotSupported,0x80730000,The server does not support writing the combination of value, status and timestamps provided. BadTypeMismatch,0x80740000,The value supplied for the attribute is not of the same type as the attribute's value. BadMethodInvalid,0x80750000,The method id does not refer to a method for the specified object. BadArgumentsMissing,0x80760000,The client did not specify all of the input arguments for the method. BadNotExecutable,0x81110000,The executable attribute does not allow the execution of the method. BadTooManySubscriptions,0x80770000,The server has reached its maximum number of subscriptions. BadTooManyPublishRequests,0x80780000,The server has reached the maximum number of queued publish requests. BadNoSubscription,0x80790000,There is no subscription available for this session. BadSequenceNumberUnknown,0x807A0000,The sequence number is unknown to the server. BadMessageNotAvailable,0x807B0000,The requested notification message is no longer available. BadInsufficientClientProfile,0x807C0000,The client of the current session does not support one or more Profiles that are necessary for the subscription. BadStateNotActive,0x80BF0000,The sub-state machine is not currently active. BadAlreadyExists,0x81150000,An equivalent rule already exists. BadTcpServerTooBusy,0x807D0000,The server cannot process the request because it is too busy. BadTcpMessageTypeInvalid,0x807E0000,The type of the message specified in the header invalid. BadTcpSecureChannelUnknown,0x807F0000,The SecureChannelId and/or TokenId are not currently in use. BadTcpMessageTooLarge,0x80800000,The size of the message specified in the header is too large. BadTcpNotEnoughResources,0x80810000,There are not enough resources to process the request. BadTcpInternalError,0x80820000,An internal error occurred. BadTcpEndpointUrlInvalid,0x80830000,The server does not recognize the QueryString specified. BadRequestInterrupted,0x80840000,The request could not be sent because of a network interruption. BadRequestTimeout,0x80850000,Timeout occurred while processing the request. BadSecureChannelClosed,0x80860000,The secure channel has been closed. BadSecureChannelTokenUnknown,0x80870000,The token has expired or is not recognized. BadSequenceNumberInvalid,0x80880000,The sequence number is not valid. BadProtocolVersionUnsupported,0x80BE0000,The applications do not have compatible protocol versions. BadConfigurationError,0x80890000,There is a problem with the configuration that affects the usefulness of the value. BadNotConnected,0x808A0000,The variable should receive its value from another variable, but has never been configured to do so. BadDeviceFailure,0x808B0000,There has been a failure in the device/data source that generates the value that has affected the value. BadSensorFailure,0x808C0000,There has been a failure in the sensor from which the value is derived by the device/data source. BadOutOfService,0x808D0000,The source of the data is not operational. BadDeadbandFilterInvalid,0x808E0000,The deadband filter is not valid. UncertainNoCommunicationLastUsableValue,0x408F0000,Communication to the data source has failed. The variable value is the last value that had a good quality. UncertainLastUsableValue,0x40900000,Whatever was updating this value has stopped doing so. UncertainSubstituteValue,0x40910000,The value is an operational value that was manually overwritten. UncertainInitialValue,0x40920000,The value is an initial value for a variable that normally receives its value from another variable. UncertainSensorNotAccurate,0x40930000,The value is at one of the sensor limits. UncertainEngineeringUnitsExceeded,0x40940000,The value is outside of the range of values defined for this parameter. UncertainSubNormal,0x40950000,The value is derived from multiple sources and has less than the required number of Good sources. GoodLocalOverride,0x00960000,The value has been overridden. BadRefreshInProgress,0x80970000,This Condition refresh failed, a Condition refresh operation is already in progress. BadConditionAlreadyDisabled,0x80980000,This condition has already been disabled. BadConditionAlreadyEnabled,0x80CC0000,This condition has already been enabled. BadConditionDisabled,0x80990000,Property not available, this condition is disabled. BadEventIdUnknown,0x809A0000,The specified event id is not recognized. BadEventNotAcknowledgeable,0x80BB0000,The event cannot be acknowledged. BadDialogNotActive,0x80CD0000,The dialog condition is not active. BadDialogResponseInvalid,0x80CE0000,The response is not valid for the dialog. BadConditionBranchAlreadyAcked,0x80CF0000,The condition branch has already been acknowledged. BadConditionBranchAlreadyConfirmed,0x80D00000,The condition branch has already been confirmed. BadConditionAlreadyShelved,0x80D10000,The condition has already been shelved. BadConditionNotShelved,0x80D20000,The condition is not currently shelved. BadShelvingTimeOutOfRange,0x80D30000,The shelving time not within an acceptable range. BadNoData,0x809B0000,No data exists for the requested time range or event filter. BadBoundNotFound,0x80D70000,No data found to provide upper or lower bound value. BadBoundNotSupported,0x80D80000,The server cannot retrieve a bound for the variable. BadDataLost,0x809D0000,Data is missing due to collection started/stopped/lost. BadDataUnavailable,0x809E0000,Expected data is unavailable for the requested time range due to an un-mounted volume, an off-line archive or tape, or similar reason for temporary unavailability. BadEntryExists,0x809F0000,The data or event was not successfully inserted because a matching entry exists. BadNoEntryExists,0x80A00000,The data or event was not successfully updated because no matching entry exists. BadTimestampNotSupported,0x80A10000,The client requested history using a timestamp format the server does not support (i.e requested ServerTimestamp when server only supports SourceTimestamp). GoodEntryInserted,0x00A20000,The data or event was successfully inserted into the historical database. GoodEntryReplaced,0x00A30000,The data or event field was successfully replaced in the historical database. UncertainDataSubNormal,0x40A40000,The value is derived from multiple values and has less than the required number of Good values. GoodNoData,0x00A50000,No data exists for the requested time range or event filter. GoodMoreData,0x00A60000,The data or event field was successfully replaced in the historical database. BadAggregateListMismatch,0x80D40000,The requested number of Aggregates does not match the requested number of NodeIds. BadAggregateNotSupported,0x80D50000,The requested Aggregate is not support by the server. BadAggregateInvalidInputs,0x80D60000,The aggregate value could not be derived due to invalid data inputs. BadAggregateConfigurationRejected,0x80DA0000,The aggregate configuration is not valid for specified node. GoodDataIgnored,0x00D90000,The request pecifies fields which are not valid for the EventType or cannot be saved by the historian. BadRequestNotAllowed,0x80E40000,The request was rejected by the server because it did not meet the criteria set by the server. BadRequestNotComplete,0x81130000,The request has not been processed by the server yet. GoodEdited,0x00DC0000,The value does not come from the real source and has been edited by the server. GoodPostActionFailed,0x00DD0000,There was an error in execution of these post-actions. UncertainDominantValueChanged,0x40DE0000,The related EngineeringUnit has been changed but the Variable Value is still provided based on the previous unit. GoodDependentValueChanged,0x00E00000,A dependent value has been changed but the change has not been applied to the device. BadDominantValueChanged,0x80E10000,The related EngineeringUnit has been changed but this change has not been applied to the device. The Variable Value is still dependent on the previous unit but its status is currently Bad. UncertainDependentValueChanged,0x40E20000,A dependent value has been changed but the change has not been applied to the device. The quality of the dominant variable is uncertain. BadDependentValueChanged,0x80E30000,A dependent value has been changed but the change has not been applied to the device. The quality of the dominant variable is Bad. GoodCommunicationEvent,0x00A70000,The communication layer has raised an event. GoodShutdownEvent,0x00A80000,The system is shutting down. GoodCallAgain,0x00A90000,The operation is not finished and needs to be called again. GoodNonCriticalTimeout,0x00AA0000,A non-critical timeout occurred. BadInvalidArgument,0x80AB0000,One or more arguments are invalid. BadConnectionRejected,0x80AC0000,Could not establish a network connection to remote server. BadDisconnect,0x80AD0000,The server has disconnected from the client. BadConnectionClosed,0x80AE0000,The network connection has been closed. BadInvalidState,0x80AF0000,The operation cannot be completed because the object is closed, uninitialized or in some other invalid state. BadEndOfStream,0x80B00000,Cannot move beyond end of the stream. BadNoDataAvailable,0x80B10000,No data is currently available for reading from a non-blocking stream. BadWaitingForResponse,0x80B20000,The asynchronous operation is waiting for a response. BadOperationAbandoned,0x80B30000,The asynchronous operation was abandoned by the caller. BadExpectedStreamToBlock,0x80B40000,The stream did not return all data requested (possibly because it is a non-blocking stream). BadWouldBlock,0x80B50000,Non blocking behaviour is required and the operation would block. BadSyntaxError,0x80B60000,A value had an invalid syntax. BadMaxConnectionsReached,0x80B70000,The operation could not be finished because all available connections are in use.python-opcua-0.98.9/schemas/StatusCodes_add.csv000066400000000000000000000002461357637245100214770ustar00rootroot00000000000000Good,0,The operation completed successfully. Uncertain,0x40000000,The operation completed however its outputs may not be usable. Bad,0x80000000,The operation failed. python-opcua-0.98.9/schemas/UANodeSet.xsd000066400000000000000000000475001357637245100202240ustar00rootroot00000000000000 python-opcua-0.98.9/schemas/UAVariant.xsd000066400000000000000000000000001357637245100202470ustar00rootroot00000000000000python-opcua-0.98.9/schemas/download.py000077500000000000000000000050461357637245100201000ustar00rootroot00000000000000#! /usr/bin/env python from __future__ import print_function # https://opcfoundation.org/UA/schemas/OPC%20UA%20Schema%20Files%20Readme.xls resources = [ 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.Types.xsd', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.Services.wsdl', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.Endpoints.wsdl', 'https://opcfoundation.org/UA/schemas/DI/1.0/Opc.Ua.Di.Types.xsd', 'https://opcfoundation.org/UA/schemas/ADI/1.1/Opc.Ua.Adi.Types.xsd', 'https://opcfoundation.org/UA/schemas/1.04/SecuredApplication.xsd', 'https://opcfoundation.org/UA/schemas/1.04/UANodeSet.xsd', 'https://opcfoundation.org/UA/schemas/1.04/UAVariant.xsd', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part3.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part4.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part5.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part8.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part9.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part10.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part11.xml', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.NodeSet2.Part13.xml', 'https://opcfoundation.org/UA/schemas/DI/1.0/Opc.Ua.Di.NodeSet2.xml', 'https://opcfoundation.org/UA/schemas/ADI/1.1/Opc.Ua.Adi.NodeSet2.xml', 'https://opcfoundation.org/UA/schemas/1.04/OPCBinarySchema.xsd', 'https://opcfoundation.org/UA/schemas/1.04/Opc.Ua.Types.bsd', 'https://opcfoundation.org/UA/schemas/DI/1.0/Opc.Ua.Di.Types.bsd', 'https://opcfoundation.org/UA/schemas/ADI/1.1/Opc.Ua.Adi.Types.bsd', 'https://opcfoundation.org/UA/schemas/1.04/AttributeIds.csv', 'https://opcfoundation.org/UA/schemas/1.04/StatusCode.csv', 'https://opcfoundation.org/UA/schemas/1.04/NodeIds.csv', ] import os try: from urllib.request import urlopen from urllib.parse import urlparse from urllib.request import build_opener except ImportError: from urlparse import urlparse from urllib import urlopen from urllib2 import build_opener opener = build_opener() opener.addheaders = [('User-agent', 'Mozilla/5.0')] for url in resources: fname = os.path.basename(url) print('downloading', fname, '... ', end='') try: open(fname, 'wb+').write(opener.open(url).read()) print('OK') except Exception as e: print('FAILED ({0})'.format(e)) python-opcua-0.98.9/schemas/generate_address_space.py000066400000000000000000000344771357637245100227520ustar00rootroot00000000000000""" Generate address space c++ code from xml file specification xmlparser.py is a requirement. it is in opcua folder but to avoid importing all code, developer can link xmlparser.py in current directory """ import sys import logging # sys.path.insert(0, "..") # load local freeopcua implementation #from opcua import xmlparser import xmlparser def _to_val(objs, attr, val): from opcua import ua cls = getattr(ua, objs[0]) for o in objs[1:]: cls = getattr(ua, _get_uatype_name(cls, o)) if cls == ua.NodeId: return "NodeId.from_string('val')" return ua_type_to_python(val, _get_uatype_name(cls, attr)) def _get_uatype_name(cls, attname): for name, uat in cls.ua_types: if name == attname: return uat raise Exception("Could not find attribute {} in obj {}".format(attname, cls)) def ua_type_to_python(val, uatype): if uatype in ("String"): return "'{0}'".format(val) elif uatype in ("Bytes", "Bytes", "ByteString", "ByteArray"): return "b'{0}'".format(val) else: return val def bname_code(string): if ":" in string: idx, name = string.split(":", 1) else: idx = 0 name = string return f"QualifiedName('{name}', {idx})" def nodeid_code(string): l = string.split(";") identifier = None namespace = 0 ntype = None srv = None nsu = None for el in l: if not el: continue k, v = el.split("=", 1) k = k.strip() v = v.strip() if k == "ns": namespace = v elif k == "i": ntype = "NumericNodeId" identifier = v elif k == "s": ntype = "StringNodeId" identifier = f"'{v}'" elif k == "g": ntype = "GuidNodeId" identifier = f"b'{v}'" elif k == "b": ntype = "ByteStringNodeId" identifier = f"b'{v}'" elif k == "srv": srv = v elif k == "nsu": nsu = v if identifier is None: raise Exception("Could not find identifier in string: " + string) return f"{ntype}({identifier}, {namespace})" class CodeGenerator(object): def __init__(self, input_path, output_path): self.input_path = input_path self.output_path = output_path self.output_file = None self.part = self.input_path.split(".")[-2] self.parser = None def run(self): sys.stderr.write("Generating Python code {0} for XML file {1}".format(self.output_path, self.input_path) + "\n") self.output_file = open(self.output_path, "w") self.make_header() self.parser = xmlparser.XMLParser(self.input_path) for node in self.parser.get_node_datas(): if node.nodetype == 'UAObject': self.make_object_code(node) elif node.nodetype == 'UAObjectType': self.make_object_type_code(node) elif node.nodetype == 'UAVariable': self.make_variable_code(node) elif node.nodetype == 'UAVariableType': self.make_variable_type_code(node) elif node.nodetype == 'UAReferenceType': self.make_reference_code(node) elif node.nodetype == 'UADataType': self.make_datatype_code(node) elif node.nodetype == 'UAMethod': self.make_method_code(node) else: sys.stderr.write("Not implemented node type: " + node.nodetype + "\n") self.output_file.close() def writecode(self, *args): self.output_file.write(" ".join(args) + "\n") def make_header(self, ): self.writecode(''' # -*- coding: utf-8 -*- """ DO NOT EDIT THIS FILE! It is automatically generated from opcfoundation.org schemas. """ from opcua import ua from opcua.ua import NodeId, QualifiedName, NumericNodeId, StringNodeId, GuidNodeId from opcua.ua import NodeClass, LocalizedText def create_standard_address_space_{0!s}(server): '''.format((self.part))) def make_node_code(self, obj, indent): self.writecode(indent, 'node = ua.AddNodesItem()') self.writecode(indent, 'node.RequestedNewNodeId = {}'.format(nodeid_code(obj.nodeid))) self.writecode(indent, 'node.BrowseName = {}'.format(bname_code(obj.browsename))) self.writecode(indent, 'node.NodeClass = NodeClass.{0}'.format(obj.nodetype[2:])) if obj.parent and obj.parentlink: self.writecode(indent, 'node.ParentNodeId = {}'.format(nodeid_code(obj.parent))) self.writecode(indent, 'node.ReferenceTypeId = {0}'.format(self.to_ref_type(obj.parentlink))) if obj.typedef: self.writecode(indent, 'node.TypeDefinition = {}'.format(nodeid_code(obj.typedef))) def to_data_type(self, nodeid): if not nodeid: return "ua.NodeId(ua.ObjectIds.String)" if "=" in nodeid: return nodeid_code(nodeid) else: return 'ua.NodeId(ua.ObjectIds.{0})'.format(nodeid) def to_ref_type(self, nodeid): if not "=" in nodeid: nodeid = self.parser.get_aliases()[nodeid] return nodeid_code(nodeid) def make_object_code(self, obj): indent = " " self.writecode(indent) self.make_node_code(obj, indent) self.writecode(indent, 'attrs = ua.ObjectAttributes()') if obj.desc: self.writecode(indent, 'attrs.Description = LocalizedText("{0}")'.format(obj.desc)) self.writecode(indent, 'attrs.DisplayName = LocalizedText("{0}")'.format(obj.displayname)) self.writecode(indent, 'attrs.EventNotifier = {0}'.format(obj.eventnotifier)) self.writecode(indent, 'node.NodeAttributes = attrs') self.writecode(indent, 'server.add_nodes([node])') self.make_refs_code(obj, indent) def make_object_type_code(self, obj): indent = " " self.writecode(indent) self.make_node_code(obj, indent) self.writecode(indent, 'attrs = ua.ObjectTypeAttributes()') if obj.desc: self.writecode(indent, 'attrs.Description = LocalizedText("{0}")'.format(obj.desc)) self.writecode(indent, 'attrs.DisplayName = LocalizedText("{0}")'.format(obj.displayname)) self.writecode(indent, 'attrs.IsAbstract = {0}'.format(obj.abstract)) self.writecode(indent, 'node.NodeAttributes = attrs') self.writecode(indent, 'server.add_nodes([node])') self.make_refs_code(obj, indent) def make_common_variable_code(self, indent, obj): if obj.desc: self.writecode(indent, 'attrs.Description = LocalizedText("{0}")'.format(obj.desc)) self.writecode(indent, 'attrs.DisplayName = LocalizedText("{0}")'.format(obj.displayname)) self.writecode(indent, 'attrs.DataType = {0}'.format(self.to_data_type(obj.datatype))) if obj.value is not None: if obj.valuetype == "ListOfExtensionObject": self.writecode(indent, 'value = []') for ext in obj.value: self.make_ext_obj_code(indent, ext) self.writecode(indent, 'value.append(extobj)') self.writecode(indent, 'attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject)') elif obj.valuetype == "ExtensionObject": self.make_ext_obj_code(indent, obj.value) self.writecode(indent, 'value = extobj') self.writecode(indent, 'attrs.Value = ua.Variant(value, ua.VariantType.ExtensionObject)') elif obj.valuetype == "ListOfLocalizedText": value = ['LocalizedText({0})'.format(repr(text)) for text in obj.value] self.writecode(indent, 'attrs.Value = [{}]'.format(','.join(value))) elif obj.valuetype == "LocalizedText": self.writecode(indent, 'attrs.Value = ua.Variant(LocalizedText("{0}"), ua.VariantType.LocalizedText)'.format(obj.value[1][1])) else: if obj.valuetype.startswith("ListOf"): obj.valuetype = obj.valuetype[6:] self.writecode(indent, 'attrs.Value = ua.Variant({0}, ua.VariantType.{1})'.format(repr(obj.value), obj.valuetype)) if obj.rank: self.writecode(indent, 'attrs.ValueRank = {0}'.format(obj.rank)) if obj.accesslevel: self.writecode(indent, 'attrs.AccessLevel = {0}'.format(obj.accesslevel)) if obj.useraccesslevel: self.writecode(indent, 'attrs.UserAccessLevel = {0}'.format(obj.useraccesslevel)) if obj.dimensions: self.writecode(indent, 'attrs.ArrayDimensions = {0}'.format(obj.dimensions)) def make_ext_obj_code(self, indent, extobj): self.writecode(indent, 'extobj = ua.{0}()'.format(extobj.objname)) for name, val in extobj.body: for k, v in val: if type(v) is str: val = _to_val([extobj.objname], k, v) self.writecode(indent, 'extobj.{0} = {1}'.format(k, val)) else: if k == "DataType": #hack for strange nodeid xml format self.writecode(indent, 'extobj.{0} = {1}'.format(k, nodeid_code(v[0][1]))) continue for k2, v2 in v: val2 = _to_val([extobj.objname, k], k2, v2) self.writecode(indent, 'extobj.{0}.{1} = {2}'.format(k, k2, val2)) def make_variable_code(self, obj): indent = " " self.writecode(indent) self.make_node_code(obj, indent) self.writecode(indent, 'attrs = ua.VariableAttributes()') if obj.minsample: self.writecode(indent, 'attrs.MinimumSamplingInterval = {0}'.format(obj.minsample)) self.make_common_variable_code(indent, obj) self.writecode(indent, 'node.NodeAttributes = attrs') self.writecode(indent, 'server.add_nodes([node])') self.make_refs_code(obj, indent) def make_variable_type_code(self, obj): indent = " " self.writecode(indent) self.make_node_code(obj, indent) self.writecode(indent, 'attrs = ua.VariableTypeAttributes()') if obj.desc: self.writecode(indent, 'attrs.Description = LocalizedText("{0}")'.format(obj.desc)) self.writecode(indent, 'attrs.DisplayName = LocalizedText("{0}")'.format(obj.displayname)) if obj.abstract: self.writecode(indent, 'attrs.IsAbstract = {0}'.format(obj.abstract)) self.make_common_variable_code(indent, obj) self.writecode(indent, 'node.NodeAttributes = attrs') self.writecode(indent, 'server.add_nodes([node])') self.make_refs_code(obj, indent) def make_method_code(self, obj): indent = " " self.writecode(indent) self.make_node_code(obj, indent) self.writecode(indent, 'attrs = ua.MethodAttributes()') if obj.desc: self.writecode(indent, 'attrs.Description = LocalizedText("{0}")'.format(obj.desc)) self.writecode(indent, 'attrs.DisplayName = LocalizedText("{0}")'.format(obj.displayname)) self.writecode(indent, 'node.NodeAttributes = attrs') self.writecode(indent, 'server.add_nodes([node])') self.make_refs_code(obj, indent) def make_reference_code(self, obj): indent = " " self.writecode(indent) self.make_node_code(obj, indent) self.writecode(indent, 'attrs = ua.ReferenceTypeAttributes()') if obj.desc: self.writecode(indent, 'attrs.Description = LocalizedText("{0}")'.format(obj.desc)) self.writecode(indent, 'attrs.DisplayName = LocalizedText("{0}")'.format(obj.displayname)) if obj. inversename: self.writecode(indent, 'attrs.InverseName = LocalizedText("{0}")'.format(obj.inversename)) if obj.abstract: self.writecode(indent, 'attrs.IsAbstract = {0}'.format(obj.abstract)) if obj.symmetric: self.writecode(indent, 'attrs.Symmetric = {0}'.format(obj.symmetric)) self.writecode(indent, 'node.NodeAttributes = attrs') self.writecode(indent, 'server.add_nodes([node])') self.make_refs_code(obj, indent) def make_datatype_code(self, obj): indent = " " self.writecode(indent) self.make_node_code(obj, indent) self.writecode(indent, 'attrs = ua.DataTypeAttributes()') if obj.desc: self.writecode(indent, u'attrs.Description = LocalizedText("{0}")'.format(obj.desc)) self.writecode(indent, 'attrs.DisplayName = LocalizedText("{0}")'.format(obj.displayname)) if obj.abstract: self.writecode(indent, 'attrs.IsAbstract = {0}'.format(obj.abstract)) self.writecode(indent, 'node.NodeAttributes = attrs') self.writecode(indent, 'server.add_nodes([node])') self.make_refs_code(obj, indent) def make_refs_code(self, obj, indent): if not obj.refs: return self.writecode(indent, "refs = []") for ref in obj.refs: self.writecode(indent, 'ref = ua.AddReferencesItem()') self.writecode(indent, 'ref.IsForward = {0}'.format(ref.forward)) self.writecode(indent, 'ref.ReferenceTypeId = {0}'.format(self.to_ref_type(ref.reftype))) self.writecode(indent, 'ref.SourceNodeId = {0}'.format(nodeid_code(obj.nodeid))) self.writecode(indent, 'ref.TargetNodeClass = NodeClass.DataType') self.writecode(indent, 'ref.TargetNodeId = {0}'.format(nodeid_code(ref.target))) self.writecode(indent, "refs.append(ref)") self.writecode(indent, 'server.add_references(refs)') def save_aspace_to_disk(): import os.path path = os.path.join("..", "opcua", "binary_address_space.pickle") print("Savind standard address space to:", path) sys.path.append("..") from opcua.server.standard_address_space import standard_address_space from opcua.server.address_space import NodeManagementService, AddressSpace aspace = AddressSpace() standard_address_space.fill_address_space(NodeManagementService(aspace)) aspace.dump(path) if __name__ == "__main__": logging.basicConfig(level=logging.WARN) for i in (3, 4, 5, 8, 9, 10, 11, 13): xmlpath = "Opc.Ua.NodeSet2.Part{0}.xml".format(str(i)) cpppath = "../opcua/server/standard_address_space/standard_address_space_part{0}.py".format(str(i)) c = CodeGenerator(xmlpath, cpppath) c.run() save_aspace_to_disk() python-opcua-0.98.9/schemas/generate_event_objects.py000066400000000000000000000110441357637245100227650ustar00rootroot00000000000000#code to generate eEventTypes import xml.etree.ElementTree as ET import opcua.ua.object_ids as obIds import generate_model_event as gme class EventsCodeGenerator(object): def __init__(self, event_model, output): self.output_file = output self.event_model = event_model self.indent = " " self.iidx = 0 # indent index def eventList(self): tree = ET.parse(self.event_model) root = tree.getroot() for child in root: if child.tag.endswith("UAObjectType"): print (child.attrib) def write(self, line): if line: line = self.indent * self.iidx + line self.output_file.write(line + "\n") def make_header(self): self.write('"""') self.write("Autogenerated code from xml spec") self.write('"""') self.write("") self.write("from opcua import ua") self.write("from opcua.common.events import Event") def addProperties(self, event): for ref in event.references: if ref.referenceType == "HasProperty": self.write("self.add_property('{0}', {1}, {2})".format(ref.refBrowseName, self.getPropertyValue(ref), self.getPropertyDataType(ref))) def getPropertyValue(self, reference): if reference.refBrowseName == "SourceNode": return "sourcenode" elif reference.refBrowseName == "Severity": return "severity" elif reference.refBrowseName == "Status": return "False" elif reference.refBrowseName == "Message": return "ua.LocalizedText(message)" elif reference.refDataType == "NodeId": return "ua.NodeId(ua.ObjectIds.{0})".format(str(obIds.ObjectIdNames[int(str(reference.refId).split("=")[1])]).split("_")[0]) else: return "None" def getPropertyDataType(self, reference): if str(reference.refBrowseName).endswith("Time"): return "ua.VariantType.DateTime" elif str(reference.refDataType).startswith("i="): return "ua.NodeId(ua.ObjectIds.{0})".format(str(obIds.ObjectIdNames[int(str(reference.refDataType).split("=")[1])]).split("_")[0]) else: return "ua.VariantType.{0}".format(reference.refDataType) def generateEventclass(self, event, *parentEventBrowseName): self.write("") if event.browseName == "BaseEvent": self.write("class {0}(Event):".format(event.browseName)) self.iidx += 1 self.write('"""') if (event.description != None): self.write(event.browseName + ": " + event.description) else: self.write(event.browseName + ": ") self.write('"""') self.write("def __init__(self, sourcenode=None, message=None, severity=1):") self.iidx += 1 self.write("Event.__init__(self)") self.addProperties(event) else: self.write("class {0}({1}):".format(event.browseName, parentEventBrowseName[0])) self.iidx += 1 self.write('"""') if (event.description != None): self.write(event.browseName + ": " + event.description) else: self.write(event.browseName + ": ") self.write('"""') self.write("def __init__(self, sourcenode=None, message=None, severity=1):") self.iidx += 1 self.write("super({0}, self).__init__(sourcenode, message, severity)".format(event.browseName)) self.write("self.EventType = ua.NodeId(ua.ObjectIds.{0}Type)".format(event.browseName)) self.addProperties(event) self.iidx -= 2 def generateEventsCode(self, model): self.output_file = open(self.output_file, "w") self.make_header() for event in model.values(): if (event.browseName == "BaseEvent"): self.generateEventclass(event) else: parentNode = model[event.parentNodeId] self.generateEventclass(event, parentNode.browseName) self.write("") self.write("") self.write("IMPLEMENTED_EVENTS = {") self.iidx += 1 for event in model.values(): self.write("ua.ObjectIds.{0}Type: {0},".format(event.browseName)) self.write("}") if __name__ == "__main__": xmlPath = "Opc.Ua.NodeSet2.xml" output_file = "../opcua/common/event_objects.py" p = gme.Parser(xmlPath) model = p.parse() ECG = EventsCodeGenerator(model, output_file) ECG.generateEventsCode(model) python-opcua-0.98.9/schemas/generate_ids.py000066400000000000000000000026031357637245100207130ustar00rootroot00000000000000if __name__ == "__main__": inputfile = open("NodeIds.csv") outputfile = open("../opcua/ua/object_ids.py", "w") outputfile.write("#AUTOGENERATED!!!\n") outputfile.write("\n") outputfile.write("from enum import IntEnum\n") outputfile.write("\n") # Making ObjectIds inherit IntEnum has a huge performance impact!!!!! # so we use a normal class and a reverse one for the few places we need it outputfile.write("class ObjectIds(object):\n") outputfile.write(" Null = 0\n") for line in inputfile: name, nb, datatype = line.split(",") outputfile.write(" {0} = {1}\n".format(name, nb)) inputfile.close() inputfile = open("NodeIds.csv") outputfile.write("\n\nObjectIdNames = {}\n") outputfile.write("ObjectIdNames[0] = 'Null'\n".format(nb, name)) for line in inputfile: name, nb, datatype = line.split(",") outputfile.write("ObjectIdNames[{0}] = '{1}'\n".format(nb, name)) inputfile = open("AttributeIds.csv") outputfile = open("../opcua/ua/attribute_ids.py", "w") outputfile.write("#AUTOGENERATED!!!\n") outputfile.write("\n") outputfile.write("from enum import IntEnum\n") outputfile.write("\n") outputfile.write("class AttributeIds(IntEnum):\n") for line in inputfile: name, nb = line.split(",") outputfile.write(" {0} = {1}\n".format(name.strip(), nb.strip())) python-opcua-0.98.9/schemas/generate_model.py000066400000000000000000000425261357637245100212440ustar00rootroot00000000000000""" Generate address space c++ code from xml file specification """ import sys from copy import copy import xml.etree.ElementTree as ET # from IPython import embed NeedOverride = [] NeedConstructor = []#["RelativePathElement", "ReadValueId", "OpenSecureChannelParameters", "UserIdentityToken", "RequestHeader", "ResponseHeader", "ReadParameters", "UserIdentityToken", "BrowseDescription", "ReferenceDescription", "CreateSubscriptionParameters", "PublishResult", "NotificationMessage", "SetPublishingModeParameters"] IgnoredEnums = []#["IdType", "NodeIdType"] #we want to implement som struct by hand, to make better interface or simply because they are too complicated IgnoredStructs = []#["NodeId", "ExpandedNodeId", "Variant", "QualifiedName", "DataValue", "LocalizedText"]#, "ExtensionObject"] #by default we split requests and respons in header and parameters, but some are so simple we do not split them NoSplitStruct = ["GetEndpointsResponse", "CloseSessionRequest", "AddNodesResponse", "DeleteNodesResponse", "BrowseResponse", "HistoryReadResponse", "HistoryUpdateResponse", "RegisterServerResponse", "CloseSecureChannelRequest", "CloseSecureChannelResponse", "CloseSessionRequest", "CloseSessionResponse", "UnregisterNodesResponse", "MonitoredItemModifyRequest", "MonitoredItemsCreateRequest", "ReadResponse", "WriteResponse", "TranslateBrowsePathsToNodeIdsResponse", "DeleteSubscriptionsResponse", "DeleteMonitoredItemsResponse", "CreateMonitoredItemsResponse", "ServiceFault", "AddReferencesResponse", "ModifyMonitoredItemsResponse", "RepublishResponse", "CallResponse", "FindServersResponse", "RegisterServerRequest", "RegisterServer2Response"] #structs that end with Request or Response but are not NotRequest = ["MonitoredItemCreateRequest", "MonitoredItemModifyRequest", "CallMethodRequest"] OverrideTypes = {}#AttributeId": "AttributeID", "ResultMask": "BrowseResultMask", "NodeClassMask": "NodeClass", "AccessLevel": "VariableAccessLevel", "UserAccessLevel": "VariableAccessLevel", "NotificationData": "NotificationData"} OverrideNames = {}#{"RequestHeader": "Header", "ResponseHeader": "Header", "StatusCode": "Status", "NodesToRead": "AttributesToRead"} # "MonitoringMode": "Mode",, "NotificationMessage": "Notification", "NodeIdType": "Type"} #some object are defined in extensionobjects in spec but seems not to be in reality #in addition to this list all request and response and descriptions will not inherit #NoInherit = ["RequestHeader", "ResponseHeader", "ChannelSecurityToken", "UserTokenPolicy", "SignatureData", "BrowseResult", "ReadValueId", "WriteValue", "BrowsePath", "BrowsePathTarget", "RelativePath", "RelativePathElement", "BrowsePathResult"]#, "ApplicationDescription", "EndpointDescription" class Bit(object): def __init__(self): self.name = None self.idx = None self.container = None self.length = 1 def __str__(self): return "(Bit: {0}, container:{1}, idx:{2})".format(self.name, self.container, self.idx) __repr__ = __str__ class Struct(object): def __init__(self): self.name = None self.basetype = None self.doc = "" self.fields = [] self.bits = {} self.needconstructor = None self.needoverride = False self.children = [] self.parents = [] self.extensionobject = False #used for struct which are not pure extension objects def get_field(self, name): for f in self.fields: if f.name == name: return f raise Exception("field not found: " + name) def __str__(self): return "Struct {0}:{1}".format(self.name, self.basetype) __repr__ = __str__ class Field(object): def __init__(self): self.name = None self.uatype = None self.length = None self.sourcetype = None self.switchfield = None self.switchvalue = None self.bitlength = 1 def __str__(self): return "Field {0}({1})".format(self.name, self.uatype) __repr__ = __str__ def is_native_type(self): if self.uatype in ("Char", "SByte", "Int16", "Int32", "Int64", "UInt16", "UInt32", "UInt64", "Boolean", "Double", "Float", "Byte", "String", "CharArray", "ByteString", "DateTime"): return True return False class Enum(object): def __init__(self): self.name = None self.uatype = None self.values = [] self.doc = "" def get_ctype(self): return "uint{0}_t".format(self.uatype) class EnumValue(object): def __init__(self): self.name = None self.value = None class Model(object): def __init__(self): self.structs = [] self.enums = [] self.struct_list = [] self.enum_list = [] def get_struct(self, name): for struct in self.structs: if name == struct.name: return struct raise Exception("No struct named: " + str(name)) def get_enum(self, name): for s in self.enums: if name == s.name: return s raise Exception("No enum named: " + str(name)) def reorder_structs(model): types = IgnoredStructs + IgnoredEnums + ["Bit", "Char", "CharArray", "Guid", "SByte", "Int16", "Int32", "Int64", "UInt16", "UInt32", "UInt64", "DateTime", "Boolean", "Double", "Float", "ByteString", "Byte", "StatusCode", "DiagnosticInfo", "String", "AttributeID"] + [enum.name for enum in model.enums] + ["VariableAccessLevel"] waiting = {} newstructs = [] for s in model.structs: types.append(s.name) s.waitingfor = [] ok = True for f in s.fields: if f.uatype not in types: if f.uatype in waiting.keys(): waiting[f.uatype].append(s) s.waitingfor.append(f.uatype) else: waiting[f.uatype] = [s] s.waitingfor.append(f.uatype) ok = False if ok: newstructs.append(s) waitings = waiting.pop(s.name, None) if waitings: for s2 in waitings: s2.waitingfor.remove(s.name) if not s2.waitingfor: newstructs.append(s2) if len(model.structs) != len(newstructs): print("Error while reordering structs, some structs could not be reinserted, had {0} structs, we now have {1} structs".format(len(model.structs), len(newstructs))) s1 = set(model.structs) s2 = set(newstructs) rest = s1 -s2 print("Variant" in types) for s in s1-s2: print("{0} is waiting for: {1}".format(s, s.waitingfor)) #print(s1 -s2) #print(waiting) model.structs = newstructs def override_types(model): for struct in model.structs: for field in struct.fields: if field.name in OverrideTypes.keys(): field.uatype = OverrideTypes[field.name] def remove_duplicates(model): for struct in model.structs: fields = [] names = [] for field in struct.fields: if field.name not in names: names.append(field.name) fields.append(field) struct.fields = fields def add_encoding_field(model): for struct in model.structs: newfields = [] container = None idx = 0 for field in struct.fields: if field.uatype in ("UInt6", "NodeIdType"): container = field.name b = Bit() b.name = field.name b.idx = 0 b.container = container b.length = 6 idx = b.length struct.bits[b.name] = b if field.uatype == "Bit": if not container or idx > 7: container = "Encoding" idx = 0 f = Field() f.sourcetype = field.sourcetype f.name = "Encoding" f.uatype = "Byte" newfields.append(f) b = Bit() b.name = field.name b.idx = idx b.container = container b.length = field.bitlength idx += field.bitlength struct.bits[b.name] = b else: newfields.append(field) struct.fields = newfields def remove_vector_length(model): for struct in model.structs: new = [] for field in struct.fields: if not field.name.startswith("NoOf") and field.name != "Length": new.append(field) struct.fields = new def remove_body_length(model): for struct in model.structs: new = [] for field in struct.fields: if not field.name == "BodyLength": new.append(field) struct.fields = new def remove_duplicate_types(model): for struct in model.structs: for field in struct.fields: if field.uatype == "CharArray": field.uatype = "String" #def remove_extensionobject_fields(model): #for obj in model.structs: #if obj.name.endswith("Request") or obj.name.endswith("Response"): #obj.fields = [el for el in obj.fields if el.name not in ("TypeId", "Body", "Encoding")] def split_requests(model): structs = [] for struct in model.structs: structtype = None if struct.name.endswith("Request") and not struct.name in NotRequest: structtype = "Request" elif struct.name.endswith("Response") or struct.name == "ServiceFault": structtype = "Response" if structtype: #for field in struct.fields: #if field.name == "Encoding": #struct.fields.remove(field) #break #for field in struct.fields: #if field.name == "BodyLength": #struct.fields.remove(field) #break struct.needconstructor = True field = Field() field.name = "TypeId" field.uatype = "NodeId" struct.fields.insert(0, field) if structtype and not struct.name in NoSplitStruct: paramstruct = Struct() if structtype == "Request": basename = struct.name.replace("Request", "") + "Parameters" paramstruct.name = basename else: basename = struct.name.replace("Response", "") + "Result" paramstruct.name = basename paramstruct.fields = struct.fields[2:] paramstruct.bits = struct.bits struct.fields = struct.fields[:2] #struct.bits = {} structs.append(paramstruct) typeid = Field() typeid.name = "Parameters" typeid.uatype = paramstruct.name struct.fields.append(typeid) structs.append(struct) model.structs = structs class Parser(object): def __init__(self, path): self.path = path self.model = None def parse(self): print("Parsing: ", self.path) self.model = Model() tree = ET.parse(self.path) root = tree.getroot() self.add_extension_object() self.add_data_type_definition() for child in root: tag = child.tag[40:] if tag == "StructuredType": struct = self.parse_struct(child) if struct.name != "ExtensionObject": self.model.structs.append(struct) self.model.struct_list.append(struct.name) elif tag == "EnumeratedType": enum = self.parse_enum(child) self.model.enums.append(enum) self.model.enum_list.append(enum.name) #else: #print("Not implemented node type: " + tag + "\n") return self.model def add_extension_object(self): obj = Struct() obj.name = "ExtensionObject" f = Field() f.name = "TypeId" f.uatype = "NodeId" obj.fields.append(f) f = Field() f.name = "BinaryBody" f.uatype = "Bit" obj.fields.append(f) f = Field() f.name = "XmlBody" f.uatype = "Bit" obj.fields.append(f) f = Field() f.name = "Body" f.uatype = "ByteString" f.switchfield = "BinaryBody" obj.fields.append(f) self.model.struct_list.append(obj.name) self.model.structs.append(obj) def add_data_type_definition(self): obj = Struct() obj.name = "DataTypeDefinition" self.model.struct_list.append(obj.name) self.model.structs.append(obj) def parse_struct(self, child): tag = child.tag[40:] struct = Struct() for key, val in child.attrib.items(): if key == "Name": struct.name = val elif key == "BaseType": if ":" in val: prefix, val = val.split(":") struct.basetype = val tmp = struct while tmp.basetype: struct.parents.append(tmp.basetype) tmp = self.model.get_struct(tmp.basetype) else: print("Error unknown key: ", key) for el in child: tag = el.tag[40:] if tag == "Field": field = Field() for key, val in el.attrib.items(): if key == "Name": field.name = val elif key == "TypeName": field.uatype = val.split(":")[1] elif key == "LengthField": field.length = val elif key == "SourceType": field.sourcetype = val elif key == "SwitchField": field.switchfield = val elif key == "SwitchValue": field.switchvalue = val elif key == "Length": field.bitlength = int(val) else: print("Unknown field item: ", struct.name, key) struct.fields.append(field) elif tag == "Documentation": struct.doc = el.text else: print("Unknown tag: ", tag) return struct def parse_enum(self, child): tag = child.tag[40:] enum = Enum() for k, v in child.items(): if k == "Name": enum.name = v elif k == "LengthInBits": enum.uatype = "UInt" + v else: print("Unknown attr for enum: ", k) for el in child: tag = el.tag[40:] if tag == "EnumeratedValue": ev = EnumValue() for k, v in el.attrib.items(): if k == "Name": ev.name = v elif k == "Value": ev.value = v else: print("Unknown field attrib: ", k) enum.values.append(ev) elif tag == "Documentation": enum.doc = el.text else: print("Unknown enum tag: ", tag) return enum #"def reorder_extobjects(model): #ext = model.get_struct("ExtensionObject") #print(ext) #typeid = ext.fields[4] #ext.fields.remove(typeid) #ext.fields.insert(0, typeid) def add_basetype_members(model): for struct in model.structs: if not struct.basetype: continue emptystruct = False if len(struct.fields) == 0: emptystruct = True if struct.basetype in ("ExtensionObject"): struct.basetype = None continue base = model.get_struct(struct.basetype) #if struct.basetype == "ExtensionObject" and len(struct.fields) != 0: #if struct.basetype == "ExtensionObject" and len(struct.fields) != 0: #if struc #for f in base.fields: #if f.name == "TypeId": #f2 = copy(f) #f2.switchfield = None #struct.fields.insert(0, f2) #break #continue for name, bit in base.bits.items(): struct.bits[name] = bit for idx, field in enumerate(base.fields): field = copy(field) if field.name == "Body" and not emptystruct: #print("Field is names Body", struct.name, field.name) struct.extensionobject = True field.name = "BodyLength" field.uatype = "Int32" field.length = None field.switchfield = None #print("Field is names Body 2", struct.name, field.name) #HACK EXTENSIONOBJECT #if base.name == "ExtensionObject": #continue #if field.uatype == "Bit": #continue #if field.name == "Body": #continue #if field.name == "TypeId": #field.switchfield = None #END HACK if not field.sourcetype: field.sourcetype = base.name struct.fields.insert(idx, field) def fix_names(model): for s in model.enums: for f in s.values: if f.name == "None": f.name = "None_" python-opcua-0.98.9/schemas/generate_model_event.py000066400000000000000000000116341357637245100224410ustar00rootroot00000000000000import xml.etree.ElementTree as ET import collections class Node_struct: def __init__(self): self.nodeId = None self.browseName = None self.isAbstract = True self.parentNodeId = None self.dataType = None self.displayName = None self.description = None self.references = [] def __hash__(self): return hash(self.nodeId, self.browseName, self.isAbstract, self.parentNodeId, self.dataType, self.displayName, self.description, self.references) def __eq__(self, other): return (self.nodeId, self.browseName, self.isAbstract, self.parentNodeId, self.dataType, self.displayName, self.description, self.references) == (other.nodeId, other.browseName, other.isAbstract, other.parentNodeId, other.dataType, other.displayName, other.description, other.references) def __ne__(self, other): return not(self == other) class Reference: def __init__(self): self.referenceType = None self.refId = None def __hash__(self): return hash(self.referenceType, self.refId) def __eq__(self, other): return (self.referenceType, self.refId) == (other.referenceType, other.refValue) def __ne__(self, other): return not(self == other) class Model_Event: def __init__(self): self.structs = [] def get_struct(self, nodeId): for struct in self.structs: if struct.nodeId == nodeId: return struct raise Exception("No struct with the Id: " + str(nodeId)) class Parser(object): nameSpace = "{http://opcfoundation.org/UA/2011/03/UANodeSet.xsd}" def __init__(self, path): self.path = path self.model = None def findNodeWithNodeId(self,root, nodeId): node = Node_struct() for child in root: if nodeId == child.attrib.get('NodeId'): node.browseName = str(child.attrib.get('BrowseName')) node.nodeId = child.attrib.get('NodeId') node.isAbstract = child.attrib.get('IsAbstract') node.dataType = child.attrib.get('DataType') if (node.dataType == None): node.dataType = 'Variant' node.displayName = child.find(self.nameSpace + 'DisplayName').text if (child.find(self.nameSpace + 'Description') != None): node.description = child.find(self.nameSpace + 'Description').text for ref in child.find(self.nameSpace + 'References').findall(self.nameSpace + 'Reference'): reference = Reference() reference.referenceType = ref.attrib.get('ReferenceType') reference.refId = ref.text if ref.attrib.get('IsForward')!=None: node.parentNodeId = reference.refId node.references.append(reference) return node def checkNodeType(self, node): if (node.tag == self.nameSpace + "UAObjectType") or (node.tag == self.nameSpace + "UAVariable") or ( node.tag == self.nameSpace + "UAObject") or (node.tag == self.nameSpace + "UAMethod") or (node.tag == self.nameSpace + "UAVariableType"): return True def parse(self): print("Parsing: " + self.path) tree = ET.parse(self.path) root = tree.getroot() listEventType = {} for child in root: browseName = str(child.attrib.get('BrowseName')) if browseName.endswith("EventType"): if browseName == "EventType": continue node = Node_struct() node.browseName = browseName.replace("Type", "") node.nodeId = child.attrib.get('NodeId') node.isAbstract = child.attrib.get('IsAbstract') node.displayName = child.find(self.nameSpace + 'DisplayName').text if (child.find(self.nameSpace + 'Description') != None): node.description = child.find(self.nameSpace + 'Description').text for ref in child.find(self.nameSpace + 'References').findall(self.nameSpace + 'Reference'): reference = Reference() reference.referenceType = ref.attrib.get('ReferenceType') reference.refId = ref.text self.refNode = self.findNodeWithNodeId(root, reference.refId).browseName reference.refBrowseName = self.findNodeWithNodeId(root, reference.refId).browseName reference.refDataType = self.findNodeWithNodeId(root, reference.refId).dataType if ref.attrib.get('IsForward')!=None: node.parentNodeId = reference.refId node.references.append(reference) listEventType.update({node.nodeId:node}) return collections.OrderedDict(sorted(sorted(listEventType.items(), key=lambda t: t[0]), key=lambda u: len(u[0]))) python-opcua-0.98.9/schemas/generate_protocol_python.py000066400000000000000000000204371357637245100234030ustar00rootroot00000000000000 IgnoredEnums = ["NodeIdType"] IgnoredStructs = ["QualifiedName", "NodeId", "ExpandedNodeId", "FilterOperand", "Variant", "DataValue", "ExtensionObject", "XmlElement", "LocalizedText"] class Primitives1(object): SByte = 0 Int16 = 0 Int32 = 0 Int64 = 0 Char = 0 Byte = 0 UInt16 = 0 UInt32 = 0 UInt64 = 0 Boolean = 0 Double = 0 Float = 0 class Primitives(Primitives1): Null = 0 String = 0 Bytes = 0 ByteString = 0 CharArray = 0 DateTime = 0 class CodeGenerator(object): def __init__(self, model, output): self.model = model self.output_path = output self.indent = " " self.iidx = 0 # indent index def run(self): print("Writting python protocol code to ", self.output_path) self.output_file = open(self.output_path, "w") self.make_header() for enum in self.model.enums: if enum.name not in IgnoredEnums: self.generate_enum_code(enum) for struct in self.model.structs: if struct.name in IgnoredStructs: continue if struct.name.endswith("Node") or struct.name.endswith("NodeId"): continue self.generate_struct_code(struct) self.iidx = 0 self.write("") self.write("") for struct in self.model.structs: if struct.name in IgnoredStructs: continue if struct.name.endswith("Node") or struct.name.endswith("NodeId"): continue if "ExtensionObject" in struct.parents: self.write("nid = FourByteNodeId(ObjectIds.{0}_Encoding_DefaultBinary)".format(struct.name)) self.write("extension_object_classes[nid] = {0}".format(struct.name)) self.write("extension_object_ids['{0}'] = nid".format(struct.name)) def write(self, line): if line: line = self.indent * self.iidx + line self.output_file.write(line + "\n") def make_header(self): self.write("'''") self.write("Autogenerate code from xml spec") self.write("'''") self.write("") self.write("from datetime import datetime") self.write("from enum import IntEnum") self.write("") #self.write("from opcua.ua.uaerrors import UaError") self.write("from opcua.ua.uatypes import *") self.write("from opcua.ua.object_ids import ObjectIds") def generate_enum_code(self, enum): self.write("") self.write("") self.write("class {}(IntEnum):".format(enum.name)) self.iidx = 1 self.write("'''") if enum.doc: self.write(enum.doc) self.write("") for val in enum.values: self.write(":ivar {}:".format(val.name)) self.write(":vartype {}: {}".format(val.name, val.value)) self.write("'''") for val in enum.values: self.write("{} = {}".format(val.name, val.value)) self.iidx = 0 def generate_struct_code(self, obj): self.write("") self.write("") self.iidx = 0 self.write("class {}(FrozenClass):".format(obj.name)) self.iidx += 1 self.write("'''") if obj.doc: self.write(obj.doc) self.write("") for field in obj.fields: self.write(":ivar {}:".format(field.name)) self.write(":vartype {}: {}".format(field.name, field.uatype)) self.write("'''") self.write("") switch_written = False for field in obj.fields: if field.switchfield is not None: if not switch_written: self.write("ua_switches = {") switch_written = True bit = obj.bits[field.switchfield] self.write(" '{}': ('{}', {}),".format(field.name, bit.container, bit.idx)) #if field.switchvalue is not None: Not sure we need to handle that one if switch_written: self.write(" }") self.write("ua_types = [") for field in obj.fields: prefix = "ListOf" if field.length else "" uatype = prefix + field.uatype if uatype == "ListOfChar": uatype = "String" self.write(" ('{}', '{}'),".format(field.name, uatype)) self.write(" ]") self.write("") self.write("def __init__(self):") self.iidx += 1 # hack extension object stuff extobj_hack = False if "BodyLength" in [f.name for f in obj.fields]: extobj_hack = True for field in obj.fields: if extobj_hack and field.name == "Encoding": self.write("self.Encoding = 1") elif field.uatype == obj.name: # help!!! selv referencing class self.write("self.{} = None".format(field.name)) elif not obj.name in ("ExtensionObject") and field.name == "TypeId": # and ( obj.name.endswith("Request") or obj.name.endswith("Response")): self.write("self.TypeId = FourByteNodeId(ObjectIds.{}_Encoding_DefaultBinary)".format(obj.name)) else: self.write("self.{} = {}".format(field.name, "[]" if field.length else self.get_default_value(field))) self.write("self._freeze = True") self.iidx = 1 #__str__ self.write("") self.write("def __str__(self):") self.iidx += 1 tmp = ["'{name}:' + str(self.{name})".format(name=f.name) for f in obj.fields] tmp = " + ', ' + \\\n ".join(tmp) self.write("return '{}(' + {} + ')'".format(obj.name, tmp)) self.iidx -= 1 self.write("") self.write("__repr__ = __str__") self.iix = 0 def write_unpack_enum(self, name, enum): self.write("self.{} = {}(uabin.Primitives.{}.unpack(data))".format(name, enum.name, enum.uatype)) def get_size_from_uatype(self, uatype): if uatype in ("Sbyte", "Byte", "Char", "Boolean"): return 1 elif uatype in ("Int16", "UInt16"): return 2 elif uatype in ("Int32", "UInt32", "Float"): return 4 elif uatype in ("Int64", "UInt64", "Double"): return 8 else: raise Exception("Cannot get size from type {}".format(uatype)) def write_unpack_uatype(self, name, uatype): if hasattr(Primitives, uatype): self.write("self.{} = uabin.Primitives.{}.unpack(data)".format(name, uatype)) else: self.write("self.{} = {}.from_binary(data))".format(name, uatype)) def write_pack_enum(self, listname, name, enum): self.write("{}.append(uabin.Primitives.{}.pack({}.value))".format(listname, enum.uatype, name)) def write_pack_uatype(self, listname, name, uatype): if hasattr(Primitives, uatype): self.write("{}.append(uabin.Primitives.{}.pack({}))".format(listname, uatype, name)) else: self.write("{}.append({}.to_binary(}))".format(listname, name)) return def get_default_value(self, field): if field.switchfield: return None if field.uatype in self.model.enum_list: enum = self.model.get_enum(field.uatype) return enum.name + "(0)" if field.uatype in ("String"): return None elif field.uatype in ("ByteString", "CharArray", "Char"): return None elif field.uatype in ("Boolean"): return "True" elif field.uatype in ("DateTime"): return "datetime.utcnow()" elif field.uatype in ("Int16", "Int32", "Int64", "UInt16", "UInt32", "UInt64", "Double", "Float", "Byte"): return 0 elif field.uatype in ("ExtensionObject"): return "ExtensionObject()" else: return field.uatype + "()" if __name__ == "__main__": import generate_model as gm xmlpath = "Opc.Ua.Types.bsd" protocolpath = "../opcua/ua/uaprotocol_auto.py" p = gm.Parser(xmlpath) model = p.parse() gm.add_basetype_members(model) gm.add_encoding_field(model) gm.remove_duplicates(model) gm.remove_vector_length(model) gm.split_requests(model) gm.fix_names(model) gm.remove_duplicate_types(model) c = CodeGenerator(model, protocolpath) c.run() python-opcua-0.98.9/schemas/generate_statuscode.py000066400000000000000000000036031357637245100223130ustar00rootroot00000000000000# Load values from StatusCode.csv and then # add values from StatusCodes_add.csv, but only # if they are absent from StatusCode.csv def status_codes(): inputfile = open("StatusCodes_add.csv") additional = {} for line in inputfile: name, val, doc = line.split(",", 2) additional[int(val, 0)] = (name, val, doc) inputfile = open("StatusCode.csv") result = [] for line in inputfile: name, val, doc = line.split(",", 2) result.append((name, val, doc)) additional.pop(int(val, 0), None) add = [ additional[k] for k in sorted(additional.keys()) ] return add + result if __name__ == "__main__": codes = status_codes() outputfile = open("../opcua/ua/status_codes.py", "w") outputfile.write("#AUTOGENERATED!!!\n") outputfile.write("\n") outputfile.write("from opcua.ua.uaerrors import UaStatusCodeError\n") #outputfile.write("from enum import Enum\n") outputfile.write("\n") outputfile.write("class StatusCodes(object):\n") for name, val, doc in codes: doc = doc.strip() outputfile.write(" {0} = {1}\n".format(name, val)) outputfile.write("\n") outputfile.write("\n") outputfile.write("code_to_name_doc = {\n") for name, val, doc in codes: doc = doc.strip() doc = doc.replace("'", '"') outputfile.write(" {0}: ('{1}', '{2}'),\n".format(val, name, doc)) outputfile.write("}\n") outputfile.write("\n") outputfile.write("\n") outputfile.write("""def get_name_and_doc(val): if val in code_to_name_doc: return code_to_name_doc[val] else: if val & 1 << 31: return 'Bad', 'Unknown StatusCode value: {}'.format(val) elif val & 1 << 30: return 'UncertainIn', 'Unknown StatusCode value: {}'.format(val) else: return 'Good', 'Unknown StatusCode value: {}'.format(val) """) python-opcua-0.98.9/schemas/generate_uaerrors.py000066400000000000000000000014011357637245100217710ustar00rootroot00000000000000from textwrap import dedent from generate_statuscode import status_codes from string import Template if __name__ == "__main__": codes = status_codes() with open("../opcua/ua/uaerrors/_auto.py", "w") as f: preamble = """\ #AUTOGENERATED!!! from opcua.ua.uaerrors import UaStatusCodeError """ f.write(dedent(preamble)) for name, code, _ in codes: # skip non-bad because they should not be thrown as exceptions if not name.startswith("Bad"): continue template = Template(dedent("""\ class $name(UaStatusCodeError): code = $code """)) print(template.safe_substitute(name=name, code=code), file=f) python-opcua-0.98.9/schemas/uaprotocol_auto_add.py000066400000000000000000000032311357637245100223070ustar00rootroot00000000000000 def extensionobject_from_binary(data): """ Convert binary-coded ExtensionObject to a Python object. Returns an object, or None if TypeId is zero """ TypeId = NodeId.from_binary(data) Encoding = ord(data.read(1)) body = None if Encoding & (1 << 0): length = uabin.Primitives.Int32.unpack(data) if length < 1: body = Buffer(b"") else: body = data.copy(length) data.skip(length) if TypeId.Identifier == 0: return None elif TypeId.Identifier not in ExtensionClasses: e = ExtensionObject() e.TypeId = TypeId e.Encoding = Encoding if body is not None: e.Body = body.read(len(body)) return e klass = ExtensionClasses[TypeId.Identifier] if body is None: raise UaError("parsing ExtensionObject {0} without data".format(klass.__name__)) return klass.from_binary(body) def extensionobject_to_binary(obj): """ Convert Python object to binary-coded ExtensionObject. If obj is None, convert to empty ExtensionObject (TypeId = 0, no Body). Returns a binary string """ if isinstance(obj, ExtensionObject): return obj.to_binary() TypeId = NodeId() Encoding = 0 Body = None if obj is not None: TypeId = FourByteNodeId(getattr(ObjectIds, "{0}_Encoding_DefaultBinary".format(obj.__class__.__name__))) Encoding |= (1 << 0) Body = obj.to_binary() packet = [] packet.append(TypeId.to_binary()) packet.append(uabin.Primitives.UInt8.pack(Encoding)) if Body: packet.append(uabin.Primitives.Bytes.pack(Body)) return b''.join(packet) python-opcua-0.98.9/setup.cfg000066400000000000000000000002201357637245100160770ustar00rootroot00000000000000[flake8] max-line-length = 120 exclude = opcua/ua/,opcua/common/event_objects.py,opcua/server/standard_address_space/standard_address_space*.py python-opcua-0.98.9/setup.py000066400000000000000000000036021357637245100157770ustar00rootroot00000000000000from setuptools import setup, find_packages import sys install_requires = ["python-dateutil", "pytz", "lxml"] if sys.version_info[0] < 3: install_requires.extend(["enum34", "trollius", "futures"]) setup(name="opcua", version="0.98.9", description="Pure Python OPC-UA client and server library", author="Olivier Roulet-Dubonnet", author_email="olivier.roulet@gmail.com", url='http://freeopcua.github.io/', packages=find_packages(), provides=["opcua"], license="GNU Lesser General Public License v3 or later", install_requires=install_requires, extras_require={ 'encryption': ['cryptography'] }, classifiers=["Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 2", "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Operating System :: OS Independent", "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", "Topic :: Software Development :: Libraries :: Python Modules", ], entry_points={'console_scripts': [ 'uaread = opcua.tools:uaread', 'uals = opcua.tools:uals', 'uabrowse = opcua.tools:uals', 'uawrite = opcua.tools:uawrite', 'uasubscribe = opcua.tools:uasubscribe', 'uahistoryread = opcua.tools:uahistoryread', 'uaclient = opcua.tools:uaclient', 'uaserver = opcua.tools:uaserver', 'uadiscover = opcua.tools:uadiscover', 'uacall = opcua.tools:uacall', ] } ) python-opcua-0.98.9/stdeb.cfg000066400000000000000000000003361357637245100160500ustar00rootroot00000000000000# Debian package generator configuration file # Build the debian package by running: python3 setup.py --command-packages=stdeb.command bdist_deb [DEFAULT] Depends: python-concurrent.futures, python-enum34, python-trollius python-opcua-0.98.9/test_external_server.py000066400000000000000000000073551357637245100211170ustar00rootroot00000000000000""" Test an OPC-UA server with freeopcua python client """ import logging import sys import unittest from concurrent.futures import Future from datetime import datetime from datetime import timedelta import time from opcua import ua from opcua import Client class MySubHandler(): ''' More advanced subscription client using Future, so we can wait for events in tests ''' def __init__(self): self.future = Future() def reset(self): self.future = Future() def datachange_notification(self, node, val, data): self.future.set_result((node, val, data)) def event_notification(self, event): self.future.set_result(event) class MySubHandler2(object): def __init__(self): self.results = [] def datachange_notification(self, node, val, data): self.results.append((node, val)) def event_notification(self, event): self.results.append(event) def connect(func): def wrapper(self): try: client = Client(URL) client.connect() func(self, client) finally: client.disconnect() return wrapper class Tests(unittest.TestCase): def test_connect_anonymous(self): c = Client(URL) c.connect() c.disconnect() def FINISH_test_connect_basic256(self): c = Client(URL) c.set_security_string("basic256,sign,XXXX") c.connect() c.disconnect() def test_find_servers(self): c = Client(URL) res = c.connect_and_find_servers() self.assertTrue(len(res) > 0) def test_find_endpoints(self): c = Client(URL) res = c.connect_and_get_server_endpoints() self.assertTrue(len(res) > 0) @connect def test_get_root(self, client): root = client.get_root_node() self.assertEqual(root.get_browse_name(), ua.QualifiedName("Root", 0)) @connect def test_get_root_children(self, client): root = client.get_root_node() childs = root.get_children() self.assertTrue(len(childs) > 2) @connect def test_get_namespace_array(self, client): array = client.get_namespace_array() self.assertTrue(len(array) > 0) @connect def test_get_server_node(self, client): srv = client.get_server_node() self.assertEqual(srv.get_browse_name(), ua.QualifiedName("Server", 0)) #childs = srv.get_children() #self.assertTrue(len(childs) > 4) @connect def test_browsepathtonodeid(self, client): root = client.get_root_node() node = root.get_child(["0:Objects", "0:Server" , "0:ServerArray"]) self.assertEqual(node.get_browse_name(), ua.QualifiedName("ServerArray", 0)) @connect def test_subscribe_server_time(self, client): msclt = MySubHandler() server_time_node = client.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_CurrentTime)) sub = client.create_subscription(200, msclt) handle = sub.subscribe_data_change(server_time_node) node, val, data = msclt.future.result() self.assertEqual(node, server_time_node) delta = datetime.utcnow() - val print("Timedelta is ", delta) #self.assertTrue(delta < timedelta(seconds=2)) sub.unsubscribe(handle) sub.delete() if __name__ == "__main__": logging.basicConfig(level=logging.WARN) # FIXME add better arguments parsing with possibility to specify # username and password and encryption if len(sys.argv) < 2: print("This script is meant to test compatibilty to a server with freeopcua python client library") print("Usage: test_server.py url") sys.exit(1) else: URL = sys.argv[1] unittest.main(verbosity=30, argv=sys.argv[:1]) python-opcua-0.98.9/tests/000077500000000000000000000000001357637245100154265ustar00rootroot00000000000000python-opcua-0.98.9/tests/.gitignore000066400000000000000000000000331357637245100174120ustar00rootroot00000000000000/tests_spaw.py /export.xml python-opcua-0.98.9/tests/custom_nodes.xml000066400000000000000000000320071357637245100206540ustar00rootroot00000000000000 i=21 i=37 i=40 i=45 i=46 ns=1;i=3008 ns=1;i=3010 ns=1;i=3011 A custom folder. i=61 i=85 A custom object node. i=58 ns=1;i=30001 i=69 ns=1;i=30002 StringValue i=68 ns=1;i=30002 76 i=69 ns=1;i=30002 MyCustomString i=12 i=69 ns=1;i=30002 MyEnum Demonstrates enums ns=1;i=6001 i=29 EnumStrings ns=1;i=3010 i=78 i=68 ok run error MyEnumVal i=29 EnumValues i=78 i=68 ns=1;i=3011 i=7616 1 idle i=7616 2 run i=7616 4 error EnumValues i=68 i=78 i=120 i=7616 1 Mandatory The BrowseName must appear in all instances of the type. i=7616 2 Optional The BrowseName may appear in an instance of the type. i=7616 3 Constraint The modelling rule defines a constraint and the BrowseName is not used in an instance of the type. MyObjectType ns=1;i=7050 i=58 MyMethod ns=1;i=6050 i=78 ns=1;i=1050 ns=1;i=6051 InputArguments ns=1;i=7050 i=78 i=68 i=297 Context i=12 -1 OutputArguments i=78 ns=1;i=7050 i=68 i=297 Status i=6 -1 python-opcua-0.98.9/tests/custom_nodesns.xml000066400000000000000000000031431357637245100212140ustar00rootroot00000000000000 http://examples.freeopcua.github.io/ i=21 i=37 i=40 i=45 i=46 ns=1;i=3008 ns=1;i=3010 ns=1;i=3011 MyBaseObject i=85 ns=1;i=6001 MyVar i=63 ns=1;i=5002 0 python-opcua-0.98.9/tests/enum_struct_test_nodes.xml000066400000000000000000000274461357637245100227640ustar00rootroot00000000000000 http://yourorganisation.org/struct_enum_example/ i=4 i=12 i=15 i=21 i=35 i=37 i=38 i=39 i=40 i=45 i=46 i=47 ns=1;i=3002 ns=1;i=3003 ExampleEnum ns=1;i=6001 i=29 EnumStrings i=68 ns=1;i=3002 i=78 EnumVal1 EnumVal2 EnumVal3 ExampleStruct ns=1;i=5001 ns=1;i=5002 i=22 ExampleStruct ns=1;i=6002 i=69 ns=1;i=5001 ExampleStruct ExampleStruct ns=1;i=6004 i=69 ns=1;i=5002 //xs:element[@name='ExampleStruct'] TypeDictionary Collects the data type descriptions of http://yourorganisation.org/struct_enum_example/ ns=1;i=6006 ns=1;i=6003 i=72 i=93 PG9wYzpUeXBlRGljdGlvbmFyeSB4bWxuczp4c2k9Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZ W1hLWluc3RhbmNlIiB4bWxuczp0bnM9Imh0dHA6Ly95b3Vyb3JnYW5pc2F0aW9uLm9yZy9zd HJ1Y3RfZW51bV9leGFtcGxlLyIgRGVmYXVsdEJ5dGVPcmRlcj0iTGl0dGxlRW5kaWFuIiB4b WxuczpvcGM9Imh0dHA6Ly9vcGNmb3VuZGF0aW9uLm9yZy9CaW5hcnlTY2hlbWEvIiB4bWxuc zp1YT0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL1VBLyIgVGFyZ2V0TmFtZXNwYWNlPSJod HRwOi8veW91cm9yZ2FuaXNhdGlvbi5vcmcvc3RydWN0X2VudW1fZXhhbXBsZS8iPgogPG9wY zpJbXBvcnQgTmFtZXNwYWNlPSJodHRwOi8vb3BjZm91bmRhdGlvbi5vcmcvVUEvIi8+CiA8b 3BjOlN0cnVjdHVyZWRUeXBlIEJhc2VUeXBlPSJ1YTpFeHRlbnNpb25PYmplY3QiIE5hbWU9I kV4YW1wbGVTdHJ1Y3QiPgogIDxvcGM6RmllbGQgVHlwZU5hbWU9Im9wYzpJbnQxNiIgTmFtZ T0iSW50VmFsMSIvPgogIDxvcGM6RmllbGQgVHlwZU5hbWU9InRuczpFeGFtcGxlRW51bSIgT mFtZT0iRW51bVZhbCIvPgogPC9vcGM6U3RydWN0dXJlZFR5cGU+CiA8b3BjOkVudW1lcmF0Z WRUeXBlIExlbmd0aEluQml0cz0iMzIiIE5hbWU9IkV4YW1wbGVFbnVtIj4KICA8b3BjOkVud W1lcmF0ZWRWYWx1ZSBOYW1lPSJFbnVtVmFsMSIgVmFsdWU9IjAiLz4KICA8b3BjOkVudW1lc mF0ZWRWYWx1ZSBOYW1lPSJFbnVtVmFsMiIgVmFsdWU9IjEiLz4KICA8b3BjOkVudW1lcmF0Z WRWYWx1ZSBOYW1lPSJFbnVtVmFsMyIgVmFsdWU9IjIiLz4KIDwvb3BjOkVudW1lcmF0ZWRUe XBlPgo8L29wYzpUeXBlRGljdGlvbmFyeT4K NamespaceUri i=68 ns=1;i=6002 http://yourorganisation.org/struct_enum_example/ TypeDictionary Collects the data type descriptions of http://yourorganisation.org/struct_enum_example/ ns=1;i=6007 ns=1;i=6005 i=72 i=92 PHhzOnNjaGVtYSBlbGVtZW50Rm9ybURlZmF1bHQ9InF1YWxpZmllZCIgdGFyZ2V0TmFtZXNwYWNlPSJod HRwOi8veW91cm9yZ2FuaXNhdGlvbi5vcmcvc3RydWN0X2VudW1fZXhhbXBsZS9UeXBlcy54c 2QiIHhtbG5zOnRucz0iaHR0cDovL3lvdXJvcmdhbmlzYXRpb24ub3JnL3N0cnVjdF9lbnVtX 2V4YW1wbGUvVHlwZXMueHNkIiB4bWxuczp1YT0iaHR0cDovL29wY2ZvdW5kYXRpb24ub3JnL 1VBLzIwMDgvMDIvVHlwZXMueHNkIiB4bWxuczp4cz0iaHR0cDovL3d3dy53My5vcmcvMjAwM S9YTUxTY2hlbWEiPgogPHhzOmltcG9ydCBuYW1lc3BhY2U9Imh0dHA6Ly9vcGNmb3VuZGF0a W9uLm9yZy9VQS8yMDA4LzAyL1R5cGVzLnhzZCIvPgogPHhzOnNpbXBsZVR5cGUgbmFtZT0iR XhhbXBsZUVudW0iPgogIDx4czpyZXN0cmljdGlvbiBiYXNlPSJ4czpzdHJpbmciPgogICA8e HM6ZW51bWVyYXRpb24gdmFsdWU9IkVudW1WYWwxXzAiLz4KICAgPHhzOmVudW1lcmF0aW9uI HZhbHVlPSJFbnVtVmFsMl8xIi8+CiAgIDx4czplbnVtZXJhdGlvbiB2YWx1ZT0iRW51bVZhb DNfMiIvPgogIDwveHM6cmVzdHJpY3Rpb24+CiA8L3hzOnNpbXBsZVR5cGU+CiA8eHM6ZWxlb WVudCB0eXBlPSJ0bnM6RXhhbXBsZUVudW0iIG5hbWU9IkV4YW1wbGVFbnVtIi8+CiA8eHM6Y 29tcGxleFR5cGUgbmFtZT0iTGlzdE9mRXhhbXBsZUVudW0iPgogIDx4czpzZXF1ZW5jZT4KI CAgPHhzOmVsZW1lbnQgbWluT2NjdXJzPSIwIiBtYXhPY2N1cnM9InVuYm91bmRlZCIgdHlwZ T0idG5zOkV4YW1wbGVFbnVtIiBuYW1lPSJFeGFtcGxlRW51bSIgbmlsbGFibGU9InRydWUiL z4KICA8L3hzOnNlcXVlbmNlPgogPC94czpjb21wbGV4VHlwZT4KIDx4czplbGVtZW50IHR5c GU9InRuczpMaXN0T2ZFeGFtcGxlRW51bSIgbmFtZT0iTGlzdE9mRXhhbXBsZUVudW0iIG5pb GxhYmxlPSJ0cnVlIi8+CiA8eHM6Y29tcGxleFR5cGUgbmFtZT0iRXhhbXBsZVN0cnVjdCI+C iAgPHhzOnNlcXVlbmNlPgogICA8eHM6ZWxlbWVudCBtaW5PY2N1cnM9IjAiIG1heE9jY3Vyc z0iMSIgdHlwZT0ieHM6c2hvcnQiIG5hbWU9IkludFZhbDEiLz4KICAgPHhzOmVsZW1lbnQgb WluT2NjdXJzPSIwIiBtYXhPY2N1cnM9IjEiIHR5cGU9InRuczpFeGFtcGxlRW51bSIgbmFtZ T0iRW51bVZhbCIvPgogIDwveHM6c2VxdWVuY2U+CiA8L3hzOmNvbXBsZXhUeXBlPgogPHhzO mVsZW1lbnQgdHlwZT0idG5zOkV4YW1wbGVTdHJ1Y3QiIG5hbWU9IkV4YW1wbGVTdHJ1Y3QiL z4KIDx4czpjb21wbGV4VHlwZSBuYW1lPSJMaXN0T2ZFeGFtcGxlU3RydWN0Ij4KICA8eHM6c 2VxdWVuY2U+CiAgIDx4czplbGVtZW50IG1pbk9jY3Vycz0iMCIgbWF4T2NjdXJzPSJ1bmJvd W5kZWQiIHR5cGU9InRuczpFeGFtcGxlU3RydWN0IiBuYW1lPSJFeGFtcGxlU3RydWN0IiBua WxsYWJsZT0idHJ1ZSIvPgogIDwveHM6c2VxdWVuY2U+CiA8L3hzOmNvbXBsZXhUeXBlPgogP HhzOmVsZW1lbnQgdHlwZT0idG5zOkxpc3RPZkV4YW1wbGVTdHJ1Y3QiIG5hbWU9Ikxpc3RPZ kV4YW1wbGVTdHJ1Y3QiIG5pbGxhYmxlPSJ0cnVlIi8+CjwveHM6c2NoZW1hPgo= NamespaceUri i=68 ns=1;i=6004 http://yourorganisation.org/struct_enum_example/Types.xsd MyVar i=63 i=85 Default Binary ns=1;i=3003 i=76 ns=1;i=6006 Default XML ns=1;i=3003 i=76 ns=1;i=6007 python-opcua-0.98.9/tests/example.bsd000066400000000000000000000322361357637245100175610ustar00rootroot00000000000000 python-opcua-0.98.9/tests/test_opclab_internet.sh000066400000000000000000000001131357637245100221640ustar00rootroot00000000000000python3 test_server.py opc.tcp://opcua.demo-this.com:51210/UA/SampleServer python-opcua-0.98.9/tests/tests.py000066400000000000000000000017031357637245100171430ustar00rootroot00000000000000import unittest import logging import sys sys.path.insert(0, "..") sys.path.insert(0, ".") from tests_cmd_lines import TestCmdLines from tests_server import TestServer, TestServerCaching, TestServerStartError from tests_client import TestClient from tests_subscriptions import SubscriptionTestCustomServer from tests_standard_address_space import StandardAddressSpaceTests from tests_unit import TestUnit, TestMaskEnum from tests_history import TestHistory, TestHistorySQL, TestHistoryLimits, TestHistorySQLLimits from tests_crypto_connect import TestCryptoConnect from tests_uaerrors import TestUaErrors from tests_custom_structures import TypeDictionaryBuilderTest if __name__ == '__main__': logging.basicConfig(level=logging.WARNING) #l = logging.getLogger("opcua.server.internal_subscription") #l.setLevel(logging.DEBUG) #l = logging.getLogger("opcua.server.internal_server") #l.setLevel(logging.DEBUG) unittest.main(verbosity=3) python-opcua-0.98.9/tests/tests_client.py000066400000000000000000000132351357637245100205040ustar00rootroot00000000000000import unittest from opcua import Client from opcua import Server from opcua import ua from opcua.client.ua_client import UASocketClient from opcua.common.utils import SocketWrapper from tests_subscriptions import SubscriptionTests from tests_common import CommonTests, add_server_methods from tests_xml import XmlTests from tests_enum_struct import add_server_custom_enum_struct port_num1 = 48510 class TestClient(unittest.TestCase, CommonTests, SubscriptionTests, XmlTests): ''' Run common tests on client side Of course we need a server so we start also start a server Tests that can only be run on client side must be defined in this class ''' @classmethod def setUpClass(cls): # start our own server cls.srv = Server() cls.srv.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(port_num1)) add_server_methods(cls.srv) add_server_custom_enum_struct(cls.srv) cls.srv.start() # start admin client # long timeout since travis (automated testing) can be really slow cls.clt = Client('opc.tcp://admin@127.0.0.1:{0:d}'.format(port_num1), timeout=10) cls.clt.connect() cls.opc = cls.clt # start anonymous client cls.ro_clt = Client('opc.tcp://127.0.0.1:{0:d}'.format(port_num1)) cls.ro_clt.connect() @classmethod def tearDownClass(cls): #stop our clients cls.ro_clt.disconnect() cls.clt.disconnect() # stop the server cls.srv.stop() def test_service_fault(self): request = ua.ReadRequest() request.TypeId = ua.FourByteNodeId(999) # bad type! with self.assertRaises(ua.UaStatusCodeError): self.clt.uaclient._uasocket.send_request(request) def test_objects_anonymous(self): objects = self.ro_clt.get_objects_node() with self.assertRaises(ua.UaStatusCodeError): objects.set_attribute(ua.AttributeIds.WriteMask, ua.DataValue(999)) with self.assertRaises(ua.UaStatusCodeError): f = objects.add_folder(3, 'MyFolder') def test_folder_anonymous(self): objects = self.clt.get_objects_node() f = objects.add_folder(3, 'MyFolderRO') f_ro = self.ro_clt.get_node(f.nodeid) self.assertEqual(f, f_ro) with self.assertRaises(ua.UaStatusCodeError): f2 = f_ro.add_folder(3, 'MyFolder2') def test_variable_anonymous(self): objects = self.clt.get_objects_node() v = objects.add_variable(3, 'MyROVariable', 6) v.set_value(4) # this should work v_ro = self.ro_clt.get_node(v.nodeid) with self.assertRaises(ua.UaStatusCodeError): v_ro.set_value(2) self.assertEqual(v_ro.get_value(), 4) v.set_writable(True) v_ro.set_value(2) # now it should work self.assertEqual(v_ro.get_value(), 2) v.set_writable(False) with self.assertRaises(ua.UaStatusCodeError): v_ro.set_value(9) self.assertEqual(v_ro.get_value(), 2) def test_multiple_read_and_write(self): objects = self.srv.get_objects_node() f = objects.add_folder(3, 'Multiple_read_write_test') v1 = f.add_variable(3, "a", 1) v1.set_writable() v2 = f.add_variable(3, "b", 2) v2.set_writable() v3 = f.add_variable(3, "c", 3) v3.set_writable() v_ro = f.add_variable(3, "ro", 3) vals = self.ro_clt.get_values([v1, v2, v3]) self.assertEqual(vals, [1, 2, 3]) self.ro_clt.set_values([v1, v2, v3], [4, 5, 6]) vals = self.ro_clt.get_values([v1, v2, v3]) self.assertEqual(vals, [4, 5, 6]) with self.assertRaises(ua.uaerrors.BadUserAccessDenied): self.ro_clt.set_values([v1, v2, v_ro], [4, 5, 6]) def test_context_manager(self): """ Context manager calls connect() and disconnect() """ state = [0] def increment_state(self, *args, **kwargs): state[0] += 1 # create client and replace instance methods with dummy methods client = Client('opc.tcp://dummy_address:10000') client.connect = increment_state.__get__(client) client.disconnect = increment_state.__get__(client) assert state[0] == 0 with client: # test if client connected self.assertEqual(state[0], 1) # test if client disconnected self.assertEqual(state[0], 2) def test_enumstrings_getvalue(self): ''' The real exception is server side, but is detected by using a client. Alldue the server trace is also visible on the console. The client only 'sees' an TimeoutError ''' nenumstrings = self.clt.get_node(ua.ObjectIds.AxisScaleEnumeration_EnumStrings) with self.assertNotRaises(Exception): value = ua.Variant(nenumstrings.get_value()) def test_uasocketclient_connect_disconnect(self): """Initialize, connect, and disconnect a UaSocketClient """ uaclt = UASocketClient() uaclt.connect_socket('127.0.0.1', port_num1) self.assertTrue(uaclt._thread.is_alive()) self.assertIsInstance(uaclt._socket, SocketWrapper) # disconnect_socket() should shut down the receiving thread uaclt.disconnect_socket() self.assertFalse(uaclt._thread.is_alive()) def test_custom_enum_struct(self): self.ro_clt.load_type_definitions() ns = self.ro_clt.get_namespace_index('http://yourorganisation.org/struct_enum_example/') myvar = self.ro_clt.get_node(ua.NodeId(6009, ns)) val = myvar.get_value() self.assertEqual(val.IntVal1, 242) self.assertEqual(val.EnumVal, ua.ExampleEnum.EnumVal2) python-opcua-0.98.9/tests/tests_cmd_lines.py000066400000000000000000000035021357637245100211570ustar00rootroot00000000000000import unittest import subprocess from opcua import Server port_num = 48530 class TestCmdLines(unittest.TestCase): ''' Test command lines ''' @classmethod def setUpClass(cls): cls.srv = Server() cls.srv_url = 'opc.tcp://127.0.0.1:{0:d}'.format(port_num) cls.srv.set_endpoint(cls.srv_url) objects = cls.srv.get_objects_node() obj = objects.add_object(4, "directory") var = obj.add_variable(4, "variable", 1.999) var2 = obj.add_variable(4, "variable2", 1.777) var2.set_writable() cls.srv.start() def test_uals(self): s = subprocess.check_output(["python", "tools/uals", "--url", self.srv_url]) self.assertIn(b"i=85", s) self.assertNotIn(b"i=89", s) self.assertNotIn(b"1.999", s) s = subprocess.check_output(["python", "tools/uals", "--url", self.srv_url, "-d", "3"]) self.assertIn(b"1.999", s) def test_uaread(self): s = subprocess.check_output(["python", "tools/uaread", "--url", self.srv_url, "--path", "0:Objects,4:directory,4:variable"]) self.assertIn(b"1.999", s) def test_uawrite(self): s = subprocess.check_output(["python", "tools/uawrite", "--url", self.srv_url, "--path", "0:Objects,4:directory,4:variable2", "1.789"]) s = subprocess.check_output(["python", "tools/uaread", "--url", self.srv_url, "--path", "0:Objects,4:directory,4:variable2"]) self.assertIn(b"1.789", s) self.assertNotIn(b"1.999", s) def test_uadiscover(self): s = subprocess.check_output(["python", "tools/uadiscover", "--url", self.srv_url]) self.assertIn(b"opc.tcp://127.0.0.1", s) self.assertIn(b"FreeOpcUa", s) self.assertIn(b"urn:freeopcua:python:server", s) @classmethod def tearDownClass(cls): cls.srv.stop() python-opcua-0.98.9/tests/tests_common.py000066400000000000000000001120261357637245100205140ustar00rootroot00000000000000# encoding: utf-8 from concurrent.futures import Future, TimeoutError import time from datetime import datetime from datetime import timedelta import math from contextlib import contextmanager from opcua import ua from opcua import Node from opcua import uamethod from opcua import instantiate from opcua import copy_node from opcua.common import ua_utils from opcua.common.methods import call_method_full def add_server_methods(srv): @uamethod def func(parent, value): return value * 2 o = srv.get_objects_node() v = o.add_method(ua.NodeId("ServerMethod", 2), ua.QualifiedName('ServerMethod', 2), func, [ua.VariantType.Int64], [ua.VariantType.Int64]) @uamethod def func2(parent, methodname, value): if methodname == "panic": return ua.StatusCode(ua.StatusCodes.BadOutOfMemory) if methodname != "sin": res = ua.CallMethodResult() res.StatusCode = ua.StatusCode(ua.StatusCodes.BadInvalidArgument) res.InputArgumentResults = [ua.StatusCode(ua.StatusCodes.BadNotSupported), ua.StatusCode()] return res return math.sin(value) o = srv.get_objects_node() v = o.add_method(ua.NodeId("ServerMethodArray", 2), ua.QualifiedName('ServerMethodArray', 2), func2, [ua.VariantType.String, ua.VariantType.Int64], [ua.VariantType.Int64]) @uamethod def func3(parent, mylist): return [i * 2 for i in mylist] o = srv.get_objects_node() v = o.add_method(ua.NodeId("ServerMethodArray2", 2), ua.QualifiedName('ServerMethodArray2', 2), func3, [ua.VariantType.Int64], [ua.VariantType.Int64]) @uamethod def func4(parent): return None base_otype= srv.get_node(ua.ObjectIds.BaseObjectType) custom_otype = base_otype.add_object_type(2, 'ObjectWithMethodsType') custom_otype.add_method(2, 'ServerMethodDefault', func4) custom_otype.add_method(2, 'ServerMethodMandatory', func4).set_modelling_rule(True) custom_otype.add_method(2, 'ServerMethodOptional', func4).set_modelling_rule(False) custom_otype.add_method(2, 'ServerMethodNone', func4).set_modelling_rule(None) o.add_object(2, 'ObjectWithMethods', custom_otype) @uamethod def func5(parent): return 1,2,3 o = srv.get_objects_node() v = o.add_method(ua.NodeId("ServerMethodTuple", 2), ua.QualifiedName('ServerMethodTuple', 2), func5, [], [ua.VariantType.Int64, ua.VariantType.Int64, ua.VariantType.Int64]) class CommonTests(object): ''' Tests that will be run twice. Once on server side and once on client side since we have been carefull to have the exact same api on server and client side ''' # jyst to avoid editor warnings opc = None assertEqual = lambda x, y: True assertIn = lambda x, y: True @contextmanager def assertNotRaises(self, exc_type): try: yield None except exc_type: raise self.failureException('{} raised'.format(exc_type.__name__)) def test_find_servers(self): servers = self.opc.find_servers() # FIXME : finish def test_add_node_bad_args(self): obj = self.opc.get_objects_node() with self.assertRaises(TypeError): fold = obj.add_folder(1.2, "kk") with self.assertRaises(TypeError): fold = obj.add_folder(ua.UaError, "khjh") with self.assertRaises(ua.UaError): fold = obj.add_folder("kjk", 1.2) with self.assertRaises(TypeError): fold = obj.add_folder("i=0;s='oooo'", 1.2) with self.assertRaises(ua.UaError): fold = obj.add_folder("i=0;s='oooo'", "tt:oioi") def test_delete_nodes(self): obj = self.opc.get_objects_node() fold = obj.add_folder(2, "FolderToDelete") var = fold.add_variable(2, "VarToDelete", 9.1) childs = fold.get_children() self.assertIn(var, childs) self.opc.delete_nodes([var]) with self.assertRaises(ua.UaStatusCodeError): var.set_value(7.8) with self.assertRaises(ua.UaStatusCodeError): obj.get_child(["2:FolderToDelete", "2:VarToDelete"]) childs = fold.get_children() self.assertNotIn(var, childs) def test_delete_nodes_recursive(self): obj = self.opc.get_objects_node() fold = obj.add_folder(2, "FolderToDeleteR") var = fold.add_variable(2, "VarToDeleteR", 9.1) self.opc.delete_nodes([fold, var]) with self.assertRaises(ua.UaStatusCodeError): var.set_value(7.8) with self.assertRaises(ua.UaStatusCodeError): obj.get_child(["2:FolderToDelete", "2:VarToDelete"]) def test_delete_nodes_recursive2(self): obj = self.opc.get_objects_node() fold = obj.add_folder(2, "FolderToDeleteRoot") nfold = fold mynodes = [] for i in range(7): nfold = fold.add_folder(2, "FolderToDeleteRoot") var = fold.add_variable(2, "VarToDeleteR", 9.1) var = fold.add_property(2, "ProToDeleteR", 9.1) prop = fold.add_property(2, "ProToDeleteR", 9.1) o = fold.add_object(3, "ObjToDeleteR") o_var = o.add_variable(3, "VarToDeleteRR", 9.2) o_prop = o.add_property(3, "PropToDeleteRR", 9.2) mynodes.append(nfold) mynodes.append(var) mynodes.append(prop) mynodes.append(o) mynodes.append(o_var) mynodes.append(o_prop) self.opc.delete_nodes([fold], recursive=True) for node in mynodes: with self.assertRaises(ua.UaStatusCodeError): node.get_browse_name() def test_delete_references(self): newtype = self.opc.get_node(ua.ObjectIds.HierarchicalReferences).add_reference_type(0, "HasSuperSecretVariable") obj = self.opc.get_objects_node() fold = obj.add_folder(2, "FolderToRef") var = fold.add_variable(2, "VarToRef", 42) fold.add_reference(var, newtype) self.assertEqual(var.get_referenced_nodes(newtype), [fold]) self.assertEqual(fold.get_referenced_nodes(newtype), [var]) fold.delete_reference(var, newtype) self.assertEqual(var.get_referenced_nodes(newtype), []) self.assertEqual(fold.get_referenced_nodes(newtype), []) fold.add_reference(var, newtype, bidirectional=False) self.assertEqual(var.get_referenced_nodes(newtype), []) self.assertEqual(fold.get_referenced_nodes(newtype), [var]) fold.delete_reference(var, newtype) self.assertEqual(var.get_referenced_nodes(newtype), []) self.assertEqual(fold.get_referenced_nodes(newtype), []) var.add_reference(fold, newtype, forward=False, bidirectional=False) self.assertEqual(var.get_referenced_nodes(newtype), [fold]) self.assertEqual(fold.get_referenced_nodes(newtype), []) with self.assertRaises(ua.UaStatusCodeError): fold.delete_reference(var, newtype) self.assertEqual(var.get_referenced_nodes(newtype), [fold]) self.assertEqual(fold.get_referenced_nodes(newtype), []) with self.assertRaises(ua.UaStatusCodeError): var.delete_reference(fold, newtype) self.assertEqual(var.get_referenced_nodes(newtype), [fold]) self.assertEqual(fold.get_referenced_nodes(newtype), []) var.delete_reference(fold, newtype, forward=False) self.assertEqual(var.get_referenced_nodes(newtype), []) self.assertEqual(fold.get_referenced_nodes(newtype), []) # clean-up self.opc.delete_nodes([fold, newtype], recursive=True) def test_server_node(self): node = self.opc.get_server_node() self.assertEqual(ua.QualifiedName('Server', 0), node.get_browse_name()) def test_root(self): root = self.opc.get_root_node() self.assertEqual(ua.QualifiedName('Root', 0), root.get_browse_name()) self.assertEqual(ua.LocalizedText('Root'), root.get_display_name()) nid = ua.NodeId(84, 0) self.assertEqual(nid, root.nodeid) def test_objects(self): objects = self.opc.get_objects_node() self.assertEqual(ua.QualifiedName('Objects', 0), objects.get_browse_name()) nid = ua.NodeId(85, 0) self.assertEqual(nid, objects.nodeid) def test_browse(self): objects = self.opc.get_objects_node() obj = objects.add_object(4, "browsetest") folder = obj.add_folder(4, "folder") prop = obj.add_property(4, "property", 1) prop2 = obj.add_property(4, "property2", 2) var = obj.add_variable(4, "variable", 3) obj2 = obj.add_object(4, "obj") alle = obj.get_children() self.assertTrue(prop in alle) self.assertTrue(prop2 in alle) self.assertTrue(var in alle) self.assertTrue(folder in alle) self.assertFalse(obj in alle) props = obj.get_children(refs=ua.ObjectIds.HasProperty) self.assertTrue(prop in props) self.assertTrue(prop2 in props) self.assertFalse(var in props) self.assertFalse(folder in props) self.assertFalse(obj2 in props) all_vars = obj.get_children(nodeclassmask=ua.NodeClass.Variable) self.assertTrue(prop in all_vars) self.assertTrue(var in all_vars) self.assertFalse(folder in props) self.assertFalse(obj2 in props) all_objs = obj.get_children(nodeclassmask=ua.NodeClass.Object) self.assertTrue(folder in all_objs) self.assertTrue(obj2 in all_objs) self.assertFalse(var in all_objs) def test_browse_references(self): objects = self.opc.get_objects_node() folder = objects.add_folder(4, "folder") childs = objects.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Forward, includesubtypes=False) self.assertTrue(folder in childs) childs = objects.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Both, includesubtypes=False) self.assertTrue(folder in childs) childs = objects.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertFalse(folder in childs) parents = folder.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(objects in parents) parents = folder.get_referenced_nodes(refs=ua.ObjectIds.HierarchicalReferences, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(objects in parents) parent = folder.get_parent() self.assertEqual(parent, objects) def test_browsename_with_spaces(self): o = self.opc.get_objects_node() v = o.add_variable(3, 'BNVariable with spaces and %&+?/', 1.3) v2 = o.get_child("3:BNVariable with spaces and %&+?/") self.assertEqual(v, v2) def test_non_existing_path(self): root = self.opc.get_root_node() with self.assertRaises(ua.UaStatusCodeError): server_time_node = root.get_child(['0:Objects', '0:Server', '0:nonexistingnode']) def test_bad_attribute(self): root = self.opc.get_root_node() with self.assertRaises(ua.UaStatusCodeError): root.set_value(99) def test_get_node_by_nodeid(self): root = self.opc.get_root_node() server_time_node = root.get_child(['0:Objects', '0:Server', '0:ServerStatus', '0:CurrentTime']) correct = self.opc.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_CurrentTime)) self.assertEqual(server_time_node, correct) def test_datetime_read(self): time_node = self.opc.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_CurrentTime)) dt = time_node.get_value() utcnow = datetime.utcnow() delta = utcnow - dt self.assertTrue(delta < timedelta(seconds=1)) def test_datetime_write(self): time_node = self.opc.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_CurrentTime)) now = datetime.utcnow() objects = self.opc.get_objects_node() v1 = objects.add_variable(4, "test_datetime", now) tid = v1.get_value() self.assertEqual(now, tid) def test_variant_array_dim(self): objects = self.opc.get_objects_node() l = [[[1.0, 1.0, 1.0, 1.0], [2.0, 2.0, 2.0, 2.0], [3.0, 3.0, 3.0, 3.0]],[[5.0, 5.0, 5.0, 5.0], [7.0, 8.0, 9.0, 01.0], [1.0, 1.0, 1.0, 1.0]]] v = objects.add_variable(3, 'variableWithDims', l) v.set_array_dimensions([0, 0, 0]) dim = v.get_array_dimensions() self.assertEqual(dim, [0, 0, 0]) v.set_value_rank(0) rank = v.get_value_rank() self.assertEqual(rank, 0) v2 = v.get_value() self.assertEqual(v2, l) dv = v.get_data_value() self.assertEqual(dv.Value.Dimensions, [2,3,4]) l = [[[], [], []], [[], [], []]] variant = ua.Variant(l, ua.VariantType.UInt32) v = objects.add_variable(3, 'variableWithDimsEmpty', variant) v2 = v.get_value() self.assertEqual(v2, l) dv = v.get_data_value() self.assertEqual(dv.Value.Dimensions, [2,3,0]) def test_add_numeric_variable(self): objects = self.opc.get_objects_node() v = objects.add_variable('ns=3;i=888;', '3:numericnodefromstring', 99) nid = ua.NodeId(888, 3) qn = ua.QualifiedName('numericnodefromstring', 3) self.assertEqual(nid, v.nodeid) self.assertEqual(qn, v.get_browse_name()) def test_add_string_variable(self): objects = self.opc.get_objects_node() v = objects.add_variable('ns=3;s=stringid;', '3:stringnodefromstring', [68]) nid = ua.NodeId('stringid', 3) qn = ua.QualifiedName('stringnodefromstring', 3) self.assertEqual(nid, v.nodeid) self.assertEqual(qn, v.get_browse_name()) def test_utf8(self): objects = self.opc.get_objects_node() utf_string = "æøå@%&" bn = ua.QualifiedName(utf_string, 3) nid = ua.NodeId("æølå", 3) val = "æøå" v = objects.add_variable(nid, bn, val) self.assertEqual(nid, v.nodeid) val2 = v.get_value() self.assertEqual(val, val2) bn2 = v.get_browse_name() self.assertEqual(bn, bn2) def test_null_variable(self): objects = self.opc.get_objects_node() var = objects.add_variable(3, 'nullstring', "a string") var.set_value(None) val = var.get_value() self.assertEqual(val, None) var.set_value("") val = var.get_value() self.assertNotEqual(val, None) self.assertEqual(val, "") def test_variable_data_type(self): objects = self.opc.get_objects_node() var = objects.add_variable(3, 'stringfordatatype', "a string") val = var.get_data_type_as_variant_type() self.assertEqual(val, ua.VariantType.String) var = objects.add_variable(3, 'stringarrayfordatatype', ["a", "b"]) val = var.get_data_type_as_variant_type() self.assertEqual(val, ua.VariantType.String) def test_add_string_array_variable(self): objects = self.opc.get_objects_node() v = objects.add_variable('ns=3;s=stringarrayid;', '9:stringarray', ['l', 'b']) nid = ua.NodeId('stringarrayid', 3) qn = ua.QualifiedName('stringarray', 9) self.assertEqual(nid, v.nodeid) self.assertEqual(qn, v.get_browse_name()) val = v.get_value() self.assertEqual(['l', 'b'], val) def test_add_numeric_node(self): objects = self.opc.get_objects_node() nid = ua.NodeId(9999, 3) qn = ua.QualifiedName('AddNodeVar1', 3) v1 = objects.add_variable(nid, qn, 0) self.assertEqual(nid, v1.nodeid) self.assertEqual(qn, v1.get_browse_name()) def test_add_string_node(self): objects = self.opc.get_objects_node() qn = ua.QualifiedName('AddNodeVar2', 3) nid = ua.NodeId('AddNodeVar2Id', 3) v2 = objects.add_variable(nid, qn, 0) self.assertEqual(nid, v2.nodeid) self.assertEqual(qn, v2.get_browse_name()) def test_add_find_node_(self): objects = self.opc.get_objects_node() o = objects.add_object('ns=2;i=101;', '2:AddFindObject') o2 = objects.get_child('2:AddFindObject') self.assertEqual(o, o2) def test_node_path(self): objects = self.opc.get_objects_node() o = objects.add_object('ns=2;i=105;', '2:NodePathObject') root = self.opc.get_root_node() o2 = root.get_child(['0:Objects', '2:NodePathObject']) self.assertEqual(o, o2) def test_add_read_node(self): objects = self.opc.get_objects_node() o = objects.add_object('ns=2;i=102;', '2:AddReadObject') nid = ua.NodeId(102, 2) self.assertEqual(o.nodeid, nid) qn = ua.QualifiedName('AddReadObject', 2) self.assertEqual(o.get_browse_name(), qn) def test_simple_value(self): o = self.opc.get_objects_node() v = o.add_variable(3, 'VariableTestValue', 4.32) val = v.get_value() self.assertEqual(4.32, val) def test_add_exception(self): objects = self.opc.get_objects_node() o = objects.add_object('ns=2;i=103;', '2:AddReadObject') with self.assertRaises(ua.UaStatusCodeError): o2 = objects.add_object('ns=2;i=103;', '2:AddReadObject') def test_negative_value(self): o = self.opc.get_objects_node() v = o.add_variable(3, 'VariableNegativeValue', 4) v.set_value(-4.54) val = v.get_value() self.assertEqual(-4.54, val) def test_read_server_state(self): statenode = self.opc.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_State)) state = statenode.get_value() self.assertEqual(state, 0) def test_bad_node(self): bad = self.opc.get_node(ua.NodeId(999, 999)) with self.assertRaises(ua.UaStatusCodeError): bad.get_browse_name() with self.assertRaises(ua.UaStatusCodeError): bad.set_value(89) with self.assertRaises(ua.UaStatusCodeError): bad.add_object(0, "0:myobj") with self.assertRaises(ua.UaStatusCodeError): bad.get_child("0:myobj") def test_value(self): o = self.opc.get_objects_node() var = ua.Variant(1.98, ua.VariantType.Double) v = o.add_variable(3, 'VariableValue', var) val = v.get_value() self.assertEqual(1.98, val) dvar = ua.DataValue(var) dv = v.get_data_value() self.assertEqual(ua.DataValue, type(dv)) self.assertEqual(dvar.Value, dv.Value) self.assertEqual(dvar.Value, var) def test_set_value(self): o = self.opc.get_objects_node() var = ua.Variant(1.98, ua.VariantType.Double) dvar = ua.DataValue(var) v = o.add_variable(3, 'VariableValue', var) v.set_value(var.Value) v1 = v.get_value() self.assertEqual(v1, var.Value) v.set_value(var) v2 = v.get_value() self.assertEqual(v2, var.Value) v.set_data_value(dvar) v3 = v.get_data_value() self.assertEqual(v3.Value, dvar.Value) def test_array_value(self): o = self.opc.get_objects_node() v = o.add_variable(3, 'VariableArrayValue', [1, 2, 3]) val = v.get_value() self.assertEqual([1, 2, 3], val) def test_bool_variable(self): o = self.opc.get_objects_node() v = o.add_variable(3, 'BoolVariable', True) dt = v.get_data_type_as_variant_type() self.assertEqual(dt, ua.VariantType.Boolean) val = v.get_value() self.assertEqual(True, val) v.set_value(False) val = v.get_value() self.assertEqual(False, val) def test_array_size_one_value(self): o = self.opc.get_objects_node() v = o.add_variable(3, 'VariableArrayValue', [1, 2, 3]) v.set_value([1]) val = v.get_value() self.assertEqual([1], val) def test_use_namespace(self): idx_orig = 1 uri = self.opc.get_namespace_array()[idx_orig] idx = self.opc.get_namespace_index(uri) self.assertEqual(idx_orig, idx) root = self.opc.get_root_node() myvar = root.add_variable(idx, 'var_in_custom_namespace', [5]) myid = myvar.nodeid self.assertEqual(idx, myid.NamespaceIndex) def test_method(self): o = self.opc.get_objects_node() m = o.get_child("2:ServerMethod") result = o.call_method("2:ServerMethod", 2.1) self.assertEqual(result, 4.2) with self.assertRaises(ua.UaStatusCodeError): # FIXME: we should raise a more precise exception result = o.call_method("2:ServerMethod", 2.1, 89, 9) with self.assertRaises(ua.UaStatusCodeError): result = o.call_method(ua.NodeId(999), 2.1) # non existing method def test_method_array(self): o = self.opc.get_objects_node() m = o.get_child("2:ServerMethodArray") result = o.call_method(m, "sin", ua.Variant(math.pi)) self.assertTrue(result < 0.01) with self.assertRaises(ua.UaStatusCodeError) as cm: result = o.call_method(m, "cos", ua.Variant(math.pi)) self.assertEqual(cm.exception.code, ua.StatusCodes.BadInvalidArgument) with self.assertRaises(ua.UaStatusCodeError) as cm: result = o.call_method(m, "panic", ua.Variant(math.pi)) self.assertEqual(cm.exception.code, ua.StatusCodes.BadOutOfMemory) def test_method_array2(self): o = self.opc.get_objects_node() m = o.get_child("2:ServerMethodArray2") result = o.call_method(m, [1.1, 3.4, 9]) self.assertEqual(result, [2.2, 6.8, 18]) result = call_method_full(o, m, [1.1, 3.4, 9]) self.assertEqual(result.OutputArguments, [[2.2, 6.8, 18]]) def test_method_tuple(self): o = self.opc.get_objects_node() m = o.get_child("2:ServerMethodTuple") result = o.call_method(m) self.assertEqual(result, [1, 2, 3]) result = call_method_full(o, m) self.assertEqual(result.OutputArguments, [1, 2, 3]) def test_method_none(self): # this test calls the function linked to the type's method.. o = self.opc.get_node(ua.ObjectIds.BaseObjectType).get_child("2:ObjectWithMethodsType") m = o.get_child("2:ServerMethodDefault") result = o.call_method(m) self.assertEqual(result, None) result = call_method_full(o, m) self.assertEqual(result.OutputArguments, []) def test_add_nodes(self): objects = self.opc.get_objects_node() f = objects.add_folder(3, 'MyFolder') child = objects.get_child("3:MyFolder") self.assertEqual(child, f) o = f.add_object(3, 'MyObject') child = f.get_child("3:MyObject") self.assertEqual(child, o) v = f.add_variable(3, 'MyVariable', 6) child = f.get_child("3:MyVariable") self.assertEqual(child, v) p = f.add_property(3, 'MyProperty', 10) child = f.get_child("3:MyProperty") self.assertEqual(child, p) childs = f.get_children() self.assertTrue(o in childs) self.assertTrue(v in childs) self.assertTrue(p in childs) def test_modelling_rules(self): obj = self.opc.nodes.base_object_type.add_object_type(2, 'MyFooObjectType') v = obj.add_variable(2, "myvar", 1.1) v.set_modelling_rule(True) p = obj.add_property(2, "myvar", 1.1) p.set_modelling_rule(False) refs = obj.get_referenced_nodes(refs=ua.ObjectIds.HasModellingRule) self.assertEqual(len(refs), 0) refs = v.get_referenced_nodes(refs=ua.ObjectIds.HasModellingRule) self.assertEqual(refs[0], self.opc.get_node(ua.ObjectIds.ModellingRule_Mandatory)) refs = p.get_referenced_nodes(refs=ua.ObjectIds.HasModellingRule) self.assertEqual(refs[0], self.opc.get_node(ua.ObjectIds.ModellingRule_Optional)) p.set_modelling_rule(None) refs = p.get_referenced_nodes(refs=ua.ObjectIds.HasModellingRule) self.assertEqual(len(refs), 0) def test_incl_subtypes(self): base_type = self.opc.get_root_node().get_child(["0:Types", "0:ObjectTypes", "0:BaseObjectType"]) descs = base_type.get_children_descriptions(includesubtypes=True) self.assertTrue(len(descs) > 10) descs = base_type.get_children_descriptions(includesubtypes=False) self.assertEqual(len(descs), 0) def test_add_node_with_type(self): objects = self.opc.get_objects_node() f = objects.add_folder(3, 'MyFolder_TypeTest') o = f.add_object(3, 'MyObject1', ua.ObjectIds.BaseObjectType) self.assertEqual(o.get_type_definition().Identifier, ua.ObjectIds.BaseObjectType) o = f.add_object(3, 'MyObject2', ua.NodeId(ua.ObjectIds.BaseObjectType, 0)) self.assertEqual(o.get_type_definition().Identifier, ua.ObjectIds.BaseObjectType) base_otype= self.opc.get_node(ua.ObjectIds.BaseObjectType) custom_otype = base_otype.add_object_type(2, 'MyFooObjectType') o = f.add_object(3, 'MyObject3', custom_otype.nodeid) self.assertEqual(o.get_type_definition().Identifier, custom_otype.nodeid.Identifier) references = o.get_references(refs=ua.ObjectIds.HasTypeDefinition, direction=ua.BrowseDirection.Forward) self.assertEqual(len(references), 1) self.assertEqual(references[0].NodeId, custom_otype.nodeid) def test_references_for_added_nodes(self): objects = self.opc.get_objects_node() o = objects.add_object(3, 'MyObject') nodes = objects.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Forward, includesubtypes=False) self.assertTrue(o in nodes) nodes = o.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(objects in nodes) self.assertEqual(o.get_parent(), objects) self.assertEqual(o.get_type_definition().Identifier, ua.ObjectIds.BaseObjectType) self.assertEqual(o.get_references(ua.ObjectIds.HasModellingRule), []) o2 = o.add_object(3, 'MySecondObject') nodes = o.get_referenced_nodes(refs=ua.ObjectIds.HasComponent, direction=ua.BrowseDirection.Forward, includesubtypes=False) self.assertTrue(o2 in nodes) nodes = o2.get_referenced_nodes(refs=ua.ObjectIds.HasComponent, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(o in nodes) self.assertEqual(o2.get_parent(), o) self.assertEqual(o2.get_type_definition().Identifier, ua.ObjectIds.BaseObjectType) self.assertEqual(o2.get_references(ua.ObjectIds.HasModellingRule), []) v = o.add_variable(3, 'MyVariable', 6) nodes = o.get_referenced_nodes(refs=ua.ObjectIds.HasComponent, direction=ua.BrowseDirection.Forward, includesubtypes=False) self.assertTrue(v in nodes) nodes = v.get_referenced_nodes(refs=ua.ObjectIds.HasComponent, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(o in nodes) self.assertEqual(v.get_parent(), o) self.assertEqual(v.get_type_definition().Identifier, ua.ObjectIds.BaseDataVariableType) self.assertEqual(v.get_references(ua.ObjectIds.HasModellingRule), []) p = o.add_property(3, 'MyProperty', 2) nodes = o.get_referenced_nodes(refs=ua.ObjectIds.HasProperty, direction=ua.BrowseDirection.Forward, includesubtypes=False) self.assertTrue(p in nodes) nodes = p.get_referenced_nodes(refs=ua.ObjectIds.HasProperty, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(o in nodes) self.assertEqual(p.get_parent(), o) self.assertEqual(p.get_type_definition().Identifier, ua.ObjectIds.PropertyType) self.assertEqual(p.get_references(ua.ObjectIds.HasModellingRule), []) m = objects.get_child("2:ServerMethod") self.assertEqual(m.get_references(ua.ObjectIds.HasModellingRule), []) def test_path_string(self): o = self.opc.nodes.objects.add_folder(1, "titif").add_object(3, "opath") path = o.get_path(as_string=True) self.assertEqual(["0:Root", "0:Objects", "1:titif", "3:opath"], path) path = o.get_path(2, as_string=True) self.assertEqual(["1:titif", "3:opath"], path) def test_path(self): of = self.opc.nodes.objects.add_folder(1, "titif") op = of.add_object(3, "opath") path = op.get_path() self.assertEqual([self.opc.nodes.root, self.opc.nodes.objects, of, op], path) path = op.get_path(2) self.assertEqual([of, op], path) target = self.opc.get_node("i=13387") path = target.get_path() self.assertEqual([self.opc.nodes.root, self.opc.nodes.types, self.opc.nodes.object_types, self.opc.nodes.base_object_type, self.opc.nodes.folder_type, self.opc.get_node(ua.ObjectIds.FileDirectoryType), target], path) def test_get_endpoints(self): endpoints = self.opc.get_endpoints() self.assertTrue(len(endpoints) > 0) self.assertTrue(endpoints[0].EndpointUrl.startswith("opc.tcp://")) def test_copy_node(self): dev_t = self.opc.nodes.base_data_type.add_object_type(0, "MyDevice") v_t = dev_t.add_variable(0, "sensor", 1.0) p_t = dev_t.add_property(0, "sensor_id", "0340") ctrl_t = dev_t.add_object(0, "controller") prop_t = ctrl_t.add_property(0, "state", "Running") # Create device sutype devd_t = dev_t.add_object_type(0, "MyDeviceDervived") v_t = devd_t.add_variable(0, "childparam", 1.0) p_t = devd_t.add_property(0, "sensorx_id", "0340") nodes = copy_node(self.opc.nodes.objects, dev_t) mydevice = nodes[0] self.assertEqual(mydevice.get_node_class(), ua.NodeClass.ObjectType) self.assertEqual(len(mydevice.get_children()), 4) obj = mydevice.get_child(["0:controller"]) prop = mydevice.get_child(["0:controller", "0:state"]) self.assertEqual(prop.get_type_definition().Identifier, ua.ObjectIds.PropertyType) self.assertEqual(prop.get_value(), "Running") self.assertNotEqual(prop.nodeid, prop_t.nodeid) def test_instantiate_1(self): # Create device type dev_t = self.opc.nodes.base_object_type.add_object_type(0, "MyDevice") v_t = dev_t.add_variable(0, "sensor", 1.0) v_t.set_modelling_rule(True) p_t = dev_t.add_property(0, "sensor_id", "0340") p_t.set_modelling_rule(True) ctrl_t = dev_t.add_object(0, "controller") ctrl_t.set_modelling_rule(True) v_opt_t = dev_t.add_variable(0, "vendor", 1.0) v_opt_t.set_modelling_rule(False) v_none_t = dev_t.add_variable(0, "model", 1.0) v_none_t.set_modelling_rule(None) prop_t = ctrl_t.add_property(0, "state", "Running") prop_t.set_modelling_rule(True) # Create device sutype devd_t = dev_t.add_object_type(0, "MyDeviceDervived") v_t = devd_t.add_variable(0, "childparam", 1.0) v_t.set_modelling_rule(True) p_t = devd_t.add_property(0, "sensorx_id", "0340") p_t.set_modelling_rule(True) # instanciate device nodes = instantiate(self.opc.nodes.objects, dev_t, bname="2:Device0001") mydevice = nodes[0] self.assertEqual(mydevice.get_node_class(), ua.NodeClass.Object) self.assertEqual(mydevice.get_type_definition(), dev_t.nodeid) obj = mydevice.get_child(["0:controller"]) prop = mydevice.get_child(["0:controller", "0:state"]) with self.assertRaises(ua.UaError): mydevice.get_child(["0:controller", "0:vendor"]) with self.assertRaises(ua.UaError): mydevice.get_child(["0:controller", "0:model"]) self.assertEqual(prop.get_type_definition().Identifier, ua.ObjectIds.PropertyType) self.assertEqual(prop.get_value(), "Running") self.assertNotEqual(prop.nodeid, prop_t.nodeid) # instanciate device subtype nodes = instantiate(self.opc.nodes.objects, devd_t, bname="2:Device0002") mydevicederived = nodes[0] prop1 = mydevicederived.get_child(["0:sensorx_id"]) var1 = mydevicederived.get_child(["0:childparam"]) var_parent = mydevicederived.get_child(["0:sensor"]) prop_parent = mydevicederived.get_child(["0:sensor_id"]) def test_instantiate_string_nodeid(self): # Create device type dev_t = self.opc.nodes.base_object_type.add_object_type(0, "MyDevice2") v_t = dev_t.add_variable(0, "sensor", 1.0) v_t.set_modelling_rule(True) p_t = dev_t.add_property(0, "sensor_id", "0340") p_t.set_modelling_rule(True) ctrl_t = dev_t.add_object(0, "controller") ctrl_t.set_modelling_rule(True) prop_t = ctrl_t.add_property(0, "state", "Running") prop_t.set_modelling_rule(True) # instanciate device nodes = instantiate(self.opc.nodes.objects, dev_t, nodeid=ua.NodeId("InstDevice", 2, ua.NodeIdType.String), bname="2:InstDevice") mydevice = nodes[0] self.assertEqual(mydevice.get_node_class(), ua.NodeClass.Object) self.assertEqual(mydevice.get_type_definition(), dev_t.nodeid) obj = mydevice.get_child(["0:controller"]) obj_nodeid_ident = obj.nodeid.Identifier prop = mydevice.get_child(["0:controller", "0:state"]) self.assertEqual(obj_nodeid_ident, "InstDevice.controller") self.assertEqual(prop.get_type_definition().Identifier, ua.ObjectIds.PropertyType) self.assertEqual(prop.get_value(), "Running") self.assertNotEqual(prop.nodeid, prop_t.nodeid) def test_variable_with_datatype(self): v1 = self.opc.nodes.objects.add_variable(3, 'VariableEnumType1', ua.ApplicationType.ClientAndServer, datatype=ua.NodeId(ua.ObjectIds.ApplicationType)) tp1 = v1.get_data_type() self.assertEqual(ua.NodeId(ua.ObjectIds.ApplicationType), tp1) v2 = self.opc.nodes.objects.add_variable(3, 'VariableEnumType2', ua.ApplicationType.ClientAndServer, datatype=ua.NodeId(ua.ObjectIds.ApplicationType) ) tp2 = v2.get_data_type() self.assertEqual( ua.NodeId(ua.ObjectIds.ApplicationType), tp2) def test_enum(self): # create enum type enums = self.opc.get_root_node().get_child(["0:Types", "0:DataTypes", "0:BaseDataType", "0:Enumeration"]) myenum_type = enums.add_data_type(0, "MyEnum") es = myenum_type.add_variable(0, "EnumStrings", [ua.LocalizedText("String0"), ua.LocalizedText("String1"), ua.LocalizedText("String2")], ua.VariantType.LocalizedText) #es.set_value_rank(1) # instantiate o = self.opc.get_objects_node() myvar = o.add_variable(2, "MyEnumVar", ua.LocalizedText("String1"), datatype=myenum_type.nodeid) #myvar.set_writable(True) # tests self.assertEqual(myvar.get_data_type(), myenum_type.nodeid) myvar.set_value(ua.LocalizedText("String2")) def test_supertypes(self): nint32 = self.opc.get_node(ua.ObjectIds.Int32) node = ua_utils.get_node_supertype(nint32) self.assertEqual(node, self.opc.get_node(ua.ObjectIds.Integer)) nodes = ua_utils.get_node_supertypes(nint32) self.assertEqual(nodes[1], self.opc.get_node(ua.ObjectIds.Number)) self.assertEqual(nodes[0], self.opc.get_node(ua.ObjectIds.Integer)) # test custom dtype = nint32.add_data_type(0, "MyCustomDataType") node = ua_utils.get_node_supertype(dtype) self.assertEqual(node, nint32) dtype2 = dtype.add_data_type(0, "MyCustomDataType2") node = ua_utils.get_node_supertype(dtype2) self.assertEqual(node, dtype) def test_base_data_type(self): nint32 = self.opc.get_node(ua.ObjectIds.Int32) dtype = nint32.add_data_type(0, "MyCustomDataType") dtype2 = dtype.add_data_type(0, "MyCustomDataType2") self.assertEqual(ua_utils.get_base_data_type(dtype), nint32) self.assertEqual(ua_utils.get_base_data_type(dtype2), nint32) ext = self.opc.nodes.objects.add_variable(0, "MyExtensionObject", ua.Argument()) d = ext.get_data_type() d = self.opc.get_node(d) self.assertEqual(ua_utils.get_base_data_type(d), self.opc.get_node(ua.ObjectIds.Structure)) self.assertEqual(ua_utils.data_type_to_variant_type(d), ua.VariantType.ExtensionObject) def test_data_type_to_variant_type(self): test_data = { ua.ObjectIds.Boolean: ua.VariantType.Boolean, ua.ObjectIds.Byte: ua.VariantType.Byte, ua.ObjectIds.String: ua.VariantType.String, ua.ObjectIds.Int32: ua.VariantType.Int32, ua.ObjectIds.UInt32: ua.VariantType.UInt32, ua.ObjectIds.NodeId: ua.VariantType.NodeId, ua.ObjectIds.LocalizedText: ua.VariantType.LocalizedText, ua.ObjectIds.Structure: ua.VariantType.ExtensionObject, ua.ObjectIds.EnumValueType: ua.VariantType.ExtensionObject, ua.ObjectIds.Enumeration: ua.VariantType.Int32, # enumeration ua.ObjectIds.AttributeWriteMask: ua.VariantType.UInt32, ua.ObjectIds.AxisScaleEnumeration: ua.VariantType.Int32 # enumeration } for dt, vdt in test_data.items(): self.assertEqual(ua_utils.data_type_to_variant_type(self.opc.get_node(ua.NodeId(dt))), vdt) python-opcua-0.98.9/tests/tests_crypto_connect.py000066400000000000000000000071761357637245100222660ustar00rootroot00000000000000import unittest from opcua import Client from opcua import Server from opcua import ua try: from opcua.crypto import uacrypto from opcua.crypto import security_policies except ImportError: print("WARNING: CRYPTO NOT AVAILABLE, CRYPTO TESTS DISABLED!!") disable_crypto_tests = True else: disable_crypto_tests = False port_num1 = 48515 port_num2 = 48512 @unittest.skipIf(disable_crypto_tests, "crypto not available") class TestCryptoConnect(unittest.TestCase): ''' Test connectino with a server supporting crypto ''' @classmethod def setUpClass(cls): # start our own server cls.srv_crypto = Server() cls.uri_crypto = 'opc.tcp://127.0.0.1:{0:d}'.format(port_num1) cls.srv_crypto.set_endpoint(cls.uri_crypto) # load server certificate and private key. This enables endpoints # with signing and encryption. cls.srv_crypto.load_certificate("examples/certificate-example.der") cls.srv_crypto.load_private_key("examples/private-key-example.pem") cls.srv_crypto.start() # start a server without crypto cls.srv_no_crypto = Server() cls.uri_no_crypto = 'opc.tcp://127.0.0.1:{0:d}'.format(port_num2) cls.srv_no_crypto.set_endpoint(cls.uri_no_crypto) cls.srv_no_crypto.start() @classmethod def tearDownClass(cls): # stop the server cls.srv_no_crypto.stop() cls.srv_crypto.stop() def test_nocrypto(self): clt = Client(self.uri_no_crypto) clt.connect() try: clt.get_objects_node().get_children() finally: clt.disconnect() def test_nocrypto_fail(self): clt = Client(self.uri_no_crypto) with self.assertRaises(ua.UaError): clt.set_security_string("Basic256Sha256,Sign,examples/certificate-example.der,examples/private-key-example.pem") def test_basic256sha256(self): clt = Client(self.uri_crypto) try: clt.set_security_string("Basic256Sha256,Sign,examples/certificate-example.der,examples/private-key-example.pem") clt.connect() self.assertTrue(clt.get_objects_node().get_children()) finally: clt.disconnect() def test_basic256sha256_encrypt(self): clt = Client(self.uri_crypto) try: clt.set_security_string("Basic256Sha256,SignAndEncrypt,examples/certificate-example.der,examples/private-key-example.pem") clt.connect() self.assertTrue(clt.get_objects_node().get_children()) finally: clt.disconnect() def test_basic256sha56_encrypt_success(self): clt = Client(self.uri_crypto) try: clt.set_security(security_policies.SecurityPolicyBasic256Sha256, 'examples/certificate-example.der', 'examples/private-key-example.pem', None, ua.MessageSecurityMode.SignAndEncrypt ) clt.connect() self.assertTrue(clt.get_objects_node().get_children()) finally: clt.disconnect() def test_basic256sha56_encrypt_fail(self): # FIXME: how to make it fail??? clt = Client(self.uri_crypto) with self.assertRaises(ua.UaError): clt.set_security(security_policies.SecurityPolicyBasic256Sha256, 'examples/certificate-example.der', 'examples/private-key-example.pem', None, ua.MessageSecurityMode.None_ ) python-opcua-0.98.9/tests/tests_custom_structures.py000066400000000000000000000442361357637245100230500ustar00rootroot00000000000000import unittest import logging import xml.etree.ElementTree as Et from opcua import ua, Server import opcua.common.type_dictionary_buider from opcua.common.type_dictionary_buider import OPCTypeDictionaryBuilder, DataTypeDictionaryBuilder from opcua.common.type_dictionary_buider import get_ua_class, StructNode port_num = 48540 idx_name = 'http://test.freeopcua.github.io' def to_camel_case(name): func = getattr(opcua.common.type_dictionary_buider, '_to_camel_case') return func(name) def reference_generator(source_id, target_id, reference_type, is_forward=True): func = getattr(opcua.common.type_dictionary_buider, '_reference_generator') return func(source_id, target_id, reference_type, is_forward) def set_up_test_tree(): ext_head_attributes = {'xmlns:xsi': 'http://www.w3.org/2001/XMLSchema-instance', 'xmlns:tns': idx_name, 'DefaultByteOrder': 'LittleEndian', 'xmlns:opc': 'http://opcfoundation.org/BinarySchema/', 'xmlns:ua': 'http://opcfoundation.org/UA/', 'TargetNamespace': idx_name} test_etree = Et.ElementTree(Et.Element('opc:TypeDictionary', ext_head_attributes)) name_space = Et.SubElement(test_etree.getroot(), 'opc:Import') name_space.attrib['Namespace'] = 'http://opcfoundation.org/UA/' return test_etree class TypeDictionaryBuilderTest(unittest.TestCase): @classmethod def setUpClass(cls): cls.srv = Server() cls.srv.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(port_num)) cls.idx = cls.srv.register_namespace(idx_name) cls.srv.start() @classmethod def tearDownClass(cls): cls.srv.stop() def setUp(self): self.test_etree = set_up_test_tree() self.opc_type_builder = OPCTypeDictionaryBuilder(idx_name) self.dict_builder = DataTypeDictionaryBuilder(self.srv, self.idx, idx_name, 'TestDict') def tearDown(self): return def test_camel_case_1(self): case = 'TurtleActionlibShapeActionFeedback' result = to_camel_case('turtle_actionlib/ShapeActionFeedback') self.assertEquals(result, case) def test_camel_case_2(self): case = 'HelloWorldFffD' result = to_camel_case('Hello#world+fff_**?&&d') self.assertEquals(result, case) def test_opc_type_dict_process_type_opc(self): case = 'opc:Boolean' result = getattr(self.opc_type_builder, '_process_type')('Boolean') self.assertEquals(result, case) def test_opc_type_dict_process_type_tns(self): case = 'tns:CustomizedStruct' result = getattr(self.opc_type_builder, '_process_type')('CustomizedStruct') self.assertEquals(result, case) def test_opc_type_dict_append_struct_1(self): case = {'BaseType': 'ua:ExtensionObject', 'Name': 'CustomizedStruct'} result = self.opc_type_builder.append_struct('CustomizedStruct') self.assertEquals(result.attrib, case) def DISABLED_test_opc_type_dict_append_struct_2(self): case = {'BaseType': 'ua:ExtensionObject', 'Name': 'CustomizedStruct'} result = self.opc_type_builder.append_struct('customized_#?+`struct') self.assertEquals(result.attrib, case) def test_opc_type_dict_add_field_1(self): structure_name = 'CustomizedStruct' self.opc_type_builder.append_struct(structure_name) self.opc_type_builder.add_field('id', ua.VariantType.Boolean, structure_name) case = {'TypeName': 'opc:Boolean', 'Name': 'id'} struct_dict = getattr(self.opc_type_builder, '_structs_dict') result = list(struct_dict[structure_name])[0] self.assertEquals(result.attrib, case) def test_opc_type_dict_add_field_2(self): structure_name = 'CustomizedStruct' self.opc_type_builder.append_struct(structure_name) self.opc_type_builder.add_field('id', 'Boolean', structure_name) case = {'TypeName': 'opc:Boolean', 'Name': 'id'} struct_dict = getattr(self.opc_type_builder, '_structs_dict') result = list(struct_dict[structure_name])[0] self.assertEquals(result.attrib, case) def test_opc_type_dict_add_field_3(self): structure_name = 'CustomizedStruct' self.opc_type_builder.append_struct(structure_name) self.opc_type_builder.add_field('id', ua.VariantType.Boolean, structure_name, is_array=True) case = [{'TypeName': 'opc:Int32', 'Name': 'NoOfid'}, {'TypeName': 'opc:Boolean', 'LengthField': 'NoOfid', 'Name': 'id'}] struct_dict = getattr(self.opc_type_builder, '_structs_dict') result = [item.attrib for item in list(struct_dict[structure_name])] self.assertTrue(len(case), len(result)) for item in case: self.assertTrue(item in result) def test_opc_type_dict_get_dict_value(self): structure_name = 'CustomizedStruct' self.opc_type_builder.append_struct(structure_name) # external tree operation appended_struct = Et.SubElement(self.test_etree.getroot(), 'opc:StructuredType') appended_struct.attrib['BaseType'] = 'ua:ExtensionObject' appended_struct.attrib['Name'] = to_camel_case(structure_name) self.opc_type_builder.add_field('id', ua.VariantType.Boolean, structure_name) # external tree operation field = Et.SubElement(appended_struct, 'opc:Field') field.attrib['Name'] = 'id' field.attrib['TypeName'] = 'opc:Boolean' case = Et.tostring(self.test_etree.getroot(), encoding='utf-8').decode("utf-8").replace(' ', '') result = self.opc_type_builder.get_dict_value().decode("utf-8").replace(' ', '').replace('\n', '') self.assertEqual(result, case) def test_reference_generator_1(self): id1 = ua.NodeId(1, namespaceidx=2, nodeidtype=ua.NodeIdType.Numeric) id2 = ua.NodeId(2, namespaceidx=2, nodeidtype=ua.NodeIdType.Numeric) ref = ua.NodeId(ua.ObjectIds.HasEncoding, 0) result = reference_generator(id1, id2, ref) self.assertTrue(result.IsForward) self.assertEqual(result.ReferenceTypeId, ref) self.assertEqual(result.SourceNodeId, id1) self.assertEqual(result.TargetNodeClass, ua.NodeClass.DataType) self.assertEqual(result.TargetNodeId, id2) def test_reference_generator_2(self): id1 = ua.NodeId(1, namespaceidx=2, nodeidtype=ua.NodeIdType.Numeric) id2 = ua.NodeId(2, namespaceidx=2, nodeidtype=ua.NodeIdType.Numeric) ref = ua.NodeId(ua.ObjectIds.HasEncoding, 0) result = reference_generator(id1, id2, ref, False) self.assertFalse(result.IsForward) self.assertEqual(result.ReferenceTypeId, ref) self.assertEqual(result.SourceNodeId, id1) self.assertEqual(result.TargetNodeClass, ua.NodeClass.DataType) self.assertEqual(result.TargetNodeId, id2) def test_data_type_dict_general(self): self.assertIsNotNone(self.dict_builder.dict_id) self.assertIsNotNone(getattr(self.dict_builder, '_type_dictionary')) def test_data_type_dict_add_dictionary(self): add_dictionary = getattr(self.dict_builder, '_add_dictionary') dict_name = 'TestDict' dict_node = self.srv.get_node(add_dictionary(dict_name)) self.assertEqual(dict_node.get_browse_name(), ua.QualifiedName(dict_name, self.idx)) self.assertEqual(dict_node.get_node_class(), ua.NodeClass.Variable) self.assertEqual(dict_node.get_parent().nodeid, ua.NodeId(ua.ObjectIds.OPCBinarySchema_TypeSystem, 0)) self.assertEqual(ua.NodeId(ua.ObjectIds.HasComponent, 0), dict_node.get_references(refs=ua.ObjectIds.HasComponent)[0].ReferenceTypeId) self.assertEqual(dict_node.get_type_definition(), ua.NodeId(ua.ObjectIds.DataTypeDictionaryType, 0)) self.assertEqual(dict_node.get_display_name(), ua.LocalizedText(dict_name)) self.assertEqual(dict_node.get_data_type(), ua.NodeId(ua.ObjectIds.ByteString)) self.assertEqual(dict_node.get_value_rank(), -1) def test_data_type_dict_create_data_type(self): type_name = 'CustomizedStruct2' created_type = self.dict_builder.create_data_type(type_name) self.assertTrue(isinstance(created_type, StructNode)) # Test data type node type_node = self.srv.get_node(created_type.data_type) self.assertEqual(type_node.get_browse_name(), ua.QualifiedName(type_name, self.idx)) self.assertEqual(type_node.get_node_class(), ua.NodeClass.DataType) self.assertEqual(type_node.get_parent().nodeid, ua.NodeId(ua.ObjectIds.Structure, 0)) self.assertEqual(ua.NodeId(ua.ObjectIds.HasSubtype, 0), type_node.get_references(refs=ua.ObjectIds.HasSubtype)[0].ReferenceTypeId) self.assertEqual(type_node.get_display_name(), ua.LocalizedText(type_name)) # Test description node desc_node = self.srv.get_node(self.dict_builder.dict_id).get_child("2:{}".format(type_name)) self.assertEqual(desc_node.get_browse_name(), ua.QualifiedName(type_name, self.idx)) self.assertEqual(desc_node.get_node_class(), ua.NodeClass.Variable) self.assertEqual(desc_node.get_parent().nodeid, self.dict_builder.dict_id) self.assertEqual(ua.NodeId(ua.ObjectIds.HasComponent, 0), desc_node.get_references(refs=ua.ObjectIds.HasComponent)[0].ReferenceTypeId) self.assertEqual(desc_node.get_type_definition(), ua.NodeId(ua.ObjectIds.DataTypeDescriptionType, 0)) self.assertEqual(desc_node.get_display_name(), ua.LocalizedText(type_name)) self.assertEqual(desc_node.get_data_type(), ua.NodeId(ua.ObjectIds.String)) self.assertEqual(desc_node.get_value(), type_name) self.assertEqual(desc_node.get_value_rank(), -1) # Test object node obj_node = type_node.get_children(refs=ua.ObjectIds.HasEncoding)[0] self.assertEqual(obj_node.get_browse_name(), ua.QualifiedName('Default Binary', 0)) self.assertEqual(obj_node.get_node_class(), ua.NodeClass.Object) self.assertEqual(obj_node.get_references(refs=ua.ObjectIds.HasEncoding)[0].NodeId, type_node.nodeid) self.assertEqual(ua.NodeId(ua.ObjectIds.HasEncoding, 0), obj_node.get_references(refs=ua.ObjectIds.HasEncoding)[0].ReferenceTypeId) self.assertEqual(obj_node.get_type_definition(), ua.NodeId(ua.ObjectIds.DataTypeEncodingType, 0)) self.assertEqual(obj_node.get_display_name(), ua.LocalizedText('Default Binary')) self.assertEqual(len(obj_node.get_event_notifier()), 0) # Test links, three were tested above struct_node = self.srv.get_node(ua.NodeId(ua.ObjectIds.Structure, 0)) struct_children = struct_node.get_children(refs=ua.ObjectIds.HasSubtype) self.assertTrue(type_node in struct_children) dict_node = self.srv.get_node(self.dict_builder.dict_id) dict_children = dict_node.get_children(refs=ua.ObjectIds.HasComponent) self.assertTrue(desc_node in dict_children) self.assertTrue(obj_node in type_node.get_children(ua.ObjectIds.HasEncoding)) self.assertTrue(desc_node in obj_node.get_children(refs=ua.ObjectIds.HasDescription)) self.assertEqual(obj_node.nodeid, desc_node.get_references(refs=ua.ObjectIds.HasDescription, direction=ua.BrowseDirection.Inverse)[0].NodeId) def test_data_type_dict_set_dict_byte_string(self): structure_name = 'CustomizedStruct' self.dict_builder.create_data_type(structure_name) self.dict_builder.add_field('id', ua.VariantType.Int32, structure_name) self.dict_builder.set_dict_byte_string() # external tree operation appended_struct = Et.SubElement(self.test_etree.getroot(), 'opc:StructuredType') appended_struct.attrib['BaseType'] = 'ua:ExtensionObject' appended_struct.attrib['Name'] = to_camel_case(structure_name) # external tree operation field = Et.SubElement(appended_struct, 'opc:Field') field.attrib['Name'] = 'id' field.attrib['TypeName'] = 'opc:Int32' case = Et.tostring(self.test_etree.getroot(), encoding='utf-8').decode("utf-8").replace(' ', '') result_string = self.srv.get_node(self.dict_builder.dict_id).get_value().decode("utf-8") result = result_string.replace(' ', '').replace('\n', '') self.assertEqual(result, case) def test_data_type_dict_add_field_1(self): struct_name = 'CustomizedStruct' self.dict_builder.create_data_type(struct_name) self.dict_builder.add_field('id', ua.VariantType.Int32, struct_name) self.dict_builder.set_dict_byte_string() self.srv.load_type_definitions() struct = get_ua_class(struct_name) self.assertEqual(struct.ua_types[0][0], 'id') self.assertEqual(struct.ua_types[0][1], 'Int32') struct_instance = struct() self.assertEqual(struct_instance.id, 0) def test_data_type_dict_add_field_2(self): struct_name = 'AnotherCustomizedStruct' self.dict_builder.create_data_type(struct_name) self.dict_builder.add_field('id', ua.VariantType.Int32, struct_name, is_array=True) self.dict_builder.set_dict_byte_string() self.srv.load_type_definitions() struct = get_ua_class(struct_name) self.assertEqual(struct.ua_types[0][0], 'id') self.assertEqual(struct.ua_types[0][1], 'ListOfInt32') struct_instance = struct() self.assertTrue(isinstance(struct_instance.id, list)) def test_struct_node_general(self): struct_name = 'CustomizedStruct' struct_node = self.dict_builder.create_data_type(struct_name) self.assertEqual(getattr(struct_node, '_type_dict'), self.dict_builder) self.assertTrue(isinstance(struct_node.data_type, ua.NodeId)) self.assertEqual(struct_node.name, struct_name) def test_struct_node_add_field(self): struct_name = 'CustomizedStruct' struct_node = self.dict_builder.create_data_type(struct_name) struct_node.add_field('id', ua.VariantType.Int32) self.dict_builder.set_dict_byte_string() self.srv.load_type_definitions() struct = get_ua_class(struct_name) self.assertEqual(struct.ua_types[0][0], 'id') self.assertEqual(struct.ua_types[0][1], 'Int32') struct_instance = struct() self.assertEqual(struct_instance.id, 0) def test_get_ua_class_1(self): struct_name = 'CustomizedStruct' struct_node = self.dict_builder.create_data_type(struct_name) struct_node.add_field('id', ua.VariantType.Int32) self.dict_builder.set_dict_byte_string() self.srv.load_type_definitions() try: self.assertIsNotNone(get_ua_class(struct_name)) except AttributeError: pass def DISABLED_test_get_ua_class_2(self): struct_name = '*c*u_stom-ized&Stru#ct' struct_node = self.dict_builder.create_data_type(struct_name) struct_node.add_field('id', ua.VariantType.Int32) self.dict_builder.set_dict_byte_string() self.srv.load_type_definitions() try: self.assertIsNotNone(get_ua_class(struct_name)) except AttributeError: pass def test_functional_basic(self): basic_struct_name = 'basic_structure' basic_struct = self.dict_builder.create_data_type(basic_struct_name) basic_struct.add_field('ID', ua.VariantType.Int32) basic_struct.add_field('Gender', ua.VariantType.Boolean) basic_struct.add_field('Comments', ua.VariantType.String) self.dict_builder.set_dict_byte_string() self.srv.load_type_definitions() basic_var = self.srv.nodes.objects.add_variable(ua.NodeId(namespaceidx=self.idx), 'BasicStruct', ua.Variant(None, ua.VariantType.Null), datatype=basic_struct.data_type) basic_msg = get_ua_class(basic_struct_name)() basic_msg.ID = 3 basic_msg.Gender = True basic_msg.Comments = 'Test string' basic_var.set_value(basic_msg) basic_result = basic_var.get_value() self.assertEqual(basic_result, basic_msg) def test_functional_advance(self): basic_struct_name = 'base_structure' basic_struct = self.dict_builder.create_data_type(basic_struct_name) basic_struct.add_field('ID', ua.VariantType.Int32) basic_struct.add_field('Gender', ua.VariantType.Boolean) basic_struct.add_field('Comments', ua.VariantType.String) nested_struct_name = 'nested_structure' nested_struct = self.dict_builder.create_data_type(nested_struct_name) nested_struct.add_field('Name', ua.VariantType.String) nested_struct.add_field('Surname', ua.VariantType.String) nested_struct.add_field('Stuff', basic_struct) self.dict_builder.set_dict_byte_string() self.srv.load_type_definitions() basic_var = self.srv.nodes.objects.add_variable(ua.NodeId(namespaceidx=self.idx), 'BaseStruct', ua.Variant(None, ua.VariantType.Null), datatype=basic_struct.data_type) basic_msg = get_ua_class(basic_struct_name)() basic_msg.ID = 3 basic_msg.Gender = True basic_msg.Comments = 'Test string' basic_var.set_value(basic_msg) nested_var = self.srv.nodes.objects.add_variable(ua.NodeId(namespaceidx=self.idx), 'NestedStruct', ua.Variant(None, ua.VariantType.Null), datatype=nested_struct.data_type) nested_msg = get_ua_class(nested_struct_name)() nested_msg.Stuff = basic_msg nested_msg.Name = 'Max' nested_msg.Surname = 'Karl' nested_var.set_value(nested_msg) basic_result = basic_var.get_value() self.assertEqual(basic_result, basic_msg) nested_result = nested_var.get_value() self.assertEqual(nested_result, nested_msg) if __name__ == '__main__': logging.basicConfig(level=logging.WARNING) unittest.main(verbosity=3) python-opcua-0.98.9/tests/tests_enum_struct.py000066400000000000000000000021571357637245100215770ustar00rootroot00000000000000from opcua import ua from opcua.ua import uatypes from enum import IntEnum class ExampleEnum(IntEnum): EnumVal1 = 0 EnumVal2 = 1 EnumVal3 = 2 import opcua.ua setattr(opcua.ua, 'ExampleEnum', ExampleEnum) class ExampleStruct(uatypes.FrozenClass): ua_types = [ ('IntVal1', 'Int16'), ('EnumVal', 'ExampleEnum'), ] def __init__(self): self.IntVal1 = 0 self.EnumVal = ExampleEnum(0) self._freeze = True def __str__(self): return 'ExampleStruct(' + 'IntVal1:' + str(self.IntVal1) + ', ' + \ 'EnumVal:' + str(self.EnumVal) + ')' __repr__ = __str__ def add_server_custom_enum_struct(server): # import some nodes from xml server.import_xml("tests/enum_struct_test_nodes.xml") ns = server.get_namespace_index('http://yourorganisation.org/struct_enum_example/') uatypes.register_extension_object('ExampleStruct', ua.NodeId(5001, ns), ExampleStruct) val = ua.ExampleStruct() val.IntVal1 = 242 val.EnumVal = ua.ExampleEnum.EnumVal2 myvar = server.get_node(ua.NodeId(6009, ns)) myvar.set_value(val) python-opcua-0.98.9/tests/tests_history.py000066400000000000000000000303401357637245100207230ustar00rootroot00000000000000import time from datetime import datetime, timedelta import unittest from opcua import Client from opcua import Server from opcua import ua from opcua.server.history_sql import HistorySQLite from opcua.server.history import HistoryDict from tests_common import CommonTests, add_server_methods from opcua.common.events import get_event_properties_from_type_node as get_props port_num1 = 48530 port_num2 = 48530 class HistoryCommon(object): srv = Server clt = Client @classmethod def start_server_and_client(cls): cls.srv = Server() cls.srv.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(port_num1)) cls.srv.start() cls.clt = Client('opc.tcp://127.0.0.1:{0:d}'.format(port_num1)) cls.clt.connect() @classmethod def stop_server_and_client(cls): cls.clt.disconnect() cls.srv.stop() @classmethod def create_var(cls): o = cls.srv.get_objects_node() cls.values = [i for i in range(20)] cls.var = o.add_variable(3, "history_var", 0) cls.srv.historize_node_data_change(cls.var, period=None, count=0) for i in cls.values: cls.var.set_value(i) time.sleep(1) # no start and no end is not defined by spec, return reverse order def test_history_var_read_one(self): # Spec says that at least two parameters should be provided, so # this one is out of spec res = self.var.read_raw_history(None, None, 1) self.assertEqual(len(res), 1) self.assertEqual(res[0].Value.Value, self.values[-1]) # no start and no end is not defined by spec, return reverse order def test_history_var_read_none(self): res = self.var.read_raw_history(None, None, 0) self.assertEqual(len(res), 20) self.assertEqual(res[0].Value.Value, self.values[-1]) self.assertEqual(res[-1].Value.Value, self.values[0]) # no start and no end is not defined by spec, return reverse order def test_history_var_read_last_3(self): res = self.var.read_raw_history(None, None, 3) self.assertEqual(len(res), 3) self.assertEqual(res[-1].Value.Value, self.values[-3]) self.assertEqual(res[0].Value.Value, self.values[-1]) # no start and no end is not defined by spec, return reverse order def test_history_var_read_all2(self): res = self.var.read_raw_history(None, None, 9999) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Value.Value, self.values[0]) self.assertEqual(res[0].Value.Value, self.values[-1]) # only has end time, should return reverse order def test_history_var_read_2_with_end(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.var.read_raw_history(None, now, 2) self.assertEqual(len(res), 2) self.assertEqual(res[-1].Value.Value, self.values[-2]) # both start and endtime, return from start to end def test_history_var_read_all(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.var.read_raw_history(old, now, 0) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Value.Value, self.values[-1]) self.assertEqual(res[0].Value.Value, self.values[0]) def test_history_var_read_5_in_timeframe(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.var.read_raw_history(old, now, 5) self.assertEqual(len(res), 5) self.assertEqual(res[-1].Value.Value, self.values[4]) self.assertEqual(res[0].Value.Value, self.values[0]) # start time greater than end time, should return reverse order def test_history_var_read_5_in_timeframe_start_greater_than_end(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.var.read_raw_history(now, old, 5) self.assertEqual(len(res), 5) self.assertEqual(res[-1].Value.Value, self.values[-5]) self.assertEqual(res[0].Value.Value, self.values[-1]) # only start return original order def test_history_var_read_6_with_start(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.var.read_raw_history(old, None, 6) self.assertEqual(len(res), 6) self.assertEqual(res[-1].Value.Value, self.values[5]) self.assertEqual(res[0].Value.Value, self.values[0]) # only start return original order def test_history_var_read_all_with_start(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.var.read_raw_history(old, None, 0) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Value.Value, self.values[-1]) self.assertEqual(res[0].Value.Value, self.values[0]) # only end return reversed order def test_history_var_read_all_with_end(self): end = datetime.utcnow() + timedelta(days=6) res = self.var.read_raw_history(None, end, 0) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Value.Value, self.values[0]) self.assertEqual(res[0].Value.Value, self.values[-1]) # only end return reversed order def test_history_var_read_3_with_end(self): end = datetime.utcnow() + timedelta(days=6) res = self.var.read_raw_history(None, end, 3) self.assertEqual(len(res), 3) self.assertEqual(res[2].Value.Value, self.values[-3]) self.assertEqual(res[0].Value.Value, self.values[-1]) class TestHistoryEvents(object): @classmethod def create_srv_events(cls): cls.ev_values = [i for i in range(20)] cls.srvevgen = cls.srv.get_event_generator() cls.srv_node = cls.srv.get_node(ua.ObjectIds.Server) cls.srv.historize_node_event(cls.srv_node, period=None) for i in cls.ev_values: cls.srvevgen.event.Severity = cls.ev_values[i] cls.srvevgen.trigger(message="test message") time.sleep(.1) time.sleep(2) # only has end time, should return reverse order def test_history_ev_read_2_with_end(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.srv_node.read_event_history(None, now, 2) self.assertEqual(len(res), 2) self.assertEqual(res[-1].Severity, self.ev_values[-2]) # both start and end time, return from start to end def test_history_ev_read_all(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.srv_node.read_event_history(old, now, 0) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Severity, self.ev_values[-1]) self.assertEqual(res[0].Severity, self.ev_values[0]) def test_history_ev_read_5_in_timeframe(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.srv_node.read_event_history(old, now, 5) self.assertEqual(len(res), 5) self.assertEqual(res[-1].Severity, self.ev_values[4]) self.assertEqual(res[0].Severity, self.ev_values[0]) # start time greater than end time, should return reverse order def test_history_ev_read_5_in_timeframe_start_greater_than_end(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.srv_node.read_event_history(now, old, 5) self.assertEqual(len(res), 5) self.assertEqual(res[-1].Severity, self.ev_values[-5]) self.assertEqual(res[0].Severity, self.ev_values[-1]) # only start return original order def test_history_ev_read_6_with_start(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.srv_node.read_event_history(old, None, 6) self.assertEqual(len(res), 6) self.assertEqual(res[-1].Severity, self.ev_values[5]) self.assertEqual(res[0].Severity, self.ev_values[0]) # only start return original order def test_history_ev_read_all_with_start(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.srv_node.read_event_history(old, None, 0) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Severity, self.ev_values[-1]) self.assertEqual(res[0].Severity, self.ev_values[0]) # only end return reversed order def test_history_ev_read_all_with_end(self): end = datetime.utcnow() + timedelta(days=6) res = self.srv_node.read_event_history(None, end, 0) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Severity, self.ev_values[0]) self.assertEqual(res[0].Severity, self.ev_values[-1]) # only end return reversed order def test_history_ev_read_3_with_end(self): end = datetime.utcnow() + timedelta(days=6) res = self.srv_node.read_event_history(None, end, 3) self.assertEqual(len(res), 3) self.assertEqual(res[2].Severity, self.ev_values[-3]) self.assertEqual(res[0].Severity, self.ev_values[-1]) # reverse event filter select clauses and test that results match the filter order def test_history_ev_read_all_filter_order_reversed(self): now = datetime.utcnow() old = now - timedelta(days=6) res = self.srv_node.read_event_history(old, None, 0) self.assertEqual(len(res), 20) self.assertEqual(res[-1].Severity, self.ev_values[-1]) self.assertEqual(res[0].Severity, self.ev_values[0]) class TestHistoryLimitsCommon(unittest.TestCase): id = ua.NodeId(123) def setUp(self): self.history = self.createHistoryInstance() def createHistoryInstance(self): assert(False) def resultCount(self): results, cont = self.history.read_node_history(self.id, None, None, None) return len(results) def addValue(self, age): value = ua.DataValue() value.SourceTimestamp = datetime.utcnow() - timedelta(hours = age) self.history.save_node_value(self.id, value) def test_count_limit(self): self.history.new_historized_node(self.id, period=None, count=3) self.assertEqual(self.resultCount(), 0) self.addValue(5) self.assertEqual(self.resultCount(), 1) self.addValue(4) self.assertEqual(self.resultCount(), 2) self.addValue(3) self.assertEqual(self.resultCount(), 3) self.addValue(2) self.assertEqual(self.resultCount(), 3) self.addValue(1) self.assertEqual(self.resultCount(), 3) def test_period_limit(self): self.history.new_historized_node(self.id, period=timedelta(hours=3)) self.assertEqual(self.resultCount(), 0) self.addValue(5) self.assertEqual(self.resultCount(), 0) self.addValue(4) self.assertEqual(self.resultCount(), 0) self.addValue(2) self.assertEqual(self.resultCount(), 1) self.addValue(1) self.assertEqual(self.resultCount(), 2) self.addValue(0) self.assertEqual(self.resultCount(), 3) def test_combined_limit(self): self.history.new_historized_node(self.id, period=timedelta(hours=3), count=2) self.assertEqual(self.resultCount(), 0) self.addValue(5) self.assertEqual(self.resultCount(), 0) self.addValue(4) self.assertEqual(self.resultCount(), 0) self.addValue(2) self.assertEqual(self.resultCount(), 1) self.addValue(1) self.assertEqual(self.resultCount(), 2) self.addValue(0) self.assertEqual(self.resultCount(), 2) class TestHistoryLimits(TestHistoryLimitsCommon): def createHistoryInstance(self): return HistoryDict() class TestHistorySQLLimits(TestHistoryLimitsCommon): def createHistoryInstance(self): return HistorySQLite(":memory:") class TestHistory(unittest.TestCase, HistoryCommon, TestHistoryEvents): @classmethod def setUpClass(cls): cls.start_server_and_client() cls.create_var() cls.create_srv_events() @classmethod def tearDownClass(cls): cls.stop_server_and_client() class TestHistorySQL(unittest.TestCase, HistoryCommon, TestHistoryEvents): @classmethod def setUpClass(cls): cls.start_server_and_client() cls.srv.iserver.history_manager.set_storage(HistorySQLite(":memory:")) cls.create_var() cls.create_srv_events() @classmethod def tearDownClass(cls): cls.stop_server_and_client() python-opcua-0.98.9/tests/tests_server.py000066400000000000000000000716241357637245100205420ustar00rootroot00000000000000import unittest import os import shelve import time from enum import EnumMeta from tests_common import CommonTests, add_server_methods from tests_xml import XmlTests from tests_subscriptions import SubscriptionTests from datetime import timedelta from tempfile import NamedTemporaryFile import opcua from opcua import Server from opcua import Client from opcua import ua from opcua import uamethod from opcua.common.event_objects import BaseEvent, AuditEvent, AuditChannelEvent, AuditSecurityEvent, AuditOpenSecureChannelEvent from opcua.common import ua_utils from opcua.server.registration_service import RegistrationService port_num = 48540 port_discovery = 48550 class TestServer(unittest.TestCase, CommonTests, SubscriptionTests, XmlTests): ''' Run common tests on server side Tests that can only be run on server side must be defined here ''' @classmethod def setUpClass(cls): cls.srv = Server() cls.srv.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(port_num)) add_server_methods(cls.srv) cls.srv.start() cls.opc = cls.srv cls.discovery = Server() cls.discovery.set_application_uri("urn:freeopcua:python:discovery") cls.discovery.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(port_discovery)) cls.discovery.start() @classmethod def tearDownClass(cls): cls.srv.stop() cls.discovery.stop() def test_discovery(self): client = Client(self.discovery.endpoint.geturl()) client.connect() try: servers = client.find_servers() new_app_uri = "urn:freeopcua:python:server:test_discovery" self.srv.set_application_uri(new_app_uri) with RegistrationService() as regService: regService.register_to_discovery(self.srv, self.discovery.endpoint.geturl(), period=0) time.sleep(0.1) # let server register registration new_servers = client.find_servers() self.assertEqual(len(new_servers) - len(servers) , 1) self.assertFalse(new_app_uri in [s.ApplicationUri for s in servers]) self.assertTrue(new_app_uri in [s.ApplicationUri for s in new_servers]) finally: client.disconnect() def test_find_servers2(self): client = Client(self.discovery.endpoint.geturl()) client.connect() try: servers = client.find_servers() # Use 2 different RegistrationServices, as it does not allow duplicate registrations. with RegistrationService() as regService1, RegistrationService() as regService2: # Register to server with uri1 new_app_uri1 = "urn:freeopcua:python:server:test_discovery1" self.srv.set_application_uri(new_app_uri1) regService1.register_to_discovery(self.srv, self.discovery.endpoint.geturl(), period=0) # Register to server with uri2 new_app_uri2 = "urn:freeopcua:python:test_discovery2" self.srv.set_application_uri(new_app_uri2) regService2.register_to_discovery(self.srv, self.discovery.endpoint.geturl(), period=0) # Check for 2 registrations time.sleep(0.1) # let server register registration new_servers = client.find_servers() self.assertEqual(len(new_servers) - len(servers) , 2) self.assertFalse(new_app_uri1 in [s.ApplicationUri for s in servers]) self.assertFalse(new_app_uri2 in [s.ApplicationUri for s in servers]) self.assertTrue(new_app_uri1 in [s.ApplicationUri for s in new_servers]) self.assertTrue(new_app_uri2 in [s.ApplicationUri for s in new_servers]) # now do a query with filter new_servers = client.find_servers(["urn:freeopcua:python:server"]) self.assertEqual(len(new_servers) - len(servers) , 0) self.assertTrue(new_app_uri1 in [s.ApplicationUri for s in new_servers]) self.assertFalse(new_app_uri2 in [s.ApplicationUri for s in new_servers]) # now do a query with filter new_servers = client.find_servers(["urn:freeopcua:python"]) self.assertEqual(len(new_servers) - len(servers) , 2) self.assertTrue(new_app_uri1 in [s.ApplicationUri for s in new_servers]) self.assertTrue(new_app_uri2 in [s.ApplicationUri for s in new_servers]) finally: client.disconnect() """ # not sure if this test is necessary, and there is a lot repetition with previous test def test_discovery_server_side(self): servers = self.discovery.find_servers() self.assertEqual(len(servers), 1) self.srv.register_to_discovery(self.discovery.endpoint.geturl(), 1) time.sleep(1) # let server register registration servers = self.discovery.find_servers() print("SERVERS 2", servers) self.assertEqual(len(servers), 2) """ # def test_register_server2(self): # servers = self.opc.register_server() def test_register_namespace(self): uri = 'http://mycustom.Namespace.com' idx1 = self.opc.register_namespace(uri) idx2 = self.opc.get_namespace_index(uri) self.assertEqual(idx1, idx2) def test_register_existing_namespace(self): uri = 'http://mycustom.Namespace.com' idx1 = self.opc.register_namespace(uri) idx2 = self.opc.register_namespace(uri) idx3 = self.opc.get_namespace_index(uri) self.assertEqual(idx1, idx2) self.assertEqual(idx1, idx3) def test_register_use_namespace(self): uri = 'http://my_very_custom.Namespace.com' idx = self.opc.register_namespace(uri) root = self.opc.get_root_node() myvar = root.add_variable(idx, 'var_in_custom_namespace', [5]) myid = myvar.nodeid self.assertEqual(idx, myid.NamespaceIndex) def test_server_method(self): def func(parent, variant): variant.Value *= 2 return [variant] o = self.opc.get_objects_node() v = o.add_method(3, 'Method1', func, [ua.VariantType.Int64], [ua.VariantType.Int64]) result = o.call_method(v, ua.Variant(2.1)) self.assertEqual(result, 4.2) def test_historize_variable(self): o = self.opc.get_objects_node() var = o.add_variable(3, "test_hist", 1.0) self.srv.iserver.enable_history_data_change(var, timedelta(days=1)) time.sleep(1) var.set_value(2.0) var.set_value(3.0) self.srv.iserver.disable_history_data_change(var) def test_historize_events(self): srv_node = self.srv.get_node(ua.ObjectIds.Server) self.assertEqual( srv_node.get_event_notifier(), {ua.EventNotifier.SubscribeToEvents} ) srvevgen = self.srv.get_event_generator() self.srv.iserver.enable_history_event(srv_node, period=None) self.assertEqual( srv_node.get_event_notifier(), {ua.EventNotifier.SubscribeToEvents, ua.EventNotifier.HistoryRead} ) srvevgen.trigger(message="Message") self.srv.iserver.disable_history_event(srv_node) def test_references_for_added_nodes_method(self): objects = self.opc.get_objects_node() o = objects.add_object(3, 'MyObject') nodes = objects.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Forward, includesubtypes=False) self.assertTrue(o in nodes) nodes = o.get_referenced_nodes(refs=ua.ObjectIds.Organizes, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(objects in nodes) self.assertEqual(o.get_parent(), objects) self.assertEqual(o.get_type_definition().Identifier, ua.ObjectIds.BaseObjectType) @uamethod def callback(parent): return m = o.add_method(3, 'MyMethod', callback) nodes = o.get_referenced_nodes(refs=ua.ObjectIds.HasComponent, direction=ua.BrowseDirection.Forward, includesubtypes=False) self.assertTrue(m in nodes) nodes = m.get_referenced_nodes(refs=ua.ObjectIds.HasComponent, direction=ua.BrowseDirection.Inverse, includesubtypes=False) self.assertTrue(o in nodes) self.assertEqual(m.get_parent(), o) # This should work for following BaseEvent tests to work (maybe to write it a bit differentlly since they are not independent) def test_get_event_from_type_node_BaseEvent(self): ev = opcua.common.events.get_event_obj_from_type_node(opcua.Node(self.opc.iserver.isession, ua.NodeId(ua.ObjectIds.BaseEventType))) check_base_event(self, ev) def test_get_event_from_type_node_Inhereted_AuditEvent(self): ev = opcua.common.events.get_event_obj_from_type_node(opcua.Node(self.opc.iserver.isession, ua.NodeId(ua.ObjectIds.AuditEventType))) self.assertIsNot(ev, None) # we did not receive event self.assertIsInstance(ev, BaseEvent) self.assertIsInstance(ev, AuditEvent) self.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.AuditEventType)) self.assertEqual(ev.Severity, 1) self.assertEqual(ev.ActionTimeStamp, None) self.assertEqual(ev.Status, False) self.assertEqual(ev.ServerId, None) self.assertEqual(ev.ClientAuditEntryId, None) self.assertEqual(ev.ClientUserId, None) def test_get_event_from_type_node_MultiInhereted_AuditOpenSecureChannelEvent(self): ev = opcua.common.events.get_event_obj_from_type_node(opcua.Node(self.opc.iserver.isession, ua.NodeId(ua.ObjectIds.AuditOpenSecureChannelEventType))) self.assertIsNot(ev, None) self.assertIsInstance(ev, BaseEvent) self.assertIsInstance(ev, AuditEvent) self.assertIsInstance(ev, AuditSecurityEvent) self.assertIsInstance(ev, AuditChannelEvent) self.assertIsInstance(ev, AuditOpenSecureChannelEvent) self.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.AuditOpenSecureChannelEventType)) self.assertEqual(ev.Severity, 1), self.assertEqual(ev.ClientCertificate, None) self.assertEqual(ev.ClientCertificateThumbprint, None) self.assertEqual(ev.RequestType, None) self.assertEqual(ev.SecurityPolicyUri, None) self.assertEqual(ev.SecurityMode, None) self.assertEqual(ev.RequestedLifetime, None) def test_eventgenerator_default(self): evgen = self.opc.get_event_generator() check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_BaseEvent_object(self): evgen = self.opc.get_event_generator(BaseEvent()) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_BaseEvent_Node(self): evgen = self.opc.get_event_generator(opcua.Node(self.opc.iserver.isession, ua.NodeId(ua.ObjectIds.BaseEventType))) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_BaseEvent_NodeId(self): evgen = self.opc.get_event_generator(ua.NodeId(ua.ObjectIds.BaseEventType)) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_BaseEvent_ObjectIds(self): evgen = self.opc.get_event_generator(ua.ObjectIds.BaseEventType) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_BaseEvent_Identifier(self): evgen = self.opc.get_event_generator(2041) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_sourceServer_Node(self): evgen = self.opc.get_event_generator(emitting_node=opcua.Node(self.opc.iserver.isession, ua.NodeId(ua.ObjectIds.Server))) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_sourceServer_NodeId(self): evgen = self.opc.get_event_generator(emitting_node=ua.NodeId(ua.ObjectIds.Server)) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_sourceServer_ObjectIds(self): evgen = self.opc.get_event_generator(emitting_node=ua.ObjectIds.Server) check_eventgenerator_BaseEvent(self, evgen) check_eventgenerator_SourceServer(self, evgen) def test_eventgenerator_sourceMyObject(self): objects = self.opc.get_objects_node() o = objects.add_object(3, 'MyObject') evgen = self.opc.get_event_generator(emitting_node=o) check_eventgenerator_BaseEvent(self, evgen) check_event_generator_object(self, evgen, o) def test_eventgenerator_source_collision(self): objects = self.opc.get_objects_node() o = objects.add_object(3, 'MyObject') event = BaseEvent(sourcenode=o.nodeid) evgen = self.opc.get_event_generator(event, ua.ObjectIds.Server) evgen.event.SourceNode = o.nodeid evgen.event.SourceName = o.get_browse_name().Name check_eventgenerator_BaseEvent(self, evgen) check_event_generator_object(self, evgen, o, emitting_node=opcua.Node(self.opc.iserver.isession, ua.ObjectIds.Server)) def test_eventgenerator_InheritedEvent(self): evgen = self.opc.get_event_generator(ua.ObjectIds.AuditEventType) check_eventgenerator_SourceServer(self, evgen) ev = evgen.event self.assertIsNot(ev, None) # we did not receive event self.assertIsInstance(ev, BaseEvent) self.assertIsInstance(ev, AuditEvent) self.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.AuditEventType)) self.assertEqual(ev.Severity, 1) self.assertEqual(ev.ActionTimeStamp, None) self.assertEqual(ev.Status, False) self.assertEqual(ev.ServerId, None) self.assertEqual(ev.ClientAuditEntryId, None) self.assertEqual(ev.ClientUserId, None) def test_eventgenerator_MultiInheritedEvent(self): evgen = self.opc.get_event_generator(ua.ObjectIds.AuditOpenSecureChannelEventType) check_eventgenerator_SourceServer(self, evgen) ev = evgen.event self.assertIsNot(ev, None) # we did not receive event self.assertIsInstance(ev, BaseEvent) self.assertIsInstance(ev, AuditEvent) self.assertIsInstance(ev, AuditSecurityEvent) self.assertIsInstance(ev, AuditChannelEvent) self.assertIsInstance(ev, AuditOpenSecureChannelEvent) self.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.AuditOpenSecureChannelEventType)) self.assertEqual(ev.Severity, 1), self.assertEqual(ev.ClientCertificate, None) self.assertEqual(ev.ClientCertificateThumbprint, None) self.assertEqual(ev.RequestType, None) self.assertEqual(ev.SecurityPolicyUri, None) self.assertEqual(ev.SecurityMode, None) self.assertEqual(ev.RequestedLifetime, None) # For the custom events all posibilites are tested. For other custom types only one test case is done since they are using the same code def test_create_custom_data_type_ObjectId(self): type = self.opc.create_custom_data_type(2, 'MyDataType', ua.ObjectIds.BaseDataType, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) check_custom_type(self, type, ua.ObjectIds.BaseDataType, ua.NodeClass.DataType) def test_create_custom_event_type_ObjectId(self): type = self.opc.create_custom_event_type(2, 'MyEvent', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) check_custom_type(self, type, ua.ObjectIds.BaseEventType) def test_create_custom_object_type_ObjectId(self): def func(parent, variant): return [ua.Variant(ret, ua.VariantType.Boolean)] properties = [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)] variables = [('VariableString', ua.VariantType.String), ('MyEnumVar', ua.VariantType.Int32, ua.NodeId(ua.ObjectIds.ApplicationType))] methods = [('MyMethod', func, [ua.VariantType.Int64], [ua.VariantType.Boolean])] node_type = self.opc.create_custom_object_type(2, 'MyObjectType', ua.ObjectIds.BaseObjectType, properties, variables, methods) check_custom_type(self, node_type, ua.ObjectIds.BaseObjectType) variables = node_type.get_variables() self.assertTrue(node_type.get_child("2:VariableString") in variables) self.assertEqual(node_type.get_child("2:VariableString").get_data_value().Value.VariantType, ua.VariantType.String) self.assertTrue(node_type.get_child("2:MyEnumVar") in variables) self.assertEqual(node_type.get_child("2:MyEnumVar").get_data_value().Value.VariantType, ua.VariantType.Int32) self.assertEqual(node_type.get_child("2:MyEnumVar").get_data_type(), ua.NodeId(ua.ObjectIds.ApplicationType)) methods = node_type.get_methods() self.assertTrue(node_type.get_child("2:MyMethod") in methods) # def test_create_custom_refrence_type_ObjectId(self): # type = self.opc.create_custom_reference_type(2, 'MyEvent', ua.ObjectIds.Base, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) # check_custom_type(self, type, ua.ObjectIds.BaseObjectType) def test_create_custom_variable_type_ObjectId(self): type = self.opc.create_custom_variable_type(2, 'MyVariableType', ua.ObjectIds.BaseVariableType, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) check_custom_type(self, type, ua.ObjectIds.BaseVariableType) def test_create_custom_event_type_NodeId(self): etype = self.opc.create_custom_event_type(2, 'MyEvent', ua.NodeId(ua.ObjectIds.BaseEventType), [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) check_custom_type(self, etype, ua.ObjectIds.BaseEventType) def test_create_custom_event_type_Node(self): etype = self.opc.create_custom_event_type(2, 'MyEvent', opcua.Node(self.opc.iserver.isession, ua.NodeId(ua.ObjectIds.BaseEventType)), [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) check_custom_type(self, etype, ua.ObjectIds.BaseEventType) def test_get_event_from_type_node_CustomEvent(self): etype = self.opc.create_custom_event_type(2, 'MyEvent', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) ev = opcua.common.events.get_event_obj_from_type_node(etype) check_custom_event(self, ev, etype) self.assertEqual(ev.PropertyNum, 0) self.assertEqual(ev.PropertyString, None) def test_eventgenerator_customEvent(self): etype = self.opc.create_custom_event_type(2, 'MyEvent', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) evgen = self.opc.get_event_generator(etype, ua.ObjectIds.Server) check_eventgenerator_CustomEvent(self, evgen, etype) check_eventgenerator_SourceServer(self, evgen) self.assertEqual(evgen.event.PropertyNum, 0) self.assertEqual(evgen.event.PropertyString, None) def test_eventgenerator_double_customEvent(self): event1 = self.opc.create_custom_event_type(3, 'MyEvent1', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) event2 = self.opc.create_custom_event_type(4, 'MyEvent2', event1, [('PropertyBool', ua.VariantType.Boolean), ('PropertyInt', ua.VariantType.Int32)]) evgen = self.opc.get_event_generator(event2, ua.ObjectIds.Server) check_eventgenerator_CustomEvent(self, evgen, event2) check_eventgenerator_SourceServer(self, evgen) # Properties from MyEvent1 self.assertEqual(evgen.event.PropertyNum, 0) self.assertEqual(evgen.event.PropertyString, None) # Properties from MyEvent2 self.assertEqual(evgen.event.PropertyBool, False) self.assertEqual(evgen.event.PropertyInt, 0) def test_eventgenerator_customEvent_MyObject(self): objects = self.opc.get_objects_node() o = objects.add_object(3, 'MyObject') etype = self.opc.create_custom_event_type(2, 'MyEvent', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Int32), ('PropertyString', ua.VariantType.String)]) evgen = self.opc.get_event_generator(etype, o) check_eventgenerator_CustomEvent(self, evgen, etype) check_event_generator_object(self, evgen, o) self.assertEqual(evgen.event.PropertyNum, 0) self.assertEqual(evgen.event.PropertyString, None) def test_context_manager(self): """ Context manager calls start() and stop() """ state = [0] def increment_state(self, *args, **kwargs): state[0] += 1 # create server and replace instance methods with dummy methods server = Server() server.start = increment_state.__get__(server) server.stop = increment_state.__get__(server) assert state[0] == 0 with server: # test if server started self.assertEqual(state[0], 1) # test if server stopped self.assertEqual(state[0], 2) def test_get_node_by_ns(self): def get_ns_of_nodes(nodes): ns_list = set() for node in nodes: ns_list.add(node.nodeid.NamespaceIndex) return ns_list # incase other testss created nodes in unregistered namespace _idx_d = self.opc.register_namespace('dummy1') _idx_d = self.opc.register_namespace('dummy2') _idx_d = self.opc.register_namespace('dummy3') # create the test namespaces and vars idx_a = self.opc.register_namespace('a') idx_b = self.opc.register_namespace('b') idx_c = self.opc.register_namespace('c') o = self.opc.get_objects_node() _myvar2 = o.add_variable(idx_a, "MyBoolVar2", True) _myvar3 = o.add_variable(idx_b, "MyBoolVar3", True) _myvar4 = o.add_variable(idx_c, "MyBoolVar4", True) # the tests nodes = ua_utils.get_nodes_of_namespace(self.opc, namespaces=[idx_a, idx_b, idx_c]) self.assertEqual(len(nodes), 3) self.assertEqual(get_ns_of_nodes(nodes), set([idx_a, idx_b, idx_c])) nodes = ua_utils.get_nodes_of_namespace(self.opc, namespaces=[idx_a]) self.assertEqual(len(nodes), 1) self.assertEqual(get_ns_of_nodes(nodes), set([idx_a])) nodes = ua_utils.get_nodes_of_namespace(self.opc, namespaces=[idx_b]) self.assertEqual(len(nodes), 1) self.assertEqual(get_ns_of_nodes(nodes), set([idx_b])) nodes = ua_utils.get_nodes_of_namespace(self.opc, namespaces=['a']) self.assertEqual(len(nodes), 1) self.assertEqual(get_ns_of_nodes(nodes), set([idx_a])) nodes = ua_utils.get_nodes_of_namespace(self.opc, namespaces=['a', 'c']) self.assertEqual(len(nodes), 2) self.assertEqual(get_ns_of_nodes(nodes), set([idx_a, idx_c])) nodes = ua_utils.get_nodes_of_namespace(self.opc, namespaces='b') self.assertEqual(len(nodes), 1) self.assertEqual(get_ns_of_nodes(nodes), set([idx_b])) nodes = ua_utils.get_nodes_of_namespace(self.opc, namespaces=idx_b) self.assertEqual(len(nodes), 1) self.assertEqual(get_ns_of_nodes(nodes), set([idx_b])) self.assertRaises(ValueError, ua_utils.get_nodes_of_namespace, self.opc, namespaces='non_existing_ns') def test_load_enum_strings(self): dt = self.opc.nodes.enum_data_type.add_data_type(0, "MyStringEnum") dt.add_variable(0, "EnumStrings", [ua.LocalizedText("e1"), ua.LocalizedText("e2"), ua.LocalizedText("e3"), ua.LocalizedText("e 4")]) self.opc.load_enums() e = getattr(ua, "MyStringEnum") self.assertIsInstance(e, EnumMeta) self.assertTrue(hasattr(e, "e1")) self.assertTrue(hasattr(e, "e4")) self.assertEqual(getattr(e, "e4"), 3) def test_load_enum_values(self): dt = self.opc.nodes.enum_data_type.add_data_type(0, "MyValuesEnum") v1 = ua.EnumValueType() v1.DisplayName.Text = "v1" v1.Value = 2 v2 = ua.EnumValueType() v2.DisplayName.Text = "v2" v2.Value = 3 v3 = ua.EnumValueType() v3.DisplayName.Text = "v 3 " v3.Value = 4 dt.add_variable(0, "EnumValues", [v1, v2, v3]) self.opc.load_enums() e = getattr(ua, "MyValuesEnum") self.assertIsInstance(e, EnumMeta) self.assertTrue(hasattr(e, "v1")) self.assertTrue(hasattr(e, "v3")) self.assertEqual(getattr(e, "v3"), 4) def check_eventgenerator_SourceServer(test, evgen): server = test.opc.get_server_node() test.assertEqual(evgen.event.SourceName, server.get_browse_name().Name) test.assertEqual(evgen.event.SourceNode, ua.NodeId(ua.ObjectIds.Server)) test.assertEqual(server.get_event_notifier(), {ua.EventNotifier.SubscribeToEvents}) refs = server.get_referenced_nodes(ua.ObjectIds.GeneratesEvent, ua.BrowseDirection.Forward, ua.NodeClass.ObjectType, False) test.assertGreaterEqual(len(refs), 1) def check_event_generator_object(test, evgen, obj, emitting_node=None): test.assertEqual(evgen.event.SourceName, obj.get_browse_name().Name) test.assertEqual(evgen.event.SourceNode, obj.nodeid) if not emitting_node: test.assertEqual(obj.get_event_notifier(), {ua.EventNotifier.SubscribeToEvents}) refs = obj.get_referenced_nodes(ua.ObjectIds.GeneratesEvent, ua.BrowseDirection.Forward, ua.NodeClass.ObjectType, False) else: test.assertEqual(emitting_node.get_event_notifier(), {ua.EventNotifier.SubscribeToEvents}) refs = emitting_node.get_referenced_nodes(ua.ObjectIds.GeneratesEvent, ua.BrowseDirection.Forward, ua.NodeClass.ObjectType, False) test.assertIn(evgen.event.EventType, [x.nodeid for x in refs]) def check_eventgenerator_BaseEvent(test, evgen): test.assertIsNot(evgen, None) # we did not receive event generator test.assertIs(evgen.isession, test.opc.iserver.isession) check_base_event(test, evgen.event) def check_base_event(test, ev): test.assertIsNot(ev, None) # we did not receive event test.assertIsInstance(ev, BaseEvent) test.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.BaseEventType)) test.assertEqual(ev.Severity, 1) def check_eventgenerator_CustomEvent(test, evgen, etype): test.assertIsNot(evgen, None) # we did not receive event generator test.assertIs(evgen.isession, test.opc.iserver.isession) check_custom_event(test, evgen.event, etype) def check_custom_event(test, ev, etype): test.assertIsNot(ev, None) # we did not receive event test.assertIsInstance(ev, BaseEvent) test.assertEqual(ev.EventType, etype.nodeid) test.assertEqual(ev.Severity, 1) def check_custom_type(test, type, base_type, node_class=None): base = opcua.Node(test.opc.iserver.isession, ua.NodeId(base_type)) test.assertTrue(type in base.get_children()) nodes = type.get_referenced_nodes(refs=ua.ObjectIds.HasSubtype, direction=ua.BrowseDirection.Inverse, includesubtypes=True) test.assertEqual(base, nodes[0]) properties = type.get_properties() if node_class: test.assertEqual(node_class, type.get_node_class()) test.assertIsNot(properties, None) test.assertEqual(len(properties), 2) test.assertTrue(type.get_child("2:PropertyNum") in properties) test.assertEqual(type.get_child("2:PropertyNum").get_data_value().Value.VariantType, ua.VariantType.Int32) test.assertTrue(type.get_child("2:PropertyString") in properties) test.assertEqual(type.get_child("2:PropertyString").get_data_value().Value.VariantType, ua.VariantType.String) class TestServerCaching(unittest.TestCase): def runTest(self): return # FIXME broken tmpfile = NamedTemporaryFile() path = tmpfile.name tmpfile.close() # create cache file server = Server(shelffile=path) # modify cache content id = ua.NodeId(ua.ObjectIds.Server_ServerStatus_SecondsTillShutdown) s = shelve.open(path, "w", writeback=True) s[id.to_string()].attributes[ua.AttributeIds.Value].value = ua.DataValue(123) s.close() # ensure that we are actually loading from the cache server = Server(shelffile=path) self.assertEqual(server.get_node(id).get_value(), 123) os.remove(path) class TestServerStartError(unittest.TestCase): def test_port_in_use(self): server1 = Server() server1.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(port_num + 1)) server1.start() server2 = Server() server2.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(port_num + 1)) try: server2.start() except Exception: pass server1.stop() server2.stop() python-opcua-0.98.9/tests/tests_standard_address_space.py000066400000000000000000000042641357637245100237100ustar00rootroot00000000000000import unittest import os.path import xml.etree.ElementTree as ET from opcua import ua from opcua.server.address_space import AddressSpace from opcua.server.address_space import NodeManagementService from opcua.server.standard_address_space import standard_address_space def find_elem(parent, name, ns = None): if ns is None: try: return parent.find(parent.tag[0:parent.tag.index('}')+1]+name) except ValueError: return parent.find(name) return parent.find(ns+name) def remove_elem(parent, name): e = find_elem(parent, name) if e is not None: parent.remove(e) def try_apply(item, aliases): attrib = item.attrib for name in ('ReferenceType', 'DataType'): try: value = attrib[name] attrib[name] = aliases[value] except KeyError: pass def read_nodes(path): tree = ET.parse(path) root = tree.getroot() aliases_elem = find_elem(root, 'Aliases') aliases = dict( (a.attrib['Alias'], a.text) for a in aliases_elem) any(try_apply(i, aliases) for i in root.iter()) root.remove(aliases_elem) remove_elem(root, "Models") remove_elem(root, "NamespaceUris") return dict((e.attrib['NodeId'],e) for e in root) def get_refs(e): return set((r.attrib['ReferenceType'], r.text, r.attrib.get('IsForward', 'true') == 'true') for r in find_elem(e, 'References')) class StandardAddressSpaceTests(unittest.TestCase): def setUp(self): self.aspace = AddressSpace() self.node_mgt_service = NodeManagementService(self.aspace) standard_address_space.fill_address_space(self.node_mgt_service) def test_std_address_space_references(self): std_nodes = read_nodes(os.path.abspath(os.path.join(os.path.dirname(__file__), '..', 'schemas', 'Opc.Ua.NodeSet2.xml'))) for k in self.aspace.keys(): refs = set((r.ReferenceTypeId.to_string(), r.NodeId.to_string(), r.IsForward) for r in self.aspace[k].references) xml_refs = set((r.attrib['ReferenceType'], r.text, r.attrib.get('IsForward', 'true') == 'true') for r in find_elem(std_nodes[k.to_string()], 'References')) self.assertTrue(len(xml_refs-refs)==0) python-opcua-0.98.9/tests/tests_subscriptions.py000066400000000000000000000553371357637245100221460ustar00rootroot00000000000000from concurrent.futures import Future, TimeoutError import time from datetime import datetime, timedelta from copy import copy import unittest import opcua from opcua import Client from opcua import Server from opcua import ua from opcua.server.internal_server import InternalServer, InternalSession class SubHandler(): """ Dummy subscription client """ def datachange_notification(self, node, val, data): pass def event_notification(self, event): pass class MySubHandler(): """ More advanced subscription client using Future, so we can wait for events in tests """ def __init__(self): self.future = Future() def reset(self): self.future = Future() def datachange_notification(self, node, val, data): self.future.set_result((node, val, data)) def event_notification(self, event): self.future.set_result(event) class MySubHandler2(): def __init__(self): self.results = [] def datachange_notification(self, node, val, data): self.results.append((node, val)) def event_notification(self, event): self.results.append(event) class MySubHandlerCounter(): def __init__(self): self.datachange_count = 0 self.event_count = 0 def datachange_notification(self, node, val, data): self.datachange_count += 1 def event_notification(self, event): self.event_count += 1 class SubscriptionTests(object): def test_subscription_failure(self): myhandler = MySubHandler() o = self.opc.get_objects_node() sub = self.opc.create_subscription(100, myhandler) with self.assertRaises(ua.UaStatusCodeError): handle1 = sub.subscribe_data_change(o) # we can only subscribe to variables so this should fail sub.delete() def test_subscription_overload(self): nb = 10 myhandler = MySubHandler() o = self.opc.get_objects_node() sub = self.opc.create_subscription(1, myhandler) variables = [] subs = [] for i in range(nb): v = o.add_variable(3, 'SubscriptionVariableOverload' + str(i), 99) variables.append(v) for i in range(nb): sub.subscribe_data_change(variables) for i in range(nb): for j in range(nb): variables[i].set_value(j) s = self.opc.create_subscription(1, myhandler) s.subscribe_data_change(variables) subs.append(s) sub.subscribe_data_change(variables[i]) for i in range(nb): for j in range(nb): variables[i].set_value(j) sub.delete() for s in subs: s.delete() def test_subscription_count(self): myhandler = MySubHandlerCounter() sub = self.opc.create_subscription(1, myhandler) o = self.opc.get_objects_node() var = o.add_variable(3, 'SubVarCounter', 0.1) sub.subscribe_data_change(var) nb = 12 for i in range(nb): val = var.get_value() var.set_value(val +1) time.sleep(0.2) # let last event arrive self.assertEqual(myhandler.datachange_count, nb + 1) sub.delete() def test_subscription_count_list(self): myhandler = MySubHandlerCounter() sub = self.opc.create_subscription(1, myhandler) o = self.opc.get_objects_node() var = o.add_variable(3, 'SubVarCounter', [0.1, 0.2]) sub.subscribe_data_change(var) nb = 12 for i in range(nb): val = var.get_value() val = copy(val) # we do not want to modify object in our db, we need a copy in order to generate event val.append(i) var.set_value(copy(val)) time.sleep(0.2) # let last event arrive self.assertEqual(myhandler.datachange_count, nb + 1) sub.delete() def test_subscription_count_no_change(self): myhandler = MySubHandlerCounter() sub = self.opc.create_subscription(1, myhandler) o = self.opc.get_objects_node() var = o.add_variable(3, 'SubVarCounter', [0.1, 0.2]) sub.subscribe_data_change(var) nb = 12 for i in range(nb): val = var.get_value() var.set_value(val) time.sleep(0.2) # let last event arrive self.assertEqual(myhandler.datachange_count, 1) sub.delete() def test_subscription_count_empty(self): myhandler = MySubHandlerCounter() sub = self.opc.create_subscription(1, myhandler) o = self.opc.get_objects_node() var = o.add_variable(3, 'SubVarCounter', [0.1, 0.2, 0.3]) sub.subscribe_data_change(var) while True: val = var.get_value() val = copy(val) # we do not want to modify object in our db, we need a copy in order to generate event val.pop() var.set_value(val, ua.VariantType.Double) if not val: break time.sleep(0.2) # let last event arrive self.assertEqual(myhandler.datachange_count, 4) sub.delete() def test_subscription_overload_simple(self): nb = 10 myhandler = MySubHandler() o = self.opc.get_objects_node() sub = self.opc.create_subscription(1, myhandler) variables = [o.add_variable(3, 'SubVarOverload' + str(i), i) for i in range(nb)] for i in range(nb): sub.subscribe_data_change(variables) sub.delete() def test_subscription_data_change(self): """ test subscriptions. This is far too complicated for a unittest but, setting up subscriptions requires a lot of code, so when we first set it up, it is best to test as many things as possible """ myhandler = MySubHandler() o = self.opc.get_objects_node() # subscribe to a variable startv1 = [1, 2, 3] v1 = o.add_variable(3, 'SubscriptionVariableV1', startv1) sub = self.opc.create_subscription(100, myhandler) handle1 = sub.subscribe_data_change(v1) # Now check we get the start value node, val, data = myhandler.future.result() self.assertEqual(val, startv1) self.assertEqual(node, v1) myhandler.reset() # reset future object # modify v1 and check we get value v1.set_value([5]) node, val, data = myhandler.future.result() self.assertEqual(node, v1) self.assertEqual(val, [5]) with self.assertRaises(ua.UaStatusCodeError): sub.unsubscribe(999) # non existing handle sub.unsubscribe(handle1) with self.assertRaises(ua.UaStatusCodeError): sub.unsubscribe(handle1) # second try should fail sub.delete() with self.assertRaises(ua.UaStatusCodeError): sub.unsubscribe(handle1) # sub does not exist anymore def test_subscription_data_change_bool(self): """ test subscriptions. This is far too complicated for a unittest but, setting up subscriptions requires a lot of code, so when we first set it up, it is best to test as many things as possible """ myhandler = MySubHandler() o = self.opc.get_objects_node() # subscribe to a variable startv1 = True v1 = o.add_variable(3, 'SubscriptionVariableBool', startv1) sub = self.opc.create_subscription(100, myhandler) handle1 = sub.subscribe_data_change(v1) # Now check we get the start value node, val, data = myhandler.future.result() self.assertEqual(val, startv1) self.assertEqual(node, v1) myhandler.reset() # reset future object # modify v1 and check we get value v1.set_value(False) node, val, data = myhandler.future.result() self.assertEqual(node, v1) self.assertEqual(val, False) sub.delete() # should delete our monitoreditem too def test_subscription_data_change_many(self): """ test subscriptions. This is far too complicated for a unittest but, setting up subscriptions requires a lot of code, so when we first set it up, it is best to test as many things as possible """ myhandler = MySubHandler2() o = self.opc.get_objects_node() startv1 = True v1 = o.add_variable(3, 'SubscriptionVariableMany1', startv1) startv2 = [1.22, 1.65] v2 = o.add_variable(3, 'SubscriptionVariableMany2', startv2) sub = self.opc.create_subscription(100, myhandler) handle1, handle2 = sub.subscribe_data_change([v1, v2]) # Now check we get the start values nodes = [v1, v2] count = 0 while not len(myhandler.results) > 1: count += 1 time.sleep(0.1) if count > 100: self.fail("Did not get result from subscription") for node, val in myhandler.results: self.assertIn(node, nodes) nodes.remove(node) if node == v1: self.assertEqual(startv1, val) elif node == v2: self.assertEqual(startv2, val) else: self.fail("Error node {0} is neither {1} nor {2}".format(node, v1, v2)) sub.delete() def test_subscribe_server_time(self): myhandler = MySubHandler() server_time_node = self.opc.get_node(ua.NodeId(ua.ObjectIds.Server_ServerStatus_CurrentTime)) sub = self.opc.create_subscription(200, myhandler) handle = sub.subscribe_data_change(server_time_node) node, val, data = myhandler.future.result() self.assertEqual(node, server_time_node) delta = datetime.utcnow() - val self.assertTrue(delta < timedelta(seconds=2)) sub.unsubscribe(handle) sub.delete() def test_create_delete_subscription(self): o = self.opc.get_objects_node() v = o.add_variable(3, 'SubscriptionVariable', [1, 2, 3]) sub = self.opc.create_subscription(100, MySubHandler()) handle = sub.subscribe_data_change(v) time.sleep(0.1) sub.unsubscribe(handle) sub.delete() def test_subscribe_events(self): sub = self.opc.create_subscription(100, MySubHandler()) handle = sub.subscribe_events() time.sleep(0.1) sub.unsubscribe(handle) sub.delete() def test_subscribe_events_to_wrong_node(self): sub = self.opc.create_subscription(100, MySubHandler()) with self.assertRaises(ua.UaStatusCodeError): handle = sub.subscribe_events(self.opc.get_node("i=85")) o = self.opc.get_objects_node() v = o.add_variable(3, 'VariableNoEventNofierAttribute', 4) with self.assertRaises(ua.UaStatusCodeError): handle = sub.subscribe_events(v) sub.delete() def test_get_event_from_type_node_BaseEvent(self): etype = self.opc.get_node(ua.ObjectIds.BaseEventType) properties = opcua.common.events.get_event_properties_from_type_node(etype) for child in etype.get_properties(): self.assertTrue(child in properties) def test_get_event_from_type_node_CustomEvent(self): etype = self.srv.create_custom_event_type(2, 'MyEvent', ua.ObjectIds.AuditEventType, [('PropertyNum', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) properties = opcua.common.events.get_event_properties_from_type_node(etype) for child in self.opc.get_node(ua.ObjectIds.BaseEventType).get_properties(): self.assertTrue(child in properties) for child in self.opc.get_node(ua.ObjectIds.AuditEventType).get_properties(): self.assertTrue(child in properties) for child in self.opc.get_node(etype.nodeid).get_properties(): self.assertTrue(child in properties) self.assertTrue(etype.get_child("2:PropertyNum") in properties) self.assertTrue(etype.get_child("2:PropertyString") in properties) def test_events_default(self): evgen = self.srv.get_event_generator() myhandler = MySubHandler() sub = self.opc.create_subscription(100, myhandler) handle = sub.subscribe_events() tid = datetime.utcnow() msg = "this is my msg " evgen.trigger(tid, msg) ev = myhandler.future.result() self.assertIsNot(ev, None) # we did not receive event self.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.BaseEventType)) self.assertEqual(ev.Severity, 1) self.assertEqual(ev.SourceName, self.opc.get_server_node().get_browse_name().Name) self.assertEqual(ev.SourceNode, self.opc.get_server_node().nodeid) self.assertEqual(ev.Message.Text, msg) self.assertEqual(ev.Time, tid) # time.sleep(0.1) sub.unsubscribe(handle) sub.delete() def test_events_MyObject(self): objects = self.srv.get_objects_node() o = objects.add_object(3, 'MyObject') evgen = self.srv.get_event_generator() evgen.event.SourceNode=o.nodeid evgen.event.SourceName=o.get_browse_name().Name myhandler = MySubHandler() sub = self.opc.create_subscription(100, myhandler) handle = sub.subscribe_events() tid = datetime.utcnow() msg = "this is my msg " evgen.trigger(tid, msg) ev = myhandler.future.result(10) self.assertIsNot(ev, None) # we did not receive event self.assertEqual(ev.EventType, ua.NodeId(ua.ObjectIds.BaseEventType)) self.assertEqual(ev.Severity, 1) self.assertEqual(ev.SourceName, 'MyObject') self.assertEqual(ev.SourceNode, o.nodeid) self.assertEqual(ev.Message.Text, msg) self.assertEqual(ev.Time, tid) # time.sleep(0.1) sub.unsubscribe(handle) sub.delete() def test_events_wrong_source(self): objects = self.srv.get_objects_node() o = objects.add_object(3, 'MyObject') evgen = self.srv.get_event_generator(emitting_node=o) myhandler = MySubHandler() sub = self.opc.create_subscription(100, myhandler) handle = sub.subscribe_events() tid = datetime.utcnow() msg = "this is my msg " evgen.trigger(tid, msg) with self.assertRaises(TimeoutError): # we should not receive event ev = myhandler.future.result(2) # time.sleep(0.1) sub.unsubscribe(handle) sub.delete() def test_events_CustomEvent(self): etype = self.srv.create_custom_event_type(2, 'MyEvent', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) evgen = self.srv.get_event_generator(etype) myhandler = MySubHandler() sub = self.opc.create_subscription(100, myhandler) handle = sub.subscribe_events(sourcenode=ua.ObjectIds.Server, evtypes=etype) propertynum = 2 propertystring = "This is my test" evgen.event.PropertyNum = propertynum evgen.event.PropertyString = propertystring serverity = 500 evgen.event.Severity = serverity tid = datetime.utcnow() msg = "this is my msg " evgen.trigger(tid, msg) ev = myhandler.future.result(10) self.assertIsNot(ev, None) # we did not receive event self.assertEqual(ev.EventType, etype.nodeid) self.assertEqual(ev.Severity, serverity) self.assertEqual(ev.SourceName, self.opc.get_server_node().get_browse_name().Name) self.assertEqual(ev.SourceNode, self.opc.get_server_node().nodeid) self.assertEqual(ev.Message.Text, msg) self.assertEqual(ev.Time, tid) self.assertEqual(ev.PropertyNum, propertynum) self.assertEqual(ev.PropertyString, propertystring) # time.sleep(0.1) sub.unsubscribe(handle) sub.delete() def test_events_CustomEvent_MyObject(self): objects = self.srv.get_objects_node() o = objects.add_object(3, 'MyObject') etype = self.srv.create_custom_event_type(2, 'MyEvent', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) evgen = self.srv.get_event_generator(etype, emitting_node=o) evgen.event.SourceNode = o.nodeid myhandler = MySubHandler() sub = self.opc.create_subscription(100, myhandler) handle = sub.subscribe_events(sourcenode=o, evtypes=etype) propertynum = 2 propertystring = "This is my test" evgen.event.PropertyNum = propertynum evgen.event.PropertyString = propertystring evgen.event.SourceNode = o.nodeid tid = datetime.utcnow() msg = "this is my msg " evgen.trigger(tid, msg) ev = myhandler.future.result(10) self.assertIsNot(ev, None) # we did not receive event self.assertEqual(ev.EventType, etype.nodeid) self.assertEqual(ev.Severity, 1) self.assertEqual(ev.SourceName, 'MyObject') self.assertEqual(ev.SourceNode, o.nodeid) self.assertEqual(ev.Message.Text, msg) self.assertEqual(ev.Time, tid) self.assertEqual(ev.PropertyNum, propertynum) self.assertEqual(ev.PropertyString, propertystring) # time.sleep(0.1) sub.unsubscribe(handle) sub.delete() def test_several_different_events(self): objects = self.srv.get_objects_node() o = objects.add_object(3, 'MyObject') etype1 = self.srv.create_custom_event_type(2, 'MyEvent1', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) evgen1 = self.srv.get_event_generator(etype1, o) etype2 = self.srv.create_custom_event_type(2, 'MyEvent2', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) evgen2 = self.srv.get_event_generator(etype2, o) myhandler = MySubHandler2() sub = self.opc.create_subscription(100, myhandler) handle = sub.subscribe_events(o, etype1) propertynum1 = 1 propertystring1 = "This is my test 1" evgen1.event.PropertyNum = propertynum1 evgen1.event.PropertyString = propertystring1 propertynum2 = 2 propertystring2 = "This is my test 2" evgen2.event.PropertyNum = propertynum2 evgen2.event.PropertyString = propertystring2 for i in range(3): evgen1.trigger() evgen2.trigger() time.sleep(1) self.assertEqual(len(myhandler.results), 3) ev = myhandler.results[-1] self.assertEqual(ev.EventType, etype1.nodeid) handle = sub.subscribe_events(o, etype2) for i in range(4): evgen1.trigger() evgen2.trigger() time.sleep(1) ev1s = [ev for ev in myhandler.results if ev.EventType == etype1.nodeid] ev2s = [ev for ev in myhandler.results if ev.EventType == etype2.nodeid] self.assertEqual(len(myhandler.results), 11) self.assertEqual(len(ev2s), 4) self.assertEqual(len(ev1s), 7) sub.unsubscribe(handle) sub.delete() def test_several_different_events_2(self): objects = self.srv.get_objects_node() o = objects.add_object(3, 'MyObject') etype1 = self.srv.create_custom_event_type(2, 'MyEvent1', ua.ObjectIds.BaseEventType, [('PropertyNum', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) evgen1 = self.srv.get_event_generator(etype1, o) etype2 = self.srv.create_custom_event_type(2, 'MyEvent2', ua.ObjectIds.BaseEventType, [('PropertyNum2', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) evgen2 = self.srv.get_event_generator(etype2, o) etype3 = self.srv.create_custom_event_type(2, 'MyEvent3', ua.ObjectIds.BaseEventType, [('PropertyNum3', ua.VariantType.Float), ('PropertyString', ua.VariantType.String)]) evgen3 = self.srv.get_event_generator(etype3, o) myhandler = MySubHandler2() sub = self.opc.create_subscription(100, myhandler) handle = sub.subscribe_events(o, [etype1, etype3]) propertynum1 = 1 propertystring1 = "This is my test 1" evgen1.event.PropertyNum = propertynum1 evgen1.event.PropertyString = propertystring1 propertynum2 = 2 propertystring2 = "This is my test 2" evgen2.event.PropertyNum2 = propertynum2 evgen2.event.PropertyString = propertystring2 propertynum3 = 3 propertystring3 = "This is my test 3" evgen3.event.PropertyNum3 = propertynum3 evgen3.event.PropertyString = propertystring2 for i in range(3): evgen1.trigger() evgen2.trigger() evgen3.trigger() evgen3.event.PropertyNum3 = 9999 evgen3.trigger() time.sleep(1) ev1s = [ev for ev in myhandler.results if ev.EventType == etype1.nodeid] ev2s = [ev for ev in myhandler.results if ev.EventType == etype2.nodeid] ev3s = [ev for ev in myhandler.results if ev.EventType == etype3.nodeid] self.assertEqual(len(myhandler.results), 7) self.assertEqual(len(ev1s), 3) self.assertEqual(len(ev2s), 0) self.assertEqual(len(ev3s), 4) self.assertEqual(ev1s[0].PropertyNum, propertynum1) self.assertEqual(ev3s[0].PropertyNum3, propertynum3) self.assertEqual(ev3s[-1].PropertyNum3, 9999) self.assertEqual(ev1s[0].PropertyNum3, None) sub.unsubscribe(handle) sub.delete() class CustomInternalSession(InternalSession): TIMEOUT = 4 def create_subscription(self, *args, **kwargs): time.sleep(self.TIMEOUT) return super(CustomInternalSession, self).create_subscription(*args, **kwargs) class SubscriptionTestCustomServer(unittest.TestCase): PORT_NUM2 = 48511 # Needs to be different than num_port1 in tests_client.py @classmethod def setUpClass(cls): iserver = InternalServer(session_cls=CustomInternalSession) cls.srv = Server(iserver=iserver) iserver._parent = cls.srv cls.srv.set_endpoint('opc.tcp://127.0.0.1:{0:d}'.format(cls.PORT_NUM2)) cls.srv.start() # start admin client # short timeout since we want it to fail cls.clt = Client('opc.tcp://admin@127.0.0.1:{0:d}'.format(cls.PORT_NUM2), timeout=1) cls.clt.connect() cls.opc = cls.clt @classmethod def tearDownClass(cls): cls.clt.disconnect() cls.srv.stop() def test_subscription_timeout_deadlock(self): self.assertRaises( TimeoutError, self.opc.create_subscription, 100, MySubHandler() ) time.sleep(5) # There is no better way to test if we actually did complete subs = self.opc.uaclient.registered_subscriptions() self.assertEqual(1, len(subs)) self.assertTrue(subs[0].is_ready()) python-opcua-0.98.9/tests/tests_uaerrors.py000066400000000000000000000020721357637245100210650ustar00rootroot00000000000000import unittest import opcua.ua.uaerrors as uaerrors from opcua.ua.uaerrors import UaStatusCodeError class TestUaErrors(unittest.TestCase): status_code_bad_internal = 0x80020000 status_code_unknown = "Definitely Not A Status Code" def setUp(self): self.direct = uaerrors.BadInternalError() self.indirect = UaStatusCodeError(self.status_code_bad_internal) self.unknown = UaStatusCodeError(self.status_code_unknown) def test_subclass_selection(self): self.assertIs(type(self.direct), uaerrors.BadInternalError) self.assertIs(type(self.indirect), uaerrors.BadInternalError) self.assertIs(type(self.unknown), UaStatusCodeError) def test_code(self): self.assertEqual(self.direct.code, self.status_code_bad_internal) self.assertEqual(self.indirect.code, self.status_code_bad_internal) self.assertEqual(self.unknown.code, self.status_code_unknown) def test_string_repr(self): self.assertIn("BadInternal", str(self.direct)) self.assertIn("BadInternal", str(self.indirect)) python-opcua-0.98.9/tests/tests_unit.py000077500000000000000000000635651357637245100202230ustar00rootroot00000000000000# encoding: utf-8 #! /usr/bin/env python import logging import io from datetime import datetime import unittest from collections import namedtuple import uuid from opcua import ua from opcua.ua.ua_binary import extensionobject_from_binary from opcua.ua.ua_binary import extensionobject_to_binary from opcua.ua.ua_binary import nodeid_to_binary, variant_to_binary, _reshape, variant_from_binary, nodeid_from_binary from opcua.ua.ua_binary import struct_to_binary, struct_from_binary from opcua.ua import flatten, get_shape from opcua.server.internal_subscription import WhereClauseEvaluator from opcua.common.event_objects import BaseEvent from opcua.common.ua_utils import string_to_variant, variant_to_string, string_to_val, val_to_string from opcua.common.xmlimporter import XmlImporter from opcua.ua.uatypes import _MaskEnum from opcua.common.structures import StructGenerator from opcua.common.connection import MessageChunk from opcua.ua.uaerrors import UaError class TestUnit(unittest.TestCase): ''' Simple unit test that do not need to setup a server or a client ''' def test_variant_array_none(self): v = ua.Variant(None, varianttype=ua.VariantType.Int32, is_array=True) data = variant_to_binary(v) v2 = variant_from_binary(ua.utils.Buffer(data)) self.assertEqual(v, v2) self.assertTrue(v2.is_array) v = ua.Variant(None, varianttype=ua.VariantType.Null, is_array=True) data = variant_to_binary(v) v2 = variant_from_binary(ua.utils.Buffer(data)) self.assertEqual(v, v2) self.assertTrue(v2.is_array) def test_variant_empty_list(self): v = ua.Variant([], varianttype=ua.VariantType.Int32, is_array=True) data = variant_to_binary(v) v2 = variant_from_binary(ua.utils.Buffer(data)) self.assertEqual(v, v2) self.assertTrue(v2.is_array) def test_structs_save_and_import(self): xmlpath = "tests/example.bsd" c = StructGenerator() c.make_model_from_file(xmlpath) struct_dict = c.save_and_import("structures.py") for k, v in struct_dict.items(): a = v() self.assertEqual(k, a.__class__.__name__) def test_custom_structs(self): xmlpath = "tests/example.bsd" c = StructGenerator() c.make_model_from_file(xmlpath) c.save_to_file("tests/structures.py") import structures as s # test with default values v = s.ScalarValueDataType() data = struct_to_binary(v) v2 = struct_from_binary(s.ScalarValueDataType, ua.utils.Buffer(data)) # set some values v = s.ScalarValueDataType() v.SbyteValue = 1 v.ByteValue = 2 v.Int16Value = 3 v.UInt16Value = 4 v.Int32Value = 5 v.UInt32Value = 6 v.Int64Value = 7 v.UInt64Value = 8 v.FloatValue = 9.0 v.DoubleValue = 10.0 v.StringValue = "elleven" v.DateTimeValue = datetime.utcnow() #self.GuidValue = uuid.uudib"14" v.ByteStringValue = b"fifteen" v.XmlElementValue = ua.XmlElement("titi") v.NodeIdValue = ua.NodeId.from_string("ns=4;i=9999") #self.ExpandedNodeIdValue = #self.QualifiedNameValue = #self.LocalizedTextValue = #self.StatusCodeValue = #self.VariantValue = #self.EnumerationValue = #self.StructureValue = #self.Number = #self.Integer = #self.UInteger = data = struct_to_binary(v) v2 = struct_from_binary(s.ScalarValueDataType, ua.utils.Buffer(data)) self.assertEqual(v.NodeIdValue, v2.NodeIdValue) def test_custom_structs_array(self): xmlpath = "tests/example.bsd" c = StructGenerator() c.make_model_from_file(xmlpath) c.save_to_file("tests/structures.py") import structures as s # test with default values v = s.ArrayValueDataType() data = struct_to_binary(v) v2 = struct_from_binary(s.ArrayValueDataType, ua.utils.Buffer(data)) # set some values v = s.ArrayValueDataType() v.SbyteValue = [1] v.ByteValue = [2] v.Int16Value = [3] v.UInt16Value = [4] v.Int32Value = [5] v.UInt32Value = [6] v.Int64Value = [7] v.UInt64Value = [8] v.FloatValue = [9.0] v.DoubleValue = [10.0] v.StringValue = ["elleven"] v.DateTimeValue = [datetime.utcnow()] #self.GuidValue = uuid.uudib"14" v.ByteStringValue = [b"fifteen", b"sixteen"] v.XmlElementValue = [ua.XmlElement("titi")] v.NodeIdValue = [ua.NodeId.from_string("ns=4;i=9999"), ua.NodeId.from_string("i=6")] #self.ExpandedNodeIdValue = #self.QualifiedNameValue = #self.LocalizedTextValue = #self.StatusCodeValue = #self.VariantValue = #self.EnumerationValue = #self.StructureValue = #self.Number = #self.Integer = #self.UInteger = data = struct_to_binary(v) v2 = struct_from_binary(s.ArrayValueDataType, ua.utils.Buffer(data)) self.assertEqual(v.NodeIdValue, v2.NodeIdValue) print(v2.NodeIdValue) def test_nodeid_nsu(self): n = ua.NodeId(100, 2) n.NamespaceUri = "http://freeopcua/tests" n.ServerIndex = 4 data = nodeid_to_binary(n) n2 = nodeid_from_binary(ua.utils.Buffer(data)) self.assertEqual(n, n2) n3 = ua.NodeId.from_string(n.to_string()) self.assertEqual(n, n3) def test_nodeid_ordering(self): a = ua.NodeId(2000, 1) b = ua.NodeId(3000, 1) c = ua.NodeId(20, 0) d = ua.NodeId("tititu", 1) e = ua.NodeId("aaaaa", 1) f = ua.NodeId("aaaaa", 2) g = ua.NodeId(uuid.uuid4(), 1) h = ua.TwoByteNodeId(2001) i = ua.NodeId(b"lkjkl", 1, ua.NodeIdType.ByteString) j = ua.NodeId(b"aaa", 5, ua.NodeIdType.ByteString) mylist = [a, b, c, d, e, f, g, h, i, j] mylist.sort() expected = [h, c, a, b, e, d, f, g, i, j] self.assertEqual(mylist, expected) def test_string_to_variant_int(self): s_arr_uint = "[1, 2, 3, 4]" arr_uint = [1, 2, 3, 4] s_uint = "1" self.assertEqual(string_to_val(s_arr_uint, ua.VariantType.UInt32), arr_uint) self.assertEqual(string_to_val(s_arr_uint, ua.VariantType.UInt16), arr_uint) self.assertEqual(val_to_string(arr_uint), s_arr_uint) def test_string_to_variant_float(self): s_arr_float = "[1.1, 2.1, 3, 4.0]" arr_float = [1.1, 2.1, 3, 4.0] s_float = "1.9" self.assertEqual(string_to_val(s_float, ua.VariantType.Float), 1.9) self.assertEqual(val_to_string(arr_float), s_arr_float) def test_string_to_variant_datetime_string(self): s_arr_datetime = "[2014-05-6, 2016-10-3]" arr_string = ['2014-05-6', '2016-10-3'] arr_datetime = [datetime(2014, 5, 6), datetime(2016, 10, 3)] s_datetime = "2014-05-3" self.assertEqual(val_to_string(arr_string), s_arr_datetime) self.assertEqual(string_to_val(s_arr_datetime, ua.VariantType.String), arr_string) self.assertEqual(string_to_val(s_arr_datetime, ua.VariantType.DateTime), arr_datetime) def test_string_to_variant_nodeid(self): s_arr_nodeid = "[ns=2;i=56, i=45]" arr_nodeid = [ua.NodeId.from_string("ns=2;i=56"), ua.NodeId.from_string("i=45")] s_nodeid = "i=45" self.assertEqual(string_to_val(s_arr_nodeid, ua.VariantType.NodeId), arr_nodeid) def test_string_to_variant_status_code(self): s_statuscode = "Good" statuscode = ua.StatusCode(ua.StatusCodes.Good) s_statuscode2 = "Uncertain" statuscode2 = ua.StatusCode(ua.StatusCodes.Uncertain) self.assertEqual(string_to_val(s_statuscode, ua.VariantType.StatusCode), statuscode) self.assertEqual(string_to_val(s_statuscode2, ua.VariantType.StatusCode), statuscode2) def test_status_code_to_string(self): # serialize a status code and deserialize it, name and doc resolution should work just fine statuscode = ua.StatusCode(ua.StatusCodes.BadNotConnected) statuscode2 = struct_from_binary(ua.StatusCode, io.BytesIO(struct_to_binary(ua.StatusCode(ua.StatusCodes.BadNotConnected)))) self.assertEqual(statuscode, statuscode2) self.assertEqual(statuscode.value, statuscode2.value) # properties that are not serialized should still translate properly self.assertEqual(statuscode.name, statuscode2.name) self.assertEqual(statuscode.doc, statuscode2.doc) def test_string_to_variant_qname(self): string = "2:name" obj = ua.QualifiedName("name", 2) self.assertEqual(string_to_val(string, ua.VariantType.QualifiedName), obj) self.assertEqual(val_to_string(obj), string) def test_string_to_variant_localized_text(self): string = "_This is my string" # string = "_This is my nøåæ"FIXME: does not work with python2 ?!?! obj = ua.LocalizedText(string) self.assertEqual(string_to_val(string, ua.VariantType.LocalizedText), obj) self.assertEqual(val_to_string(obj), string) def test_string_to_val_xml_element(self): string = "

titi toto

" obj = ua.XmlElement(string) self.assertEqual(string_to_val(string, ua.VariantType.XmlElement), obj) self.assertEqual(val_to_string(obj), string) b = struct_to_binary(obj) obj2 = struct_from_binary(ua.XmlElement, ua.utils.Buffer(b)) self.assertEqual(obj, obj2) def test_variant_dimensions(self): l = [[[1.0, 1.0, 1.0, 1.0], [2.0, 2.0, 2.0, 2.0], [3.0, 3.0, 3.0, 3.0]], [[5.0, 5.0, 5.0, 5.0], [7.0, 8.0, 9.0, 01.0], [1.0, 1.0, 1.0, 1.0]]] v = ua.Variant(l) self.assertEqual(v.Dimensions, [2, 3, 4]) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v, v2) self.assertEqual(v.Dimensions, v2.Dimensions) # very special case l = [[[], [], []], [[], [], []]] v = ua.Variant(l, ua.VariantType.UInt32) self.assertEqual(v.Dimensions, [2, 3, 0]) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v.Dimensions, v2.Dimensions) self.assertEqual(v, v2) def test_flatten(self): l = [[[1.0, 1.0, 1.0, 1.0], [1.0, 1.0, 1.0, 1.0], [1.0, 1.0, 1.0, 1.0]], [[1.0, 1.0, 1.0, 1.0], [1.0, 1.0, 1.0, 1.0], [1.0, 1.0, 1.0, 1.0]]] l2 = flatten(l) dims = get_shape(l) self.assertEqual(dims, [2, 3, 4]) self.assertNotEqual(l, l2) l3 = _reshape(l2, (2, 3, 4)) self.assertEqual(l, l3) l = [[[], [], []], [[], [], []]] l2 = flatten(l) dims = get_shape(l) self.assertEqual(dims, [2, 3, 0]) l = [1, 2, 3, 4] l2 = flatten(l) dims = get_shape(l) self.assertEqual(dims, [4]) self.assertEqual(l, l2) def test_custom_variant(self): with self.assertRaises(ua.UaError): v = ua.Variant(b"ljsdfljds", ua.VariantTypeCustom(89)) v = ua.Variant(b"ljsdfljds", ua.VariantTypeCustom(61)) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v.VariantType, v2.VariantType) self.assertEqual(v, v2) def test_custom_variant_array(self): v = ua.Variant([b"ljsdfljds", b"lkjsdljksdf"], ua.VariantTypeCustom(40)) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v.VariantType, v2.VariantType) self.assertEqual(v, v2) def test_guid(self): v = ua.Variant(uuid.uuid4(), ua.VariantType.Guid) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v.VariantType, v2.VariantType) self.assertEqual(v, v2) def test_nodeid(self): nid = ua.NodeId() self.assertEqual(nid.NodeIdType, ua.NodeIdType.TwoByte) nid = ua.NodeId(446, 3, ua.NodeIdType.FourByte) self.assertEqual(nid.NodeIdType, ua.NodeIdType.FourByte) d = nodeid_to_binary(nid) new_nid = nodeid_from_binary(io.BytesIO(d)) self.assertEqual(new_nid, nid) self.assertEqual(new_nid.NodeIdType, ua.NodeIdType.FourByte) self.assertEqual(new_nid.Identifier, 446) self.assertEqual(new_nid.NamespaceIndex, 3) tb = ua.TwoByteNodeId(53) fb = ua.FourByteNodeId(53) n = ua.NumericNodeId(53) n1 = ua.NumericNodeId(53, 0) s1 = ua.StringNodeId("53", 0) bs = ua.ByteStringNodeId(b"53", 0) gid = uuid.uuid4() g = ua.ByteStringNodeId(str(gid), 0) guid = ua.GuidNodeId(gid) self.assertEqual(tb, fb) self.assertEqual(tb, n) self.assertEqual(tb, n1) self.assertEqual(n1, fb) self.assertNotEqual(g, guid) self.assertEqual(tb, nodeid_from_binary(ua.utils.Buffer(nodeid_to_binary(tb)))) self.assertEqual(fb, nodeid_from_binary(ua.utils.Buffer(nodeid_to_binary(fb)))) self.assertEqual(n, nodeid_from_binary(ua.utils.Buffer(nodeid_to_binary(n)))) self.assertEqual(s1, nodeid_from_binary(ua.utils.Buffer(nodeid_to_binary(s1)))) self.assertEqual(bs, nodeid_from_binary(ua.utils.Buffer(nodeid_to_binary(bs)))) self.assertEqual(guid, nodeid_from_binary(ua.utils.Buffer(nodeid_to_binary(guid)))) def test_nodeid_string(self): nid0 = ua.NodeId(45) self.assertEqual(nid0, ua.NodeId.from_string("i=45")) self.assertEqual(nid0, ua.NodeId.from_string("ns=0;i=45")) nid = ua.NodeId(45, 10) self.assertEqual(nid, ua.NodeId.from_string("i=45; ns=10")) self.assertNotEqual(nid, ua.NodeId.from_string("i=45; ns=11")) self.assertNotEqual(nid, ua.NodeId.from_string("i=5; ns=10")) # not sure the next one is correct... self.assertEqual(nid, ua.NodeId.from_string("i=45; ns=10; srv=serverid")) nid1 = ua.NodeId("myid.mynodeid", 7) self.assertEqual(nid1, ua.NodeId.from_string("ns=7; s=myid.mynodeid")) #with self.assertRaises(ua.UaError): #nid1 = ua.NodeId(7, "myid.mynodeid") #with self.assertRaises(ua.UaError): #nid1 = ua.StringNodeId(1, 2) def test_bad_string(self): with self.assertRaises(ua.UaStringParsingError): ua.NodeId.from_string("ns=r;s=yu") with self.assertRaises(ua.UaStringParsingError): ua.NodeId.from_string("i=r;ns=1") with self.assertRaises(ua.UaStringParsingError): ua.NodeId.from_string("ns=1") with self.assertRaises(ua.UaError): ua.QualifiedName.from_string("i:yu") with self.assertRaises(ua.UaError): ua.QualifiedName.from_string("i:::yu") def test_expandednodeid(self): nid = ua.ExpandedNodeId() self.assertEqual(nid.NodeIdType, ua.NodeIdType.TwoByte) nid2 = nodeid_from_binary(ua.utils.Buffer(nodeid_to_binary(nid))) self.assertEqual(nid, nid2) def test_null_string(self): v = ua.Variant(None, ua.VariantType.String) b = variant_to_binary(v) v2 = variant_from_binary(ua.utils.Buffer(b)) self.assertEqual(v.Value, v2.Value) v = ua.Variant("", ua.VariantType.String) b = variant_to_binary(v) v2 = variant_from_binary(ua.utils.Buffer(b)) self.assertEqual(v.Value, v2.Value) def test_extension_object(self): obj = ua.UserNameIdentityToken() obj.UserName = "admin" obj.Password = b"pass" obj2 = extensionobject_from_binary(ua.utils.Buffer(extensionobject_to_binary(obj))) self.assertEqual(type(obj), type(obj2)) self.assertEqual(obj.UserName, obj2.UserName) self.assertEqual(obj.Password, obj2.Password) v1 = ua.Variant(obj) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v1))) self.assertEqual(type(v1), type(v2)) self.assertEqual(v1.VariantType, v2.VariantType) def test_unknown_extension_object(self): obj = ua.ExtensionObject() obj.Body = b'example of data in custom format' obj.TypeId = ua.NodeId.from_string('ns=3;i=42') data = ua.utils.Buffer(extensionobject_to_binary(obj)) obj2 = extensionobject_from_binary(data) self.assertEqual(type(obj2), ua.ExtensionObject) self.assertEqual(obj2.TypeId, obj.TypeId) self.assertEqual(obj2.Body, b'example of data in custom format') def test_datetime(self): now = datetime.utcnow() epch = ua.datetime_to_win_epoch(now) dt = ua.win_epoch_to_datetime(epch) self.assertEqual(now, dt) # python's datetime has a range from Jan 1, 0001 to the end of year 9999 # windows' filetime has a range from Jan 1, 1601 to approx. year 30828 # let's test an overlapping range [Jan 1, 1601 - Dec 31, 9999] dt = datetime(1601, 1, 1) self.assertEqual(ua.win_epoch_to_datetime(ua.datetime_to_win_epoch(dt)), dt) dt = datetime(9999, 12, 31, 23, 59, 59) self.assertEqual(ua.win_epoch_to_datetime(ua.datetime_to_win_epoch(dt)), dt) epch = 128930364000001000 dt = ua.win_epoch_to_datetime(epch) epch2 = ua.datetime_to_win_epoch(dt) self.assertEqual(epch, epch2) epch = 0 self.assertEqual(ua.datetime_to_win_epoch(ua.win_epoch_to_datetime(epch)), epch) def test_equal_nodeid(self): nid1 = ua.NodeId(999, 2) nid2 = ua.NodeId(999, 2) self.assertTrue(nid1 == nid2) self.assertTrue(id(nid1) != id(nid2)) def test_zero_nodeid(self): self.assertEqual(ua.NodeId(), ua.NodeId(0, 0)) self.assertEqual(ua.NodeId(), ua.NodeId.from_string('ns=0;i=0;')) def test_string_nodeid(self): nid = ua.NodeId('titi', 1) self.assertEqual(nid.NamespaceIndex, 1) self.assertEqual(nid.Identifier, 'titi') self.assertEqual(nid.NodeIdType, ua.NodeIdType.String) def test_unicode_string_nodeid(self): nid = ua.NodeId('hëllò', 1) self.assertEqual(nid.NamespaceIndex, 1) self.assertEqual(nid.Identifier, 'hëllò') self.assertEqual(nid.NodeIdType, ua.NodeIdType.String) d = nodeid_to_binary(nid) new_nid = nodeid_from_binary(io.BytesIO(d)) self.assertEqual(new_nid, nid) self.assertEqual(new_nid.Identifier, 'hëllò') self.assertEqual(new_nid.NodeIdType, ua.NodeIdType.String) def test_numeric_nodeid(self): nid = ua.NodeId(999, 2) self.assertEqual(nid.NamespaceIndex, 2) self.assertEqual(nid.Identifier, 999) self.assertEqual(nid.NodeIdType, ua.NodeIdType.Numeric) def test_qualifiedstring_nodeid(self): nid = ua.NodeId.from_string('ns=2;s=PLC1.Manufacturer;') self.assertEqual(nid.NamespaceIndex, 2) self.assertEqual(nid.Identifier, 'PLC1.Manufacturer') def test_strrepr_nodeid(self): nid = ua.NodeId.from_string('ns=2;s=PLC1.Manufacturer;') self.assertEqual(nid.to_string(), 'ns=2;s=PLC1.Manufacturer') # self.assertEqual(repr(nid), 'ns=2;s=PLC1.Manufacturer;') def test_qualified_name(self): qn = ua.QualifiedName('qname', 2) self.assertEqual(qn.NamespaceIndex, 2) self.assertEqual(qn.Name, 'qname') self.assertEqual(qn.to_string(), '2:qname') def test_datavalue(self): dv = ua.DataValue(123) self.assertEqual(dv.Value, ua.Variant(123)) self.assertEqual(type(dv.Value), ua.Variant) dv = ua.DataValue('abc') self.assertEqual(dv.Value, ua.Variant('abc')) now = datetime.utcnow() dv.SourceTimestamp = now def test_variant(self): dv = ua.Variant(True, ua.VariantType.Boolean) self.assertEqual(dv.Value, True) self.assertEqual(type(dv.Value), bool) now = datetime.utcnow() v = ua.Variant(now) self.assertEqual(v.Value, now) self.assertEqual(v.VariantType, ua.VariantType.DateTime) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v.Value, v2.Value) self.assertEqual(v.VariantType, v2.VariantType) # commonity method: self.assertEqual(v, ua.Variant(v)) def test_variant_array(self): v = ua.Variant([1, 2, 3, 4, 5]) self.assertEqual(v.Value[1], 2) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v.Value, v2.Value) self.assertEqual(v.VariantType, v2.VariantType) now = datetime.utcnow() v = ua.Variant([now]) self.assertEqual(v.Value[0], now) self.assertEqual(v.VariantType, ua.VariantType.DateTime) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(v.Value, v2.Value) self.assertEqual(v.VariantType, v2.VariantType) def test_variant_array_mixed_types(self): v = ua.Variant([1, 2, 3]) self.assertEqual(v.VariantType, ua.VariantType.Int64) # No empty lists with self.assertRaises(UaError): v = ua.Variant([]) # First list is used to guess type with self.assertRaises(UaError): v = ua.Variant([[], [1, 2, 3]]) v = ua.Variant([[1, 2, 3], []]) self.assertEqual(v.VariantType, ua.VariantType.Int64) # No mixed lists with self.assertRaises(UaError): v = ua.Variant([1, 2.0, '3']) # Unless it's a mixed list of ints and floats v = ua.Variant([1, 2.0, 3]) self.assertEqual(v.VariantType, ua.VariantType.Double) def test_variant_array_dim(self): v = ua.Variant([1, 2, 3, 4, 5, 6], dimensions=[2, 3]) self.assertEqual(v.Value[1], 2) v2 = variant_from_binary(ua.utils.Buffer(variant_to_binary(v))) self.assertEqual(_reshape(v.Value, (2, 3)), v2.Value) self.assertEqual(v.VariantType, v2.VariantType) self.assertEqual(v.Dimensions, v2.Dimensions) self.assertEqual(v2.Dimensions, [2, 3]) def test_text(self): t1 = ua.LocalizedText('Root') t2 = ua.LocalizedText('Root') t3 = ua.LocalizedText('root') self.assertEqual(t1, t2) self.assertNotEqual(t1, t3) t4 = struct_from_binary(ua.LocalizedText, ua.utils.Buffer(struct_to_binary(t1))) self.assertEqual(t1, t4) def test_message_chunk(self): pol = ua.SecurityPolicy() chunks = MessageChunk.message_to_chunks(pol, b'123', 65536) self.assertEqual(len(chunks), 1) seq = 0 for chunk in chunks: seq += 1 chunk.SequenceHeader.SequenceNumber = seq chunk2 = MessageChunk.from_binary(pol, ua.utils.Buffer(chunks[0].to_binary())) self.assertEqual(chunks[0].to_binary(), chunk2.to_binary()) # for policy None, MessageChunk overhead is 12+4+8 = 24 bytes # Let's pack 11 bytes into 28-byte chunks. The message must be split as 4+4+3 chunks = MessageChunk.message_to_chunks(pol, b'12345678901', 28) self.assertEqual(len(chunks), 3) self.assertEqual(chunks[0].Body, b'1234') self.assertEqual(chunks[1].Body, b'5678') self.assertEqual(chunks[2].Body, b'901') for chunk in chunks: seq += 1 chunk.SequenceHeader.SequenceNumber = seq self.assertTrue(len(chunk.to_binary()) <= 28) def test_null(self): n = ua.NodeId(b'000000', 0, nodeidtype=ua.NodeIdType.Guid) self.assertTrue(n.is_null()) self.assertTrue(n.has_null_identifier()) n = ua.NodeId(b'000000', 1, nodeidtype=ua.NodeIdType.Guid) self.assertFalse(n.is_null()) self.assertTrue(n.has_null_identifier()) n = ua.NodeId() self.assertTrue(n.is_null()) self.assertTrue(n.has_null_identifier()) n = ua.NodeId(0, 0) self.assertTrue(n.is_null()) self.assertTrue(n.has_null_identifier()) n = ua.NodeId("", 0) self.assertTrue(n.is_null()) self.assertTrue(n.has_null_identifier()) n = ua.TwoByteNodeId(0) self.assertTrue(n.is_null()) self.assertTrue(n.has_null_identifier()) n = ua.NodeId(0, 3) self.assertFalse(n.is_null()) self.assertTrue(n.has_null_identifier()) def test_where_clause(self): cf = ua.ContentFilter() el = ua.ContentFilterElement() op = ua.SimpleAttributeOperand() op.BrowsePath.append(ua.QualifiedName("property", 2)) el.FilterOperands.append(op) for i in range(10): op = ua.LiteralOperand() op.Value = ua.Variant(i) el.FilterOperands.append(op) el.FilterOperator = ua.FilterOperator.InList cf.Elements.append(el) wce = WhereClauseEvaluator(logging.getLogger(__name__), None, cf) ev = BaseEvent() ev._freeze = False ev.property = 3 self.assertTrue(wce.eval(ev)) class TestMaskEnum(unittest.TestCase): class MyEnum(_MaskEnum): member1 = 0 member2 = 1 def test_invalid_input(self): with self.assertRaises(ValueError): self.MyEnum(12345) def test_parsing(self): self.assertEqual(self.MyEnum.parse_bitfield(0b0), set()) self.assertEqual(self.MyEnum.parse_bitfield(0b1), {self.MyEnum.member1}) self.assertEqual(self.MyEnum.parse_bitfield(0b10), {self.MyEnum.member2}) self.assertEqual(self.MyEnum.parse_bitfield(0b11), {self.MyEnum.member1, self.MyEnum.member2}) def test_identity(self): bitfields = [0b00, 0b01, 0b10, 0b11] for bitfield in bitfields: as_set = self.MyEnum.parse_bitfield(bitfield) back_to_bitfield = self.MyEnum.to_bitfield(as_set) self.assertEqual(back_to_bitfield, bitfield) def test_variant_intenum(self): ase = ua.AxisScaleEnumeration(ua.AxisScaleEnumeration.Linear) # Just pick an existing IntEnum class vAse = ua.Variant(ase) self.assertEqual(vAse.VariantType, ua.VariantType.Int32) if __name__ == '__main__': logging.basicConfig(level=logging.WARN) unittest.main(verbosity=3) python-opcua-0.98.9/tests/tests_xml.py000066400000000000000000000420161357637245100200250ustar00rootroot00000000000000import uuid import datetime, pytz import logging from opcua import ua from opcua import uamethod from opcua.ua import uaerrors logger = logging.getLogger("opcua.common.xmlimporter") logger.setLevel(logging.DEBUG) logger = logging.getLogger("opcua.common.xmlparser") logger.setLevel(logging.DEBUG) @uamethod def func(parent, value, string): return value * 2 class XmlTests(object): srv = None opc = None # just to remove pylint warnings assertEqual = dir def test_xml_import(self): self.opc.import_xml("tests/custom_nodes.xml") o = self.opc.get_objects_node() v = o.get_child(["1:MyXMLFolder", "1:MyXMLObject", "1:MyXMLVariable"]) val = v.get_value() self.assertEqual(val, "StringValue") node_path = ["Types", "DataTypes", "BaseDataType", "Enumeration", "1:MyEnum", "0:EnumStrings"] o = self.opc.get_root_node().get_child(node_path) self.assertEqual(len(o.get_value()), 3) # Check if method is imported node_path = ["Types", "ObjectTypes", "BaseObjectType", "1:MyObjectType", "1:MyMethod"] o = self.opc.get_root_node().get_child(node_path) self.assertEqual(len(o.get_referenced_nodes()), 4) # Check if InputArgs are imported and can be read node_path = ["Types", "ObjectTypes", "BaseObjectType", "1:MyObjectType", "1:MyMethod", "InputArguments"] o = self.opc.get_root_node().get_child(node_path) input_arg = o.get_data_value().Value.Value[0] self.assertEqual(input_arg.Name, 'Context') def test_xml_import_additional_ns(self): self.srv.register_namespace('http://placeholder.toincrease.nsindex') # if not already shift the new namespaces # "tests/custom_nodes.xml" isn't created with namespaces in mind, provide new test file self.opc.import_xml("tests/custom_nodesns.xml") # the ns=1 in to file now should be mapped to ns=2 ns = self.opc.get_namespace_index("http://examples.freeopcua.github.io/") o = self.opc.get_objects_node() o2 = o.get_child(["{0:d}:MyBaseObject".format(ns)]) self.assertIsNotNone(o2) v1 = o.get_child(["{0:d}:MyBaseObject".format(ns), "{0:d}:MyVar".format(ns)]) self.assertIsNotNone(v1) r1 = o2.get_references(refs=ua.ObjectIds.HasComponent)[0] self.assertEqual(r1.NodeId.NamespaceIndex, ns) r3 = v1.get_references(refs=ua.ObjectIds.HasComponent)[0] self.assertEqual(r3.NodeId.NamespaceIndex, ns) def test_xml_method(self): self.opc.register_namespace("tititi") self.opc.register_namespace("whatthefuck") o = self.opc.nodes.objects.add_object(2, "xmlexportmethod") m = o.add_method(2, "callme", func, [ua.VariantType.Double, ua.VariantType.String], [ua.VariantType.Float]) # set an arg dimension to a list to test list export inputs = m.get_child("InputArguments") val = inputs.get_value() val[0].ArrayDimensions = [2, 2] desc = "My nce description" val[0].Description = ua.LocalizedText(desc) inputs.set_value(val) # get all nodes and export nodes = [o, m] nodes.extend(m.get_children()) self.opc.export_xml(nodes, "tmp_test_export.xml") self.opc.delete_nodes(nodes) self.opc.import_xml("tmp_test_export.xml") # now see if our nodes are here val = inputs.get_value() self.assertEqual(len(val), 2) self.assertEqual(val[0].ArrayDimensions, [2, 2]) self.assertEqual(val[0].Description.Text, desc) def test_xml_vars(self): self.opc.register_namespace("tititi") self.opc.register_namespace("whatthexxx") o = self.opc.nodes.objects.add_object(2, "xmlexportobj") v = o.add_variable(3, "myxmlvar", 6.78, ua.VariantType.Double) a = o.add_variable(3, "myxmlvar-array", [6, 1], ua.VariantType.UInt16) a2 = o.add_variable(3, "myxmlvar-2dim", [[1, 2], [3, 4]], ua.VariantType.UInt32) a3 = o.add_variable(3, "myxmlvar-2dim", [[]], ua.VariantType.ByteString) nodes = [o, v, a, a2, a3] self.opc.export_xml(nodes, "tmp_test_export-vars.xml") self.opc.delete_nodes(nodes) self.opc.import_xml("tmp_test_export-vars.xml") self.assertEqual(v.get_value(), 6.78) self.assertEqual(v.get_data_type(), ua.NodeId(ua.ObjectIds.Double)) self.assertEqual(a.get_data_type(), ua.NodeId(ua.ObjectIds.UInt16)) self.assertIn(a.get_value_rank(), (0, 1)) self.assertEqual(a.get_value(), [6, 1]) self.assertEqual(a2.get_value(), [[1, 2], [3, 4]]) self.assertEqual(a2.get_data_type(), ua.NodeId(ua.ObjectIds.UInt32)) self.assertIn(a2.get_value_rank(), (0, 2)) self.assertEqual(a2.get_attribute(ua.AttributeIds.ArrayDimensions).Value.Value, [2, 2]) # self.assertEqual(a3.get_value(), [[]]) # would require special code ... self.assertEqual(a3.get_data_type(), ua.NodeId(ua.ObjectIds.ByteString)) self.assertIn(a3.get_value_rank(), (0, 2)) self.assertEqual(a3.get_attribute(ua.AttributeIds.ArrayDimensions).Value.Value, [1, 0]) def test_xml_ns(self): """ This test is far too complicated but catches a lot of things... """ ns_array = self.opc.get_namespace_array() if len(ns_array) < 3: self.opc.register_namespace("dummy_ns") ref_ns = self.opc.register_namespace("ref_namespace") new_ns = self.opc.register_namespace("my_new_namespace") bname_ns = self.opc.register_namespace("bname_namespace") o = self.opc.nodes.objects.add_object(0, "xmlns0") o50 = self.opc.nodes.objects.add_object(50, "xmlns20") o200 = self.opc.nodes.objects.add_object(200, "xmlns200") onew = self.opc.nodes.objects.add_object(new_ns, "xmlns_new") vnew = onew.add_variable(new_ns, "xmlns_new_var", 9.99) o_no_export = self.opc.nodes.objects.add_object(ref_ns, "xmlns_parent") v_no_parent = o_no_export.add_variable(new_ns, "xmlns_new_var_no_parent", 9.99) o_bname = onew.add_object("ns={0};i=4000".format(new_ns), "{0}:BNAME".format(bname_ns)) nodes = [o, o50, o200, onew, vnew, v_no_parent, o_bname] self.opc.export_xml(nodes, "tmp_test_export-ns.xml") # delete node and change index og new_ns before re-importing self.opc.delete_nodes(nodes) ns_node = self.opc.get_node(ua.NodeId(ua.ObjectIds.Server_NamespaceArray)) nss = ns_node.get_value() nss.remove("my_new_namespace") # nss.remove("ref_namespace") nss.remove("bname_namespace") ns_node.set_value(nss) new_ns = self.opc.register_namespace("my_new_namespace_offsett") new_ns = self.opc.register_namespace("my_new_namespace") new_nodes = self.opc.import_xml("tmp_test_export-ns.xml") for i in [o, o50, o200]: i.get_browse_name() with self.assertRaises(uaerrors.BadNodeIdUnknown): onew.get_browse_name() # since my_new_namesspace2 is referenced byt a node it should have been reimported nss = self.opc.get_namespace_array() self.assertIn("bname_namespace", nss) # get index of namespaces after import new_ns = self.opc.register_namespace("my_new_namespace") bname_ns = self.opc.register_namespace("bname_namespace") onew.nodeid.NamespaceIndex = new_ns onew.get_browse_name() vnew2 = onew.get_children()[0] self.assertEqual(new_ns, vnew2.nodeid.NamespaceIndex) def test_xml_float(self): o = self.opc.nodes.objects.add_variable(2, "xmlfloat", 5.67) dtype = o.get_data_type() dv = o.get_data_value() self.opc.export_xml([o], "tmp_test_export-float.xml") self.opc.delete_nodes([o]) new_nodes = self.opc.import_xml("tmp_test_export-float.xml") o2 = self.opc.get_node(new_nodes[0]) self.assertEqual(o, o2) self.assertEqual(dtype, o2.get_data_type()) self.assertEqual(dv.Value, o2.get_data_value().Value) def test_xml_bool(self): o = self.opc.nodes.objects.add_variable(2, "xmlbool", True) self._test_xml_var_type(o, "bool") def test_xml_string(self): o = self.opc.nodes.objects.add_variable(2, "xmlstring", "mystring") self._test_xml_var_type(o, "string") def test_xml_string_with_null_description(self): o = self.opc.nodes.objects.add_variable(2, "xmlstring", "mystring") o.set_attribute(ua.AttributeIds.Description, ua.DataValue(None)) o2 = self._test_xml_var_type(o, "string") self.assertEqual(o.get_description(), o2.get_description()) def test_xml_string_array(self): o = self.opc.nodes.objects.add_variable(2, "xmlstringarray", ["mystring2", "mystring3"]) node2 = self._test_xml_var_type(o, "stringarray") dv = node2.get_data_value() def test_xml_guid(self): o = self.opc.nodes.objects.add_variable(2, "xmlguid", uuid.uuid4()) self._test_xml_var_type(o, "guid") def test_xml_guid_array(self): o = self.opc.nodes.objects.add_variable(2, "xmlguid", [uuid.uuid4(), uuid.uuid4()]) self._test_xml_var_type(o, "guid_array") def test_xml_datetime(self): o = self.opc.nodes.objects.add_variable(3, "myxmlvar-dt", datetime.datetime.utcnow(), ua.VariantType.DateTime) self._test_xml_var_type(o, "datetime") def test_xml_datetime_array(self): o = self.opc.nodes.objects.add_variable(3, "myxmlvar-array", [ datetime.datetime.now(), datetime.datetime.utcnow(), datetime.datetime.now(pytz.timezone("Asia/Tokyo")) ], ua.VariantType.DateTime) self._test_xml_var_type(o, "datetime_array") #def test_xml_qualifiedname(self): # o = self.opc.nodes.objects.add_variable(2, "xmlltext", ua.QualifiedName("mytext", 5)) # self._test_xml_var_type(o, "qualified_name") #def test_xml_qualifiedname_array(self): # o = self.opc.nodes.objects.add_variable(2, "xmlltext_array", [ua.QualifiedName("erert", 5), ua.QualifiedName("erert33", 6)]) # self._test_xml_var_type(o, "qualified_name_array") def test_xml_bytestring(self): o = self.opc.nodes.objects.add_variable(2, "xmlltext", "mytext".encode("utf8"), ua.VariantType.ByteString) self._test_xml_var_type(o, "bytestring") def test_xml_bytestring_array(self): o = self.opc.nodes.objects.add_variable(2, "xmlltext_array", ["mytext".encode("utf8"), "errsadf".encode("utf8")], ua.VariantType.ByteString) self._test_xml_var_type(o, "bytestring_array") def test_xml_localizedtext(self): o = self.opc.nodes.objects.add_variable(2, "xmlltext", ua.LocalizedText("mytext")) self._test_xml_var_type(o, "localized_text") def test_xml_localizedtext_array(self): o = self.opc.nodes.objects.add_variable(2, "xmlltext_array", [ua.LocalizedText("erert"), ua.LocalizedText("erert33")]) self._test_xml_var_type(o, "localized_text_array") def test_xml_nodeid(self): o = self.opc.nodes.objects.add_variable(2, "xmlnodeid", ua.NodeId("mytext", 1)) self._test_xml_var_type(o, "nodeid") def test_xml_ext_obj(self): arg = ua.Argument() arg.DataType = ua.NodeId(ua.ObjectIds.Float) arg.Description = ua.LocalizedText("Nice description") arg.ArrayDimensions = [1, 2, 3] arg.Name = "MyArg" node = self.opc.nodes.objects.add_variable(2, "xmlexportobj2", arg) node2 = self._test_xml_var_type(node, "ext_obj", test_equality=False) arg2 = node2.get_value() self.assertEqual(arg.Name, arg2.Name) self.assertEqual(arg.ArrayDimensions, arg2.ArrayDimensions) self.assertEqual(arg.Description, arg2.Description) self.assertEqual(arg.DataType, arg2.DataType) def test_xml_ext_obj_array(self): arg = ua.Argument() arg.DataType = ua.NodeId(ua.ObjectIds.Float) arg.Description = ua.LocalizedText("Nice description") arg.ArrayDimensions = [1, 2, 3] arg.Name = "MyArg" arg2 = ua.Argument() arg2.DataType = ua.NodeId(ua.ObjectIds.Int32) arg2.Description = ua.LocalizedText("Nice description2") arg2.ArrayDimensions = [4, 5, 6] arg2.Name = "MyArg2" args = [arg, arg2] node = self.opc.nodes.objects.add_variable(2, "xmlexportobj2", args) node2 = self._test_xml_var_type(node, "ext_obj_array", test_equality=False) readArgs = node2.get_value() for i,arg in enumerate(readArgs): self.assertEqual(args[i].Name, readArgs[i].Name) self.assertEqual(args[i].ArrayDimensions, readArgs[i].ArrayDimensions) self.assertEqual(args[i].Description, readArgs[i].Description) self.assertEqual(args[i].DataType, readArgs[i].DataType) def test_xml_enum(self): o = self.opc.nodes.objects.add_variable(2, "xmlenum", 0, varianttype=ua.VariantType.Int32, datatype=ua.ObjectIds.ApplicationType) self._test_xml_var_type(o, "enum") def test_xml_enumvalues(self): o = self.opc.nodes.objects.add_variable(2, "xmlenumvalues", 0, varianttype=ua.VariantType.UInt32, datatype=ua.ObjectIds.AttributeWriteMask) self._test_xml_var_type(o, "enumvalues") def test_xml_custom_uint32(self): #t = self.opc.nodes. create_custom_data_type(2, 'MyCustomUint32', ua.ObjectIds.UInt32) t = self.opc.get_node(ua.ObjectIds.UInt32).add_data_type(2, 'MyCustomUint32') o = self.opc.nodes.objects.add_variable(2, "xmlcustomunit32", 0, varianttype=ua.VariantType.UInt32, datatype=t.nodeid) self._test_xml_var_type(o, "cuint32") def test_xml_var_nillable(self): xml = """ i=1 i=12 i=40 i=47 xmlstring xmlstring i=85 i=63 xmlbool xmlbool i=85 i=63 """ _new_nodes = self.opc.import_xml(xmlstring=xml) var_string = self.opc.get_node(ua.NodeId('test_xml.string.nillabel', 2)) var_bool = self.opc.get_node(ua.NodeId('test_xml.bool.nillabel', 2)) self.assertEqual(var_string.get_value(), None) self.assertEqual(var_bool.get_value(), None) def _test_xml_var_type(self, node, typename, test_equality=True): dtype = node.get_data_type() dv = node.get_data_value() rank = node.get_value_rank() dim = node.get_array_dimensions() nclass = node.get_node_class() path = "tmp_test_export-{0}.xml".format(typename) self.opc.export_xml([node], path) self.opc.delete_nodes([node]) new_nodes = self.opc.import_xml(path) node2 = self.opc.get_node(new_nodes[0]) self.assertEqual(node, node2) self.assertEqual(dtype, node2.get_data_type()) if test_equality: print("DEBUG", node, dv, node2, node2.get_value()) self.assertEqual(dv.Value, node2.get_data_value().Value) self.assertEqual(rank, node2.get_value_rank()) self.assertEqual(dim, node2.get_array_dimensions()) self.assertEqual(nclass, node2.get_node_class()) return node2 def test_xml_byte(self): o = self.opc.nodes.objects.add_variable(2, "byte", 255, ua.VariantType.Byte) dtype = o.get_data_type() dv = o.get_data_value() self.opc.export_xml([o], "export-byte.xml") self.opc.delete_nodes([o]) new_nodes = self.opc.import_xml("export-byte.xml") o2 = self.opc.get_node(new_nodes[0]) self.assertEqual(o, o2) self.assertEqual(dtype, o2.get_data_type()) self.assertEqual(dv.Value, o2.get_data_value().Value) python-opcua-0.98.9/tools/000077500000000000000000000000001357637245100154245ustar00rootroot00000000000000python-opcua-0.98.9/tools/uacall000066400000000000000000000003071357637245100166100ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uacall if __name__ == "__main__": uacall() python-opcua-0.98.9/tools/uaclient000077500000000000000000000003131357637245100171530ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uaclient if __name__ == "__main__": uaclient() python-opcua-0.98.9/tools/uadiscover000077500000000000000000000003171357637245100175170ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uadiscover if __name__ == "__main__": uadiscover() python-opcua-0.98.9/tools/uahistoryread000077500000000000000000000003251357637245100202350ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uahistoryread if __name__ == "__main__": uahistoryread() python-opcua-0.98.9/tools/uals000077500000000000000000000003031357637245100163120ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uals if __name__ == "__main__": uals() python-opcua-0.98.9/tools/uaread000077500000000000000000000003071357637245100166130ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uaread if __name__ == "__main__": uaread() python-opcua-0.98.9/tools/uaserver000077500000000000000000000003131357637245100172030ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uaserver if __name__ == "__main__": uaserver() python-opcua-0.98.9/tools/uasubscribe000077500000000000000000000003211357637245100176550ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uasubscribe if __name__ == "__main__": uasubscribe() python-opcua-0.98.9/tools/uawrite000077500000000000000000000003111357637245100170250ustar00rootroot00000000000000#!/usr/bin/env python import sys import os sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), "..")) from opcua.tools import uawrite if __name__ == "__main__": uawrite()