Hot to force glusterfs to use RDMA?

Hi, Are there way to force the connections over RDMA only? If I check host mounts I cannot see rdma mount option: mount -l| grep gluster 10.10.10.44:/GluReplica on /rhev/data-center/mnt/glusterSD/10.10.10.44:_GluReplica type fuse.glusterfs (rw,relatime,user_id=0,group_id=0,default_permissions,allow_other,max_read=131072) I have glusterized 3 nodes: GluReplica Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Volume Type: Replicate (Arbiter) Replica Count: 2 + 1 Number of Bricks: 3 Transport Types: TCP, RDMA Maximum no of snapshots: 256 Capacity: 3.51 TiB total, 190.56 GiB used, 3.33 TiB free

You will need to pass additional mount options while creating the storage domain (transport=rdma) Please let us know if this works. On Thu, Mar 2, 2017 at 2:42 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
Hi, Are there way to force the connections over RDMA only? If I check host mounts I cannot see rdma mount option: mount -l| grep gluster 10.10.10.44:/GluReplica on /rhev/data-center/mnt/glusterSD/10.10.10.44:_GluReplica type fuse.glusterfs (rw,relatime,user_id=0,group_id=0,default_permissions, allow_other,max_read=131072)
I have glusterized 3 nodes:
GluReplica Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Volume Type: Replicate (Arbiter) Replica Count: 2 + 1 Number of Bricks: 3 Transport Types: TCP, RDMA Maximum no of snapshots: 256 Capacity: 3.51 TiB total, 190.56 GiB used, 3.33 TiB free
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

I am not able to mount with RDMA over cli.... Are there some volfile parameters needs to be tuned? /usr/bin/mount -t glusterfs -o backup-volfile-servers=10.10.10.44:10.10.10.42:10.10.10.41,transport=rdma 10.10.10.44:/GluReplica /mnt [2017-03-02 11:49:47.795511] I [MSGID: 100030] [glusterfsd.c:2454:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.8.9 (args: /usr/sbin/glusterfs --volfile-server=10.10.10.44 --volfile-server=10.10.10.44 --volfile-server=10.10.10.42 --volfile-server=10.10.10.41 --volfile-server-transport=rdma --volfile-id=/GluReplica.rdma /mnt) [2017-03-02 11:49:47.812699] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 1 [2017-03-02 11:49:47.825210] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 2 [2017-03-02 11:49:47.828996] W [MSGID: 103071] [rdma.c:4589:__gf_rdma_ctx_create] 0-rpc-transport/rdma: rdma_cm event channel creation failed [No such device] [2017-03-02 11:49:47.829067] W [MSGID: 103055] [rdma.c:4896:init] 0-GluReplica-client-2: Failed to initialize IB Device [2017-03-02 11:49:47.829080] W [rpc-transport.c:354:rpc_transport_load] 0-rpc-transport: 'rdma' initialization failed [2017-03-02 11:49:47.829272] W [rpc-clnt.c:1070:rpc_clnt_connection_init] 0-GluReplica-client-2: loading of new rpc-transport failed [2017-03-02 11:49:47.829325] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=588 max=0 total=0 [2017-03-02 11:49:47.829371] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=124 max=0 total=0 [2017-03-02 11:49:47.829391] E [MSGID: 114022] [client.c:2530:client_init_rpc] 0-GluReplica-client-2: failed to initialize RPC [2017-03-02 11:49:47.829413] E [MSGID: 101019] [xlator.c:433:xlator_init] 0-GluReplica-client-2: Initialization of volume 'GluReplica-client-2' failed, review your volfile again [2017-03-02 11:49:47.829425] E [MSGID: 101066] [graph.c:324:glusterfs_graph_init] 0-GluReplica-client-2: initializing translator failed [2017-03-02 11:49:47.829436] E [MSGID: 101176] [graph.c:673:glusterfs_graph_activate] 0-graph: init failed [2017-03-02 11:49:47.830003] W [glusterfsd.c:1327:cleanup_and_exit] (-->/usr/sbin/glusterfs(mgmt_getspec_cbk+0x3c1) [0x7f524c9dbeb1] -->/usr/sbin/glusterfs(glusterfs_process_volfp+0x172) [0x7f524c9d65d2] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (1), shutting down [2017-03-02 11:49:47.830053] I [fuse-bridge.c:5794:fini] 0-fuse: Unmounting '/mnt'. [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down On Thu, Mar 2, 2017 at 12:11 PM, Sahina Bose <sabose@redhat.com> wrote:
You will need to pass additional mount options while creating the storage domain (transport=rdma)
Please let us know if this works.
On Thu, Mar 2, 2017 at 2:42 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
Hi, Are there way to force the connections over RDMA only? If I check host mounts I cannot see rdma mount option: mount -l| grep gluster 10.10.10.44:/GluReplica on /rhev/data-center/mnt/glusterSD/10.10.10.44:_GluReplica type fuse.glusterfs (rw,relatime,user_id=0,group_i d=0,default_permissions,allow_other,max_read=131072)
I have glusterized 3 nodes:
GluReplica Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Volume Type: Replicate (Arbiter) Replica Count: 2 + 1 Number of Bricks: 3 Transport Types: TCP, RDMA Maximum no of snapshots: 256 Capacity: 3.51 TiB total, 190.56 GiB used, 3.33 TiB free
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

just for reference: gluster volume info Volume Name: GluReplica Type: Replicate Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Status: Started Snapshot Count: 0 Number of Bricks: 1 x (2 + 1) = 3 Transport-type: tcp,rdma Bricks: Brick1: 10.10.10.44:/zclei22/01/glu Brick2: 10.10.10.42:/zclei21/01/glu Brick3: 10.10.10.41:/zclei26/01/glu (arbiter) Options Reconfigured: network.ping-timeout: 30 server.allow-insecure: on storage.owner-gid: 36 storage.owner-uid: 36 cluster.data-self-heal-algorithm: full features.shard: on cluster.server-quorum-type: server cluster.quorum-type: auto network.remote-dio: enable cluster.eager-lock: enable performance.stat-prefetch: off performance.io-cache: off performance.read-ahead: off performance.quick-read: off performance.readdir-ahead: on nfs.disable: on [root@clei21 ~]# gluster volume status Status of volume: GluReplica Gluster process TCP Port RDMA Port Online Pid ------------------------------------------------------------------------------ Brick 10.10.10.44:/zclei22/01/glu 49158 49159 Y 15870 Brick 10.10.10.42:/zclei21/01/glu 49156 49157 Y 17473 Brick 10.10.10.41:/zclei26/01/glu 49153 49154 Y 18897 Self-heal Daemon on localhost N/A N/A Y 17502 Self-heal Daemon on 10.10.10.41 N/A N/A Y 13353 Self-heal Daemon on 10.10.10.44 N/A N/A Y 32745 Task Status of Volume GluReplica ------------------------------------------------------------------------------ There are no active volume tasks On Thu, Mar 2, 2017 at 12:52 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
I am not able to mount with RDMA over cli.... Are there some volfile parameters needs to be tuned? /usr/bin/mount -t glusterfs -o backup-volfile-servers=10.10. 10.44:10.10.10.42:10.10.10.41,transport=rdma 10.10.10.44:/GluReplica /mnt
[2017-03-02 11:49:47.795511] I [MSGID: 100030] [glusterfsd.c:2454:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.8.9 (args: /usr/sbin/glusterfs --volfile-server=10.10.10.44 --volfile-server=10.10.10.44 --volfile-server=10.10.10.42 --volfile-server=10.10.10.41 --volfile-server-transport=rdma --volfile-id=/GluReplica.rdma /mnt) [2017-03-02 11:49:47.812699] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 1 [2017-03-02 11:49:47.825210] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 2 [2017-03-02 11:49:47.828996] W [MSGID: 103071] [rdma.c:4589:__gf_rdma_ctx_create] 0-rpc-transport/rdma: rdma_cm event channel creation failed [No such device] [2017-03-02 11:49:47.829067] W [MSGID: 103055] [rdma.c:4896:init] 0-GluReplica-client-2: Failed to initialize IB Device [2017-03-02 11:49:47.829080] W [rpc-transport.c:354:rpc_transport_load] 0-rpc-transport: 'rdma' initialization failed [2017-03-02 11:49:47.829272] W [rpc-clnt.c:1070:rpc_clnt_connection_init] 0-GluReplica-client-2: loading of new rpc-transport failed [2017-03-02 11:49:47.829325] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=588 max=0 total=0 [2017-03-02 11:49:47.829371] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=124 max=0 total=0 [2017-03-02 11:49:47.829391] E [MSGID: 114022] [client.c:2530:client_init_rpc] 0-GluReplica-client-2: failed to initialize RPC [2017-03-02 11:49:47.829413] E [MSGID: 101019] [xlator.c:433:xlator_init] 0-GluReplica-client-2: Initialization of volume 'GluReplica-client-2' failed, review your volfile again [2017-03-02 11:49:47.829425] E [MSGID: 101066] [graph.c:324:glusterfs_graph_init] 0-GluReplica-client-2: initializing translator failed [2017-03-02 11:49:47.829436] E [MSGID: 101176] [graph.c:673:glusterfs_graph_activate] 0-graph: init failed [2017-03-02 11:49:47.830003] W [glusterfsd.c:1327:cleanup_and_exit] (-->/usr/sbin/glusterfs(mgmt_getspec_cbk+0x3c1) [0x7f524c9dbeb1] -->/usr/sbin/glusterfs(glusterfs_process_volfp+0x172) [0x7f524c9d65d2] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (1), shutting down [2017-03-02 11:49:47.830053] I [fuse-bridge.c:5794:fini] 0-fuse: Unmounting '/mnt'. [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down
On Thu, Mar 2, 2017 at 12:11 PM, Sahina Bose <sabose@redhat.com> wrote:
You will need to pass additional mount options while creating the storage domain (transport=rdma)
Please let us know if this works.
On Thu, Mar 2, 2017 at 2:42 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
Hi, Are there way to force the connections over RDMA only? If I check host mounts I cannot see rdma mount option: mount -l| grep gluster 10.10.10.44:/GluReplica on /rhev/data-center/mnt/glusterSD/10.10.10.44:_GluReplica type fuse.glusterfs (rw,relatime,user_id=0,group_i d=0,default_permissions,allow_other,max_read=131072)
I have glusterized 3 nodes:
GluReplica Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Volume Type: Replicate (Arbiter) Replica Count: 2 + 1 Number of Bricks: 3 Transport Types: TCP, RDMA Maximum no of snapshots: 256 Capacity: 3.51 TiB total, 190.56 GiB used, 3.33 TiB free
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

BTW RDMA is working as expected: root@clei26 ~]# qperf clei22.vib tcp_bw tcp_lat tcp_bw: bw = 475 MB/sec tcp_lat: latency = 52.8 us [root@clei26 ~]# thank you beforehand. Arman. On Thu, Mar 2, 2017 at 12:54 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
just for reference: gluster volume info
Volume Name: GluReplica Type: Replicate Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Status: Started Snapshot Count: 0 Number of Bricks: 1 x (2 + 1) = 3 Transport-type: tcp,rdma Bricks: Brick1: 10.10.10.44:/zclei22/01/glu Brick2: 10.10.10.42:/zclei21/01/glu Brick3: 10.10.10.41:/zclei26/01/glu (arbiter) Options Reconfigured: network.ping-timeout: 30 server.allow-insecure: on storage.owner-gid: 36 storage.owner-uid: 36 cluster.data-self-heal-algorithm: full features.shard: on cluster.server-quorum-type: server cluster.quorum-type: auto network.remote-dio: enable cluster.eager-lock: enable performance.stat-prefetch: off performance.io-cache: off performance.read-ahead: off performance.quick-read: off performance.readdir-ahead: on nfs.disable: on
[root@clei21 ~]# gluster volume status Status of volume: GluReplica Gluster process TCP Port RDMA Port Online Pid ------------------------------------------------------------ ------------------ Brick 10.10.10.44:/zclei22/01/glu 49158 49159 Y 15870 Brick 10.10.10.42:/zclei21/01/glu 49156 49157 Y 17473 Brick 10.10.10.41:/zclei26/01/glu 49153 49154 Y 18897 Self-heal Daemon on localhost N/A N/A Y 17502 Self-heal Daemon on 10.10.10.41 N/A N/A Y 13353 Self-heal Daemon on 10.10.10.44 N/A N/A Y 32745
Task Status of Volume GluReplica ------------------------------------------------------------ ------------------ There are no active volume tasks
On Thu, Mar 2, 2017 at 12:52 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
I am not able to mount with RDMA over cli.... Are there some volfile parameters needs to be tuned? /usr/bin/mount -t glusterfs -o backup-volfile-servers=10.10.1 0.44:10.10.10.42:10.10.10.41,transport=rdma 10.10.10.44:/GluReplica /mnt
[2017-03-02 11:49:47.795511] I [MSGID: 100030] [glusterfsd.c:2454:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.8.9 (args: /usr/sbin/glusterfs --volfile-server=10.10.10.44 --volfile-server=10.10.10.44 --volfile-server=10.10.10.42 --volfile-server=10.10.10.41 --volfile-server-transport=rdma --volfile-id=/GluReplica.rdma /mnt) [2017-03-02 11:49:47.812699] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 1 [2017-03-02 11:49:47.825210] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 2 [2017-03-02 11:49:47.828996] W [MSGID: 103071] [rdma.c:4589:__gf_rdma_ctx_create] 0-rpc-transport/rdma: rdma_cm event channel creation failed [No such device] [2017-03-02 11:49:47.829067] W [MSGID: 103055] [rdma.c:4896:init] 0-GluReplica-client-2: Failed to initialize IB Device [2017-03-02 11:49:47.829080] W [rpc-transport.c:354:rpc_transport_load] 0-rpc-transport: 'rdma' initialization failed [2017-03-02 11:49:47.829272] W [rpc-clnt.c:1070:rpc_clnt_connection_init] 0-GluReplica-client-2: loading of new rpc-transport failed [2017-03-02 11:49:47.829325] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=588 max=0 total=0 [2017-03-02 11:49:47.829371] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=124 max=0 total=0 [2017-03-02 11:49:47.829391] E [MSGID: 114022] [client.c:2530:client_init_rpc] 0-GluReplica-client-2: failed to initialize RPC [2017-03-02 11:49:47.829413] E [MSGID: 101019] [xlator.c:433:xlator_init] 0-GluReplica-client-2: Initialization of volume 'GluReplica-client-2' failed, review your volfile again [2017-03-02 11:49:47.829425] E [MSGID: 101066] [graph.c:324:glusterfs_graph_init] 0-GluReplica-client-2: initializing translator failed [2017-03-02 11:49:47.829436] E [MSGID: 101176] [graph.c:673:glusterfs_graph_activate] 0-graph: init failed [2017-03-02 11:49:47.830003] W [glusterfsd.c:1327:cleanup_and_exit] (-->/usr/sbin/glusterfs(mgmt_getspec_cbk+0x3c1) [0x7f524c9dbeb1] -->/usr/sbin/glusterfs(glusterfs_process_volfp+0x172) [0x7f524c9d65d2] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (1), shutting down [2017-03-02 11:49:47.830053] I [fuse-bridge.c:5794:fini] 0-fuse: Unmounting '/mnt'. [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down
On Thu, Mar 2, 2017 at 12:11 PM, Sahina Bose <sabose@redhat.com> wrote:
You will need to pass additional mount options while creating the storage domain (transport=rdma)
Please let us know if this works.
On Thu, Mar 2, 2017 at 2:42 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
Hi, Are there way to force the connections over RDMA only? If I check host mounts I cannot see rdma mount option: mount -l| grep gluster 10.10.10.44:/GluReplica on /rhev/data-center/mnt/glusterSD/10.10.10.44:_GluReplica type fuse.glusterfs (rw,relatime,user_id=0,group_i d=0,default_permissions,allow_other,max_read=131072)
I have glusterized 3 nodes:
GluReplica Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Volume Type: Replicate (Arbiter) Replica Count: 2 + 1 Number of Bricks: 3 Transport Types: TCP, RDMA Maximum no of snapshots: 256 Capacity: 3.51 TiB total, 190.56 GiB used, 3.33 TiB free
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

Hello, hmm, i saw that i'm not using RDMA, how i can safely tune it? I have 3 server setup with GlusterFS: [root@virt1 ~]# gluster volume info Volume Name: data Type: Replicate Volume ID: d53c2202-0dba-4973-960e-4642d41bcdd8 Status: Started Snapshot Count: 0 Number of Bricks: 1 x (2 + 1) = 3 Transport-type: tcp Bricks: Brick1: virt1:/gluster/brick2/data Brick2: virt2:/gluster/brick2/data Brick3: virt3:/gluster/brick2/data (arbiter) Options Reconfigured: performance.strict-o-direct: on nfs.disable: on user.cifs: off network.ping-timeout: 30 cluster.shd-max-threads: 6 cluster.shd-wait-qlength: 10000 cluster.locking-scheme: granular cluster.data-self-heal-algorithm: full performance.low-prio-threads: 32 features.shard-block-size: 512MB features.shard: on storage.owner-gid: 36 storage.owner-uid: 36 cluster.server-quorum-type: server cluster.quorum-type: auto network.remote-dio: off cluster.eager-lock: enable performance.stat-prefetch: off performance.io-cache: off performance.read-ahead: off performance.quick-read: off performance.readdir-ahead: on ovirt 4.1 Thanks in advance? Best regards, Misak Khachatryan On Thu, Mar 2, 2017 at 4:06 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
BTW RDMA is working as expected: root@clei26 ~]# qperf clei22.vib tcp_bw tcp_lat tcp_bw: bw = 475 MB/sec tcp_lat: latency = 52.8 us [root@clei26 ~]#
thank you beforehand. Arman.
On Thu, Mar 2, 2017 at 12:54 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
just for reference: gluster volume info
Volume Name: GluReplica Type: Replicate Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Status: Started Snapshot Count: 0 Number of Bricks: 1 x (2 + 1) = 3 Transport-type: tcp,rdma Bricks: Brick1: 10.10.10.44:/zclei22/01/glu Brick2: 10.10.10.42:/zclei21/01/glu Brick3: 10.10.10.41:/zclei26/01/glu (arbiter) Options Reconfigured: network.ping-timeout: 30 server.allow-insecure: on storage.owner-gid: 36 storage.owner-uid: 36 cluster.data-self-heal-algorithm: full features.shard: on cluster.server-quorum-type: server cluster.quorum-type: auto network.remote-dio: enable cluster.eager-lock: enable performance.stat-prefetch: off performance.io-cache: off performance.read-ahead: off performance.quick-read: off performance.readdir-ahead: on nfs.disable: on
[root@clei21 ~]# gluster volume status Status of volume: GluReplica Gluster process TCP Port RDMA Port Online Pid
------------------------------------------------------------------------------ Brick 10.10.10.44:/zclei22/01/glu 49158 49159 Y 15870 Brick 10.10.10.42:/zclei21/01/glu 49156 49157 Y 17473 Brick 10.10.10.41:/zclei26/01/glu 49153 49154 Y 18897 Self-heal Daemon on localhost N/A N/A Y 17502 Self-heal Daemon on 10.10.10.41 N/A N/A Y 13353 Self-heal Daemon on 10.10.10.44 N/A N/A Y 32745
Task Status of Volume GluReplica
------------------------------------------------------------------------------ There are no active volume tasks
On Thu, Mar 2, 2017 at 12:52 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
I am not able to mount with RDMA over cli.... Are there some volfile parameters needs to be tuned? /usr/bin/mount -t glusterfs -o backup-volfile-servers=10.10.10.44:10.10.10.42:10.10.10.41,transport=rdma 10.10.10.44:/GluReplica /mnt
[2017-03-02 11:49:47.795511] I [MSGID: 100030] [glusterfsd.c:2454:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.8.9 (args: /usr/sbin/glusterfs --volfile-server=10.10.10.44 --volfile-server=10.10.10.44 --volfile-server=10.10.10.42 --volfile-server=10.10.10.41 --volfile-server-transport=rdma --volfile-id=/GluReplica.rdma /mnt) [2017-03-02 11:49:47.812699] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 1 [2017-03-02 11:49:47.825210] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 2 [2017-03-02 11:49:47.828996] W [MSGID: 103071] [rdma.c:4589:__gf_rdma_ctx_create] 0-rpc-transport/rdma: rdma_cm event channel creation failed [No such device] [2017-03-02 11:49:47.829067] W [MSGID: 103055] [rdma.c:4896:init] 0-GluReplica-client-2: Failed to initialize IB Device [2017-03-02 11:49:47.829080] W [rpc-transport.c:354:rpc_transport_load] 0-rpc-transport: 'rdma' initialization failed [2017-03-02 11:49:47.829272] W [rpc-clnt.c:1070:rpc_clnt_connection_init] 0-GluReplica-client-2: loading of new rpc-transport failed [2017-03-02 11:49:47.829325] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=588 max=0 total=0 [2017-03-02 11:49:47.829371] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=124 max=0 total=0 [2017-03-02 11:49:47.829391] E [MSGID: 114022] [client.c:2530:client_init_rpc] 0-GluReplica-client-2: failed to initialize RPC [2017-03-02 11:49:47.829413] E [MSGID: 101019] [xlator.c:433:xlator_init] 0-GluReplica-client-2: Initialization of volume 'GluReplica-client-2' failed, review your volfile again [2017-03-02 11:49:47.829425] E [MSGID: 101066] [graph.c:324:glusterfs_graph_init] 0-GluReplica-client-2: initializing translator failed [2017-03-02 11:49:47.829436] E [MSGID: 101176] [graph.c:673:glusterfs_graph_activate] 0-graph: init failed [2017-03-02 11:49:47.830003] W [glusterfsd.c:1327:cleanup_and_exit] (-->/usr/sbin/glusterfs(mgmt_getspec_cbk+0x3c1) [0x7f524c9dbeb1] -->/usr/sbin/glusterfs(glusterfs_process_volfp+0x172) [0x7f524c9d65d2] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (1), shutting down [2017-03-02 11:49:47.830053] I [fuse-bridge.c:5794:fini] 0-fuse: Unmounting '/mnt'. [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down
On Thu, Mar 2, 2017 at 12:11 PM, Sahina Bose <sabose@redhat.com> wrote:
You will need to pass additional mount options while creating the storage domain (transport=rdma)
Please let us know if this works.
On Thu, Mar 2, 2017 at 2:42 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
Hi, Are there way to force the connections over RDMA only? If I check host mounts I cannot see rdma mount option: mount -l| grep gluster 10.10.10.44:/GluReplica on /rhev/data-center/mnt/glusterSD/10.10.10.44:_GluReplica type fuse.glusterfs (rw,relatime,user_id=0,group_id=0,default_permissions,allow_other,max_read=131072)
I have glusterized 3 nodes:
GluReplica Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Volume Type: Replicate (Arbiter) Replica Count: 2 + 1 Number of Bricks: 3 Transport Types: TCP, RDMA Maximum no of snapshots: 256 Capacity: 3.51 TiB total, 190.56 GiB used, 3.33 TiB free
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

[Adding gluster users to help with error] [2017-03-02 11:49:47.828996] W [MSGID: 103071] [rdma.c:4589:__gf_rdma_ctx_create] 0-rpc-transport/rdma: rdma_cm event channel creation failed [No such device] On Thu, Mar 2, 2017 at 5:36 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
BTW RDMA is working as expected: root@clei26 ~]# qperf clei22.vib tcp_bw tcp_lat tcp_bw: bw = 475 MB/sec tcp_lat: latency = 52.8 us [root@clei26 ~]#
thank you beforehand. Arman.
On Thu, Mar 2, 2017 at 12:54 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
just for reference: gluster volume info
Volume Name: GluReplica Type: Replicate Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Status: Started Snapshot Count: 0 Number of Bricks: 1 x (2 + 1) = 3 Transport-type: tcp,rdma Bricks: Brick1: 10.10.10.44:/zclei22/01/glu Brick2: 10.10.10.42:/zclei21/01/glu Brick3: 10.10.10.41:/zclei26/01/glu (arbiter) Options Reconfigured: network.ping-timeout: 30 server.allow-insecure: on storage.owner-gid: 36 storage.owner-uid: 36 cluster.data-self-heal-algorithm: full features.shard: on cluster.server-quorum-type: server cluster.quorum-type: auto network.remote-dio: enable cluster.eager-lock: enable performance.stat-prefetch: off performance.io-cache: off performance.read-ahead: off performance.quick-read: off performance.readdir-ahead: on nfs.disable: on
[root@clei21 ~]# gluster volume status Status of volume: GluReplica Gluster process TCP Port RDMA Port Online Pid ------------------------------------------------------------ ------------------ Brick 10.10.10.44:/zclei22/01/glu 49158 49159 Y 15870 Brick 10.10.10.42:/zclei21/01/glu 49156 49157 Y 17473 Brick 10.10.10.41:/zclei26/01/glu 49153 49154 Y 18897 Self-heal Daemon on localhost N/A N/A Y 17502 Self-heal Daemon on 10.10.10.41 N/A N/A Y 13353 Self-heal Daemon on 10.10.10.44 N/A N/A Y 32745
Task Status of Volume GluReplica ------------------------------------------------------------ ------------------ There are no active volume tasks
On Thu, Mar 2, 2017 at 12:52 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
I am not able to mount with RDMA over cli.... Are there some volfile parameters needs to be tuned? /usr/bin/mount -t glusterfs -o backup-volfile-servers=10.10.1 0.44:10.10.10.42:10.10.10.41,transport=rdma 10.10.10.44:/GluReplica /mnt
[2017-03-02 11:49:47.795511] I [MSGID: 100030] [glusterfsd.c:2454:main] 0-/usr/sbin/glusterfs: Started running /usr/sbin/glusterfs version 3.8.9 (args: /usr/sbin/glusterfs --volfile-server=10.10.10.44 --volfile-server=10.10.10.44 --volfile-server=10.10.10.42 --volfile-server=10.10.10.41 --volfile-server-transport=rdma --volfile-id=/GluReplica.rdma /mnt) [2017-03-02 11:49:47.812699] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 1 [2017-03-02 11:49:47.825210] I [MSGID: 101190] [event-epoll.c:628:event_dispatch_epoll_worker] 0-epoll: Started thread with index 2 [2017-03-02 11:49:47.828996] W [MSGID: 103071] [rdma.c:4589:__gf_rdma_ctx_create] 0-rpc-transport/rdma: rdma_cm event channel creation failed [No such device] [2017-03-02 11:49:47.829067] W [MSGID: 103055] [rdma.c:4896:init] 0-GluReplica-client-2: Failed to initialize IB Device [2017-03-02 11:49:47.829080] W [rpc-transport.c:354:rpc_transport_load] 0-rpc-transport: 'rdma' initialization failed [2017-03-02 11:49:47.829272] W [rpc-clnt.c:1070:rpc_clnt_connection_init] 0-GluReplica-client-2: loading of new rpc-transport failed [2017-03-02 11:49:47.829325] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=588 max=0 total=0 [2017-03-02 11:49:47.829371] I [MSGID: 101053] [mem-pool.c:641:mem_pool_destroy] 0-GluReplica-client-2: size=124 max=0 total=0 [2017-03-02 11:49:47.829391] E [MSGID: 114022] [client.c:2530:client_init_rpc] 0-GluReplica-client-2: failed to initialize RPC [2017-03-02 11:49:47.829413] E [MSGID: 101019] [xlator.c:433:xlator_init] 0-GluReplica-client-2: Initialization of volume 'GluReplica-client-2' failed, review your volfile again [2017-03-02 11:49:47.829425] E [MSGID: 101066] [graph.c:324:glusterfs_graph_init] 0-GluReplica-client-2: initializing translator failed [2017-03-02 11:49:47.829436] E [MSGID: 101176] [graph.c:673:glusterfs_graph_activate] 0-graph: init failed [2017-03-02 11:49:47.830003] W [glusterfsd.c:1327:cleanup_and_exit] (-->/usr/sbin/glusterfs(mgmt_getspec_cbk+0x3c1) [0x7f524c9dbeb1] -->/usr/sbin/glusterfs(glusterfs_process_volfp+0x172) [0x7f524c9d65d2] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (1), shutting down [2017-03-02 11:49:47.830053] I [fuse-bridge.c:5794:fini] 0-fuse: Unmounting '/mnt'. [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down [2017-03-02 11:49:47.831014] W [glusterfsd.c:1327:cleanup_and_exit] (-->/lib64/libpthread.so.0(+0x7dc5) [0x7f524b343dc5] -->/usr/sbin/glusterfs(glusterfs_sigwaiter+0xe5) [0x7f524c9d5cd5] -->/usr/sbin/glusterfs(cleanup_and_exit+0x6b) [0x7f524c9d5b4b] ) 0-: received signum (15), shutting down
On Thu, Mar 2, 2017 at 12:11 PM, Sahina Bose <sabose@redhat.com> wrote:
You will need to pass additional mount options while creating the storage domain (transport=rdma)
Please let us know if this works.
On Thu, Mar 2, 2017 at 2:42 PM, Arman Khalatyan <arm2arm@gmail.com> wrote:
Hi, Are there way to force the connections over RDMA only? If I check host mounts I cannot see rdma mount option: mount -l| grep gluster 10.10.10.44:/GluReplica on /rhev/data-center/mnt/glusterS D/10.10.10.44:_GluReplica type fuse.glusterfs (rw,relatime,user_id=0,group_id=0,default_permissions,allow_ other,max_read=131072)
I have glusterized 3 nodes:
GluReplica Volume ID: ee686dfe-203a-4caa-a691-26353460cc48 Volume Type: Replicate (Arbiter) Replica Count: 2 + 1 Number of Bricks: 3 Transport Types: TCP, RDMA Maximum no of snapshots: 256 Capacity: 3.51 TiB total, 190.56 GiB used, 3.33 TiB free
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

--_000_30b1fa1b4259429581f6f6b5e7ef5f02DRHQMAIL105nvidiacom_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SSBoYXZlIGJlZW4gdGVzdGluZyBnbHVzdGVyZnMgb3ZlciBSRE1BICYgYmVsb3cgaXMgdGhlIGNv bW1hbmQgSSB1c2UuIFJlYWRpbmcgdXAgdGhlIGxvZ3MsIGl0IGxvb2tzIGxpa2UgeW91ciBJQihJ bmZpbmlCYW5kKSBkZXZpY2UgaXMgbm90IGJlaW5nIGluaXRpYWxpemVkLiBJIGFtIG5vdCBzdXJl IGlmIHUgaGF2ZSBhbiBpc3N1ZSBvbiB0aGUgY2xpZW50IElCIG9yIHRoZSBzdG9yYWdlIHNlcnZl ciBJQi4gQWxzbyBoYXZlIHlvdSBjb25maWd1cmVkIHVyIElCIGRldmljZXMgY29ycmVjdGx5LiBJ IGFtIHVzaW5nIElQb0lCLg0KQ2FuIHlvdSBjaGVjayB5b3VyIGZpcmV3YWxsLCBkaXNhYmxlIHNl bGludXgsIEkgdGhpbmssIHlvdSBtaWdodCBoYXZlIGNoZWNrZWQgaXQgYWxyZWFkeSA/DQoNCm1v dW50IC10IGdsdXN0ZXJmcyAtbyB0cmFuc3BvcnQ9cmRtYSBzdG9yYWdlTjE6L3ZvbDAgL21udC92 b2wwDQoNCg0KDQrCtyAgICAgICAgIFRoZSBiZWxvdyBlcnJvciBzZWVtcyBpZiB5b3UgaGF2ZSBp c3N1ZSBzdGFydGluZyB5b3VyIHZvbHVtZS4gSSBoYWQgaXNzdWUsIHdoZW4gbXkgdHJhbnNwb3J0 IHdhcyBzZXQgdG8gdGNwLHJkbWEuIEkgaGFkIHRvIGZvcmNlIHN0YXJ0IG15IHZvbHVtZS4gSWYg SSBoYWQgc2V0IGl0IG9ubHkgdG8gdGNwIG9uIHRoZSB2b2x1bWUsIHRoZSB2b2x1bWUgd291bGQg c3RhcnQgZWFzaWx5Lg0KDQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44MjkzOTFdIEUgW01TR0lEOiAx MTQwMjJdIFtjbGllbnQuYzoyNTMwOmNsaWVudF9pbml0X3JwY10gMC1HbHVSZXBsaWNhLWNsaWVu dC0yOiBmYWlsZWQgdG8gaW5pdGlhbGl6ZSBSUEMNClsyMDE3LTAzLTAyIDExOjQ5OjQ3LjgyOTQx M10gRSBbTVNHSUQ6IDEwMTAxOV0gW3hsYXRvci5jOjQzMzp4bGF0b3JfaW5pdF0gMC1HbHVSZXBs aWNhLWNsaWVudC0yOiBJbml0aWFsaXphdGlvbiBvZiB2b2x1bWUgJ0dsdVJlcGxpY2EtY2xpZW50 LTInIGZhaWxlZCwgcmV2aWV3IHlvdXIgdm9sZmlsZSBhZ2Fpbg0KWzIwMTctMDMtMDIgMTE6NDk6 NDcuODI5NDI1XSBFIFtNU0dJRDogMTAxMDY2XSBbZ3JhcGguYzozMjQ6Z2x1c3RlcmZzX2dyYXBo X2luaXRdIDAtR2x1UmVwbGljYS1jbGllbnQtMjogaW5pdGlhbGl6aW5nIHRyYW5zbGF0b3IgZmFp bGVkDQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44Mjk0MzZdIEUgW01TR0lEOiAxMDExNzZdIFtncmFw aC5jOjY3MzpnbHVzdGVyZnNfZ3JhcGhfYWN0aXZhdGVdIDAtZ3JhcGg6IGluaXQgZmFpbGVkDQoN Cg0KDQrCtyAgICAgICAgIFRoZSBiZWxvdyBlcnJvciBzZWVtcyBpZiB5b3UgaGF2ZSBpc3N1ZSB3 aXRoIElCIGRldmljZS4gSWYgbm90IGNvbmZpZ3VyZWQgcHJvcGVybHkuDQoNClsyMDE3LTAzLTAy IDExOjQ5OjQ3LjgyODk5Nl0gVyBbTVNHSUQ6IDEwMzA3MV0gW3JkbWEuYzo0NTg5Ol9fZ2ZfcmRt YV9jdHhfY3JlYXRlXSAwLXJwYy10cmFuc3BvcnQvcmRtYTogcmRtYV9jbSBldmVudCBjaGFubmVs IGNyZWF0aW9uIGZhaWxlZCBbTm8gc3VjaCBkZXZpY2VdDQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44 MjkwNjddIFcgW01TR0lEOiAxMDMwNTVdIFtyZG1hLmM6NDg5Njppbml0XSAwLUdsdVJlcGxpY2Et Y2xpZW50LTI6IEZhaWxlZCB0byBpbml0aWFsaXplIElCIERldmljZQ0KWzIwMTctMDMtMDIgMTE6 NDk6NDcuODI5MDgwXSBXIFtycGMtdHJhbnNwb3J0LmM6MzU0OnJwY190cmFuc3BvcnRfbG9hZF0g MC1ycGMtdHJhbnNwb3J0OiAncmRtYScgaW5pdGlhbGl6YXRpb24gZmFpbGVkDQoNCg0KDQotLQ0K RGVlcGFrDQoNCg0KRnJvbTogZ2x1c3Rlci11c2Vycy1ib3VuY2VzQGdsdXN0ZXIub3JnIFttYWls dG86Z2x1c3Rlci11c2Vycy1ib3VuY2VzQGdsdXN0ZXIub3JnXSBPbiBCZWhhbGYgT2YgU2FoaW5h IEJvc2UNClNlbnQ6IFRodXJzZGF5LCBNYXJjaCAwMiwgMjAxNyAxMDoyNiBQTQ0KVG86IEFybWFu IEtoYWxhdHlhbjsgZ2x1c3Rlci11c2Vyc0BnbHVzdGVyLm9yZzsgUmFmaSBLYXZ1bmdhbCBDaHVu ZGF0dHUgUGFyYW1iaWwNCkNjOiB1c2Vycw0KU3ViamVjdDogUmU6IFtHbHVzdGVyLXVzZXJzXSBb b3ZpcnQtdXNlcnNdIEhvdCB0byBmb3JjZSBnbHVzdGVyZnMgdG8gdXNlIFJETUE/DQoNCltBZGRp bmcgZ2x1c3RlciB1c2VycyB0byBoZWxwIHdpdGggZXJyb3JdDQoNClsyMDE3LTAzLTAyIDExOjQ5 OjQ3LjgyODk5Nl0gVyBbTVNHSUQ6IDEwMzA3MV0gW3JkbWEuYzo0NTg5Ol9fZ2ZfcmRtYV9jdHhf Y3JlYXRlXSAwLXJwYy10cmFuc3BvcnQvcmRtYTogcmRtYV9jbSBldmVudCBjaGFubmVsIGNyZWF0 aW9uIGZhaWxlZCBbTm8gc3VjaCBkZXZpY2VdDQoNCk9uIFRodSwgTWFyIDIsIDIwMTcgYXQgNToz NiBQTSwgQXJtYW4gS2hhbGF0eWFuIDxhcm0yYXJtQGdtYWlsLmNvbTxtYWlsdG86YXJtMmFybUBn bWFpbC5jb20+PiB3cm90ZToNCkJUVyBSRE1BIGlzIHdvcmtpbmcgYXMgZXhwZWN0ZWQ6DQpyb290 QGNsZWkyNiB+XSMgcXBlcmYgY2xlaTIyLnZpYiAgdGNwX2J3IHRjcF9sYXQNCnRjcF9idzoNCiAg ICBidyAgPSAgNDc1IE1CL3NlYw0KdGNwX2xhdDoNCiAgICBsYXRlbmN5ICA9ICA1Mi44IHVzDQpb cm9vdEBjbGVpMjYgfl0jDQp0aGFuayB5b3UgYmVmb3JlaGFuZC4NCkFybWFuLg0KDQpPbiBUaHUs IE1hciAyLCAyMDE3IGF0IDEyOjU0IFBNLCBBcm1hbiBLaGFsYXR5YW4gPGFybTJhcm1AZ21haWwu Y29tPG1haWx0bzphcm0yYXJtQGdtYWlsLmNvbT4+IHdyb3RlOg0KanVzdCBmb3IgcmVmZXJlbmNl Og0KIGdsdXN0ZXIgdm9sdW1lIGluZm8NCg0KVm9sdW1lIE5hbWU6IEdsdVJlcGxpY2ENClR5cGU6 IFJlcGxpY2F0ZQ0KVm9sdW1lIElEOiBlZTY4NmRmZS0yMDNhLTRjYWEtYTY5MS0yNjM1MzQ2MGNj NDgNClN0YXR1czogU3RhcnRlZA0KU25hcHNob3QgQ291bnQ6IDANCk51bWJlciBvZiBCcmlja3M6 IDEgeCAoMiArIDEpID0gMw0KVHJhbnNwb3J0LXR5cGU6IHRjcCxyZG1hDQpCcmlja3M6DQpCcmlj azE6IDEwLjEwLjEwLjQ0Oi96Y2xlaTIyLzAxL2dsdQ0KQnJpY2syOiAxMC4xMC4xMC40MjovemNs ZWkyMS8wMS9nbHUNCkJyaWNrMzogMTAuMTAuMTAuNDE6L3pjbGVpMjYvMDEvZ2x1IChhcmJpdGVy KQ0KT3B0aW9ucyBSZWNvbmZpZ3VyZWQ6DQpuZXR3b3JrLnBpbmctdGltZW91dDogMzANCnNlcnZl ci5hbGxvdy1pbnNlY3VyZTogb24NCnN0b3JhZ2Uub3duZXItZ2lkOiAzNg0Kc3RvcmFnZS5vd25l ci11aWQ6IDM2DQpjbHVzdGVyLmRhdGEtc2VsZi1oZWFsLWFsZ29yaXRobTogZnVsbA0KZmVhdHVy ZXMuc2hhcmQ6IG9uDQpjbHVzdGVyLnNlcnZlci1xdW9ydW0tdHlwZTogc2VydmVyDQpjbHVzdGVy LnF1b3J1bS10eXBlOiBhdXRvDQpuZXR3b3JrLnJlbW90ZS1kaW86IGVuYWJsZQ0KY2x1c3Rlci5l YWdlci1sb2NrOiBlbmFibGUNCnBlcmZvcm1hbmNlLnN0YXQtcHJlZmV0Y2g6IG9mZg0KcGVyZm9y bWFuY2UuaW8tY2FjaGU6IG9mZg0KcGVyZm9ybWFuY2UucmVhZC1haGVhZDogb2ZmDQpwZXJmb3Jt YW5jZS5xdWljay1yZWFkOiBvZmYNCnBlcmZvcm1hbmNlLnJlYWRkaXItYWhlYWQ6IG9uDQpuZnMu ZGlzYWJsZTogb24NCg0KDQoNCltyb290QGNsZWkyMSB+XSMgZ2x1c3RlciB2b2x1bWUgc3RhdHVz DQpTdGF0dXMgb2Ygdm9sdW1lOiBHbHVSZXBsaWNhDQpHbHVzdGVyIHByb2Nlc3MgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFRDUCBQb3J0ICBSRE1BIFBvcnQgIE9ubGluZSAgUGlkDQotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCkJyaWNrIDEwLjEwLjEwLjQ0Oi96Y2xlaTIyLzAxL2dsdSAgICAg ICAgICAgNDkxNTggICAgIDQ5MTU5ICAgICAgWSAgICAgICAxNTg3MA0KQnJpY2sgMTAuMTAuMTAu NDI6L3pjbGVpMjEvMDEvZ2x1ICAgICAgICAgICA0OTE1NiAgICAgNDkxNTcgICAgICBZICAgICAg IDE3NDczDQpCcmljayAxMC4xMC4xMC40MTovemNsZWkyNi8wMS9nbHUgICAgICAgICAgIDQ5MTUz ICAgICA0OTE1NCAgICAgIFkgICAgICAgMTg4OTcNClNlbGYtaGVhbCBEYWVtb24gb24gbG9jYWxo b3N0ICAgICAgICAgICAgICAgTi9BICAgICAgIE4vQSAgICAgICAgWSAgICAgICAxNzUwMg0KU2Vs Zi1oZWFsIERhZW1vbiBvbiAxMC4xMC4xMC40MSAgICAgICAgICAgICBOL0EgICAgICAgTi9BICAg ICAgICBZICAgICAgIDEzMzUzDQpTZWxmLWhlYWwgRGFlbW9uIG9uIDEwLjEwLjEwLjQ0ICAgICAg ICAgICAgIE4vQSAgICAgICBOL0EgICAgICAgIFkgICAgICAgMzI3NDUNCg0KVGFzayBTdGF0dXMg b2YgVm9sdW1lIEdsdVJlcGxpY2ENCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KVGhlcmUgYXJlIG5v IGFjdGl2ZSB2b2x1bWUgdGFza3MNCg0KT24gVGh1LCBNYXIgMiwgMjAxNyBhdCAxMjo1MiBQTSwg QXJtYW4gS2hhbGF0eWFuIDxhcm0yYXJtQGdtYWlsLmNvbTxtYWlsdG86YXJtMmFybUBnbWFpbC5j b20+PiB3cm90ZToNCkkgYW0gbm90IGFibGUgdG8gbW91bnQgd2l0aCBSRE1BIG92ZXIgY2xpLi4u Lg0KQXJlIHRoZXJlIHNvbWUgdm9sZmlsZSBwYXJhbWV0ZXJzIG5lZWRzIHRvIGJlIHR1bmVkPw0K L3Vzci9iaW4vbW91bnQgIC10IGdsdXN0ZXJmcyAgLW8gYmFja3VwLXZvbGZpbGUtc2VydmVycz0x MC4xMC4xMC40NDoxMC4xMC4xMC40MjoxMC4xMC4xMC40MSx0cmFuc3BvcnQ9cmRtYSAxMC4xMC4x MC40NDovR2x1UmVwbGljYSAvbW50DQoNClsyMDE3LTAzLTAyIDExOjQ5OjQ3Ljc5NTUxMV0gSSBb TVNHSUQ6IDEwMDAzMF0gW2dsdXN0ZXJmc2QuYzoyNDU0Om1haW5dIDAtL3Vzci9zYmluL2dsdXN0 ZXJmczogU3RhcnRlZCBydW5uaW5nIC91c3Ivc2Jpbi9nbHVzdGVyZnMgdmVyc2lvbiAzLjguOSAo YXJnczogL3Vzci9zYmluL2dsdXN0ZXJmcyAtLXZvbGZpbGUtc2VydmVyPTEwLjEwLjEwLjQ0IC0t dm9sZmlsZS1zZXJ2ZXI9MTAuMTAuMTAuNDQgLS12b2xmaWxlLXNlcnZlcj0xMC4xMC4xMC40MiAt LXZvbGZpbGUtc2VydmVyPTEwLjEwLjEwLjQxIC0tdm9sZmlsZS1zZXJ2ZXItdHJhbnNwb3J0PXJk bWEgLS12b2xmaWxlLWlkPS9HbHVSZXBsaWNhLnJkbWEgL21udCkNClsyMDE3LTAzLTAyIDExOjQ5 OjQ3LjgxMjY5OV0gSSBbTVNHSUQ6IDEwMTE5MF0gW2V2ZW50LWVwb2xsLmM6NjI4OmV2ZW50X2Rp c3BhdGNoX2Vwb2xsX3dvcmtlcl0gMC1lcG9sbDogU3RhcnRlZCB0aHJlYWQgd2l0aCBpbmRleCAx DQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44MjUyMTBdIEkgW01TR0lEOiAxMDExOTBdIFtldmVudC1l cG9sbC5jOjYyODpldmVudF9kaXNwYXRjaF9lcG9sbF93b3JrZXJdIDAtZXBvbGw6IFN0YXJ0ZWQg dGhyZWFkIHdpdGggaW5kZXggMg0KWzIwMTctMDMtMDIgMTE6NDk6NDcuODI4OTk2XSBXIFtNU0dJ RDogMTAzMDcxXSBbcmRtYS5jOjQ1ODk6X19nZl9yZG1hX2N0eF9jcmVhdGVdIDAtcnBjLXRyYW5z cG9ydC9yZG1hOiByZG1hX2NtIGV2ZW50IGNoYW5uZWwgY3JlYXRpb24gZmFpbGVkIFtObyBzdWNo IGRldmljZV0NClsyMDE3LTAzLTAyIDExOjQ5OjQ3LjgyOTA2N10gVyBbTVNHSUQ6IDEwMzA1NV0g W3JkbWEuYzo0ODk2OmluaXRdIDAtR2x1UmVwbGljYS1jbGllbnQtMjogRmFpbGVkIHRvIGluaXRp YWxpemUgSUIgRGV2aWNlDQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44MjkwODBdIFcgW3JwYy10cmFu c3BvcnQuYzozNTQ6cnBjX3RyYW5zcG9ydF9sb2FkXSAwLXJwYy10cmFuc3BvcnQ6ICdyZG1hJyBp bml0aWFsaXphdGlvbiBmYWlsZWQNClsyMDE3LTAzLTAyIDExOjQ5OjQ3LjgyOTI3Ml0gVyBbcnBj LWNsbnQuYzoxMDcwOnJwY19jbG50X2Nvbm5lY3Rpb25faW5pdF0gMC1HbHVSZXBsaWNhLWNsaWVu dC0yOiBsb2FkaW5nIG9mIG5ldyBycGMtdHJhbnNwb3J0IGZhaWxlZA0KWzIwMTctMDMtMDIgMTE6 NDk6NDcuODI5MzI1XSBJIFtNU0dJRDogMTAxMDUzXSBbbWVtLXBvb2wuYzo2NDE6bWVtX3Bvb2xf ZGVzdHJveV0gMC1HbHVSZXBsaWNhLWNsaWVudC0yOiBzaXplPTU4OCBtYXg9MCB0b3RhbD0wDQpb MjAxNy0wMy0wMiAxMTo0OTo0Ny44MjkzNzFdIEkgW01TR0lEOiAxMDEwNTNdIFttZW0tcG9vbC5j OjY0MTptZW1fcG9vbF9kZXN0cm95XSAwLUdsdVJlcGxpY2EtY2xpZW50LTI6IHNpemU9MTI0IG1h eD0wIHRvdGFsPTANClsyMDE3LTAzLTAyIDExOjQ5OjQ3LjgyOTM5MV0gRSBbTVNHSUQ6IDExNDAy Ml0gW2NsaWVudC5jOjI1MzA6Y2xpZW50X2luaXRfcnBjXSAwLUdsdVJlcGxpY2EtY2xpZW50LTI6 IGZhaWxlZCB0byBpbml0aWFsaXplIFJQQw0KWzIwMTctMDMtMDIgMTE6NDk6NDcuODI5NDEzXSBF IFtNU0dJRDogMTAxMDE5XSBbeGxhdG9yLmM6NDMzOnhsYXRvcl9pbml0XSAwLUdsdVJlcGxpY2Et Y2xpZW50LTI6IEluaXRpYWxpemF0aW9uIG9mIHZvbHVtZSAnR2x1UmVwbGljYS1jbGllbnQtMicg ZmFpbGVkLCByZXZpZXcgeW91ciB2b2xmaWxlIGFnYWluDQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44 Mjk0MjVdIEUgW01TR0lEOiAxMDEwNjZdIFtncmFwaC5jOjMyNDpnbHVzdGVyZnNfZ3JhcGhfaW5p dF0gMC1HbHVSZXBsaWNhLWNsaWVudC0yOiBpbml0aWFsaXppbmcgdHJhbnNsYXRvciBmYWlsZWQN ClsyMDE3LTAzLTAyIDExOjQ5OjQ3LjgyOTQzNl0gRSBbTVNHSUQ6IDEwMTE3Nl0gW2dyYXBoLmM6 NjczOmdsdXN0ZXJmc19ncmFwaF9hY3RpdmF0ZV0gMC1ncmFwaDogaW5pdCBmYWlsZWQNClsyMDE3 LTAzLTAyIDExOjQ5OjQ3LjgzMDAwM10gVyBbZ2x1c3RlcmZzZC5jOjEzMjc6Y2xlYW51cF9hbmRf ZXhpdF0gKC0tPi91c3Ivc2Jpbi9nbHVzdGVyZnMobWdtdF9nZXRzcGVjX2NiaysweDNjMSkgWzB4 N2Y1MjRjOWRiZWIxXSAtLT4vdXNyL3NiaW4vZ2x1c3RlcmZzKGdsdXN0ZXJmc19wcm9jZXNzX3Zv bGZwKzB4MTcyKSBbMHg3ZjUyNGM5ZDY1ZDJdIC0tPi91c3Ivc2Jpbi9nbHVzdGVyZnMoY2xlYW51 cF9hbmRfZXhpdCsweDZiKSBbMHg3ZjUyNGM5ZDViNGJdICkgMC06IHJlY2VpdmVkIHNpZ251bSAo MSksIHNodXR0aW5nIGRvd24NClsyMDE3LTAzLTAyIDExOjQ5OjQ3LjgzMDA1M10gSSBbZnVzZS1i cmlkZ2UuYzo1Nzk0OmZpbmldIDAtZnVzZTogVW5tb3VudGluZyAnL21udCcuDQpbMjAxNy0wMy0w MiAxMTo0OTo0Ny44MzEwMTRdIFcgW2dsdXN0ZXJmc2QuYzoxMzI3OmNsZWFudXBfYW5kX2V4aXRd ICgtLT4vbGliNjQvbGlicHRocmVhZC5zby4wKCsweDdkYzUpIFsweDdmNTI0YjM0M2RjNV0gLS0+ L3Vzci9zYmluL2dsdXN0ZXJmcyhnbHVzdGVyZnNfc2lnd2FpdGVyKzB4ZTUpIFsweDdmNTI0Yzlk NWNkNV0gLS0+L3Vzci9zYmluL2dsdXN0ZXJmcyhjbGVhbnVwX2FuZF9leGl0KzB4NmIpIFsweDdm NTI0YzlkNWI0Yl0gKSAwLTogcmVjZWl2ZWQgc2lnbnVtICgxNSksIHNodXR0aW5nIGRvd24NClsy MDE3LTAzLTAyIDExOjQ5OjQ3LjgzMTAxNF0gVyBbZ2x1c3RlcmZzZC5jOjEzMjc6Y2xlYW51cF9h bmRfZXhpdF0gKC0tPi9saWI2NC9saWJwdGhyZWFkLnNvLjAoKzB4N2RjNSkgWzB4N2Y1MjRiMzQz ZGM1XSAtLT4vdXNyL3NiaW4vZ2x1c3RlcmZzKGdsdXN0ZXJmc19zaWd3YWl0ZXIrMHhlNSkgWzB4 N2Y1MjRjOWQ1Y2Q1XSAtLT4vdXNyL3NiaW4vZ2x1c3RlcmZzKGNsZWFudXBfYW5kX2V4aXQrMHg2 YikgWzB4N2Y1MjRjOWQ1YjRiXSApIDAtOiByZWNlaXZlZCBzaWdudW0gKDE1KSwgc2h1dHRpbmcg ZG93bg0KDQoNCg0KT24gVGh1LCBNYXIgMiwgMjAxNyBhdCAxMjoxMSBQTSwgU2FoaW5hIEJvc2Ug PHNhYm9zZUByZWRoYXQuY29tPG1haWx0bzpzYWJvc2VAcmVkaGF0LmNvbT4+IHdyb3RlOg0KWW91 IHdpbGwgbmVlZCB0byBwYXNzIGFkZGl0aW9uYWwgbW91bnQgb3B0aW9ucyB3aGlsZSBjcmVhdGlu ZyB0aGUgc3RvcmFnZSBkb21haW4gKHRyYW5zcG9ydD1yZG1hKQ0KDQpQbGVhc2UgbGV0IHVzIGtu b3cgaWYgdGhpcyB3b3Jrcy4NCg0KT24gVGh1LCBNYXIgMiwgMjAxNyBhdCAyOjQyIFBNLCBBcm1h biBLaGFsYXR5YW4gPGFybTJhcm1AZ21haWwuY29tPG1haWx0bzphcm0yYXJtQGdtYWlsLmNvbT4+ IHdyb3RlOg0KSGksDQpBcmUgdGhlcmUgd2F5IHRvIGZvcmNlIHRoZSBjb25uZWN0aW9ucyBvdmVy IFJETUEgb25seT8NCklmIEkgY2hlY2sgaG9zdCBtb3VudHMgSSBjYW5ub3Qgc2VlIHJkbWEgbW91 bnQgb3B0aW9uOg0KIG1vdW50IC1sfCBncmVwIGdsdXN0ZXINCjEwLjEwLjEwLjQ0Oi9HbHVSZXBs aWNhIG9uIC9yaGV2L2RhdGEtY2VudGVyL21udC9nbHVzdGVyU0QvMTAuMTAuMTAuNDQ6X0dsdVJl cGxpY2EgdHlwZSBmdXNlLmdsdXN0ZXJmcyAocncscmVsYXRpbWUsdXNlcl9pZD0wLGdyb3VwX2lk PTAsZGVmYXVsdF9wZXJtaXNzaW9ucyxhbGxvd19vdGhlcixtYXhfcmVhZD0xMzEwNzIpDQpJIGhh dmUgZ2x1c3Rlcml6ZWQgMyBub2RlczoNCg0KR2x1UmVwbGljYQ0KVm9sdW1lIElEOg0KZWU2ODZk ZmUtMjAzYS00Y2FhLWE2OTEtMjYzNTM0NjBjYzQ4DQpWb2x1bWUgVHlwZToNClJlcGxpY2F0ZSAo QXJiaXRlcikNClJlcGxpY2EgQ291bnQ6DQoyICsgMQ0KTnVtYmVyIG9mIEJyaWNrczoNCjMNClRy YW5zcG9ydCBUeXBlczoNClRDUCwgUkRNQQ0KTWF4aW11bSBubyBvZiBzbmFwc2hvdHM6DQoyNTYN CkNhcGFjaXR5Og0KMy41MSBUaUIgdG90YWwsIDE5MC41NiBHaUIgdXNlZCwgMy4zMyBUaUIgZnJl ZQ0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KVXNl cnMgbWFpbGluZyBsaXN0DQpVc2Vyc0BvdmlydC5vcmc8bWFpbHRvOlVzZXJzQG92aXJ0Lm9yZz4N Cmh0dHA6Ly9saXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2Vycw0KDQoNCg0KDQoN Cg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NClRoaXMgZW1haWwgbWVzc2FnZSBpcyBmb3Ig dGhlIHNvbGUgdXNlIG9mIHRoZSBpbnRlbmRlZCByZWNpcGllbnQocykgYW5kIG1heSBjb250YWlu DQpjb25maWRlbnRpYWwgaW5mb3JtYXRpb24uICBBbnkgdW5hdXRob3JpemVkIHJldmlldywgdXNl LCBkaXNjbG9zdXJlIG9yIGRpc3RyaWJ1dGlvbg0KaXMgcHJvaGliaXRlZC4gIElmIHlvdSBhcmUg bm90IHRoZSBpbnRlbmRlZCByZWNpcGllbnQsIHBsZWFzZSBjb250YWN0IHRoZSBzZW5kZXIgYnkN CnJlcGx5IGVtYWlsIGFuZCBkZXN0cm95IGFsbCBjb3BpZXMgb2YgdGhlIG9yaWdpbmFsIG1lc3Nh Z2UuDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K --_000_30b1fa1b4259429581f6f6b5e7ef5f02DRHQMAIL105nvidiacom_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 V2luZ2RpbmdzOw0KCXBhbm9zZS0xOjUgMCAwIDAgMCAwIDAgMCAwIDA7fQ0KQGZvbnQtZmFjZQ0K CXtmb250LWZhbWlseTpXaW5nZGluZ3M7DQoJcGFub3NlLTE6NSAwIDAgMCAwIDAgMCAwIDAgMDt9 DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJcGFub3NlLTE6MiAxNSA1IDIg MiAyIDQgMyAyIDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpUYWhvbWE7DQoJcGFub3Nl LTE6MiAxMSA2IDQgMyA1IDQgNCAyIDQ7fQ0KLyogU3R5bGUgRGVmaW5pdGlvbnMgKi8NCnAuTXNv Tm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwNCgl7bWFyZ2luOjBpbjsNCgltYXJn aW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWlseToiVGlt ZXMgTmV3IFJvbWFuIiwic2VyaWYiO30NCmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7bXNv LXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVy bGluZTt9DQphOnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNvLXN0eWxl LXByaW9yaXR5Ojk5Ow0KCWNvbG9yOnB1cnBsZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5l O30NCnAuTXNvTGlzdFBhcmFncmFwaCwgbGkuTXNvTGlzdFBhcmFncmFwaCwgZGl2Lk1zb0xpc3RQ YXJhZ3JhcGgNCgl7bXNvLXN0eWxlLXByaW9yaXR5OjM0Ow0KCW1hcmdpbi10b3A6MGluOw0KCW1h cmdpbi1yaWdodDowaW47DQoJbWFyZ2luLWJvdHRvbTowaW47DQoJbWFyZ2luLWxlZnQ6LjVpbjsN CgltYXJnaW4tYm90dG9tOi4wMDAxcHQ7DQoJZm9udC1zaXplOjEyLjBwdDsNCglmb250LWZhbWls eToiVGltZXMgTmV3IFJvbWFuIiwic2VyaWYiO30NCnNwYW4uaG9lbnpiDQoJe21zby1zdHlsZS1u YW1lOmhvZW56Yjt9DQpzcGFuLkVtYWlsU3R5bGUxOA0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25h bC1yZXBseTsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsInNhbnMtc2VyaWYiOw0KCWNvbG9yOiMx RjQ5N0Q7fQ0KLk1zb0NocERlZmF1bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJ Zm9udC1mYW1pbHk6IkNhbGlicmkiLCJzYW5zLXNlcmlmIjt9DQpAcGFnZSBXb3JkU2VjdGlvbjEN Cgl7c2l6ZTo4LjVpbiAxMS4waW47DQoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGluIDEuMGluO30N CmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpXb3JkU2VjdGlvbjE7fQ0KLyogTGlzdCBEZWZpbml0 aW9ucyAqLw0KQGxpc3QgbDANCgl7bXNvLWxpc3QtaWQ6MTE2OTcxMTk1OTsNCgltc28tbGlzdC10 eXBlOmh5YnJpZDsNCgltc28tbGlzdC10ZW1wbGF0ZS1pZHM6MTExMzYzNTA3NCAxMzMzNzE3MzI4 IDY3Njk4NjkxIDY3Njk4NjkzIDY3Njk4Njg5IDY3Njk4NjkxIDY3Njk4NjkzIDY3Njk4Njg5IDY3 Njk4NjkxIDY3Njk4NjkzO30NCkBsaXN0IGwwOmxldmVsMQ0KCXttc28tbGV2ZWwtbnVtYmVyLWZv cm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ674K3Ow0KCW1zby1sZXZlbC10YWItc3RvcDpu b25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDotLjI1 aW47DQoJZm9udC1mYW1pbHk6U3ltYm9sOw0KCW1zby1mYXJlYXN0LWZvbnQtZmFtaWx5OkNhbGli cmk7DQoJbXNvLWJpZGktZm9udC1mYW1pbHk6IlRpbWVzIE5ldyBSb21hbiI7fQ0KQGxpc3QgbDA6 bGV2ZWwyDQoJe21zby1sZXZlbC1udW1iZXItZm9ybWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4 dDpvOw0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRp b246bGVmdDsNCgl0ZXh0LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6IkNvdXJpZXIgTmV3 Ijt9DQpAbGlzdCBsMDpsZXZlbDMNCgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YnVsbGV0Ow0K CW1zby1sZXZlbC10ZXh0Ou+CpzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2 ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCWZvbnQtZmFt aWx5OldpbmdkaW5nczt9DQpAbGlzdCBsMDpsZXZlbDQNCgl7bXNvLWxldmVsLW51bWJlci1mb3Jt YXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Ou+CtzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9u ZTsNCgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWlu Ow0KCWZvbnQtZmFtaWx5OlN5bWJvbDt9DQpAbGlzdCBsMDpsZXZlbDUNCgl7bXNvLWxldmVsLW51 bWJlci1mb3JtYXQ6YnVsbGV0Ow0KCW1zby1sZXZlbC10ZXh0Om87DQoJbXNvLWxldmVsLXRhYi1z dG9wOm5vbmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50 Oi0uMjVpbjsNCglmb250LWZhbWlseToiQ291cmllciBOZXciO30NCkBsaXN0IGwwOmxldmVsNg0K CXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVsLXRleHQ674KnOw0K CW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246bGVm dDsNCgl0ZXh0LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6V2luZ2RpbmdzO30NCkBsaXN0 IGwwOmxldmVsNw0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJbXNvLWxldmVs LXRleHQ674K3Ow0KCW1zby1sZXZlbC10YWItc3RvcDpub25lOw0KCW1zby1sZXZlbC1udW1iZXIt cG9zaXRpb246bGVmdDsNCgl0ZXh0LWluZGVudDotLjI1aW47DQoJZm9udC1mYW1pbHk6U3ltYm9s O30NCkBsaXN0IGwwOmxldmVsOA0KCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpidWxsZXQ7DQoJ bXNvLWxldmVsLXRleHQ6bzsNCgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsNCgltc28tbGV2ZWwt bnVtYmVyLXBvc2l0aW9uOmxlZnQ7DQoJdGV4dC1pbmRlbnQ6LS4yNWluOw0KCWZvbnQtZmFtaWx5 OiJDb3VyaWVyIE5ldyI7fQ0KQGxpc3QgbDA6bGV2ZWw5DQoJe21zby1sZXZlbC1udW1iZXItZm9y bWF0OmJ1bGxldDsNCgltc28tbGV2ZWwtdGV4dDrvgqc7DQoJbXNvLWxldmVsLXRhYi1zdG9wOm5v bmU7DQoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0Ow0KCXRleHQtaW5kZW50Oi0uMjVp bjsNCglmb250LWZhbWlseTpXaW5nZGluZ3M7fQ0Kb2wNCgl7bWFyZ2luLWJvdHRvbTowaW47fQ0K dWwNCgl7bWFyZ2luLWJvdHRvbTowaW47fQ0KLS0+PC9zdHlsZT48IS0tW2lmIGd0ZSBtc28gOV0+ PHhtbD4NCjxvOnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+DQo8 L3htbD48IVtlbmRpZl0tLT48IS0tW2lmIGd0ZSBtc28gOV0+PHhtbD4NCjxvOnNoYXBlbGF5b3V0 IHY6ZXh0PSJlZGl0Ij4NCjxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIiAvPg0KPC9vOnNo YXBlbGF5b3V0PjwveG1sPjwhW2VuZGlmXS0tPg0KPC9oZWFkPg0KPGJvZHkgbGFuZz0iRU4tVVMi IGxpbms9ImJsdWUiIHZsaW5rPSJwdXJwbGUiPg0KPGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4N CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQt ZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjoj MUY0OTdEIj5JIGhhdmUgYmVlbiB0ZXN0aW5nIGdsdXN0ZXJmcyBvdmVyIFJETUEgJmFtcDsgYmVs b3cgaXMgdGhlIGNvbW1hbmQgSSB1c2UuIFJlYWRpbmcgdXAgdGhlIGxvZ3MsIGl0IGxvb2tzIGxp a2UgeW91ciBJQihJbmZpbmlCYW5kKSBkZXZpY2UgaXMgbm90IGJlaW5nIGluaXRpYWxpemVkLg0K IEkgYW0gbm90IHN1cmUgaWYgdSBoYXZlIGFuIGlzc3VlIG9uIHRoZSBjbGllbnQgSUIgb3IgdGhl IHN0b3JhZ2Ugc2VydmVyIElCLiBBbHNvIGhhdmUgeW91IGNvbmZpZ3VyZWQgdXIgSUIgZGV2aWNl cyBjb3JyZWN0bHkuIEkgYW0gdXNpbmcgSVBvSUIuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1p bHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5 N0QiPkNhbiB5b3UgY2hlY2sgeW91ciBmaXJld2FsbCwgZGlzYWJsZSBzZWxpbnV4LCBJIHRoaW5r LCB5b3UgbWlnaHQgaGF2ZSBjaGVja2VkIGl0IGFscmVhZHkgPzxvOnA+PC9vOnA+PC9zcGFuPjwv cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2Zv bnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xv cjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9y bWFsIj48Yj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtD YWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+bW91bnQg LXQgZ2x1c3RlcmZzIC1vIHRyYW5zcG9ydD1yZG1hIHN0b3JhZ2VOMTovdm9sMCAvbW50L3ZvbDA8 bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5 bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVv dDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFu PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0 O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztj b2xvcjojMUY0OTdEIj48bzpwPiZuYnNwOzwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNv TGlzdFBhcmFncmFwaCIgc3R5bGU9InRleHQtaW5kZW50Oi0uMjVpbjttc28tbGlzdDpsMCBsZXZl bDEgbGZvMSI+PCFbaWYgIXN1cHBvcnRMaXN0c10+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4w cHQ7Zm9udC1mYW1pbHk6U3ltYm9sO2NvbG9yOiMxRjQ5N0QiPjxzcGFuIHN0eWxlPSJtc28tbGlz dDpJZ25vcmUiPsK3PHNwYW4gc3R5bGU9ImZvbnQ6Ny4wcHQgJnF1b3Q7VGltZXMgTmV3IFJvbWFu JnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsN Cjwvc3Bhbj48L3NwYW4+PC9zcGFuPjwhW2VuZGlmXT48Yj48c3BhbiBzdHlsZT0iZm9udC1zaXpl OjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYm cXVvdDs7Y29sb3I6IzFGNDk3RCI+VGhlIGJlbG93IGVycm9yIHNlZW1zIGlmIHlvdSBoYXZlIGlz c3VlIHN0YXJ0aW5nIHlvdXIgdm9sdW1lLiBJIGhhZCBpc3N1ZSwgd2hlbiBteSB0cmFuc3BvcnQg d2FzIHNldCB0byB0Y3AscmRtYS4gSSBoYWQgdG8gZm9yY2Ugc3RhcnQgbXkgdm9sdW1lLg0KIElm IEkgaGFkIHNldCBpdCBvbmx5IHRvIHRjcCBvbiB0aGUgdm9sdW1lLCB0aGUgdm9sdW1lIHdvdWxk IHN0YXJ0IGVhc2lseS48bzpwPjwvbzpwPjwvc3Bhbj48L2I+PC9wPg0KPHAgY2xhc3M9Ik1zb05v cm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2Fs aWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5i c3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJi YWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0OnllbGxvdyI+WzIwMTctMDMtMDIgMTE6NDk6 NDcuODI5MzkxXSBFIFtNU0dJRDogMTE0MDIyXSBbY2xpZW50LmM6MjUzMDpjbGllbnRfaW5pdF9y cGNdIDAtR2x1UmVwbGljYS1jbGllbnQtMjogZmFpbGVkIHRvIGluaXRpYWxpemUgUlBDPGJyPg0K WzIwMTctMDMtMDIgMTE6NDk6NDcuODI5NDEzXSBFIFtNU0dJRDogMTAxMDE5XSBbeGxhdG9yLmM6 NDMzOnhsYXRvcl9pbml0XSAwLUdsdVJlcGxpY2EtY2xpZW50LTI6IEluaXRpYWxpemF0aW9uIG9m IHZvbHVtZSAnR2x1UmVwbGljYS1jbGllbnQtMicgZmFpbGVkLCByZXZpZXcgeW91ciB2b2xmaWxl IGFnYWluPGJyPg0KWzIwMTctMDMtMDIgMTE6NDk6NDcuODI5NDI1XSBFIFtNU0dJRDogMTAxMDY2 XSBbZ3JhcGguYzozMjQ6Z2x1c3RlcmZzX2dyYXBoX2luaXRdIDAtR2x1UmVwbGljYS1jbGllbnQt MjogaW5pdGlhbGl6aW5nIHRyYW5zbGF0b3IgZmFpbGVkPGJyPg0KWzIwMTctMDMtMDIgMTE6NDk6 NDcuODI5NDM2XSBFIFtNU0dJRDogMTAxMTc2XSBbZ3JhcGguYzo2NzM6Z2x1c3RlcmZzX2dyYXBo X2FjdGl2YXRlXSAwLWdyYXBoOiBpbml0IGZhaWxlZDwvc3Bhbj48YnI+DQo8YnI+DQo8c3BhbiBz dHlsZT0iYmFja2dyb3VuZDp5ZWxsb3c7bXNvLWhpZ2hsaWdodDp5ZWxsb3ciPjxvOnA+PC9vOnA+ PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJiYWNrZ3JvdW5k OnllbGxvdzttc28taGlnaGxpZ2h0OnllbGxvdyI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9w Pg0KPHAgY2xhc3M9Ik1zb0xpc3RQYXJhZ3JhcGgiIHN0eWxlPSJ0ZXh0LWluZGVudDotLjI1aW47 bXNvLWxpc3Q6bDAgbGV2ZWwxIGxmbzEiPjwhW2lmICFzdXBwb3J0TGlzdHNdPjxzcGFuIHN0eWxl PSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OlN5bWJvbDtjb2xvcjojMUY0OTdEIj48c3Bh biBzdHlsZT0ibXNvLWxpc3Q6SWdub3JlIj7CtzxzcGFuIHN0eWxlPSJmb250OjcuMHB0ICZxdW90 O1RpbWVzIE5ldyBSb21hbiZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7DQo8L3NwYW4+PC9zcGFuPjwvc3Bhbj48IVtlbmRpZl0+PGI+PHNwYW4g c3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlRoZSBiZWxvdyBlcnJvciBzZWVt cyBpZiB5b3UgaGF2ZSBpc3N1ZSB3aXRoIElCIGRldmljZS4gSWYgbm90IGNvbmZpZ3VyZWQgcHJv cGVybHkuPG86cD48L286cD48L3NwYW4+PC9iPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxz cGFuIHN0eWxlPSJiYWNrZ3JvdW5kOnllbGxvdzttc28taGlnaGxpZ2h0OnllbGxvdyI+PG86cD4m bmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9 ImJhY2tncm91bmQ6eWVsbG93O21zby1oaWdobGlnaHQ6eWVsbG93Ij5bMjAxNy0wMy0wMiAxMTo0 OTo0Ny44Mjg5OTZdIFcgW01TR0lEOiAxMDMwNzFdIFtyZG1hLmM6NDU4OTpfX2dmX3JkbWFfY3R4 X2NyZWF0ZV0gMC1ycGMtdHJhbnNwb3J0L3JkbWE6IHJkbWFfY20gZXZlbnQgY2hhbm5lbCBjcmVh dGlvbiBmYWlsZWQgW05vIHN1Y2ggZGV2aWNlXTxicj4NClsyMDE3LTAzLTAyIDExOjQ5OjQ3Ljgy OTA2N10gVyBbTVNHSUQ6IDEwMzA1NV0gW3JkbWEuYzo0ODk2OmluaXRdIDAtR2x1UmVwbGljYS1j bGllbnQtMjogRmFpbGVkIHRvIGluaXRpYWxpemUgSUIgRGV2aWNlPGJyPg0KWzIwMTctMDMtMDIg MTE6NDk6NDcuODI5MDgwXSBXIFtycGMtdHJhbnNwb3J0LmM6MzU0OnJwY190cmFuc3BvcnRfbG9h ZF0gMC1ycGMtdHJhbnNwb3J0OiAncmRtYScgaW5pdGlhbGl6YXRpb24gZmFpbGVkPC9zcGFuPjxi cj4NCjxicj4NCjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90 O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj48bzpw PjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9u dC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMt c2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0K PHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1m YW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMx RjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkm cXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZxdW90Oztjb2xvcjojMUY0OTdEIj4tLTxvOnA+PC9vOnA+ PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6 MTEuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O0NhbGlicmkmcXVvdDssJnF1b3Q7c2Fucy1zZXJpZiZx dW90Oztjb2xvcjojMUY0OTdEIj5EZWVwYWs8bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTom cXVvdDtDYWxpYnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+ PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4g c3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxvOnA+Jm5ic3A7PC9vOnA+PC9z cGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6 MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1 b3Q7Ij5Gcm9tOjwvc3Bhbj48L2I+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1m YW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDsiPiBnbHVzdGVy LXVzZXJzLWJvdW5jZXNAZ2x1c3Rlci5vcmcgW21haWx0bzpnbHVzdGVyLXVzZXJzLWJvdW5jZXNA Z2x1c3Rlci5vcmddDQo8Yj5PbiBCZWhhbGYgT2YgPC9iPlNhaGluYSBCb3NlPGJyPg0KPGI+U2Vu dDo8L2I+IFRodXJzZGF5LCBNYXJjaCAwMiwgMjAxNyAxMDoyNiBQTTxicj4NCjxiPlRvOjwvYj4g QXJtYW4gS2hhbGF0eWFuOyBnbHVzdGVyLXVzZXJzQGdsdXN0ZXIub3JnOyBSYWZpIEthdnVuZ2Fs IENodW5kYXR0dSBQYXJhbWJpbDxicj4NCjxiPkNjOjwvYj4gdXNlcnM8YnI+DQo8Yj5TdWJqZWN0 OjwvYj4gUmU6IFtHbHVzdGVyLXVzZXJzXSBbb3ZpcnQtdXNlcnNdIEhvdCB0byBmb3JjZSBnbHVz dGVyZnMgdG8gdXNlIFJETUE/PG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05v cm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+ W0FkZGluZyBnbHVzdGVyIHVzZXJzIHRvIGhlbHAgd2l0aCBlcnJvcl08YnI+DQo8YnI+DQpbMjAx Ny0wMy0wMiAxMTo0OTo0Ny44Mjg5OTZdIFcgW01TR0lEOiAxMDMwNzFdIFtyZG1hLmM6NDU4OTpf X2dmX3JkbWFfY3R4X2NyZWF0ZV0gMC1ycGMtdHJhbnNwb3J0L3JkbWE6IHJkbWFfY20gZXZlbnQg Y2hhbm5lbCBjcmVhdGlvbiBmYWlsZWQgW05vIHN1Y2ggZGV2aWNlXTxvOnA+PC9vOnA+PC9wPg0K PC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+ DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+T24gVGh1LCBNYXIgMiwgMjAxNyBhdCA1OjM2 IFBNLCBBcm1hbiBLaGFsYXR5YW4gJmx0OzxhIGhyZWY9Im1haWx0bzphcm0yYXJtQGdtYWlsLmNv bSIgdGFyZ2V0PSJfYmxhbmsiPmFybTJhcm1AZ21haWwuY29tPC9hPiZndDsgd3JvdGU6PG86cD48 L286cD48L3A+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHls ZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPkJUVyBSRE1BIGlzIHdvcmtpbmcgYXMgZXhwZWN0ZWQ6 PGJyPg0Kcm9vdEBjbGVpMjYgfl0jIHFwZXJmIGNsZWkyMi52aWImbmJzcDsgdGNwX2J3IHRjcF9s YXQ8YnI+DQp0Y3BfYnc6PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7IGJ3Jm5ic3A7ID0mbmJzcDsg NDc1IE1CL3NlYzxicj4NCnRjcF9sYXQ6PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7IGxhdGVuY3km bmJzcDsgPSZuYnNwOyA1Mi44IHVzPGJyPg0KW3Jvb3RAY2xlaTI2IH5dIyA8bzpwPjwvbzpwPjwv cD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+dGhhbmsgeW91IGJlZm9yZWhhbmQuPG86 cD48L286cD48L3A+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4t Ym90dG9tOjEyLjBwdCI+PHNwYW4gY2xhc3M9ImhvZW56YiI+PHNwYW4gc3R5bGU9ImNvbG9yOiM4 ODg4ODgiPkFybWFuLjwvc3Bhbj48L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+ DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9w Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9uIFRodSwgTWFyIDIsIDIwMTcgYXQgMTI6 NTQgUE0sIEFybWFuIEtoYWxhdHlhbiAmbHQ7PGEgaHJlZj0ibWFpbHRvOmFybTJhcm1AZ21haWwu Y29tIiB0YXJnZXQ9Il9ibGFuayI+YXJtMmFybUBnbWFpbC5jb208L2E+Jmd0OyB3cm90ZTo8bzpw PjwvbzpwPjwvcD4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJv dHRvbToxMi4wcHQiPmp1c3QgZm9yIHJlZmVyZW5jZTo8YnI+DQombmJzcDtnbHVzdGVyIHZvbHVt ZSBpbmZvIDxicj4NCiZuYnNwOzxicj4NClZvbHVtZSBOYW1lOiBHbHVSZXBsaWNhPGJyPg0KVHlw ZTogUmVwbGljYXRlPGJyPg0KVm9sdW1lIElEOiBlZTY4NmRmZS0yMDNhLTRjYWEtYTY5MS0yNjM1 MzQ2MGNjNDg8YnI+DQpTdGF0dXM6IFN0YXJ0ZWQ8YnI+DQpTbmFwc2hvdCBDb3VudDogMDxicj4N Ck51bWJlciBvZiBCcmlja3M6IDEgeCAoMiAmIzQzOyAxKSA9IDM8YnI+DQpUcmFuc3BvcnQtdHlw ZTogdGNwLHJkbWE8YnI+DQpCcmlja3M6PGJyPg0KQnJpY2sxOiAxMC4xMC4xMC40NDovemNsZWky Mi8wMS9nbHU8YnI+DQpCcmljazI6IDEwLjEwLjEwLjQyOi96Y2xlaTIxLzAxL2dsdTxicj4NCkJy aWNrMzogMTAuMTAuMTAuNDE6L3pjbGVpMjYvMDEvZ2x1IChhcmJpdGVyKTxicj4NCk9wdGlvbnMg UmVjb25maWd1cmVkOjxicj4NCm5ldHdvcmsucGluZy10aW1lb3V0OiAzMDxicj4NCnNlcnZlci5h bGxvdy1pbnNlY3VyZTogb248YnI+DQpzdG9yYWdlLm93bmVyLWdpZDogMzY8YnI+DQpzdG9yYWdl Lm93bmVyLXVpZDogMzY8YnI+DQpjbHVzdGVyLmRhdGEtc2VsZi1oZWFsLWFsZ29yaXRobTogZnVs bDxicj4NCmZlYXR1cmVzLnNoYXJkOiBvbjxicj4NCmNsdXN0ZXIuc2VydmVyLXF1b3J1bS10eXBl OiBzZXJ2ZXI8YnI+DQpjbHVzdGVyLnF1b3J1bS10eXBlOiBhdXRvPGJyPg0KbmV0d29yay5yZW1v dGUtZGlvOiBlbmFibGU8YnI+DQpjbHVzdGVyLmVhZ2VyLWxvY2s6IGVuYWJsZTxicj4NCnBlcmZv cm1hbmNlLnN0YXQtcHJlZmV0Y2g6IG9mZjxicj4NCnBlcmZvcm1hbmNlLmlvLWNhY2hlOiBvZmY8 YnI+DQpwZXJmb3JtYW5jZS5yZWFkLWFoZWFkOiBvZmY8YnI+DQpwZXJmb3JtYW5jZS5xdWljay1y ZWFkOiBvZmY8YnI+DQpwZXJmb3JtYW5jZS5yZWFkZGlyLWFoZWFkOiBvbjxicj4NCm5mcy5kaXNh YmxlOiBvbjxicj4NCjxicj4NCjxicj4NCjxicj4NCltyb290QGNsZWkyMSB+XSMgZ2x1c3RlciB2 b2x1bWUgc3RhdHVzIDxicj4NClN0YXR1cyBvZiB2b2x1bWU6IEdsdVJlcGxpY2E8YnI+DQpHbHVz dGVyIHByb2Nlc3MmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgVENQIFBvcnQmbmJzcDsgUkRNQSBQb3J0Jm5ic3A7IE9ubGluZSZuYnNwOyBQaWQ8 YnI+DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS08YnI+DQpCcmljayAxMC4xMC4xMC40NDovemNsZWky Mi8wMS9nbHUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgNDkxNTgmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgNDkxNTkmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgWSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyAxNTg3MDxicj4NCkJyaWNrIDEwLjEwLjEwLjQyOi96Y2xlaTIxLzAxL2dsdSZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA0OTE1NiZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyA0OTE1NyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyBZJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDE3NDczPGJyPg0KQnJpY2sg MTAuMTAuMTAuNDE6L3pjbGVpMjYvMDEvZ2x1Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDQ5MTUzJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IDQ5MTU0Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFkmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgMTg4OTc8YnI+DQpTZWxmLWhlYWwgRGFlbW9uIG9uIGxvY2Fs aG9zdCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBOL0EmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgTi9BJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IFkmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgMTc1MDI8YnI+DQpTZWxm LWhlYWwgRGFlbW9uIG9uIDEwLjEwLjEwLjQxJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IE4vQSZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBOL0EmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgWSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAxMzM1 Mzxicj4NClNlbGYtaGVhbCBEYWVtb24gb24gMTAuMTAuMTAuNDQmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgTi9B Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IE4vQSZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBZJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IDMyNzQ1PGJyPg0KJm5ic3A7PGJyPg0KVGFzayBTdGF0dXMgb2YgVm9sdW1lIEdsdVJl cGxpY2E8YnI+DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS08YnI+DQpUaGVyZSBhcmUgbm8gYWN0aXZl IHZvbHVtZSB0YXNrczxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+ DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxkaXY+DQo8cCBj bGFzcz0iTXNvTm9ybWFsIj5PbiBUaHUsIE1hciAyLCAyMDE3IGF0IDEyOjUyIFBNLCBBcm1hbiBL aGFsYXR5YW4gJmx0OzxhIGhyZWY9Im1haWx0bzphcm0yYXJtQGdtYWlsLmNvbSIgdGFyZ2V0PSJf YmxhbmsiPmFybTJhcm1AZ21haWwuY29tPC9hPiZndDsgd3JvdGU6PG86cD48L286cD48L3A+DQo8 ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkkgYW0gbm90IGFibGUgdG8gbW91bnQg d2l0aCBSRE1BIG92ZXIgY2xpLi4uLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPkFyZSB0aGVyZSBzb21lIHZv bGZpbGUgcGFyYW1ldGVycyBuZWVkcyB0byBiZSB0dW5lZD88YnI+DQovdXNyL2Jpbi9tb3VudCZu YnNwOyAtdCBnbHVzdGVyZnMmbmJzcDsgLW8gYmFja3VwLXZvbGZpbGUtc2VydmVycz0xMC4xMC4x MC40NDoxMC4xMC4xMC40MjoxMC4xMC4xMC40MSx0cmFuc3BvcnQ9cmRtYSAxMC4xMC4xMC40NDov R2x1UmVwbGljYSAvbW50PGJyPg0KPGJyPg0KWzIwMTctMDMtMDIgMTE6NDk6NDcuNzk1NTExXSBJ IFtNU0dJRDogMTAwMDMwXSBbZ2x1c3RlcmZzZC5jOjI0NTQ6bWFpbl0gMC0vdXNyL3NiaW4vZ2x1 c3RlcmZzOiBTdGFydGVkIHJ1bm5pbmcgL3Vzci9zYmluL2dsdXN0ZXJmcyB2ZXJzaW9uIDMuOC45 IChhcmdzOiAvdXNyL3NiaW4vZ2x1c3RlcmZzIC0tdm9sZmlsZS1zZXJ2ZXI9MTAuMTAuMTAuNDQg LS12b2xmaWxlLXNlcnZlcj0xMC4xMC4xMC40NCAtLXZvbGZpbGUtc2VydmVyPTEwLjEwLjEwLjQy DQogLS12b2xmaWxlLXNlcnZlcj0xMC4xMC4xMC40MSAtLXZvbGZpbGUtc2VydmVyLXRyYW5zcG9y dD1yZG1hIC0tdm9sZmlsZS1pZD0vR2x1UmVwbGljYS5yZG1hIC9tbnQpPGJyPg0KWzIwMTctMDMt MDIgMTE6NDk6NDcuODEyNjk5XSBJIFtNU0dJRDogMTAxMTkwXSBbZXZlbnQtZXBvbGwuYzo2Mjg6 ZXZlbnRfZGlzcGF0Y2hfZXBvbGxfd29ya2VyXSAwLWVwb2xsOiBTdGFydGVkIHRocmVhZCB3aXRo IGluZGV4IDE8YnI+DQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44MjUyMTBdIEkgW01TR0lEOiAxMDEx OTBdIFtldmVudC1lcG9sbC5jOjYyODpldmVudF9kaXNwYXRjaF9lcG9sbF93b3JrZXJdIDAtZXBv bGw6IFN0YXJ0ZWQgdGhyZWFkIHdpdGggaW5kZXggMjxicj4NClsyMDE3LTAzLTAyIDExOjQ5OjQ3 LjgyODk5Nl0gVyBbTVNHSUQ6IDEwMzA3MV0gW3JkbWEuYzo0NTg5Ol9fZ2ZfcmRtYV9jdHhfY3Jl YXRlXSAwLXJwYy10cmFuc3BvcnQvcmRtYTogcmRtYV9jbSBldmVudCBjaGFubmVsIGNyZWF0aW9u IGZhaWxlZCBbTm8gc3VjaCBkZXZpY2VdPGJyPg0KWzIwMTctMDMtMDIgMTE6NDk6NDcuODI5MDY3 XSBXIFtNU0dJRDogMTAzMDU1XSBbcmRtYS5jOjQ4OTY6aW5pdF0gMC1HbHVSZXBsaWNhLWNsaWVu dC0yOiBGYWlsZWQgdG8gaW5pdGlhbGl6ZSBJQiBEZXZpY2U8YnI+DQpbMjAxNy0wMy0wMiAxMTo0 OTo0Ny44MjkwODBdIFcgW3JwYy10cmFuc3BvcnQuYzozNTQ6cnBjX3RyYW5zcG9ydF9sb2FkXSAw LXJwYy10cmFuc3BvcnQ6ICdyZG1hJyBpbml0aWFsaXphdGlvbiBmYWlsZWQ8YnI+DQpbMjAxNy0w My0wMiAxMTo0OTo0Ny44MjkyNzJdIFcgW3JwYy1jbG50LmM6MTA3MDpycGNfY2xudF9jb25uZWN0 aW9uX2luaXRdIDAtR2x1UmVwbGljYS1jbGllbnQtMjogbG9hZGluZyBvZiBuZXcgcnBjLXRyYW5z cG9ydCBmYWlsZWQ8YnI+DQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44MjkzMjVdIEkgW01TR0lEOiAx MDEwNTNdIFttZW0tcG9vbC5jOjY0MTptZW1fcG9vbF9kZXN0cm95XSAwLUdsdVJlcGxpY2EtY2xp ZW50LTI6IHNpemU9NTg4IG1heD0wIHRvdGFsPTA8YnI+DQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44 MjkzNzFdIEkgW01TR0lEOiAxMDEwNTNdIFttZW0tcG9vbC5jOjY0MTptZW1fcG9vbF9kZXN0cm95 XSAwLUdsdVJlcGxpY2EtY2xpZW50LTI6IHNpemU9MTI0IG1heD0wIHRvdGFsPTA8YnI+DQpbMjAx Ny0wMy0wMiAxMTo0OTo0Ny44MjkzOTFdIEUgW01TR0lEOiAxMTQwMjJdIFtjbGllbnQuYzoyNTMw OmNsaWVudF9pbml0X3JwY10gMC1HbHVSZXBsaWNhLWNsaWVudC0yOiBmYWlsZWQgdG8gaW5pdGlh bGl6ZSBSUEM8YnI+DQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44Mjk0MTNdIEUgW01TR0lEOiAxMDEw MTldIFt4bGF0b3IuYzo0MzM6eGxhdG9yX2luaXRdIDAtR2x1UmVwbGljYS1jbGllbnQtMjogSW5p dGlhbGl6YXRpb24gb2Ygdm9sdW1lICdHbHVSZXBsaWNhLWNsaWVudC0yJyBmYWlsZWQsIHJldmll dyB5b3VyIHZvbGZpbGUgYWdhaW48YnI+DQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44Mjk0MjVdIEUg W01TR0lEOiAxMDEwNjZdIFtncmFwaC5jOjMyNDpnbHVzdGVyZnNfZ3JhcGhfaW5pdF0gMC1HbHVS ZXBsaWNhLWNsaWVudC0yOiBpbml0aWFsaXppbmcgdHJhbnNsYXRvciBmYWlsZWQ8YnI+DQpbMjAx Ny0wMy0wMiAxMTo0OTo0Ny44Mjk0MzZdIEUgW01TR0lEOiAxMDExNzZdIFtncmFwaC5jOjY3Mzpn bHVzdGVyZnNfZ3JhcGhfYWN0aXZhdGVdIDAtZ3JhcGg6IGluaXQgZmFpbGVkPGJyPg0KWzIwMTct MDMtMDIgMTE6NDk6NDcuODMwMDAzXSBXIFtnbHVzdGVyZnNkLmM6MTMyNzpjbGVhbnVwX2FuZF9l eGl0XSAoLS0mZ3Q7L3Vzci9zYmluL2dsdXN0ZXJmcyhtZ210X2dldHNwZWNfY2JrJiM0MzsweDNj MSkgWzB4N2Y1MjRjOWRiZWIxXSAtLSZndDsvdXNyL3NiaW4vZ2x1c3RlcmZzKGdsdXN0ZXJmc19w cm9jZXNzX3ZvbGZwJiM0MzsweDE3MikgWzB4N2Y1MjRjOWQ2NWQyXSAtLSZndDsvdXNyL3NiaW4v Z2x1c3RlcmZzKGNsZWFudXBfYW5kX2V4aXQmIzQzOzB4NmIpIFsweDdmNTI0YzlkNWI0Yl0NCiAp IDAtOiByZWNlaXZlZCBzaWdudW0gKDEpLCBzaHV0dGluZyBkb3duPGJyPg0KWzIwMTctMDMtMDIg MTE6NDk6NDcuODMwMDUzXSBJIFtmdXNlLWJyaWRnZS5jOjU3OTQ6ZmluaV0gMC1mdXNlOiBVbm1v dW50aW5nICcvbW50Jy48YnI+DQpbMjAxNy0wMy0wMiAxMTo0OTo0Ny44MzEwMTRdIFcgW2dsdXN0 ZXJmc2QuYzoxMzI3OmNsZWFudXBfYW5kX2V4aXRdICgtLSZndDsvbGliNjQvbGlicHRocmVhZC5z by4wKCYjNDM7MHg3ZGM1KSBbMHg3ZjUyNGIzNDNkYzVdIC0tJmd0Oy91c3Ivc2Jpbi9nbHVzdGVy ZnMoZ2x1c3RlcmZzX3NpZ3dhaXRlciYjNDM7MHhlNSkgWzB4N2Y1MjRjOWQ1Y2Q1XSAtLSZndDsv dXNyL3NiaW4vZ2x1c3RlcmZzKGNsZWFudXBfYW5kX2V4aXQmIzQzOzB4NmIpIFsweDdmNTI0Yzlk NWI0Yl0gKSAwLTogcmVjZWl2ZWQNCiBzaWdudW0gKDE1KSwgc2h1dHRpbmcgZG93bjxicj4NClsy MDE3LTAzLTAyIDExOjQ5OjQ3LjgzMTAxNF0gVyBbZ2x1c3RlcmZzZC5jOjEzMjc6Y2xlYW51cF9h bmRfZXhpdF0gKC0tJmd0Oy9saWI2NC9saWJwdGhyZWFkLnNvLjAoJiM0MzsweDdkYzUpIFsweDdm NTI0YjM0M2RjNV0gLS0mZ3Q7L3Vzci9zYmluL2dsdXN0ZXJmcyhnbHVzdGVyZnNfc2lnd2FpdGVy JiM0MzsweGU1KSBbMHg3ZjUyNGM5ZDVjZDVdIC0tJmd0Oy91c3Ivc2Jpbi9nbHVzdGVyZnMoY2xl YW51cF9hbmRfZXhpdCYjNDM7MHg2YikgWzB4N2Y1MjRjOWQ1YjRiXSApIDAtOiByZWNlaXZlZA0K IHNpZ251bSAoMTUpLCBzaHV0dGluZyBkb3duPGJyPg0KPGJyPg0KPGJyPg0KPG86cD48L286cD48 L3A+DQo8L2Rpdj4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxv OnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPk9uIFRodSwg TWFyIDIsIDIwMTcgYXQgMTI6MTEgUE0sIFNhaGluYSBCb3NlICZsdDs8YSBocmVmPSJtYWlsdG86 c2Fib3NlQHJlZGhhdC5jb20iIHRhcmdldD0iX2JsYW5rIj5zYWJvc2VAcmVkaGF0LmNvbTwvYT4m Z3Q7IHdyb3RlOjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y bWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRvbToxMi4wcHQiPllvdSB3aWxsIG5lZWQgdG8gcGFzcyBh ZGRpdGlvbmFsIG1vdW50IG9wdGlvbnMgd2hpbGUgY3JlYXRpbmcgdGhlIHN0b3JhZ2UgZG9tYWlu ICh0cmFuc3BvcnQ9cmRtYSk8YnI+DQo8YnI+DQo8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRp dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlBsZWFzZSBsZXQgdXMga25vdyBpZiB0aGlzIHdvcmtz LjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9y bWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2Pg0KPGRpdj4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPk9uIFRodSwgTWFyIDIsIDIwMTcgYXQgMjo0MiBQTSwgQXJtYW4gS2hhbGF0 eWFuICZsdDs8YSBocmVmPSJtYWlsdG86YXJtMmFybUBnbWFpbC5jb20iIHRhcmdldD0iX2JsYW5r Ij5hcm0yYXJtQGdtYWlsLmNvbTwvYT4mZ3Q7IHdyb3RlOjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+ DQo8L2Rpdj4NCjxibG9ja3F1b3RlIHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItbGVmdDpzb2xp ZCAjQ0NDQ0NDIDEuMHB0O3BhZGRpbmc6MGluIDBpbiAwaW4gNi4wcHQ7bWFyZ2luLWxlZnQ6NC44 cHQ7bWFyZ2luLXJpZ2h0OjBpbiI+DQo8ZGl2Pg0KPGRpdj4NCjxkaXY+DQo8ZGl2Pg0KPHAgY2xh c3M9Ik1zb05vcm1hbCI+SGksPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIj5BcmUgdGhlcmUgd2F5IHRvIGZvcmNlIHRoZSBjb25uZWN0aW9ucyBvdmVy IFJETUEgb25seT88bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29O b3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+SWYgSSBjaGVjayBob3N0IG1vdW50 cyBJIGNhbm5vdCBzZWUgcmRtYSBtb3VudCBvcHRpb246PGJyPg0KJm5ic3A7bW91bnQgLWx8IGdy ZXAgZ2x1c3Rlcjxicj4NCjEwLjEwLjEwLjQ0Oi9HbHVSZXBsaWNhIG9uIC9yaGV2L2RhdGEtY2Vu dGVyL21udC9nbHVzdGVyU0QvMTAuMTAuMTAuNDQ6X0dsdVJlcGxpY2EgdHlwZSBmdXNlLmdsdXN0 ZXJmcyAocncscmVsYXRpbWUsdXNlcl9pZD0wLGdyb3VwX2lkPTAsZGVmYXVsdF9wZXJtaXNzaW9u cyxhbGxvd19vdGhlcixtYXhfcmVhZD0xMzEwNzIpPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiPkkgaGF2ZSBnbHVzdGVyaXplZCAzIG5vZGVzOiA8YnI+DQo8YnI+ DQpHbHVSZXBsaWNhPGJyPg0KVm9sdW1lIElEOjxicj4NCmVlNjg2ZGZlLTIwM2EtNGNhYS1hNjkx LTI2MzUzNDYwY2M0ODxicj4NClZvbHVtZSBUeXBlOjxicj4NClJlcGxpY2F0ZSAoQXJiaXRlcik8 YnI+DQpSZXBsaWNhIENvdW50Ojxicj4NCjIgJiM0MzsgMTxicj4NCk51bWJlciBvZiBCcmlja3M6 PGJyPg0KMzxicj4NClRyYW5zcG9ydCBUeXBlczo8YnI+DQpUQ1AsIFJETUE8YnI+DQpNYXhpbXVt IG5vIG9mIHNuYXBzaG90czo8YnI+DQoyNTY8YnI+DQpDYXBhY2l0eTo8YnI+DQozLjUxIFRpQiB0 b3RhbCwgMTkwLjU2IEdpQiB1c2VkLCAzLjMzIFRpQiBmcmVlPG86cD48L286cD48L3A+DQo8L2Rp dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8 L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+ X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188YnI+DQpVc2Vy cyBtYWlsaW5nIGxpc3Q8YnI+DQo8YSBocmVmPSJtYWlsdG86VXNlcnNAb3ZpcnQub3JnIiB0YXJn ZXQ9Il9ibGFuayI+VXNlcnNAb3ZpcnQub3JnPC9hPjxicj4NCjxhIGhyZWY9Imh0dHA6Ly9saXN0 cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VycyIgdGFyZ2V0PSJfYmxhbmsiPmh0dHA6 Ly9saXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VyczwvYT48bzpwPjwvbzpwPjwv cD4NCjwvYmxvY2txdW90ZT4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJz cDs8L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4m bmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2 Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjwv ZGl2Pg0KPC9kaXY+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4m bmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KDQo8RElWPg0KPEhSPg0KPC9ESVY+DQo8 RElWPlRoaXMgZW1haWwgbWVzc2FnZSBpcyBmb3IgdGhlIHNvbGUgdXNlIG9mIHRoZSBpbnRlbmRl ZCByZWNpcGllbnQocykgYW5kIG1heSANCmNvbnRhaW4gY29uZmlkZW50aWFsIGluZm9ybWF0aW9u LiZuYnNwOyBBbnkgdW5hdXRob3JpemVkIHJldmlldywgdXNlLCBkaXNjbG9zdXJlIA0Kb3IgZGlz dHJpYnV0aW9uIGlzIHByb2hpYml0ZWQuJm5ic3A7IElmIHlvdSBhcmUgbm90IHRoZSBpbnRlbmRl ZCByZWNpcGllbnQsIA0KcGxlYXNlIGNvbnRhY3QgdGhlIHNlbmRlciBieSByZXBseSBlbWFpbCBh bmQgZGVzdHJveSBhbGwgY29waWVzIG9mIHRoZSBvcmlnaW5hbCANCm1lc3NhZ2UuIDwvRElWPg0K PERJVj4NCjxIUj4NCjwvRElWPg0KPC9ib2R5Pg0KPC9odG1sPg0K --_000_30b1fa1b4259429581f6f6b5e7ef5f02DRHQMAIL105nvidiacom_--
participants (4)
-
Arman Khalatyan
-
Deepak Naidu
-
Misak Khachatryan
-
Sahina Bose