From 49b2d2fcd86b98f66da8001a73fea77f409e326d Mon Sep 17 00:00:00 2001 From: Edmund Blomley Date: Mon, 24 Jun 2024 15:31:10 +0200 Subject: [PATCH] Replace obsolete ophyd documentation --- ophyd/.doctr-files | 445 - ophyd/OEP/OEP_001.html | 322 - ophyd/OEP/index.html | 252 - ...detector.base.ADBase.get_asyn_digraph.html | 297 - ....base.ADBase.get_asyn_port_dictionary.html | 293 - ...r.base.ADBase.get_plugin_by_asyn_port.html | 299 - .../ophyd.areadetector.base.ADBase.html | 380 - ...adetector.base.ADBase.missing_plugins.html | 281 - ...ector.base.ADBase.validate_asyn_ports.html | 294 - .../ophyd.areadetector.base.ADComponent.html | 306 - ....areadetector.base.EpicsSignalWithRBV.html | 336 - .../ophyd.areadetector.base.ad_group.html | 278 - ophyd/_as_gen/ophyd.areadetector.base.html | 319 - ...phyd.areadetector.cam.AdscDetectorCam.html | 418 - ...yd.areadetector.cam.Andor3DetectorCam.html | 418 - ...hyd.areadetector.cam.AndorDetectorCam.html | 418 - ...yd.areadetector.cam.BrukerDetectorCam.html | 418 - .../ophyd.areadetector.cam.CamBase.html | 418 - ...eadetector.cam.FirewireLinDetectorCam.html | 418 - ...eadetector.cam.FirewireWinDetectorCam.html | 418 - ...readetector.cam.LightFieldDetectorCam.html | 418 - ...yd.areadetector.cam.Mar345DetectorCam.html | 418 - ...yd.areadetector.cam.MarCCDDetectorCam.html | 418 - ...ophyd.areadetector.cam.PSLDetectorCam.html | 418 - ...ophyd.areadetector.cam.PcoDetectorCam.html | 418 - .../ophyd.areadetector.cam.PcoDetectorIO.html | 418 - ...hyd.areadetector.cam.PcoDetectorSimIO.html | 418 - ...eadetector.cam.PerkinElmerDetectorCam.html | 418 - ...d.areadetector.cam.PilatusDetectorCam.html | 418 - ...d.areadetector.cam.PixiradDetectorCam.html | 418 - ...areadetector.cam.PointGreyDetectorCam.html | 418 - ...areadetector.cam.ProsilicaDetectorCam.html | 418 - ...hyd.areadetector.cam.PvcamDetectorCam.html | 418 - ...hyd.areadetector.cam.RoperDetectorCam.html | 418 - ...ophyd.areadetector.cam.SimDetectorCam.html | 418 - ...ophyd.areadetector.cam.URLDetectorCam.html | 418 - ophyd/_as_gen/ophyd.areadetector.cam.html | 370 - ...d.areadetector.detectors.AdscDetector.html | 399 - ...areadetector.detectors.Andor3Detector.html | 399 - ....areadetector.detectors.AndorDetector.html | 399 - ...d.areadetector.detectors.AreaDetector.html | 399 - ...areadetector.detectors.BrukerDetector.html | 399 - ...ector.detectors.DetectorBase.dispatch.html | 292 - ...d.areadetector.detectors.DetectorBase.html | 387 - ....detectors.DetectorBase.make_data_key.html | 280 - ...etector.detectors.FirewireLinDetector.html | 399 - ...etector.detectors.FirewireWinDetector.html | 399 - ...detector.detectors.LightFieldDetector.html | 399 - ...areadetector.detectors.Mar345Detector.html | 399 - ...areadetector.detectors.MarCCDDetector.html | 399 - ...yd.areadetector.detectors.PSLDetector.html | 399 - ...etector.detectors.PerkinElmerDetector.html | 399 - ...readetector.detectors.PilatusDetector.html | 399 - ...readetector.detectors.PixiradDetector.html | 399 - ...adetector.detectors.PointGreyDetector.html | 399 - ...adetector.detectors.ProsilicaDetector.html | 399 - ....areadetector.detectors.PvcamDetector.html | 399 - ....areadetector.detectors.RoperDetector.html | 399 - ...yd.areadetector.detectors.SimDetector.html | 399 - ...yd.areadetector.detectors.URLDetector.html | 399 - .../_as_gen/ophyd.areadetector.detectors.html | 363 - ophyd/_as_gen/ophyd.areadetector.docs.html | 289 - ...ilestore_mixins.FileStoreBase.fs_root.html | 289 - ...e_mixins.FileStoreBase.generate_datum.html | 289 - ...tector.filestore_mixins.FileStoreBase.html | 418 - ...xins.FileStoreBase.read_path_template.html | 289 - ...lestore_mixins.FileStoreBase.reg_root.html | 289 - ...r.filestore_mixins.FileStoreBase.root.html | 294 - ...ins.FileStoreBase.write_path_template.html | 288 - ...r.filestore_mixins.FileStoreBulkWrite.html | 296 - ...tector.filestore_mixins.FileStoreHDF5.html | 335 - ...lestore_mixins.FileStoreHDF5BulkWrite.html | 295 - ...re_mixins.FileStoreHDF5IterativeWrite.html | 335 - ...estore_mixins.FileStoreIterativeWrite.html | 330 - ....filestore_mixins.FileStorePluginBase.html | 332 - ...ins.FileStorePluginBase.make_filename.html | 311 - ...tector.filestore_mixins.FileStoreTIFF.html | 335 - ...lestore_mixins.FileStoreTIFFBulkWrite.html | 295 - ...re_mixins.FileStoreTIFFIterativeWrite.html | 335 - ...lestore_mixins.FileStoreTIFFSquashing.html | 380 - .../ophyd.areadetector.filestore_mixins.html | 357 - ophyd/_as_gen/ophyd.areadetector.html | 289 - ....areadetector.plugins.ColorConvPlugin.html | 392 - ...ophyd.areadetector.plugins.FilePlugin.html | 394 - ...ophyd.areadetector.plugins.HDF5Plugin.html | 397 - ...phyd.areadetector.plugins.ImagePlugin.html | 392 - ...ophyd.areadetector.plugins.JPEGPlugin.html | 394 - ...hyd.areadetector.plugins.MagickPlugin.html | 394 - ...hyd.areadetector.plugins.NetCDFPlugin.html | 394 - ...phyd.areadetector.plugins.NexusPlugin.html | 394 - ...yd.areadetector.plugins.OverlayPlugin.html | 406 - ...ophyd.areadetector.plugins.PluginBase.html | 393 - ...yd.areadetector.plugins.ProcessPlugin.html | 392 - .../ophyd.areadetector.plugins.ROIPlugin.html | 392 - ...phyd.areadetector.plugins.StatsPlugin.html | 392 - ...ophyd.areadetector.plugins.TIFFPlugin.html | 394 - ....areadetector.plugins.TransformPlugin.html | 392 - ophyd/_as_gen/ophyd.areadetector.plugins.html | 370 - ...adetector.trigger_mixins.MultiTrigger.html | 361 - ...detector.trigger_mixins.SingleTrigger.html | 327 - ...eadetector.trigger_mixins.TriggerBase.html | 321 - .../ophyd.areadetector.trigger_mixins.html | 319 - ophyd/_as_gen/ophyd.areadetector.util.html | 322 - ophyd/_as_gen/ophyd.callbacks.html | 304 - .../ophyd.commands.get_all_positioners.html | 274 - ophyd/_as_gen/ophyd.commands.html | 370 - ophyd/_as_gen/ophyd.commands.log_pos.html | 292 - .../_as_gen/ophyd.commands.log_pos_diff.html | 293 - ophyd/_as_gen/ophyd.commands.log_pos_mov.html | 297 - ophyd/_as_gen/ophyd.commands.wh_pos.html | 299 - ...phyd.device.BlueskyInterface.describe.html | 304 - .../ophyd.device.BlueskyInterface.pause.html | 302 - .../ophyd.device.BlueskyInterface.read.html | 311 - .../ophyd.device.BlueskyInterface.resume.html | 290 - .../ophyd.device.BlueskyInterface.stage.html | 313 - ...ophyd.device.BlueskyInterface.trigger.html | 311 - ...ophyd.device.BlueskyInterface.unstage.html | 305 - ophyd/_as_gen/ophyd.device.Component.html | 358 - .../ophyd.device.ComponentMeta.__new__.html | 281 - ...phyd.device.ComponentMeta.__prepare__.html | 283 - ophyd/_as_gen/ophyd.device.ComponentMeta.html | 300 - .../ophyd.device.Device.configure.html | 300 - .../ophyd.device.Device.connected.html | 275 - ....device.Device.describe_configuration.html | 297 - ophyd/_as_gen/ophyd.device.Device.get.html | 277 - .../ophyd.device.Device.get_device_tuple.html | 278 - ...evice.Device.get_instantiated_signals.html | 291 - ophyd/_as_gen/ophyd.device.Device.html | 383 - ophyd/_as_gen/ophyd.device.Device.put.html | 289 - ...phyd.device.Device.read_configuration.html | 282 - ...hyd.device.Device.wait_for_connection.html | 292 - .../ophyd.device.DynamicDeviceComponent.html | 339 - .../ophyd.device.FormattedComponent.html | 331 - ophyd/_as_gen/ophyd.device.html | 325 - ophyd/_as_gen/ophyd.epics_motor.html | 307 - .../ophyd.flyers.FlyerInterface.collect.html | 296 - .../ophyd.flyers.FlyerInterface.complete.html | 299 - ...lyers.FlyerInterface.describe_collect.html | 300 - .../ophyd.flyers.FlyerInterface.kickoff.html | 295 - ophyd/_as_gen/ophyd.flyers.html | 310 - ophyd/_as_gen/ophyd.html | 289 - ophyd/_as_gen/ophyd.mca.html | 361 - ophyd/_as_gen/ophyd.mixins.html | 304 - ...ophyd.ophydobj.OphydObject._reset_sub.html | 278 - .../ophyd.ophydobj.OphydObject._run_subs.html | 286 - .../ophyd.ophydobj.OphydObject.clear_sub.html | 296 - .../ophyd.ophydobj.OphydObject.connected.html | 284 - ...phyd.ophydobj.OphydObject.event_types.html | 278 - ophyd/_as_gen/ophyd.ophydobj.OphydObject.html | 344 - .../ophyd.ophydobj.OphydObject.name.html | 287 - .../ophyd.ophydobj.OphydObject.parent.html | 288 - .../ophyd.ophydobj.OphydObject.root.html | 287 - .../ophyd.ophydobj.OphydObject.subscribe.html | 331 - ...phyd.ophydobj.OphydObject.unsubscribe.html | 291 - ophyd/_as_gen/ophyd.ophydobj.html | 313 - .../ophyd.positioner.PositionerBase.set.html | 319 - .../ophyd.positioner.PositionerBase.stop.html | 293 - ophyd/_as_gen/ophyd.positioner.html | 304 - ophyd/_as_gen/ophyd.pseudopos.html | 319 - ophyd/_as_gen/ophyd.pv_positioner.html | 304 - ophyd/_as_gen/ophyd.quadem.html | 310 - ophyd/_as_gen/ophyd.scaler.html | 307 - ophyd/_as_gen/ophyd.signal.html | 319 - ophyd/_as_gen/ophyd.status.DeviceStatus.html | 321 - ophyd/_as_gen/ophyd.status.MoveStatus.html | 359 - ophyd/_as_gen/ophyd.status.Status.html | 304 - .../ophyd.status.StatusBase._finished.html | 291 - .../ophyd.status.StatusBase.finished_cb.html | 270 - ophyd/_as_gen/ophyd.status.StatusBase.html | 310 - ophyd/_as_gen/ophyd.status.html | 340 - ophyd/_as_gen/ophyd.utils.epics_pvs.html | 358 - ophyd/_as_gen/ophyd.utils.errors.html | 316 - ophyd/_as_gen/ophyd.utils.html | 316 - ophyd/_as_gen/ophyd.utils.paths.html | 304 - ophyd/_as_gen/ophyd.utils.startup.html | 298 - ...5299db027430716e817e0d5c4c9da91b99fca3.png | Bin 15232 -> 0 bytes ...db027430716e817e0d5c4c9da91b99fca3.png.map | 12 - ...bc9368c2f46f77d1599b9d515a6682240bfc8b.png | Bin 6727 -> 0 bytes ...68c2f46f77d1599b9d515a6682240bfc8b.png.map | 7 - ...76a6e7436ad02c49d005e595a1a6cf07b83c70.png | Bin 5043 -> 0 bytes ...e7436ad02c49d005e595a1a6cf07b83c70.png.map | 6 - ...ad649a59595e814a12c6fc7d6708f6b9d28ff2.png | Bin 75414 -> 0 bytes ...9a59595e814a12c6fc7d6708f6b9d28ff2.png.map | 27 - ...0599b6065a4805b6977a7d8f4e7a8d1803134e.png | Bin 21150 -> 0 bytes ...b6065a4805b6977a7d8f4e7a8d1803134e.png.map | 25 - ...ba088399d2c0103e2f5f0b87e1a5c50075c3fd.png | Bin 109531 -> 0 bytes ...8399d2c0103e2f5f0b87e1a5c50075c3fd.png.map | 83 - ...70b9d36cbddbb5c755c5f0bae788be51abe4f9.png | Bin 15045 -> 0 bytes ...d36cbddbb5c755c5f0bae788be51abe4f9.png.map | 12 - ...622bdec20ce63c25d8c373388d172ce9d499e5.png | Bin 18844 -> 0 bytes ...dec20ce63c25d8c373388d172ce9d499e5.png.map | 15 - ...a39687e659a6c23dacd535938e324e17fe3201.png | Bin 75861 -> 0 bytes ...87e659a6c23dacd535938e324e17fe3201.png.map | 27 - ...2fe028f75ebee8c51545abba1e7b9ce9898e97.png | Bin 20510 -> 0 bytes ...28f75ebee8c51545abba1e7b9ce9898e97.png.map | 15 - ...ecbb618f5cdbc91401d379f808279e6fa77e9a.png | Bin 4233 -> 0 bytes ...618f5cdbc91401d379f808279e6fa77e9a.png.map | 6 - ...ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png | Bin 99334 -> 0 bytes ...26c9bc2afeb9bc1c8baac10eda7e123a0b.png.map | 83 - ...121c6d044eeae967fb3b6509ae40ac1ec963cb.png | Bin 7975 -> 0 bytes ...6d044eeae967fb3b6509ae40ac1ec963cb.png.map | 6 - ...ab69f3c211deb5155033d05233120f5a03b15c.png | Bin 21097 -> 0 bytes ...f3c211deb5155033d05233120f5a03b15c.png.map | 14 - ...988caf02abedc54423afddfe2feb0f3b822846.png | Bin 89364 -> 0 bytes ...af02abedc54423afddfe2feb0f3b822846.png.map | 29 - ...0cbab97fb867a5f24b830d763319ad33b63840.png | Bin 88035 -> 0 bytes ...b97fb867a5f24b830d763319ad33b63840.png.map | 86 - ...46490e2afb6cd7454a429a1a96057e59742cee.png | Bin 23883 -> 0 bytes ...0e2afb6cd7454a429a1a96057e59742cee.png.map | 14 - ...caac3b6a2ffeaba54a908d74c83ab374057a3a.png | Bin 16731 -> 0 bytes ...3b6a2ffeaba54a908d74c83ab374057a3a.png.map | 15 - ...c70fb3ebeec9e78455292b41bf6e388acf5744.png | Bin 79727 -> 0 bytes ...b3ebeec9e78455292b41bf6e388acf5744.png.map | 29 - ...74d941bae841f54e92991832d2f65c1d96eaa0.png | Bin 4621 -> 0 bytes ...41bae841f54e92991832d2f65c1d96eaa0.png.map | 6 - ophyd/_modules/index.html | 211 - ophyd/_modules/ophyd/areadetector/base.html | 351 - ophyd/_modules/ophyd/areadetector/cam.html | 843 -- .../ophyd/areadetector/detectors.html | 363 - .../_modules/ophyd/areadetector/plugins.html | 979 -- ophyd/_modules/ophyd/commands.html | 968 -- ophyd/_modules/ophyd/device.html | 1059 -- ophyd/_modules/ophyd/epics_motor.html | 457 - ophyd/_modules/ophyd/mca.html | 611 - ophyd/_modules/ophyd/positioner.html | 531 - ophyd/_modules/ophyd/pseudopos.html | 1017 -- ophyd/_modules/ophyd/pv_positioner.html | 497 - ophyd/_modules/ophyd/scaler.html | 248 - ophyd/_modules/ophyd/signal.html | 1120 -- ophyd/_sources/OEP/OEP_001.rst.txt | 52 - ophyd/_sources/OEP/OEP_001.txt | 52 - ophyd/_sources/OEP/index.rst.txt | 8 - ...ector.base.ADBase.get_asyn_digraph.rst.txt | 6 - ...se.ADBase.get_asyn_port_dictionary.rst.txt | 6 - ...ase.ADBase.get_plugin_by_asyn_port.rst.txt | 6 - ...tector.base.ADBase.missing_plugins.rst.txt | 6 - .../ophyd.areadetector.base.ADBase.rst.txt | 49 - ...or.base.ADBase.validate_asyn_ports.rst.txt | 6 - ...phyd.areadetector.base.ADComponent.rst.txt | 26 - ...eadetector.base.EpicsSignalWithRBV.rst.txt | 36 - .../ophyd.areadetector.base.ad_group.rst.txt | 6 - .../_as_gen/ophyd.areadetector.base.rst.txt | 30 - ...d.areadetector.cam.AdscDetectorCam.rst.txt | 49 - ...areadetector.cam.Andor3DetectorCam.rst.txt | 49 - ....areadetector.cam.AndorDetectorCam.rst.txt | 49 - ...areadetector.cam.BrukerDetectorCam.rst.txt | 49 - .../ophyd.areadetector.cam.CamBase.rst.txt | 49 - ...etector.cam.FirewireLinDetectorCam.rst.txt | 49 - ...etector.cam.FirewireWinDetectorCam.rst.txt | 49 - ...detector.cam.LightFieldDetectorCam.rst.txt | 49 - ...areadetector.cam.Mar345DetectorCam.rst.txt | 49 - ...areadetector.cam.MarCCDDetectorCam.rst.txt | 49 - ...yd.areadetector.cam.PSLDetectorCam.rst.txt | 49 - ...yd.areadetector.cam.PcoDetectorCam.rst.txt | 49 - ...hyd.areadetector.cam.PcoDetectorIO.rst.txt | 49 - ....areadetector.cam.PcoDetectorSimIO.rst.txt | 49 - ...etector.cam.PerkinElmerDetectorCam.rst.txt | 49 - ...readetector.cam.PilatusDetectorCam.rst.txt | 49 - ...readetector.cam.PixiradDetectorCam.rst.txt | 49 - ...adetector.cam.PointGreyDetectorCam.rst.txt | 49 - ...adetector.cam.ProsilicaDetectorCam.rst.txt | 49 - ....areadetector.cam.PvcamDetectorCam.rst.txt | 49 - ....areadetector.cam.RoperDetectorCam.rst.txt | 49 - ...yd.areadetector.cam.SimDetectorCam.rst.txt | 49 - ...yd.areadetector.cam.URLDetectorCam.rst.txt | 49 - .../_as_gen/ophyd.areadetector.cam.rst.txt | 45 - ...readetector.detectors.AdscDetector.rst.txt | 51 - ...adetector.detectors.Andor3Detector.rst.txt | 51 - ...eadetector.detectors.AndorDetector.rst.txt | 51 - ...readetector.detectors.AreaDetector.rst.txt | 51 - ...adetector.detectors.BrukerDetector.rst.txt | 51 - ...or.detectors.DetectorBase.dispatch.rst.txt | 6 - ...tectors.DetectorBase.make_data_key.rst.txt | 6 - ...readetector.detectors.DetectorBase.rst.txt | 51 - ...ctor.detectors.FirewireLinDetector.rst.txt | 51 - ...ctor.detectors.FirewireWinDetector.rst.txt | 51 - ...ector.detectors.LightFieldDetector.rst.txt | 51 - ...adetector.detectors.Mar345Detector.rst.txt | 51 - ...adetector.detectors.MarCCDDetector.rst.txt | 51 - ...areadetector.detectors.PSLDetector.rst.txt | 51 - ...ctor.detectors.PerkinElmerDetector.rst.txt | 51 - ...detector.detectors.PilatusDetector.rst.txt | 51 - ...detector.detectors.PixiradDetector.rst.txt | 51 - ...tector.detectors.PointGreyDetector.rst.txt | 51 - ...tector.detectors.ProsilicaDetector.rst.txt | 51 - ...eadetector.detectors.PvcamDetector.rst.txt | 51 - ...eadetector.detectors.RoperDetector.rst.txt | 51 - ...areadetector.detectors.SimDetector.rst.txt | 51 - ...areadetector.detectors.URLDetector.rst.txt | 51 - .../ophyd.areadetector.detectors.rst.txt | 42 - .../_as_gen/ophyd.areadetector.docs.rst.txt | 16 - ...store_mixins.FileStoreBase.fs_root.rst.txt | 6 - ...ixins.FileStoreBase.generate_datum.rst.txt | 6 - ...s.FileStoreBase.read_path_template.rst.txt | 6 - ...tore_mixins.FileStoreBase.reg_root.rst.txt | 6 - ...ilestore_mixins.FileStoreBase.root.rst.txt | 6 - ...tor.filestore_mixins.FileStoreBase.rst.txt | 30 - ....FileStoreBase.write_path_template.rst.txt | 6 - ...ilestore_mixins.FileStoreBulkWrite.rst.txt | 16 - ...tor.filestore_mixins.FileStoreHDF5.rst.txt | 32 - ...tore_mixins.FileStoreHDF5BulkWrite.rst.txt | 16 - ...mixins.FileStoreHDF5IterativeWrite.rst.txt | 32 - ...ore_mixins.FileStoreIterativeWrite.rst.txt | 30 - ....FileStorePluginBase.make_filename.rst.txt | 6 - ...lestore_mixins.FileStorePluginBase.rst.txt | 31 - ...tor.filestore_mixins.FileStoreTIFF.rst.txt | 32 - ...tore_mixins.FileStoreTIFFBulkWrite.rst.txt | 16 - ...mixins.FileStoreTIFFIterativeWrite.rst.txt | 32 - ...tore_mixins.FileStoreTIFFSquashing.rst.txt | 32 - ...phyd.areadetector.filestore_mixins.rst.txt | 36 - ...eadetector.plugins.ColorConvPlugin.rst.txt | 53 - ...yd.areadetector.plugins.FilePlugin.rst.txt | 54 - ...yd.areadetector.plugins.HDF5Plugin.rst.txt | 55 - ...d.areadetector.plugins.ImagePlugin.rst.txt | 53 - ...yd.areadetector.plugins.JPEGPlugin.rst.txt | 54 - ....areadetector.plugins.MagickPlugin.rst.txt | 54 - ....areadetector.plugins.NetCDFPlugin.rst.txt | 54 - ...d.areadetector.plugins.NexusPlugin.rst.txt | 54 - ...areadetector.plugins.OverlayPlugin.rst.txt | 53 - ...yd.areadetector.plugins.PluginBase.rst.txt | 53 - ...areadetector.plugins.ProcessPlugin.rst.txt | 53 - ...hyd.areadetector.plugins.ROIPlugin.rst.txt | 53 - ...d.areadetector.plugins.StatsPlugin.rst.txt | 53 - ...yd.areadetector.plugins.TIFFPlugin.rst.txt | 54 - ...eadetector.plugins.TransformPlugin.rst.txt | 53 - .../ophyd.areadetector.plugins.rst.txt | 46 - .../_as_gen/ophyd.areadetector.rst.txt | 16 - ...tector.trigger_mixins.MultiTrigger.rst.txt | 29 - ...ector.trigger_mixins.SingleTrigger.rst.txt | 29 - ...etector.trigger_mixins.TriggerBase.rst.txt | 29 - .../ophyd.areadetector.trigger_mixins.rst.txt | 25 - .../_as_gen/ophyd.areadetector.util.rst.txt | 31 - .../_sources/_as_gen/ophyd.callbacks.rst.txt | 23 - ...ophyd.commands.get_all_positioners.rst.txt | 6 - .../_as_gen/ophyd.commands.log_pos.rst.txt | 6 - .../ophyd.commands.log_pos_diff.rst.txt | 6 - .../ophyd.commands.log_pos_mov.rst.txt | 6 - ophyd/_sources/_as_gen/ophyd.commands.rst.txt | 43 - .../_as_gen/ophyd.commands.wh_pos.rst.txt | 6 - ...d.device.BlueskyInterface.describe.rst.txt | 6 - ...phyd.device.BlueskyInterface.pause.rst.txt | 6 - ...ophyd.device.BlueskyInterface.read.rst.txt | 6 - ...hyd.device.BlueskyInterface.resume.rst.txt | 6 - ...phyd.device.BlueskyInterface.stage.rst.txt | 6 - ...yd.device.BlueskyInterface.trigger.rst.txt | 6 - ...yd.device.BlueskyInterface.unstage.rst.txt | 6 - .../_as_gen/ophyd.device.Component.rst.txt | 25 - ...ophyd.device.ComponentMeta.__new__.rst.txt | 6 - ...d.device.ComponentMeta.__prepare__.rst.txt | 6 - .../ophyd.device.ComponentMeta.rst.txt | 22 - .../ophyd.device.Device.configure.rst.txt | 6 - .../ophyd.device.Device.connected.rst.txt | 6 - ...vice.Device.describe_configuration.rst.txt | 6 - .../_as_gen/ophyd.device.Device.get.rst.txt | 6 - ...hyd.device.Device.get_device_tuple.rst.txt | 6 - ...ce.Device.get_instantiated_signals.rst.txt | 6 - .../_as_gen/ophyd.device.Device.put.rst.txt | 6 - ...d.device.Device.read_configuration.rst.txt | 6 - .../_as_gen/ophyd.device.Device.rst.txt | 43 - ....device.Device.wait_for_connection.rst.txt | 6 - ...phyd.device.DynamicDeviceComponent.rst.txt | 25 - .../ophyd.device.FormattedComponent.rst.txt | 25 - ophyd/_sources/_as_gen/ophyd.device.rst.txt | 30 - .../_as_gen/ophyd.epics_motor.rst.txt | 24 - ...phyd.flyers.FlyerInterface.collect.rst.txt | 6 - ...hyd.flyers.FlyerInterface.complete.rst.txt | 6 - ...rs.FlyerInterface.describe_collect.rst.txt | 6 - ...phyd.flyers.FlyerInterface.kickoff.rst.txt | 6 - ophyd/_sources/_as_gen/ophyd.flyers.rst.txt | 25 - ophyd/_sources/_as_gen/ophyd.mca.rst.txt | 44 - ophyd/_sources/_as_gen/ophyd.mixins.rst.txt | 23 - ...yd.ophydobj.OphydObject._reset_sub.rst.txt | 6 - ...hyd.ophydobj.OphydObject._run_subs.rst.txt | 6 - ...hyd.ophydobj.OphydObject.clear_sub.rst.txt | 6 - ...hyd.ophydobj.OphydObject.connected.rst.txt | 6 - ...d.ophydobj.OphydObject.event_types.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.name.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.parent.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.root.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.rst.txt | 26 - ...hyd.ophydobj.OphydObject.subscribe.rst.txt | 6 - ...d.ophydobj.OphydObject.unsubscribe.rst.txt | 6 - ophyd/_sources/_as_gen/ophyd.ophydobj.rst.txt | 28 - ...phyd.positioner.PositionerBase.set.rst.txt | 6 - ...hyd.positioner.PositionerBase.stop.rst.txt | 6 - .../_sources/_as_gen/ophyd.positioner.rst.txt | 23 - .../_sources/_as_gen/ophyd.pseudopos.rst.txt | 30 - .../_as_gen/ophyd.pv_positioner.rst.txt | 23 - ophyd/_sources/_as_gen/ophyd.quadem.rst.txt | 25 - ophyd/_sources/_as_gen/ophyd.rst.txt | 16 - ophyd/_sources/_as_gen/ophyd.scaler.rst.txt | 24 - ophyd/_sources/_as_gen/ophyd.signal.rst.txt | 28 - .../_as_gen/ophyd.status.DeviceStatus.rst.txt | 24 - .../_as_gen/ophyd.status.MoveStatus.rst.txt | 24 - .../_as_gen/ophyd.status.Status.rst.txt | 23 - .../ophyd.status.StatusBase._finished.rst.txt | 6 - ...phyd.status.StatusBase.finished_cb.rst.txt | 6 - .../_as_gen/ophyd.status.StatusBase.rst.txt | 23 - ophyd/_sources/_as_gen/ophyd.status.rst.txt | 39 - .../_as_gen/ophyd.utils.epics_pvs.rst.txt | 45 - .../_as_gen/ophyd.utils.errors.rst.txt | 27 - .../_as_gen/ophyd.utils.paths.rst.txt | 23 - ophyd/_sources/_as_gen/ophyd.utils.rst.txt | 29 - .../_as_gen/ophyd.utils.startup.rst.txt | 22 - ophyd/_sources/api.rst.txt | 38 - ophyd/_sources/architecture.rst.txt | 243 - ophyd/_sources/architecture.txt | 15 - ophyd/_sources/area-detector.rst.txt | 574 - ophyd/_sources/area-detector.txt | 275 - ophyd/_sources/builtin-devices.rst.txt | 76 - ophyd/_sources/builtin-devices.txt | 49 - ophyd/_sources/commands.rst.txt | 16 - ophyd/_sources/commands.txt | 22 - ophyd/_sources/custom-devices.rst.txt | 60 - ophyd/_sources/custom-devices.txt | 60 - ophyd/_sources/debugging.rst.txt | 173 - ophyd/_sources/device-overview.rst.txt | 425 - ophyd/_sources/device-overview.txt | 97 - ophyd/_sources/docker.rst.txt | 50 - ...ector.base.ADBase.get_asyn_digraph.rst.txt | 6 - ...se.ADBase.get_asyn_port_dictionary.rst.txt | 6 - ...ase.ADBase.get_plugin_by_asyn_port.rst.txt | 6 - ...tector.base.ADBase.missing_plugins.rst.txt | 6 - .../ophyd.areadetector.base.ADBase.rst.txt | 57 - ...or.base.ADBase.validate_asyn_ports.rst.txt | 6 - ...base.ADBase.visualize_asyn_digraph.rst.txt | 6 - ...phyd.areadetector.base.ADComponent.rst.txt | 30 - ...eadetector.base.EpicsSignalWithRBV.rst.txt | 41 - .../ophyd.areadetector.base.ad_group.rst.txt | 6 - .../generated/ophyd.areadetector.base.rst.txt | 31 - ...d.areadetector.cam.AdscDetectorCam.rst.txt | 57 - ...areadetector.cam.Andor3DetectorCam.rst.txt | 57 - ....areadetector.cam.AndorDetectorCam.rst.txt | 57 - ...areadetector.cam.BrukerDetectorCam.rst.txt | 57 - .../ophyd.areadetector.cam.CamBase.rst.txt | 57 - ...etector.cam.FirewireLinDetectorCam.rst.txt | 57 - ...etector.cam.FirewireWinDetectorCam.rst.txt | 57 - ...detector.cam.LightFieldDetectorCam.rst.txt | 57 - ...areadetector.cam.Mar345DetectorCam.rst.txt | 57 - ...areadetector.cam.MarCCDDetectorCam.rst.txt | 57 - ...yd.areadetector.cam.PSLDetectorCam.rst.txt | 57 - ...yd.areadetector.cam.PcoDetectorCam.rst.txt | 57 - ...hyd.areadetector.cam.PcoDetectorIO.rst.txt | 57 - ....areadetector.cam.PcoDetectorSimIO.rst.txt | 57 - ...etector.cam.PerkinElmerDetectorCam.rst.txt | 57 - ...readetector.cam.PilatusDetectorCam.rst.txt | 57 - ...readetector.cam.PixiradDetectorCam.rst.txt | 57 - ...adetector.cam.PointGreyDetectorCam.rst.txt | 57 - ...adetector.cam.ProsilicaDetectorCam.rst.txt | 57 - ....areadetector.cam.PvcamDetectorCam.rst.txt | 57 - ....areadetector.cam.RoperDetectorCam.rst.txt | 57 - ...yd.areadetector.cam.SimDetectorCam.rst.txt | 57 - ...yd.areadetector.cam.URLDetectorCam.rst.txt | 57 - .../generated/ophyd.areadetector.cam.rst.txt | 50 - ...readetector.detectors.AdscDetector.rst.txt | 60 - ...adetector.detectors.Andor3Detector.rst.txt | 60 - ...eadetector.detectors.AndorDetector.rst.txt | 60 - ...readetector.detectors.AreaDetector.rst.txt | 60 - ...adetector.detectors.BrukerDetector.rst.txt | 60 - ...or.detectors.DetectorBase.dispatch.rst.txt | 6 - ...tectors.DetectorBase.make_data_key.rst.txt | 6 - ...readetector.detectors.DetectorBase.rst.txt | 60 - ...ctor.detectors.FirewireLinDetector.rst.txt | 60 - ...ctor.detectors.FirewireWinDetector.rst.txt | 60 - ...ector.detectors.LightFieldDetector.rst.txt | 60 - ...adetector.detectors.Mar345Detector.rst.txt | 60 - ...adetector.detectors.MarCCDDetector.rst.txt | 60 - ...areadetector.detectors.PSLDetector.rst.txt | 60 - ...ctor.detectors.PerkinElmerDetector.rst.txt | 60 - ...detector.detectors.PilatusDetector.rst.txt | 60 - ...detector.detectors.PixiradDetector.rst.txt | 60 - ...tector.detectors.PointGreyDetector.rst.txt | 60 - ...tector.detectors.ProsilicaDetector.rst.txt | 60 - ...eadetector.detectors.PvcamDetector.rst.txt | 60 - ...eadetector.detectors.RoperDetector.rst.txt | 60 - ...areadetector.detectors.SimDetector.rst.txt | 60 - ...areadetector.detectors.URLDetector.rst.txt | 60 - .../ophyd.areadetector.detectors.rst.txt | 46 - .../generated/ophyd.areadetector.docs.rst.txt | 16 - ...store_mixins.FileStoreBase.fs_root.rst.txt | 6 - ...ixins.FileStoreBase.generate_datum.rst.txt | 6 - ...s.FileStoreBase.read_path_template.rst.txt | 6 - ...tore_mixins.FileStoreBase.reg_root.rst.txt | 6 - ...tor.filestore_mixins.FileStoreBase.rst.txt | 31 - ....FileStoreBase.write_path_template.rst.txt | 6 - ...tor.filestore_mixins.FileStoreHDF5.rst.txt | 33 - ...mixins.FileStoreHDF5IterativeWrite.rst.txt | 33 - ...ore_mixins.FileStoreIterativeWrite.rst.txt | 31 - ....FileStorePluginBase.make_filename.rst.txt | 6 - ...lestore_mixins.FileStorePluginBase.rst.txt | 32 - ...tor.filestore_mixins.FileStoreTIFF.rst.txt | 33 - ...mixins.FileStoreTIFFIterativeWrite.rst.txt | 33 - ...tore_mixins.FileStoreTIFFSquashing.rst.txt | 33 - ...phyd.areadetector.filestore_mixins.rst.txt | 39 - ...eadetector.plugins.ColorConvPlugin.rst.txt | 61 - ...yd.areadetector.plugins.FilePlugin.rst.txt | 62 - ...yd.areadetector.plugins.HDF5Plugin.rst.txt | 63 - ...d.areadetector.plugins.ImagePlugin.rst.txt | 61 - ...yd.areadetector.plugins.JPEGPlugin.rst.txt | 62 - ....areadetector.plugins.MagickPlugin.rst.txt | 62 - ....areadetector.plugins.NetCDFPlugin.rst.txt | 62 - ...d.areadetector.plugins.NexusPlugin.rst.txt | 62 - ...areadetector.plugins.OverlayPlugin.rst.txt | 61 - ...yd.areadetector.plugins.PluginBase.rst.txt | 61 - ...areadetector.plugins.ProcessPlugin.rst.txt | 61 - ...hyd.areadetector.plugins.ROIPlugin.rst.txt | 62 - ...d.areadetector.plugins.StatsPlugin.rst.txt | 61 - ...yd.areadetector.plugins.TIFFPlugin.rst.txt | 62 - ...eadetector.plugins.TransformPlugin.rst.txt | 61 - .../ophyd.areadetector.plugins.rst.txt | 235 - .../generated/ophyd.areadetector.rst.txt | 16 - ...tector.trigger_mixins.MultiTrigger.rst.txt | 29 - ...ector.trigger_mixins.SingleTrigger.rst.txt | 29 - ...etector.trigger_mixins.TriggerBase.rst.txt | 29 - .../ophyd.areadetector.trigger_mixins.rst.txt | 25 - .../generated/ophyd.areadetector.util.rst.txt | 31 - .../generated/ophyd.callbacks.rst.txt | 23 - ...ophyd.commands.get_all_positioners.rst.txt | 6 - .../ophyd.commands.get_all_positioners.txt | 6 - .../ophyd.commands.get_logbook.rst.txt | 6 - .../generated/ophyd.commands.get_logbook.txt | 6 - .../generated/ophyd.commands.log_pos.rst.txt | 6 - .../generated/ophyd.commands.log_pos.txt | 6 - .../ophyd.commands.log_pos_diff.rst.txt | 6 - .../generated/ophyd.commands.log_pos_diff.txt | 6 - .../ophyd.commands.log_pos_mov.rst.txt | 6 - .../generated/ophyd.commands.log_pos_mov.txt | 6 - .../generated/ophyd.commands.mov.rst.txt | 6 - .../_sources/generated/ophyd.commands.mov.txt | 6 - .../generated/ophyd.commands.movr.rst.txt | 6 - .../generated/ophyd.commands.movr.txt | 6 - .../generated/ophyd.commands.set_lm.rst.txt | 6 - .../generated/ophyd.commands.set_lm.txt | 6 - .../generated/ophyd.commands.set_pos.rst.txt | 6 - .../generated/ophyd.commands.set_pos.txt | 6 - .../generated/ophyd.commands.wh_pos.rst.txt | 6 - .../generated/ophyd.commands.wh_pos.txt | 6 - ...d.device.BlueskyInterface.describe.rst.txt | 6 - ...phyd.device.BlueskyInterface.pause.rst.txt | 6 - ...ophyd.device.BlueskyInterface.read.rst.txt | 6 - ...hyd.device.BlueskyInterface.resume.rst.txt | 6 - ...phyd.device.BlueskyInterface.stage.rst.txt | 6 - ...yd.device.BlueskyInterface.trigger.rst.txt | 6 - ...yd.device.BlueskyInterface.unstage.rst.txt | 6 - .../generated/ophyd.device.Component.rst.txt | 29 - .../ophyd.device.Device.configure.rst.txt | 6 - .../ophyd.device.Device.connected.rst.txt | 6 - ...vice.Device.describe_configuration.rst.txt | 6 - .../generated/ophyd.device.Device.get.rst.txt | 6 - ...hyd.device.Device.get_device_tuple.rst.txt | 6 - ...ce.Device.get_instantiated_signals.rst.txt | 6 - .../generated/ophyd.device.Device.put.rst.txt | 6 - ...d.device.Device.read_configuration.rst.txt | 6 - .../generated/ophyd.device.Device.rst.txt | 50 - ....device.Device.wait_for_connection.rst.txt | 6 - ...phyd.device.DynamicDeviceComponent.rst.txt | 29 - .../ophyd.device.FormattedComponent.rst.txt | 29 - ophyd/_sources/generated/ophyd.device.rst.txt | 40 - .../generated/ophyd.epics_motor.rst.txt | 24 - ...phyd.flyers.FlyerInterface.collect.rst.txt | 6 - ...hyd.flyers.FlyerInterface.complete.rst.txt | 6 - ...rs.FlyerInterface.describe_collect.rst.txt | 6 - ...phyd.flyers.FlyerInterface.kickoff.rst.txt | 6 - ophyd/_sources/generated/ophyd.flyers.rst.txt | 25 - ophyd/_sources/generated/ophyd.mca.rst.txt | 44 - ophyd/_sources/generated/ophyd.mixins.rst.txt | 23 - ...yd.ophydobj.OphydObject._reset_sub.rst.txt | 6 - ...hyd.ophydobj.OphydObject._run_subs.rst.txt | 6 - ...hyd.ophydobj.OphydObject.clear_sub.rst.txt | 6 - ...d.ophydobj.OphydObject.event_types.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.name.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.parent.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.root.rst.txt | 6 - .../ophyd.ophydobj.OphydObject.rst.txt | 29 - ...hyd.ophydobj.OphydObject.subscribe.rst.txt | 6 - ...d.ophydobj.OphydObject.unsubscribe.rst.txt | 6 - .../_sources/generated/ophyd.ophydobj.rst.txt | 37 - ...phyd.positioner.PositionerBase.set.rst.txt | 6 - ...hyd.positioner.PositionerBase.stop.rst.txt | 6 - .../generated/ophyd.positioner.rst.txt | 23 - .../generated/ophyd.pseudopos.rst.txt | 30 - .../generated/ophyd.pv_positioner.rst.txt | 23 - ophyd/_sources/generated/ophyd.quadem.rst.txt | 26 - ophyd/_sources/generated/ophyd.rst.txt | 23 - ophyd/_sources/generated/ophyd.scaler.rst.txt | 24 - ophyd/_sources/generated/ophyd.signal.rst.txt | 36 - ophyd/_sources/generated/ophyd.status.rst.txt | 39 - .../generated/ophyd.utils.epics_pvs.rst.txt | 45 - .../generated/ophyd.utils.errors.rst.txt | 34 - .../generated/ophyd.utils.paths.rst.txt | 23 - ophyd/_sources/generated/ophyd.utils.rst.txt | 35 - .../generated/ophyd.utils.startup.rst.txt | 22 - ophyd/_sources/index.rst.txt | 67 - ophyd/_sources/index.txt | 69 - ophyd/_sources/positioners.rst.txt | 149 - ophyd/_sources/positioners.txt | 147 - ophyd/_sources/release_notes.rst.txt | 891 -- ophyd/_sources/release_notes.txt | 64 - ophyd/_sources/signals.rst.txt | 131 - ophyd/_sources/signals.txt | 10 - ophyd/_sources/status.rst.txt | 244 - ophyd/_static/ajax-loader.gif | Bin 673 -> 0 bytes ophyd/_static/basic.css | 648 - ophyd/_static/comment-bright.png | Bin 756 -> 0 bytes ophyd/_static/comment-close.png | Bin 829 -> 0 bytes ophyd/_static/comment.png | Bin 641 -> 0 bytes ophyd/_static/css/badge_only.css | 1 - ophyd/_static/css/fonts/Roboto-Slab-Bold.woff | Bin 87624 -> 0 bytes .../_static/css/fonts/Roboto-Slab-Bold.woff2 | Bin 67312 -> 0 bytes .../css/fonts/Roboto-Slab-Regular.woff | Bin 86288 -> 0 bytes .../css/fonts/Roboto-Slab-Regular.woff2 | Bin 66444 -> 0 bytes .../_static/css/fonts/fontawesome-webfont.eot | Bin 165742 -> 0 bytes .../_static/css/fonts/fontawesome-webfont.svg | 2671 ---- .../_static/css/fonts/fontawesome-webfont.ttf | Bin 165548 -> 0 bytes .../css/fonts/fontawesome-webfont.woff | Bin 98024 -> 0 bytes .../css/fonts/fontawesome-webfont.woff2 | Bin 77160 -> 0 bytes ophyd/_static/css/fonts/lato-bold-italic.woff | Bin 323344 -> 0 bytes .../_static/css/fonts/lato-bold-italic.woff2 | Bin 193308 -> 0 bytes ophyd/_static/css/fonts/lato-bold.woff | Bin 309728 -> 0 bytes ophyd/_static/css/fonts/lato-bold.woff2 | Bin 184912 -> 0 bytes .../_static/css/fonts/lato-normal-italic.woff | Bin 328412 -> 0 bytes .../css/fonts/lato-normal-italic.woff2 | Bin 195704 -> 0 bytes ophyd/_static/css/fonts/lato-normal.woff | Bin 309192 -> 0 bytes ophyd/_static/css/fonts/lato-normal.woff2 | Bin 182708 -> 0 bytes ophyd/_static/css/theme.css | 4 - ophyd/_static/doctools.js | 311 - ophyd/_static/documentation_options.js | 9 - ophyd/_static/down-pressed.png | Bin 222 -> 0 bytes ophyd/_static/down.png | Bin 202 -> 0 bytes ophyd/_static/file.png | Bin 286 -> 0 bytes ophyd/_static/fonts/FontAwesome.otf | Bin 134808 -> 0 bytes ophyd/_static/fonts/Lato/lato-bold.eot | Bin 256056 -> 0 bytes ophyd/_static/fonts/Lato/lato-bold.ttf | Bin 600856 -> 0 bytes ophyd/_static/fonts/Lato/lato-bold.woff | Bin 309728 -> 0 bytes ophyd/_static/fonts/Lato/lato-bold.woff2 | Bin 184912 -> 0 bytes ophyd/_static/fonts/Lato/lato-bolditalic.eot | Bin 266158 -> 0 bytes ophyd/_static/fonts/Lato/lato-bolditalic.ttf | Bin 622572 -> 0 bytes ophyd/_static/fonts/Lato/lato-bolditalic.woff | Bin 323344 -> 0 bytes .../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 193308 -> 0 bytes ophyd/_static/fonts/Lato/lato-italic.eot | Bin 268604 -> 0 bytes ophyd/_static/fonts/Lato/lato-italic.ttf | Bin 639388 -> 0 bytes ophyd/_static/fonts/Lato/lato-italic.woff | Bin 328412 -> 0 bytes ophyd/_static/fonts/Lato/lato-italic.woff2 | Bin 195704 -> 0 bytes ophyd/_static/fonts/Lato/lato-regular.eot | Bin 253461 -> 0 bytes ophyd/_static/fonts/Lato/lato-regular.ttf | Bin 607720 -> 0 bytes ophyd/_static/fonts/Lato/lato-regular.woff | Bin 309192 -> 0 bytes ophyd/_static/fonts/Lato/lato-regular.woff2 | Bin 182708 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Bold.woff | Bin 87624 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Bold.woff2 | Bin 67312 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Light.woff | Bin 88600 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Light.woff2 | Bin 67884 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Regular.woff | Bin 86288 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Regular.woff2 | Bin 66444 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Thin.woff | Bin 87452 -> 0 bytes ophyd/_static/fonts/Roboto-Slab-Thin.woff2 | Bin 66328 -> 0 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 79520 -> 0 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 170616 -> 0 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 87624 -> 0 bytes .../RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 67312 -> 0 bytes .../RobotoSlab/roboto-slab-v7-regular.eot | Bin 78331 -> 0 bytes .../RobotoSlab/roboto-slab-v7-regular.ttf | Bin 169064 -> 0 bytes .../RobotoSlab/roboto-slab-v7-regular.woff | Bin 86288 -> 0 bytes .../RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 66444 -> 0 bytes ophyd/_static/fonts/fontawesome-webfont.eot | Bin 165742 -> 0 bytes ophyd/_static/fonts/fontawesome-webfont.svg | 2671 ---- ophyd/_static/fonts/fontawesome-webfont.ttf | Bin 165548 -> 0 bytes ophyd/_static/fonts/fontawesome-webfont.woff | Bin 98024 -> 0 bytes ophyd/_static/fonts/fontawesome-webfont.woff2 | Bin 77160 -> 0 bytes ophyd/_static/fonts/lato-bold-italic.woff | Bin 323344 -> 0 bytes ophyd/_static/fonts/lato-bold-italic.woff2 | Bin 193308 -> 0 bytes ophyd/_static/fonts/lato-bold.woff | Bin 309728 -> 0 bytes ophyd/_static/fonts/lato-bold.woff2 | Bin 184912 -> 0 bytes ophyd/_static/fonts/lato-normal-italic.woff | Bin 328412 -> 0 bytes ophyd/_static/fonts/lato-normal-italic.woff2 | Bin 195704 -> 0 bytes ophyd/_static/fonts/lato-normal.woff | Bin 309192 -> 0 bytes ophyd/_static/fonts/lato-normal.woff2 | Bin 182708 -> 0 bytes ophyd/_static/jquery-1.11.1.js | 10308 ---------------- ophyd/_static/jquery-3.1.0.js | 10074 --------------- ophyd/_static/jquery-3.2.1.js | 10253 --------------- ophyd/_static/jquery.js | 4 - ophyd/_static/js/badge_only.js | 1 - ophyd/_static/js/html5shiv-printshiv.min.js | 4 - ophyd/_static/js/html5shiv.min.js | 4 - ophyd/_static/js/modernizr.min.js | 4 - ophyd/_static/js/theme.js | 1 - ophyd/_static/minus.png | Bin 90 -> 0 bytes ophyd/_static/plus.png | Bin 90 -> 0 bytes ophyd/_static/pygments.css | 74 - ophyd/_static/searchtools.js | 761 -- ophyd/_static/underscore-1.3.1.js | 999 -- ophyd/_static/underscore.js | 31 - ophyd/_static/up-pressed.png | Bin 214 -> 0 bytes ophyd/_static/up.png | Bin 203 -> 0 bytes ophyd/_static/websupport.js | 808 -- ophyd/api.html | 374 - ophyd/architecture.html | 593 - ophyd/area-detector.html | 1240 -- ophyd/builtin-devices.html | 550 - ophyd/commands.html | 289 - ophyd/custom-devices.html | 263 - ophyd/debugging.html | 502 - ophyd/device-overview.html | 733 -- ophyd/docker.html | 312 - ...detector.base.ADBase.get_asyn_digraph.html | 290 - ....base.ADBase.get_asyn_port_dictionary.html | 287 - ...r.base.ADBase.get_plugin_by_asyn_port.html | 294 - .../ophyd.areadetector.base.ADBase.html | 397 - ...adetector.base.ADBase.missing_plugins.html | 274 - ...ector.base.ADBase.validate_asyn_ports.html | 288 - ...or.base.ADBase.visualize_asyn_digraph.html | 294 - .../ophyd.areadetector.base.ADComponent.html | 310 - ....areadetector.base.EpicsSignalWithRBV.html | 343 - .../ophyd.areadetector.base.ad_group.html | 270 - ophyd/generated/ophyd.areadetector.base.html | 311 - ...phyd.areadetector.cam.AdscDetectorCam.html | 434 - ...yd.areadetector.cam.Andor3DetectorCam.html | 434 - ...hyd.areadetector.cam.AndorDetectorCam.html | 434 - ...yd.areadetector.cam.BrukerDetectorCam.html | 434 - .../ophyd.areadetector.cam.CamBase.html | 434 - ...eadetector.cam.FirewireLinDetectorCam.html | 434 - ...eadetector.cam.FirewireWinDetectorCam.html | 434 - ...readetector.cam.LightFieldDetectorCam.html | 434 - ...yd.areadetector.cam.Mar345DetectorCam.html | 434 - ...yd.areadetector.cam.MarCCDDetectorCam.html | 434 - ...ophyd.areadetector.cam.PSLDetectorCam.html | 434 - ...ophyd.areadetector.cam.PcoDetectorCam.html | 434 - .../ophyd.areadetector.cam.PcoDetectorIO.html | 434 - ...hyd.areadetector.cam.PcoDetectorSimIO.html | 434 - ...eadetector.cam.PerkinElmerDetectorCam.html | 434 - ...d.areadetector.cam.PilatusDetectorCam.html | 434 - ...d.areadetector.cam.PixiradDetectorCam.html | 434 - ...areadetector.cam.PointGreyDetectorCam.html | 434 - ...areadetector.cam.ProsilicaDetectorCam.html | 434 - ...hyd.areadetector.cam.PvcamDetectorCam.html | 434 - ...hyd.areadetector.cam.RoperDetectorCam.html | 434 - ...ophyd.areadetector.cam.SimDetectorCam.html | 434 - ...ophyd.areadetector.cam.URLDetectorCam.html | 434 - ophyd/generated/ophyd.areadetector.cam.html | 374 - ...d.areadetector.detectors.AdscDetector.html | 418 - ...areadetector.detectors.Andor3Detector.html | 418 - ....areadetector.detectors.AndorDetector.html | 418 - ...d.areadetector.detectors.AreaDetector.html | 418 - ...areadetector.detectors.BrukerDetector.html | 418 - ...ector.detectors.DetectorBase.dispatch.html | 284 - ...d.areadetector.detectors.DetectorBase.html | 406 - ....detectors.DetectorBase.make_data_key.html | 272 - ...etector.detectors.FirewireLinDetector.html | 418 - ...etector.detectors.FirewireWinDetector.html | 418 - ...detector.detectors.LightFieldDetector.html | 418 - ...areadetector.detectors.Mar345Detector.html | 418 - ...areadetector.detectors.MarCCDDetector.html | 418 - ...yd.areadetector.detectors.PSLDetector.html | 418 - ...etector.detectors.PerkinElmerDetector.html | 418 - ...readetector.detectors.PilatusDetector.html | 418 - ...readetector.detectors.PixiradDetector.html | 418 - ...adetector.detectors.PointGreyDetector.html | 418 - ...adetector.detectors.ProsilicaDetector.html | 418 - ....areadetector.detectors.PvcamDetector.html | 418 - ....areadetector.detectors.RoperDetector.html | 418 - ...yd.areadetector.detectors.SimDetector.html | 418 - ...yd.areadetector.detectors.URLDetector.html | 418 - .../ophyd.areadetector.detectors.html | 364 - ophyd/generated/ophyd.areadetector.docs.html | 278 - ...ilestore_mixins.FileStoreBase.fs_root.html | 281 - ...e_mixins.FileStoreBase.generate_datum.html | 281 - ...tector.filestore_mixins.FileStoreBase.html | 413 - ...xins.FileStoreBase.read_path_template.html | 281 - ...lestore_mixins.FileStoreBase.reg_root.html | 281 - ...ins.FileStoreBase.write_path_template.html | 280 - ...tector.filestore_mixins.FileStoreHDF5.html | 330 - ...re_mixins.FileStoreHDF5IterativeWrite.html | 330 - ...estore_mixins.FileStoreIterativeWrite.html | 325 - ....filestore_mixins.FileStorePluginBase.html | 327 - ...ins.FileStorePluginBase.make_filename.html | 302 - ...tector.filestore_mixins.FileStoreTIFF.html | 330 - ...re_mixins.FileStoreTIFFIterativeWrite.html | 330 - ...lestore_mixins.FileStoreTIFFSquashing.html | 374 - .../ophyd.areadetector.filestore_mixins.html | 355 - ophyd/generated/ophyd.areadetector.html | 278 - ....areadetector.plugins.ColorConvPlugin.html | 408 - ...ophyd.areadetector.plugins.FilePlugin.html | 410 - ...ophyd.areadetector.plugins.HDF5Plugin.html | 413 - ...phyd.areadetector.plugins.ImagePlugin.html | 408 - ...ophyd.areadetector.plugins.JPEGPlugin.html | 410 - ...hyd.areadetector.plugins.MagickPlugin.html | 410 - ...hyd.areadetector.plugins.NetCDFPlugin.html | 410 - ...phyd.areadetector.plugins.NexusPlugin.html | 410 - ...yd.areadetector.plugins.OverlayPlugin.html | 423 - ...ophyd.areadetector.plugins.PluginBase.html | 409 - ...yd.areadetector.plugins.ProcessPlugin.html | 408 - .../ophyd.areadetector.plugins.ROIPlugin.html | 411 - ...phyd.areadetector.plugins.StatsPlugin.html | 408 - ...ophyd.areadetector.plugins.TIFFPlugin.html | 410 - ....areadetector.plugins.TransformPlugin.html | 408 - .../generated/ophyd.areadetector.plugins.html | 926 -- ...adetector.trigger_mixins.MultiTrigger.html | 353 - ...detector.trigger_mixins.SingleTrigger.html | 319 - ...eadetector.trigger_mixins.TriggerBase.html | 313 - .../ophyd.areadetector.trigger_mixins.html | 308 - ophyd/generated/ophyd.areadetector.util.html | 311 - ophyd/generated/ophyd.callbacks.html | 293 - .../ophyd.commands.get_all_positioners.html | 279 - .../generated/ophyd.commands.get_logbook.html | 279 - ophyd/generated/ophyd.commands.log_pos.html | 297 - .../ophyd.commands.log_pos_diff.html | 298 - .../generated/ophyd.commands.log_pos_mov.html | 302 - ophyd/generated/ophyd.commands.mov.html | 305 - ophyd/generated/ophyd.commands.movr.html | 286 - ophyd/generated/ophyd.commands.set_lm.html | 309 - ophyd/generated/ophyd.commands.set_pos.html | 315 - ophyd/generated/ophyd.commands.wh_pos.html | 304 - ...phyd.device.BlueskyInterface.describe.html | 294 - .../ophyd.device.BlueskyInterface.pause.html | 295 - .../ophyd.device.BlueskyInterface.read.html | 301 - .../ophyd.device.BlueskyInterface.resume.html | 279 - .../ophyd.device.BlueskyInterface.stage.html | 303 - ...ophyd.device.BlueskyInterface.trigger.html | 301 - ...ophyd.device.BlueskyInterface.unstage.html | 295 - ophyd/generated/ophyd.device.Component.html | 355 - .../ophyd.device.Device.configure.html | 294 - .../ophyd.device.Device.connected.html | 264 - ....device.Device.describe_configuration.html | 287 - ophyd/generated/ophyd.device.Device.get.html | 267 - .../ophyd.device.Device.get_device_tuple.html | 267 - ...evice.Device.get_instantiated_signals.html | 284 - ophyd/generated/ophyd.device.Device.html | 405 - ophyd/generated/ophyd.device.Device.put.html | 279 - ...phyd.device.Device.read_configuration.html | 271 - ...hyd.device.Device.wait_for_connection.html | 281 - .../ophyd.device.DynamicDeviceComponent.html | 351 - .../ophyd.device.FormattedComponent.html | 334 - ophyd/generated/ophyd.device.html | 338 - ophyd/generated/ophyd.epics_motor.html | 296 - .../ophyd.flyers.FlyerInterface.collect.html | 286 - .../ophyd.flyers.FlyerInterface.complete.html | 289 - ...lyers.FlyerInterface.describe_collect.html | 290 - .../ophyd.flyers.FlyerInterface.kickoff.html | 285 - ophyd/generated/ophyd.flyers.html | 299 - ophyd/generated/ophyd.html | 293 - ophyd/generated/ophyd.mca.html | 350 - ophyd/generated/ophyd.mixins.html | 293 - ...ophyd.ophydobj.OphydObject._reset_sub.html | 267 - .../ophyd.ophydobj.OphydObject._run_subs.html | 275 - .../ophyd.ophydobj.OphydObject.clear_sub.html | 285 - ...phyd.ophydobj.OphydObject.event_types.html | 267 - .../generated/ophyd.ophydobj.OphydObject.html | 342 - .../ophyd.ophydobj.OphydObject.name.html | 276 - .../ophyd.ophydobj.OphydObject.parent.html | 277 - .../ophyd.ophydobj.OphydObject.root.html | 276 - .../ophyd.ophydobj.OphydObject.subscribe.html | 323 - ...phyd.ophydobj.OphydObject.unsubscribe.html | 281 - ophyd/generated/ophyd.ophydobj.html | 323 - .../ophyd.positioner.PositionerBase.set.html | 307 - .../ophyd.positioner.PositionerBase.stop.html | 283 - ophyd/generated/ophyd.positioner.html | 293 - ophyd/generated/ophyd.pseudopos.html | 308 - ophyd/generated/ophyd.pv_positioner.html | 293 - ophyd/generated/ophyd.quadem.html | 302 - ophyd/generated/ophyd.scaler.html | 296 - ophyd/generated/ophyd.signal.html | 326 - ophyd/generated/ophyd.status.html | 329 - ophyd/generated/ophyd.utils.epics_pvs.html | 347 - ophyd/generated/ophyd.utils.errors.html | 326 - ophyd/generated/ophyd.utils.html | 323 - ophyd/generated/ophyd.utils.paths.html | 293 - ophyd/generated/ophyd.utils.startup.html | 290 - ophyd/genindex.html | 1016 -- ophyd/index.html | 322 +- ophyd/objects.inv | Bin 4867 -> 0 bytes ophyd/positioners.html | 576 - ophyd/py-modindex.html | 387 - ophyd/release_notes.html | 1311 -- ophyd/search.html | 248 - ophyd/searchindex.js | 1 - ophyd/signals.html | 348 - ophyd/status.html | 951 -- 876 files changed, 8 insertions(+), 191357 deletions(-) delete mode 100644 ophyd/.doctr-files delete mode 100644 ophyd/OEP/OEP_001.html delete mode 100644 ophyd/OEP/index.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ADBase.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ADComponent.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.ad_group.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.base.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.CamBase.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.SimDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.URLDetectorCam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.cam.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.AdscDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.Andor3Detector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.AndorDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.AreaDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.BrukerDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.Mar345Detector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.PSLDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.PilatusDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.PixiradDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.PvcamDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.RoperDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.SimDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.URLDetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.detectors.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.docs.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.filestore_mixins.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.FilePlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.ImagePlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.MagickPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.NexusPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.PluginBase.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.ROIPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.StatsPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.TransformPlugin.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.plugins.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.trigger_mixins.html delete mode 100644 ophyd/_as_gen/ophyd.areadetector.util.html delete mode 100644 ophyd/_as_gen/ophyd.callbacks.html delete mode 100644 ophyd/_as_gen/ophyd.commands.get_all_positioners.html delete mode 100644 ophyd/_as_gen/ophyd.commands.html delete mode 100644 ophyd/_as_gen/ophyd.commands.log_pos.html delete mode 100644 ophyd/_as_gen/ophyd.commands.log_pos_diff.html delete mode 100644 ophyd/_as_gen/ophyd.commands.log_pos_mov.html delete mode 100644 ophyd/_as_gen/ophyd.commands.wh_pos.html delete mode 100644 ophyd/_as_gen/ophyd.device.BlueskyInterface.describe.html delete mode 100644 ophyd/_as_gen/ophyd.device.BlueskyInterface.pause.html delete mode 100644 ophyd/_as_gen/ophyd.device.BlueskyInterface.read.html delete mode 100644 ophyd/_as_gen/ophyd.device.BlueskyInterface.resume.html delete mode 100644 ophyd/_as_gen/ophyd.device.BlueskyInterface.stage.html delete mode 100644 ophyd/_as_gen/ophyd.device.BlueskyInterface.trigger.html delete mode 100644 ophyd/_as_gen/ophyd.device.BlueskyInterface.unstage.html delete mode 100644 ophyd/_as_gen/ophyd.device.Component.html delete mode 100644 ophyd/_as_gen/ophyd.device.ComponentMeta.__new__.html delete mode 100644 ophyd/_as_gen/ophyd.device.ComponentMeta.__prepare__.html delete mode 100644 ophyd/_as_gen/ophyd.device.ComponentMeta.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.configure.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.connected.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.describe_configuration.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.get.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.get_device_tuple.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.get_instantiated_signals.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.put.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.read_configuration.html delete mode 100644 ophyd/_as_gen/ophyd.device.Device.wait_for_connection.html delete mode 100644 ophyd/_as_gen/ophyd.device.DynamicDeviceComponent.html delete mode 100644 ophyd/_as_gen/ophyd.device.FormattedComponent.html delete mode 100644 ophyd/_as_gen/ophyd.device.html delete mode 100644 ophyd/_as_gen/ophyd.epics_motor.html delete mode 100644 ophyd/_as_gen/ophyd.flyers.FlyerInterface.collect.html delete mode 100644 ophyd/_as_gen/ophyd.flyers.FlyerInterface.complete.html delete mode 100644 ophyd/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.html delete mode 100644 ophyd/_as_gen/ophyd.flyers.FlyerInterface.kickoff.html delete mode 100644 ophyd/_as_gen/ophyd.flyers.html delete mode 100644 ophyd/_as_gen/ophyd.html delete mode 100644 ophyd/_as_gen/ophyd.mca.html delete mode 100644 ophyd/_as_gen/ophyd.mixins.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject._run_subs.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.connected.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.event_types.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.name.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.parent.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.root.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.subscribe.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.html delete mode 100644 ophyd/_as_gen/ophyd.ophydobj.html delete mode 100644 ophyd/_as_gen/ophyd.positioner.PositionerBase.set.html delete mode 100644 ophyd/_as_gen/ophyd.positioner.PositionerBase.stop.html delete mode 100644 ophyd/_as_gen/ophyd.positioner.html delete mode 100644 ophyd/_as_gen/ophyd.pseudopos.html delete mode 100644 ophyd/_as_gen/ophyd.pv_positioner.html delete mode 100644 ophyd/_as_gen/ophyd.quadem.html delete mode 100644 ophyd/_as_gen/ophyd.scaler.html delete mode 100644 ophyd/_as_gen/ophyd.signal.html delete mode 100644 ophyd/_as_gen/ophyd.status.DeviceStatus.html delete mode 100644 ophyd/_as_gen/ophyd.status.MoveStatus.html delete mode 100644 ophyd/_as_gen/ophyd.status.Status.html delete mode 100644 ophyd/_as_gen/ophyd.status.StatusBase._finished.html delete mode 100644 ophyd/_as_gen/ophyd.status.StatusBase.finished_cb.html delete mode 100644 ophyd/_as_gen/ophyd.status.StatusBase.html delete mode 100644 ophyd/_as_gen/ophyd.status.html delete mode 100644 ophyd/_as_gen/ophyd.utils.epics_pvs.html delete mode 100644 ophyd/_as_gen/ophyd.utils.errors.html delete mode 100644 ophyd/_as_gen/ophyd.utils.html delete mode 100644 ophyd/_as_gen/ophyd.utils.paths.html delete mode 100644 ophyd/_as_gen/ophyd.utils.startup.html delete mode 100644 ophyd/_images/inheritance-125299db027430716e817e0d5c4c9da91b99fca3.png delete mode 100644 ophyd/_images/inheritance-125299db027430716e817e0d5c4c9da91b99fca3.png.map delete mode 100644 ophyd/_images/inheritance-15bc9368c2f46f77d1599b9d515a6682240bfc8b.png delete mode 100644 ophyd/_images/inheritance-15bc9368c2f46f77d1599b9d515a6682240bfc8b.png.map delete mode 100644 ophyd/_images/inheritance-3976a6e7436ad02c49d005e595a1a6cf07b83c70.png delete mode 100644 ophyd/_images/inheritance-3976a6e7436ad02c49d005e595a1a6cf07b83c70.png.map delete mode 100644 ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png delete mode 100644 ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png.map delete mode 100644 ophyd/_images/inheritance-400599b6065a4805b6977a7d8f4e7a8d1803134e.png delete mode 100644 ophyd/_images/inheritance-400599b6065a4805b6977a7d8f4e7a8d1803134e.png.map delete mode 100644 ophyd/_images/inheritance-56ba088399d2c0103e2f5f0b87e1a5c50075c3fd.png delete mode 100644 ophyd/_images/inheritance-56ba088399d2c0103e2f5f0b87e1a5c50075c3fd.png.map delete mode 100644 ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png delete mode 100644 ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png.map delete mode 100644 ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png delete mode 100644 ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png.map delete mode 100644 ophyd/_images/inheritance-6ca39687e659a6c23dacd535938e324e17fe3201.png delete mode 100644 ophyd/_images/inheritance-6ca39687e659a6c23dacd535938e324e17fe3201.png.map delete mode 100644 ophyd/_images/inheritance-702fe028f75ebee8c51545abba1e7b9ce9898e97.png delete mode 100644 ophyd/_images/inheritance-702fe028f75ebee8c51545abba1e7b9ce9898e97.png.map delete mode 100644 ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png delete mode 100644 ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png.map delete mode 100644 ophyd/_images/inheritance-80ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png delete mode 100644 ophyd/_images/inheritance-80ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png.map delete mode 100644 ophyd/_images/inheritance-88121c6d044eeae967fb3b6509ae40ac1ec963cb.png delete mode 100644 ophyd/_images/inheritance-88121c6d044eeae967fb3b6509ae40ac1ec963cb.png.map delete mode 100644 ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png delete mode 100644 ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png.map delete mode 100644 ophyd/_images/inheritance-9b988caf02abedc54423afddfe2feb0f3b822846.png delete mode 100644 ophyd/_images/inheritance-9b988caf02abedc54423afddfe2feb0f3b822846.png.map delete mode 100644 ophyd/_images/inheritance-a80cbab97fb867a5f24b830d763319ad33b63840.png delete mode 100644 ophyd/_images/inheritance-a80cbab97fb867a5f24b830d763319ad33b63840.png.map delete mode 100644 ophyd/_images/inheritance-aa46490e2afb6cd7454a429a1a96057e59742cee.png delete mode 100644 ophyd/_images/inheritance-aa46490e2afb6cd7454a429a1a96057e59742cee.png.map delete mode 100644 ophyd/_images/inheritance-bbcaac3b6a2ffeaba54a908d74c83ab374057a3a.png delete mode 100644 ophyd/_images/inheritance-bbcaac3b6a2ffeaba54a908d74c83ab374057a3a.png.map delete mode 100644 ophyd/_images/inheritance-dfc70fb3ebeec9e78455292b41bf6e388acf5744.png delete mode 100644 ophyd/_images/inheritance-dfc70fb3ebeec9e78455292b41bf6e388acf5744.png.map delete mode 100644 ophyd/_images/inheritance-e074d941bae841f54e92991832d2f65c1d96eaa0.png delete mode 100644 ophyd/_images/inheritance-e074d941bae841f54e92991832d2f65c1d96eaa0.png.map delete mode 100644 ophyd/_modules/index.html delete mode 100644 ophyd/_modules/ophyd/areadetector/base.html delete mode 100644 ophyd/_modules/ophyd/areadetector/cam.html delete mode 100644 ophyd/_modules/ophyd/areadetector/detectors.html delete mode 100644 ophyd/_modules/ophyd/areadetector/plugins.html delete mode 100644 ophyd/_modules/ophyd/commands.html delete mode 100644 ophyd/_modules/ophyd/device.html delete mode 100644 ophyd/_modules/ophyd/epics_motor.html delete mode 100644 ophyd/_modules/ophyd/mca.html delete mode 100644 ophyd/_modules/ophyd/positioner.html delete mode 100644 ophyd/_modules/ophyd/pseudopos.html delete mode 100644 ophyd/_modules/ophyd/pv_positioner.html delete mode 100644 ophyd/_modules/ophyd/scaler.html delete mode 100644 ophyd/_modules/ophyd/signal.html delete mode 100644 ophyd/_sources/OEP/OEP_001.rst.txt delete mode 100644 ophyd/_sources/OEP/OEP_001.txt delete mode 100644 ophyd/_sources/OEP/index.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ADComponent.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.ad_group.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.base.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.CamBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.SimDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.URLDetectorCam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.cam.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AdscDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Andor3Detector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AndorDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AreaDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.BrukerDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Mar345Detector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PSLDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PilatusDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PixiradDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PvcamDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.RoperDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.SimDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.URLDetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.detectors.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.docs.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.FilePlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ImagePlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.MagickPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NexusPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.PluginBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ROIPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.StatsPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TransformPlugin.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.plugins.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.areadetector.util.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.callbacks.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.commands.get_all_positioners.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.commands.log_pos.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.commands.log_pos_diff.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.commands.log_pos_mov.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.commands.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.commands.wh_pos.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.describe.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.pause.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.read.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.resume.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.stage.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.trigger.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.unstage.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Component.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__new__.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__prepare__.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.configure.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.connected.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.describe_configuration.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.get.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.get_device_tuple.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.get_instantiated_signals.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.put.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.read_configuration.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.Device.wait_for_connection.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.DynamicDeviceComponent.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.FormattedComponent.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.device.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.epics_motor.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.collect.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.complete.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.kickoff.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.flyers.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.mca.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.mixins.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._run_subs.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.connected.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.event_types.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.name.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.parent.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.root.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.subscribe.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.ophydobj.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.set.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.stop.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.positioner.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.pseudopos.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.pv_positioner.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.quadem.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.scaler.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.signal.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.status.DeviceStatus.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.status.MoveStatus.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.status.Status.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.status.StatusBase._finished.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.status.StatusBase.finished_cb.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.status.StatusBase.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.status.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.utils.epics_pvs.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.utils.errors.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.utils.paths.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.utils.rst.txt delete mode 100644 ophyd/_sources/_as_gen/ophyd.utils.startup.rst.txt delete mode 100644 ophyd/_sources/api.rst.txt delete mode 100644 ophyd/_sources/architecture.rst.txt delete mode 100644 ophyd/_sources/architecture.txt delete mode 100644 ophyd/_sources/area-detector.rst.txt delete mode 100644 ophyd/_sources/area-detector.txt delete mode 100644 ophyd/_sources/builtin-devices.rst.txt delete mode 100644 ophyd/_sources/builtin-devices.txt delete mode 100644 ophyd/_sources/commands.rst.txt delete mode 100644 ophyd/_sources/commands.txt delete mode 100644 ophyd/_sources/custom-devices.rst.txt delete mode 100644 ophyd/_sources/custom-devices.txt delete mode 100644 ophyd/_sources/debugging.rst.txt delete mode 100644 ophyd/_sources/device-overview.rst.txt delete mode 100644 ophyd/_sources/device-overview.txt delete mode 100644 ophyd/_sources/docker.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADBase.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADBase.visualize_asyn_digraph.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ADComponent.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.ad_group.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.base.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.AdscDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.AndorDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.CamBase.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PSLDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorIO.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.RoperDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.SimDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.URLDetectorCam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.cam.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.AdscDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.Andor3Detector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.AndorDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.AreaDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.BrukerDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.LightFieldDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.Mar345Detector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.MarCCDDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.PSLDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.PilatusDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.PixiradDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.PointGreyDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.PvcamDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.RoperDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.SimDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.URLDetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.detectors.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.docs.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.FilePlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.HDF5Plugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.ImagePlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.JPEGPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.MagickPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.NexusPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.OverlayPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.PluginBase.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.ProcessPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.ROIPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.StatsPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.TIFFPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.TransformPlugin.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.plugins.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.areadetector.util.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.callbacks.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.get_all_positioners.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.get_all_positioners.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.get_logbook.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.get_logbook.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.log_pos.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.log_pos.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.log_pos_diff.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.log_pos_diff.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.log_pos_mov.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.log_pos_mov.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.mov.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.mov.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.movr.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.movr.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.set_lm.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.set_lm.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.set_pos.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.set_pos.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.wh_pos.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.commands.wh_pos.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.BlueskyInterface.describe.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.BlueskyInterface.pause.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.BlueskyInterface.read.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.BlueskyInterface.resume.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.BlueskyInterface.stage.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.BlueskyInterface.trigger.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.BlueskyInterface.unstage.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Component.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.configure.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.connected.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.describe_configuration.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.get.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.get_device_tuple.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.get_instantiated_signals.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.put.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.read_configuration.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.Device.wait_for_connection.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.DynamicDeviceComponent.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.FormattedComponent.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.device.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.epics_motor.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.flyers.FlyerInterface.collect.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.flyers.FlyerInterface.complete.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.flyers.FlyerInterface.describe_collect.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.flyers.FlyerInterface.kickoff.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.flyers.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.mca.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.mixins.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject._reset_sub.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject._run_subs.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.clear_sub.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.event_types.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.name.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.parent.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.root.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.subscribe.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.ophydobj.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.positioner.PositionerBase.set.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.positioner.PositionerBase.stop.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.positioner.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.pseudopos.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.pv_positioner.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.quadem.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.scaler.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.signal.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.status.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.utils.epics_pvs.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.utils.errors.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.utils.paths.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.utils.rst.txt delete mode 100644 ophyd/_sources/generated/ophyd.utils.startup.rst.txt delete mode 100644 ophyd/_sources/index.rst.txt delete mode 100644 ophyd/_sources/index.txt delete mode 100644 ophyd/_sources/positioners.rst.txt delete mode 100644 ophyd/_sources/positioners.txt delete mode 100644 ophyd/_sources/release_notes.rst.txt delete mode 100644 ophyd/_sources/release_notes.txt delete mode 100644 ophyd/_sources/signals.rst.txt delete mode 100644 ophyd/_sources/signals.txt delete mode 100644 ophyd/_sources/status.rst.txt delete mode 100644 ophyd/_static/ajax-loader.gif delete mode 100644 ophyd/_static/basic.css delete mode 100644 ophyd/_static/comment-bright.png delete mode 100644 ophyd/_static/comment-close.png delete mode 100644 ophyd/_static/comment.png delete mode 100644 ophyd/_static/css/badge_only.css delete mode 100644 ophyd/_static/css/fonts/Roboto-Slab-Bold.woff delete mode 100644 ophyd/_static/css/fonts/Roboto-Slab-Bold.woff2 delete mode 100644 ophyd/_static/css/fonts/Roboto-Slab-Regular.woff delete mode 100644 ophyd/_static/css/fonts/Roboto-Slab-Regular.woff2 delete mode 100644 ophyd/_static/css/fonts/fontawesome-webfont.eot delete mode 100644 ophyd/_static/css/fonts/fontawesome-webfont.svg delete mode 100644 ophyd/_static/css/fonts/fontawesome-webfont.ttf delete mode 100644 ophyd/_static/css/fonts/fontawesome-webfont.woff delete mode 100644 ophyd/_static/css/fonts/fontawesome-webfont.woff2 delete mode 100644 ophyd/_static/css/fonts/lato-bold-italic.woff delete mode 100644 ophyd/_static/css/fonts/lato-bold-italic.woff2 delete mode 100644 ophyd/_static/css/fonts/lato-bold.woff delete mode 100644 ophyd/_static/css/fonts/lato-bold.woff2 delete mode 100644 ophyd/_static/css/fonts/lato-normal-italic.woff delete mode 100644 ophyd/_static/css/fonts/lato-normal-italic.woff2 delete mode 100644 ophyd/_static/css/fonts/lato-normal.woff delete mode 100644 ophyd/_static/css/fonts/lato-normal.woff2 delete mode 100644 ophyd/_static/css/theme.css delete mode 100644 ophyd/_static/doctools.js delete mode 100644 ophyd/_static/documentation_options.js delete mode 100644 ophyd/_static/down-pressed.png delete mode 100644 ophyd/_static/down.png delete mode 100644 ophyd/_static/file.png delete mode 100644 ophyd/_static/fonts/FontAwesome.otf delete mode 100644 ophyd/_static/fonts/Lato/lato-bold.eot delete mode 100644 ophyd/_static/fonts/Lato/lato-bold.ttf delete mode 100644 ophyd/_static/fonts/Lato/lato-bold.woff delete mode 100644 ophyd/_static/fonts/Lato/lato-bold.woff2 delete mode 100644 ophyd/_static/fonts/Lato/lato-bolditalic.eot delete mode 100644 ophyd/_static/fonts/Lato/lato-bolditalic.ttf delete mode 100644 ophyd/_static/fonts/Lato/lato-bolditalic.woff delete mode 100644 ophyd/_static/fonts/Lato/lato-bolditalic.woff2 delete mode 100644 ophyd/_static/fonts/Lato/lato-italic.eot delete mode 100644 ophyd/_static/fonts/Lato/lato-italic.ttf delete mode 100644 ophyd/_static/fonts/Lato/lato-italic.woff delete mode 100644 ophyd/_static/fonts/Lato/lato-italic.woff2 delete mode 100644 ophyd/_static/fonts/Lato/lato-regular.eot delete mode 100644 ophyd/_static/fonts/Lato/lato-regular.ttf delete mode 100644 ophyd/_static/fonts/Lato/lato-regular.woff delete mode 100644 ophyd/_static/fonts/Lato/lato-regular.woff2 delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Bold.woff delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Bold.woff2 delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Light.woff delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Light.woff2 delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Regular.woff delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Regular.woff2 delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Thin.woff delete mode 100644 ophyd/_static/fonts/Roboto-Slab-Thin.woff2 delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff delete mode 100644 ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 delete mode 100644 ophyd/_static/fonts/fontawesome-webfont.eot delete mode 100644 ophyd/_static/fonts/fontawesome-webfont.svg delete mode 100644 ophyd/_static/fonts/fontawesome-webfont.ttf delete mode 100644 ophyd/_static/fonts/fontawesome-webfont.woff delete mode 100644 ophyd/_static/fonts/fontawesome-webfont.woff2 delete mode 100644 ophyd/_static/fonts/lato-bold-italic.woff delete mode 100644 ophyd/_static/fonts/lato-bold-italic.woff2 delete mode 100644 ophyd/_static/fonts/lato-bold.woff delete mode 100644 ophyd/_static/fonts/lato-bold.woff2 delete mode 100644 ophyd/_static/fonts/lato-normal-italic.woff delete mode 100644 ophyd/_static/fonts/lato-normal-italic.woff2 delete mode 100644 ophyd/_static/fonts/lato-normal.woff delete mode 100644 ophyd/_static/fonts/lato-normal.woff2 delete mode 100644 ophyd/_static/jquery-1.11.1.js delete mode 100644 ophyd/_static/jquery-3.1.0.js delete mode 100644 ophyd/_static/jquery-3.2.1.js delete mode 100644 ophyd/_static/jquery.js delete mode 100644 ophyd/_static/js/badge_only.js delete mode 100644 ophyd/_static/js/html5shiv-printshiv.min.js delete mode 100644 ophyd/_static/js/html5shiv.min.js delete mode 100644 ophyd/_static/js/modernizr.min.js delete mode 100644 ophyd/_static/js/theme.js delete mode 100644 ophyd/_static/minus.png delete mode 100644 ophyd/_static/plus.png delete mode 100644 ophyd/_static/pygments.css delete mode 100644 ophyd/_static/searchtools.js delete mode 100644 ophyd/_static/underscore-1.3.1.js delete mode 100644 ophyd/_static/underscore.js delete mode 100644 ophyd/_static/up-pressed.png delete mode 100644 ophyd/_static/up.png delete mode 100644 ophyd/_static/websupport.js delete mode 100644 ophyd/api.html delete mode 100644 ophyd/architecture.html delete mode 100644 ophyd/area-detector.html delete mode 100644 ophyd/builtin-devices.html delete mode 100644 ophyd/commands.html delete mode 100644 ophyd/custom-devices.html delete mode 100644 ophyd/debugging.html delete mode 100644 ophyd/device-overview.html delete mode 100644 ophyd/docker.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADBase.get_asyn_digraph.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADBase.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADBase.missing_plugins.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADBase.validate_asyn_ports.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADBase.visualize_asyn_digraph.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ADComponent.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.EpicsSignalWithRBV.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.ad_group.html delete mode 100644 ophyd/generated/ophyd.areadetector.base.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.AdscDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.Andor3DetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.AndorDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.BrukerDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.CamBase.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.FirewireLinDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.FirewireWinDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.LightFieldDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.Mar345DetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.MarCCDDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PSLDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PcoDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PcoDetectorIO.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PcoDetectorSimIO.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PerkinElmerDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PilatusDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PixiradDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PointGreyDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.ProsilicaDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.PvcamDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.RoperDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.SimDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.URLDetectorCam.html delete mode 100644 ophyd/generated/ophyd.areadetector.cam.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.AdscDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.Andor3Detector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.AndorDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.AreaDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.BrukerDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.DetectorBase.dispatch.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.DetectorBase.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.DetectorBase.make_data_key.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.FirewireLinDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.FirewireWinDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.LightFieldDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.Mar345Detector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.MarCCDDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.PSLDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.PerkinElmerDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.PilatusDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.PixiradDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.PointGreyDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.ProsilicaDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.PvcamDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.RoperDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.SimDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.URLDetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.detectors.html delete mode 100644 ophyd/generated/ophyd.areadetector.docs.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFF.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.html delete mode 100644 ophyd/generated/ophyd.areadetector.filestore_mixins.html delete mode 100644 ophyd/generated/ophyd.areadetector.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.ColorConvPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.FilePlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.HDF5Plugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.ImagePlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.JPEGPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.MagickPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.NetCDFPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.NexusPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.OverlayPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.PluginBase.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.ProcessPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.ROIPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.StatsPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.TIFFPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.TransformPlugin.html delete mode 100644 ophyd/generated/ophyd.areadetector.plugins.html delete mode 100644 ophyd/generated/ophyd.areadetector.trigger_mixins.MultiTrigger.html delete mode 100644 ophyd/generated/ophyd.areadetector.trigger_mixins.SingleTrigger.html delete mode 100644 ophyd/generated/ophyd.areadetector.trigger_mixins.TriggerBase.html delete mode 100644 ophyd/generated/ophyd.areadetector.trigger_mixins.html delete mode 100644 ophyd/generated/ophyd.areadetector.util.html delete mode 100644 ophyd/generated/ophyd.callbacks.html delete mode 100644 ophyd/generated/ophyd.commands.get_all_positioners.html delete mode 100644 ophyd/generated/ophyd.commands.get_logbook.html delete mode 100644 ophyd/generated/ophyd.commands.log_pos.html delete mode 100644 ophyd/generated/ophyd.commands.log_pos_diff.html delete mode 100644 ophyd/generated/ophyd.commands.log_pos_mov.html delete mode 100644 ophyd/generated/ophyd.commands.mov.html delete mode 100644 ophyd/generated/ophyd.commands.movr.html delete mode 100644 ophyd/generated/ophyd.commands.set_lm.html delete mode 100644 ophyd/generated/ophyd.commands.set_pos.html delete mode 100644 ophyd/generated/ophyd.commands.wh_pos.html delete mode 100644 ophyd/generated/ophyd.device.BlueskyInterface.describe.html delete mode 100644 ophyd/generated/ophyd.device.BlueskyInterface.pause.html delete mode 100644 ophyd/generated/ophyd.device.BlueskyInterface.read.html delete mode 100644 ophyd/generated/ophyd.device.BlueskyInterface.resume.html delete mode 100644 ophyd/generated/ophyd.device.BlueskyInterface.stage.html delete mode 100644 ophyd/generated/ophyd.device.BlueskyInterface.trigger.html delete mode 100644 ophyd/generated/ophyd.device.BlueskyInterface.unstage.html delete mode 100644 ophyd/generated/ophyd.device.Component.html delete mode 100644 ophyd/generated/ophyd.device.Device.configure.html delete mode 100644 ophyd/generated/ophyd.device.Device.connected.html delete mode 100644 ophyd/generated/ophyd.device.Device.describe_configuration.html delete mode 100644 ophyd/generated/ophyd.device.Device.get.html delete mode 100644 ophyd/generated/ophyd.device.Device.get_device_tuple.html delete mode 100644 ophyd/generated/ophyd.device.Device.get_instantiated_signals.html delete mode 100644 ophyd/generated/ophyd.device.Device.html delete mode 100644 ophyd/generated/ophyd.device.Device.put.html delete mode 100644 ophyd/generated/ophyd.device.Device.read_configuration.html delete mode 100644 ophyd/generated/ophyd.device.Device.wait_for_connection.html delete mode 100644 ophyd/generated/ophyd.device.DynamicDeviceComponent.html delete mode 100644 ophyd/generated/ophyd.device.FormattedComponent.html delete mode 100644 ophyd/generated/ophyd.device.html delete mode 100644 ophyd/generated/ophyd.epics_motor.html delete mode 100644 ophyd/generated/ophyd.flyers.FlyerInterface.collect.html delete mode 100644 ophyd/generated/ophyd.flyers.FlyerInterface.complete.html delete mode 100644 ophyd/generated/ophyd.flyers.FlyerInterface.describe_collect.html delete mode 100644 ophyd/generated/ophyd.flyers.FlyerInterface.kickoff.html delete mode 100644 ophyd/generated/ophyd.flyers.html delete mode 100644 ophyd/generated/ophyd.html delete mode 100644 ophyd/generated/ophyd.mca.html delete mode 100644 ophyd/generated/ophyd.mixins.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject._reset_sub.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject._run_subs.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.clear_sub.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.event_types.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.name.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.parent.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.root.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.subscribe.html delete mode 100644 ophyd/generated/ophyd.ophydobj.OphydObject.unsubscribe.html delete mode 100644 ophyd/generated/ophyd.ophydobj.html delete mode 100644 ophyd/generated/ophyd.positioner.PositionerBase.set.html delete mode 100644 ophyd/generated/ophyd.positioner.PositionerBase.stop.html delete mode 100644 ophyd/generated/ophyd.positioner.html delete mode 100644 ophyd/generated/ophyd.pseudopos.html delete mode 100644 ophyd/generated/ophyd.pv_positioner.html delete mode 100644 ophyd/generated/ophyd.quadem.html delete mode 100644 ophyd/generated/ophyd.scaler.html delete mode 100644 ophyd/generated/ophyd.signal.html delete mode 100644 ophyd/generated/ophyd.status.html delete mode 100644 ophyd/generated/ophyd.utils.epics_pvs.html delete mode 100644 ophyd/generated/ophyd.utils.errors.html delete mode 100644 ophyd/generated/ophyd.utils.html delete mode 100644 ophyd/generated/ophyd.utils.paths.html delete mode 100644 ophyd/generated/ophyd.utils.startup.html delete mode 100644 ophyd/genindex.html delete mode 100644 ophyd/objects.inv delete mode 100644 ophyd/positioners.html delete mode 100644 ophyd/py-modindex.html delete mode 100644 ophyd/release_notes.html delete mode 100644 ophyd/search.html delete mode 100644 ophyd/searchindex.js delete mode 100644 ophyd/signals.html delete mode 100644 ophyd/status.html diff --git a/ophyd/.doctr-files b/ophyd/.doctr-files deleted file mode 100644 index 52246ea762..0000000000 --- a/ophyd/.doctr-files +++ /dev/null @@ -1,445 +0,0 @@ -ophyd/OEP/OEP_001.html -ophyd/OEP/index.html -ophyd/_images/inheritance-15bc9368c2f46f77d1599b9d515a6682240bfc8b.png -ophyd/_images/inheritance-15bc9368c2f46f77d1599b9d515a6682240bfc8b.png.map -ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png -ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png.map -ophyd/_images/inheritance-56ba088399d2c0103e2f5f0b87e1a5c50075c3fd.png -ophyd/_images/inheritance-56ba088399d2c0103e2f5f0b87e1a5c50075c3fd.png.map -ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png -ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png.map -ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png -ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png.map -ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png -ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png.map -ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png -ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png.map -ophyd/_images/inheritance-9b988caf02abedc54423afddfe2feb0f3b822846.png -ophyd/_images/inheritance-9b988caf02abedc54423afddfe2feb0f3b822846.png.map -ophyd/_sources/OEP/OEP_001.rst.txt -ophyd/_sources/OEP/index.rst.txt -ophyd/_sources/api.rst.txt -ophyd/_sources/architecture.rst.txt -ophyd/_sources/area-detector.rst.txt -ophyd/_sources/builtin-devices.rst.txt -ophyd/_sources/debugging.rst.txt -ophyd/_sources/device-overview.rst.txt -ophyd/_sources/docker.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADBase.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADBase.visualize_asyn_digraph.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ADComponent.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.ad_group.rst.txt -ophyd/_sources/generated/ophyd.areadetector.base.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.AdscDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.AndorDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.CamBase.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PSLDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorIO.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.RoperDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.SimDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.URLDetectorCam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.cam.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.AdscDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.Andor3Detector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.AndorDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.AreaDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.BrukerDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.LightFieldDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.Mar345Detector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.MarCCDDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.PSLDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.PilatusDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.PixiradDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.PointGreyDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.PvcamDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.RoperDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.SimDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.URLDetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.detectors.rst.txt -ophyd/_sources/generated/ophyd.areadetector.docs.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt -ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.FilePlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.HDF5Plugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.ImagePlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.JPEGPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.MagickPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.NexusPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.OverlayPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.PluginBase.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.ProcessPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.ROIPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.StatsPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.TIFFPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.TransformPlugin.rst.txt -ophyd/_sources/generated/ophyd.areadetector.plugins.rst.txt -ophyd/_sources/generated/ophyd.areadetector.rst.txt -ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt -ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt -ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt -ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.rst.txt -ophyd/_sources/generated/ophyd.areadetector.util.rst.txt -ophyd/_sources/generated/ophyd.callbacks.rst.txt -ophyd/_sources/generated/ophyd.device.BlueskyInterface.describe.rst.txt -ophyd/_sources/generated/ophyd.device.BlueskyInterface.pause.rst.txt -ophyd/_sources/generated/ophyd.device.BlueskyInterface.read.rst.txt -ophyd/_sources/generated/ophyd.device.BlueskyInterface.resume.rst.txt -ophyd/_sources/generated/ophyd.device.BlueskyInterface.stage.rst.txt -ophyd/_sources/generated/ophyd.device.BlueskyInterface.trigger.rst.txt -ophyd/_sources/generated/ophyd.device.BlueskyInterface.unstage.rst.txt -ophyd/_sources/generated/ophyd.device.Component.rst.txt -ophyd/_sources/generated/ophyd.device.Device.configure.rst.txt -ophyd/_sources/generated/ophyd.device.Device.connected.rst.txt -ophyd/_sources/generated/ophyd.device.Device.describe_configuration.rst.txt -ophyd/_sources/generated/ophyd.device.Device.get.rst.txt -ophyd/_sources/generated/ophyd.device.Device.get_device_tuple.rst.txt -ophyd/_sources/generated/ophyd.device.Device.get_instantiated_signals.rst.txt -ophyd/_sources/generated/ophyd.device.Device.put.rst.txt -ophyd/_sources/generated/ophyd.device.Device.read_configuration.rst.txt -ophyd/_sources/generated/ophyd.device.Device.rst.txt -ophyd/_sources/generated/ophyd.device.Device.wait_for_connection.rst.txt -ophyd/_sources/generated/ophyd.device.DynamicDeviceComponent.rst.txt -ophyd/_sources/generated/ophyd.device.FormattedComponent.rst.txt -ophyd/_sources/generated/ophyd.device.rst.txt -ophyd/_sources/generated/ophyd.epics_motor.rst.txt -ophyd/_sources/generated/ophyd.flyers.FlyerInterface.collect.rst.txt -ophyd/_sources/generated/ophyd.flyers.FlyerInterface.complete.rst.txt -ophyd/_sources/generated/ophyd.flyers.FlyerInterface.describe_collect.rst.txt -ophyd/_sources/generated/ophyd.flyers.FlyerInterface.kickoff.rst.txt -ophyd/_sources/generated/ophyd.flyers.rst.txt -ophyd/_sources/generated/ophyd.mca.rst.txt -ophyd/_sources/generated/ophyd.mixins.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject._reset_sub.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject._run_subs.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.clear_sub.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.event_types.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.name.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.parent.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.root.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.subscribe.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt -ophyd/_sources/generated/ophyd.ophydobj.rst.txt -ophyd/_sources/generated/ophyd.positioner.PositionerBase.set.rst.txt -ophyd/_sources/generated/ophyd.positioner.PositionerBase.stop.rst.txt -ophyd/_sources/generated/ophyd.positioner.rst.txt -ophyd/_sources/generated/ophyd.pseudopos.rst.txt -ophyd/_sources/generated/ophyd.pv_positioner.rst.txt -ophyd/_sources/generated/ophyd.quadem.rst.txt -ophyd/_sources/generated/ophyd.rst.txt -ophyd/_sources/generated/ophyd.scaler.rst.txt -ophyd/_sources/generated/ophyd.signal.rst.txt -ophyd/_sources/generated/ophyd.status.rst.txt -ophyd/_sources/generated/ophyd.utils.epics_pvs.rst.txt -ophyd/_sources/generated/ophyd.utils.errors.rst.txt -ophyd/_sources/generated/ophyd.utils.paths.rst.txt -ophyd/_sources/generated/ophyd.utils.rst.txt -ophyd/_sources/generated/ophyd.utils.startup.rst.txt -ophyd/_sources/index.rst.txt -ophyd/_sources/positioners.rst.txt -ophyd/_sources/release_notes.rst.txt -ophyd/_sources/signals.rst.txt -ophyd/_sources/status.rst.txt -ophyd/_static/ajax-loader.gif -ophyd/_static/basic.css -ophyd/_static/comment-bright.png -ophyd/_static/comment-close.png -ophyd/_static/comment.png -ophyd/_static/css/badge_only.css -ophyd/_static/css/fonts/Roboto-Slab-Bold.woff -ophyd/_static/css/fonts/Roboto-Slab-Bold.woff2 -ophyd/_static/css/fonts/Roboto-Slab-Regular.woff -ophyd/_static/css/fonts/Roboto-Slab-Regular.woff2 -ophyd/_static/css/fonts/fontawesome-webfont.eot -ophyd/_static/css/fonts/fontawesome-webfont.svg -ophyd/_static/css/fonts/fontawesome-webfont.ttf -ophyd/_static/css/fonts/fontawesome-webfont.woff -ophyd/_static/css/fonts/fontawesome-webfont.woff2 -ophyd/_static/css/fonts/lato-bold-italic.woff -ophyd/_static/css/fonts/lato-bold-italic.woff2 -ophyd/_static/css/fonts/lato-bold.woff -ophyd/_static/css/fonts/lato-bold.woff2 -ophyd/_static/css/fonts/lato-normal-italic.woff -ophyd/_static/css/fonts/lato-normal-italic.woff2 -ophyd/_static/css/fonts/lato-normal.woff -ophyd/_static/css/fonts/lato-normal.woff2 -ophyd/_static/css/theme.css -ophyd/_static/doctools.js -ophyd/_static/down-pressed.png -ophyd/_static/down.png -ophyd/_static/file.png -ophyd/_static/fonts/FontAwesome.otf -ophyd/_static/fonts/Lato/lato-bold.eot -ophyd/_static/fonts/Lato/lato-bold.ttf -ophyd/_static/fonts/Lato/lato-bold.woff -ophyd/_static/fonts/Lato/lato-bold.woff2 -ophyd/_static/fonts/Lato/lato-bolditalic.eot -ophyd/_static/fonts/Lato/lato-bolditalic.ttf -ophyd/_static/fonts/Lato/lato-bolditalic.woff -ophyd/_static/fonts/Lato/lato-bolditalic.woff2 -ophyd/_static/fonts/Lato/lato-italic.eot -ophyd/_static/fonts/Lato/lato-italic.ttf -ophyd/_static/fonts/Lato/lato-italic.woff -ophyd/_static/fonts/Lato/lato-italic.woff2 -ophyd/_static/fonts/Lato/lato-regular.eot -ophyd/_static/fonts/Lato/lato-regular.ttf -ophyd/_static/fonts/Lato/lato-regular.woff -ophyd/_static/fonts/Lato/lato-regular.woff2 -ophyd/_static/fonts/Roboto-Slab-Bold.woff -ophyd/_static/fonts/Roboto-Slab-Bold.woff2 -ophyd/_static/fonts/Roboto-Slab-Light.woff -ophyd/_static/fonts/Roboto-Slab-Light.woff2 -ophyd/_static/fonts/Roboto-Slab-Regular.woff -ophyd/_static/fonts/Roboto-Slab-Regular.woff2 -ophyd/_static/fonts/Roboto-Slab-Thin.woff -ophyd/_static/fonts/Roboto-Slab-Thin.woff2 -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff -ophyd/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 -ophyd/_static/fonts/fontawesome-webfont.eot -ophyd/_static/fonts/fontawesome-webfont.svg -ophyd/_static/fonts/fontawesome-webfont.ttf -ophyd/_static/fonts/fontawesome-webfont.woff -ophyd/_static/fonts/fontawesome-webfont.woff2 -ophyd/_static/fonts/lato-bold-italic.woff -ophyd/_static/fonts/lato-bold-italic.woff2 -ophyd/_static/fonts/lato-bold.woff -ophyd/_static/fonts/lato-bold.woff2 -ophyd/_static/fonts/lato-normal-italic.woff -ophyd/_static/fonts/lato-normal-italic.woff2 -ophyd/_static/fonts/lato-normal.woff -ophyd/_static/fonts/lato-normal.woff2 -ophyd/_static/jquery-3.2.1.js -ophyd/_static/jquery.js -ophyd/_static/js/badge_only.js -ophyd/_static/js/html5shiv-printshiv.min.js -ophyd/_static/js/html5shiv.min.js -ophyd/_static/js/modernizr.min.js -ophyd/_static/js/theme.js -ophyd/_static/minus.png -ophyd/_static/plus.png -ophyd/_static/pygments.css -ophyd/_static/searchtools.js -ophyd/_static/underscore-1.3.1.js -ophyd/_static/underscore.js -ophyd/_static/up-pressed.png -ophyd/_static/up.png -ophyd/_static/websupport.js -ophyd/api.html -ophyd/architecture.html -ophyd/area-detector.html -ophyd/builtin-devices.html -ophyd/debugging.html -ophyd/device-overview.html -ophyd/docker.html -ophyd/generated/ophyd.areadetector.base.ADBase.get_asyn_digraph.html -ophyd/generated/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.html -ophyd/generated/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.html -ophyd/generated/ophyd.areadetector.base.ADBase.html -ophyd/generated/ophyd.areadetector.base.ADBase.missing_plugins.html -ophyd/generated/ophyd.areadetector.base.ADBase.validate_asyn_ports.html -ophyd/generated/ophyd.areadetector.base.ADBase.visualize_asyn_digraph.html -ophyd/generated/ophyd.areadetector.base.ADComponent.html -ophyd/generated/ophyd.areadetector.base.EpicsSignalWithRBV.html -ophyd/generated/ophyd.areadetector.base.ad_group.html -ophyd/generated/ophyd.areadetector.base.html -ophyd/generated/ophyd.areadetector.cam.AdscDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.Andor3DetectorCam.html -ophyd/generated/ophyd.areadetector.cam.AndorDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.BrukerDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.CamBase.html -ophyd/generated/ophyd.areadetector.cam.FirewireLinDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.FirewireWinDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.LightFieldDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.Mar345DetectorCam.html -ophyd/generated/ophyd.areadetector.cam.MarCCDDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.PSLDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.PcoDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.PcoDetectorIO.html -ophyd/generated/ophyd.areadetector.cam.PcoDetectorSimIO.html -ophyd/generated/ophyd.areadetector.cam.PerkinElmerDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.PilatusDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.PixiradDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.PointGreyDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.ProsilicaDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.PvcamDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.RoperDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.SimDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.URLDetectorCam.html -ophyd/generated/ophyd.areadetector.cam.html -ophyd/generated/ophyd.areadetector.detectors.AdscDetector.html -ophyd/generated/ophyd.areadetector.detectors.Andor3Detector.html -ophyd/generated/ophyd.areadetector.detectors.AndorDetector.html -ophyd/generated/ophyd.areadetector.detectors.AreaDetector.html -ophyd/generated/ophyd.areadetector.detectors.BrukerDetector.html -ophyd/generated/ophyd.areadetector.detectors.DetectorBase.dispatch.html -ophyd/generated/ophyd.areadetector.detectors.DetectorBase.html -ophyd/generated/ophyd.areadetector.detectors.DetectorBase.make_data_key.html -ophyd/generated/ophyd.areadetector.detectors.FirewireLinDetector.html -ophyd/generated/ophyd.areadetector.detectors.FirewireWinDetector.html -ophyd/generated/ophyd.areadetector.detectors.LightFieldDetector.html -ophyd/generated/ophyd.areadetector.detectors.Mar345Detector.html -ophyd/generated/ophyd.areadetector.detectors.MarCCDDetector.html -ophyd/generated/ophyd.areadetector.detectors.PSLDetector.html -ophyd/generated/ophyd.areadetector.detectors.PerkinElmerDetector.html -ophyd/generated/ophyd.areadetector.detectors.PilatusDetector.html -ophyd/generated/ophyd.areadetector.detectors.PixiradDetector.html -ophyd/generated/ophyd.areadetector.detectors.PointGreyDetector.html -ophyd/generated/ophyd.areadetector.detectors.ProsilicaDetector.html -ophyd/generated/ophyd.areadetector.detectors.PvcamDetector.html -ophyd/generated/ophyd.areadetector.detectors.RoperDetector.html -ophyd/generated/ophyd.areadetector.detectors.SimDetector.html -ophyd/generated/ophyd.areadetector.detectors.URLDetector.html -ophyd/generated/ophyd.areadetector.detectors.html -ophyd/generated/ophyd.areadetector.docs.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFF.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.html -ophyd/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.html -ophyd/generated/ophyd.areadetector.filestore_mixins.html -ophyd/generated/ophyd.areadetector.html -ophyd/generated/ophyd.areadetector.plugins.ColorConvPlugin.html -ophyd/generated/ophyd.areadetector.plugins.FilePlugin.html -ophyd/generated/ophyd.areadetector.plugins.HDF5Plugin.html -ophyd/generated/ophyd.areadetector.plugins.ImagePlugin.html -ophyd/generated/ophyd.areadetector.plugins.JPEGPlugin.html -ophyd/generated/ophyd.areadetector.plugins.MagickPlugin.html -ophyd/generated/ophyd.areadetector.plugins.NetCDFPlugin.html -ophyd/generated/ophyd.areadetector.plugins.NexusPlugin.html -ophyd/generated/ophyd.areadetector.plugins.OverlayPlugin.html -ophyd/generated/ophyd.areadetector.plugins.PluginBase.html -ophyd/generated/ophyd.areadetector.plugins.ProcessPlugin.html -ophyd/generated/ophyd.areadetector.plugins.ROIPlugin.html -ophyd/generated/ophyd.areadetector.plugins.StatsPlugin.html -ophyd/generated/ophyd.areadetector.plugins.TIFFPlugin.html -ophyd/generated/ophyd.areadetector.plugins.TransformPlugin.html -ophyd/generated/ophyd.areadetector.plugins.html -ophyd/generated/ophyd.areadetector.trigger_mixins.MultiTrigger.html -ophyd/generated/ophyd.areadetector.trigger_mixins.SingleTrigger.html -ophyd/generated/ophyd.areadetector.trigger_mixins.TriggerBase.html -ophyd/generated/ophyd.areadetector.trigger_mixins.html -ophyd/generated/ophyd.areadetector.util.html -ophyd/generated/ophyd.callbacks.html -ophyd/generated/ophyd.device.BlueskyInterface.describe.html -ophyd/generated/ophyd.device.BlueskyInterface.pause.html -ophyd/generated/ophyd.device.BlueskyInterface.read.html -ophyd/generated/ophyd.device.BlueskyInterface.resume.html -ophyd/generated/ophyd.device.BlueskyInterface.stage.html -ophyd/generated/ophyd.device.BlueskyInterface.trigger.html -ophyd/generated/ophyd.device.BlueskyInterface.unstage.html -ophyd/generated/ophyd.device.Component.html -ophyd/generated/ophyd.device.Device.configure.html -ophyd/generated/ophyd.device.Device.connected.html -ophyd/generated/ophyd.device.Device.describe_configuration.html -ophyd/generated/ophyd.device.Device.get.html -ophyd/generated/ophyd.device.Device.get_device_tuple.html -ophyd/generated/ophyd.device.Device.get_instantiated_signals.html -ophyd/generated/ophyd.device.Device.html -ophyd/generated/ophyd.device.Device.put.html -ophyd/generated/ophyd.device.Device.read_configuration.html -ophyd/generated/ophyd.device.Device.wait_for_connection.html -ophyd/generated/ophyd.device.DynamicDeviceComponent.html -ophyd/generated/ophyd.device.FormattedComponent.html -ophyd/generated/ophyd.device.html -ophyd/generated/ophyd.epics_motor.html -ophyd/generated/ophyd.flyers.FlyerInterface.collect.html -ophyd/generated/ophyd.flyers.FlyerInterface.complete.html -ophyd/generated/ophyd.flyers.FlyerInterface.describe_collect.html -ophyd/generated/ophyd.flyers.FlyerInterface.kickoff.html -ophyd/generated/ophyd.flyers.html -ophyd/generated/ophyd.html -ophyd/generated/ophyd.mca.html -ophyd/generated/ophyd.mixins.html -ophyd/generated/ophyd.ophydobj.OphydObject._reset_sub.html -ophyd/generated/ophyd.ophydobj.OphydObject._run_subs.html -ophyd/generated/ophyd.ophydobj.OphydObject.clear_sub.html -ophyd/generated/ophyd.ophydobj.OphydObject.event_types.html -ophyd/generated/ophyd.ophydobj.OphydObject.html -ophyd/generated/ophyd.ophydobj.OphydObject.name.html -ophyd/generated/ophyd.ophydobj.OphydObject.parent.html -ophyd/generated/ophyd.ophydobj.OphydObject.root.html -ophyd/generated/ophyd.ophydobj.OphydObject.subscribe.html -ophyd/generated/ophyd.ophydobj.OphydObject.unsubscribe.html -ophyd/generated/ophyd.ophydobj.html -ophyd/generated/ophyd.positioner.PositionerBase.set.html -ophyd/generated/ophyd.positioner.PositionerBase.stop.html -ophyd/generated/ophyd.positioner.html -ophyd/generated/ophyd.pseudopos.html -ophyd/generated/ophyd.pv_positioner.html -ophyd/generated/ophyd.quadem.html -ophyd/generated/ophyd.scaler.html -ophyd/generated/ophyd.signal.html -ophyd/generated/ophyd.status.html -ophyd/generated/ophyd.utils.epics_pvs.html -ophyd/generated/ophyd.utils.errors.html -ophyd/generated/ophyd.utils.html -ophyd/generated/ophyd.utils.paths.html -ophyd/generated/ophyd.utils.startup.html -ophyd/genindex.html -ophyd/index.html -ophyd/objects.inv -ophyd/positioners.html -ophyd/py-modindex.html -ophyd/release_notes.html -ophyd/search.html -ophyd/searchindex.js -ophyd/signals.html -ophyd/status.html \ No newline at end of file diff --git a/ophyd/OEP/OEP_001.html b/ophyd/OEP/OEP_001.html deleted file mode 100644 index 0cd514c571..0000000000 --- a/ophyd/OEP/OEP_001.html +++ /dev/null @@ -1,322 +0,0 @@ - - - - - - - - - - OEP 1 : AD refactor/unification — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - -
- - - - - -
- -
- - - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

OEP 1 : AD refactor/unification

- -
-

Status

-

Discussion

-
- -
-

Abstract

-

Merge the two AreaDetector implementations.

-
-
-

Detailed description

-
-

Requirements

-
-
    -
  • support full BlueSky API
  • -
  • interact with filestore (may be super-ceded by FS integration at c-level)
  • -
  • provide access to all PVs and plugins on the EPICS layer area -detector -- set up AD pipelines -- frame squashing
  • -
  • be able to change at run-time what is inserted into the result of -read (ex, just return ROI values without saving full data)
  • -
  • deal with dark-frames
  • -
  • ‘frequency’ attribute to set acquire time
  • -
-
-
-
- -
-

Backward compatibility

-

None, break all the things

-
-
-

Alternatives

-

Status quo

-
-
- - -
- -
- - -
-
- -
- -
- - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/OEP/index.html b/ophyd/OEP/index.html deleted file mode 100644 index 2166e7518b..0000000000 --- a/ophyd/OEP/index.html +++ /dev/null @@ -1,252 +0,0 @@ - - - - - - - - - - Ophyd Enhancement Proposals — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - -
- - - - - -
- -
- - - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

Ophyd Enhancement Proposals

- -
- - -
- -
- - -
-
- -
- -
- - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.html b/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.html deleted file mode 100644 index cb831673e7..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.html +++ /dev/null @@ -1,297 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ADBase.get_asyn_digraph — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ADBase.get_asyn_digraph

-
-
-ADBase.get_asyn_digraph()
-

Get the directed graph of the ASYN ports

- --- - - - -
Returns:

G : networkx.DiGraph

-
-

Directed graph of pipelines

-
-

port_map : dict

-
-

Mapping between port_name and ADBase objects

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.html b/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.html deleted file mode 100644 index 9bf048a36f..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.html +++ /dev/null @@ -1,293 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ADBase.get_asyn_port_dictionary — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ADBase.get_asyn_port_dictionary

-
-
-ADBase.get_asyn_port_dictionary()
-

Return port name : component map

- --- - - - -
Returns:

port_map : dict

-
-

Mapping between port_name and ADBase objects

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.html b/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.html deleted file mode 100644 index 0668021302..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.html +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port

-
-
-ADBase.get_plugin_by_asyn_port(port_name)
-

Get the plugin which has the given asyn port name

- --- - - - - - -
Parameters:

port_name : str

-
-

The port name to search for

-
-
Returns:

ret : ADBase or None

-
-

Either the requested plugin or None if not found

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.html b/ophyd/_as_gen/ophyd.areadetector.base.ADBase.html deleted file mode 100644 index e117226200..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.html +++ /dev/null @@ -1,380 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ADBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ADBase

-
-
-class ophyd.areadetector.base.ADBase(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-

The AreaDetector base class

-

This serves as the base for all detectors and plugins

-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.html b/ophyd/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.html deleted file mode 100644 index bfac7e5fc5..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.html +++ /dev/null @@ -1,281 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ADBase.missing_plugins — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ADBase.missing_plugins

-
-
-ADBase.missing_plugins()
-

Find missing ports

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.html b/ophyd/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.html deleted file mode 100644 index f6b70433fb..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.html +++ /dev/null @@ -1,294 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ADBase.validate_asyn_ports — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ADBase.validate_asyn_ports

-
-
-ADBase.validate_asyn_ports()
-

Validate that all components of pipeline are known

- --- - - - -
Raises:

RuntimeError

-
-

If there any input ports to known plugins where the source is -not known to ophyd

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ADComponent.html b/ophyd/_as_gen/ophyd.areadetector.base.ADComponent.html deleted file mode 100644 index b47d4fb285..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ADComponent.html +++ /dev/null @@ -1,306 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ADComponent — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ADComponent

-
-
-class ophyd.areadetector.base.ADComponent(cls, suffix, **kwargs)
-
-
-__init__(cls, suffix, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - -
__init__(cls, suffix, **kwargs)
create_component(instance)Create a component for the instance
find_docs(parent_class)Find all the documentation related to this class, all the way up the
make_docstring(parent_class)Create a docstring for the component, given the parent class
maybe_add_prefix(instance, kw, suffix)Add prefix to a suffix if kw is in self.add_prefix
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.html b/ophyd/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.html deleted file mode 100644 index 92fc7dd85a..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.html +++ /dev/null @@ -1,336 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.EpicsSignalWithRBV — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.EpicsSignalWithRBV

-
-
-class ophyd.areadetector.base.EpicsSignalWithRBV(prefix, **kwargs)
-
-
-__init__(prefix, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(prefix, **kwargs)
check_value(value)Check if the value is within the setpoint PV’s control limits
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
describe()Return the description as a dictionary
describe_configuration()Subclasses may customize this.
get(*[, as_string, connection_timeout])Get the readback value through an explicit call to EPICS
get_setpoint(**kwargs)Get the setpoint value (use only if the setpoint PV and the readback
put(value[, force, connection_timeout, …])Using channel access, set the write PV to value.
read()Read the signal and format for data collection
read_configuration()Subclasses may customize this.
set(value, *[, timeout, settle_time])Set is like EpicsSignal.put, but is here for bluesky compatibility
subscribe(callback[, event_type, run])
trigger()Call that is used by bluesky prior to read()
unsubscribe(cid)Remove a subscription
wait_for_connection([timeout])
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.ad_group.html b/ophyd/_as_gen/ophyd.areadetector.base.ad_group.html deleted file mode 100644 index ae83bc0b79..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.ad_group.html +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base.ad_group — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base.ad_group

-
-
-ophyd.areadetector.base.ad_group(cls, attr_suffix, **kwargs)
-

Definition creation for groups of signals in areadetectors

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.base.html b/ophyd/_as_gen/ophyd.areadetector.base.html deleted file mode 100644 index b3e8539a78..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.base.html +++ /dev/null @@ -1,319 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.base

-

Functions

- ---- - - - - - -
ad_group(cls, attr_suffix, **kwargs)Definition creation for groups of signals in areadetectors
-

Classes

- ---- - - - - - - - - - - - -
ADBase([prefix, read_attrs, …])The AreaDetector base class
ADComponent(cls, suffix, **kwargs)
EpicsSignalWithRBV(prefix, **kwargs)
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.html deleted file mode 100644 index 01ad7fc25a..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.AdscDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.AdscDetectorCam

-
-
-class ophyd.areadetector.cam.AdscDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.html deleted file mode 100644 index 832c5466f3..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.Andor3DetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.Andor3DetectorCam

-
-
-class ophyd.areadetector.cam.Andor3DetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.html deleted file mode 100644 index aa488443a0..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.AndorDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.AndorDetectorCam

-
-
-class ophyd.areadetector.cam.AndorDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.html deleted file mode 100644 index 2f0fd37382..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.BrukerDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.BrukerDetectorCam

-
-
-class ophyd.areadetector.cam.BrukerDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.CamBase.html b/ophyd/_as_gen/ophyd.areadetector.cam.CamBase.html deleted file mode 100644 index 546020ae6d..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.CamBase.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.CamBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.CamBase

-
-
-class ophyd.areadetector.cam.CamBase(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.html deleted file mode 100644 index 2237d382e3..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.FirewireLinDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.FirewireLinDetectorCam

-
-
-class ophyd.areadetector.cam.FirewireLinDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.html deleted file mode 100644 index 50da14efa7..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.FirewireWinDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.FirewireWinDetectorCam

-
-
-class ophyd.areadetector.cam.FirewireWinDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.html deleted file mode 100644 index 2333df9e08..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.LightFieldDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.LightFieldDetectorCam

-
-
-class ophyd.areadetector.cam.LightFieldDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.html deleted file mode 100644 index 86aa1efce8..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.Mar345DetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.Mar345DetectorCam

-
-
-class ophyd.areadetector.cam.Mar345DetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.html deleted file mode 100644 index b0910993cd..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.MarCCDDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.MarCCDDetectorCam

-
-
-class ophyd.areadetector.cam.MarCCDDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.html deleted file mode 100644 index 1069bdf0e1..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PSLDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PSLDetectorCam

-
-
-class ophyd.areadetector.cam.PSLDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.html deleted file mode 100644 index 69cca31acf..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PcoDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PcoDetectorCam

-
-
-class ophyd.areadetector.cam.PcoDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.html b/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.html deleted file mode 100644 index fcabdca3a7..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PcoDetectorIO — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PcoDetectorIO

-
-
-class ophyd.areadetector.cam.PcoDetectorIO(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.html b/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.html deleted file mode 100644 index 5995a61773..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PcoDetectorSimIO — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PcoDetectorSimIO

-
-
-class ophyd.areadetector.cam.PcoDetectorSimIO(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.html deleted file mode 100644 index a3d3bd5f07..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PerkinElmerDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PerkinElmerDetectorCam

-
-
-class ophyd.areadetector.cam.PerkinElmerDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.html deleted file mode 100644 index c1fd4f1055..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PilatusDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PilatusDetectorCam

-
-
-class ophyd.areadetector.cam.PilatusDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.html deleted file mode 100644 index 8e844a5e7c..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PixiradDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PixiradDetectorCam

-
-
-class ophyd.areadetector.cam.PixiradDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.html deleted file mode 100644 index fc30d55740..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PointGreyDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PointGreyDetectorCam

-
-
-class ophyd.areadetector.cam.PointGreyDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.html deleted file mode 100644 index eba9bf2e29..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.ProsilicaDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.ProsilicaDetectorCam

-
-
-class ophyd.areadetector.cam.ProsilicaDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.html deleted file mode 100644 index b42d135ac0..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.PvcamDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.PvcamDetectorCam

-
-
-class ophyd.areadetector.cam.PvcamDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.html deleted file mode 100644 index bcc68f2258..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.RoperDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.RoperDetectorCam

-
-
-class ophyd.areadetector.cam.RoperDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.SimDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.SimDetectorCam.html deleted file mode 100644 index e2c5d901ac..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.SimDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.SimDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.SimDetectorCam

-
-
-class ophyd.areadetector.cam.SimDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.URLDetectorCam.html b/ophyd/_as_gen/ophyd.areadetector.cam.URLDetectorCam.html deleted file mode 100644 index 017bc3a88c..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.URLDetectorCam.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam.URLDetectorCam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam.URLDetectorCam

-
-
-class ophyd.areadetector.cam.URLDetectorCam(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.cam.html b/ophyd/_as_gen/ophyd.areadetector.cam.html deleted file mode 100644 index 79af48cf90..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.cam.html +++ /dev/null @@ -1,370 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.cam

-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
AdscDetectorCam([prefix, read_attrs, …])
Andor3DetectorCam([prefix, read_attrs, …])
AndorDetectorCam([prefix, read_attrs, …])
AreaDetectorCam([prefix, read_attrs, …])
BrukerDetectorCam([prefix, read_attrs, …])
CamBase([prefix, read_attrs, …])
FirewireLinDetectorCam([prefix, read_attrs, …])
FirewireWinDetectorCam([prefix, read_attrs, …])
LightFieldDetectorCam([prefix, read_attrs, …])
Mar345DetectorCam([prefix, read_attrs, …])
MarCCDDetectorCam([prefix, read_attrs, …])
PSLDetectorCam([prefix, read_attrs, …])
PcoDetectorCam([prefix, read_attrs, …])
PcoDetectorIO([prefix, read_attrs, …])
PcoDetectorSimIO([prefix, read_attrs, …])
PerkinElmerDetectorCam([prefix, read_attrs, …])
PilatusDetectorCam([prefix, read_attrs, …])
PixiradDetectorCam([prefix, read_attrs, …])
PointGreyDetectorCam([prefix, read_attrs, …])
ProsilicaDetectorCam([prefix, read_attrs, …])
PvcamDetectorCam([prefix, read_attrs, …])
RoperDetectorCam([prefix, read_attrs, …])
SimDetectorCam([prefix, read_attrs, …])
URLDetectorCam([prefix, read_attrs, …])
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.AdscDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.AdscDetector.html deleted file mode 100644 index 570256ddf6..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.AdscDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.AdscDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.AdscDetector

-
-
-class ophyd.areadetector.detectors.AdscDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.Andor3Detector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.Andor3Detector.html deleted file mode 100644 index fc4f61ddfc..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.Andor3Detector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.Andor3Detector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.Andor3Detector

-
-
-class ophyd.areadetector.detectors.Andor3Detector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.AndorDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.AndorDetector.html deleted file mode 100644 index 7eda9bf05d..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.AndorDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.AndorDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.AndorDetector

-
-
-class ophyd.areadetector.detectors.AndorDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.AreaDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.AreaDetector.html deleted file mode 100644 index 8bd219fea0..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.AreaDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.AreaDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.AreaDetector

-
-
-class ophyd.areadetector.detectors.AreaDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.BrukerDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.BrukerDetector.html deleted file mode 100644 index ddce738bda..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.BrukerDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.BrukerDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.BrukerDetector

-
-
-class ophyd.areadetector.detectors.BrukerDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.html b/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.html deleted file mode 100644 index 53d3e53210..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.html +++ /dev/null @@ -1,292 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.DetectorBase.dispatch — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.DetectorBase.dispatch

-
-
-DetectorBase.dispatch(key, timestamp)
-

Notify plugins of acquisition being complete.

-

When a new acquisition is finished, this method is called with a -key which is a label like ‘light’, ‘dark’, or ‘gain8’.

-

It in turn calls all of the file plugins and makes them insert a -datum into FileStore.

-

File plugins are identified by searching for a -generate_datum() -method that must have the siganture

-
def generate_datum(key: str, timestamp: float):
-   ...
-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.html b/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.html deleted file mode 100644 index 2493ae6e07..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.html +++ /dev/null @@ -1,387 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.DetectorBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.DetectorBase

-
-
-class ophyd.areadetector.detectors.DetectorBase(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-

The base class for the hardware-specific classes that follow.

-

Note that Plugin also inherits from ADBase. -This adds some AD-specific methods that are not shared by the plugins.

-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.html b/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.html deleted file mode 100644 index fbe07e1b7f..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.html +++ /dev/null @@ -1,280 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.DetectorBase.make_data_key — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.DetectorBase.make_data_key

-
-
-DetectorBase.make_data_key()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.html deleted file mode 100644 index 31f928ade7..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.FirewireLinDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.FirewireLinDetector

-
-
-class ophyd.areadetector.detectors.FirewireLinDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.html deleted file mode 100644 index 64494e2971..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.FirewireWinDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.FirewireWinDetector

-
-
-class ophyd.areadetector.detectors.FirewireWinDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.html deleted file mode 100644 index 821bf698e7..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.LightFieldDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.LightFieldDetector

-
-
-class ophyd.areadetector.detectors.LightFieldDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.Mar345Detector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.Mar345Detector.html deleted file mode 100644 index b0ef60f066..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.Mar345Detector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.Mar345Detector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.Mar345Detector

-
-
-class ophyd.areadetector.detectors.Mar345Detector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.html deleted file mode 100644 index c38766177a..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.MarCCDDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.MarCCDDetector

-
-
-class ophyd.areadetector.detectors.MarCCDDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.PSLDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.PSLDetector.html deleted file mode 100644 index c599695ae1..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.PSLDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.PSLDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.PSLDetector

-
-
-class ophyd.areadetector.detectors.PSLDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.html deleted file mode 100644 index f2434c4c4a..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.PerkinElmerDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.PerkinElmerDetector

-
-
-class ophyd.areadetector.detectors.PerkinElmerDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.PilatusDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.PilatusDetector.html deleted file mode 100644 index 29a32f9788..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.PilatusDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.PilatusDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.PilatusDetector

-
-
-class ophyd.areadetector.detectors.PilatusDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.PixiradDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.PixiradDetector.html deleted file mode 100644 index 1cc2406cf6..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.PixiradDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.PixiradDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.PixiradDetector

-
-
-class ophyd.areadetector.detectors.PixiradDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.html deleted file mode 100644 index 2a01d5f7a8..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.PointGreyDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.PointGreyDetector

-
-
-class ophyd.areadetector.detectors.PointGreyDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.html deleted file mode 100644 index f08338033e..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.ProsilicaDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.ProsilicaDetector

-
-
-class ophyd.areadetector.detectors.ProsilicaDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.PvcamDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.PvcamDetector.html deleted file mode 100644 index a56638aa2b..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.PvcamDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.PvcamDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.PvcamDetector

-
-
-class ophyd.areadetector.detectors.PvcamDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.RoperDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.RoperDetector.html deleted file mode 100644 index baaf514aaa..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.RoperDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.RoperDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.RoperDetector

-
-
-class ophyd.areadetector.detectors.RoperDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.SimDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.SimDetector.html deleted file mode 100644 index bbbc08be36..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.SimDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.SimDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.SimDetector

-
-
-class ophyd.areadetector.detectors.SimDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.URLDetector.html b/ophyd/_as_gen/ophyd.areadetector.detectors.URLDetector.html deleted file mode 100644 index 6d5e72bef4..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.URLDetector.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors.URLDetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors.URLDetector

-
-
-class ophyd.areadetector.detectors.URLDetector(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
dispatch(key, timestamp)Notify plugins of acquisition being complete.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
make_data_key()
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(*args, **kwargs)
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.detectors.html b/ophyd/_as_gen/ophyd.areadetector.detectors.html deleted file mode 100644 index baf8e826b5..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.detectors.html +++ /dev/null @@ -1,363 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.detectors

-

AreaDetector Devices

-

areaDetector detector abstractions

-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
AdscDetector([prefix, read_attrs, …])
Andor3Detector([prefix, read_attrs, …])
AndorDetector([prefix, read_attrs, …])
AreaDetector([prefix, read_attrs, …])
BrukerDetector([prefix, read_attrs, …])
DetectorBase([prefix, read_attrs, …])The base class for the hardware-specific classes that follow.
FirewireLinDetector([prefix, read_attrs, …])
FirewireWinDetector([prefix, read_attrs, …])
LightFieldDetector([prefix, read_attrs, …])
Mar345Detector([prefix, read_attrs, …])
MarCCDDetector([prefix, read_attrs, …])
PSLDetector([prefix, read_attrs, …])
PerkinElmerDetector([prefix, read_attrs, …])
PilatusDetector([prefix, read_attrs, …])
PixiradDetector([prefix, read_attrs, …])
PointGreyDetector([prefix, read_attrs, …])
ProsilicaDetector([prefix, read_attrs, …])
PvcamDetector([prefix, read_attrs, …])
RoperDetector([prefix, read_attrs, …])
SimDetector([prefix, read_attrs, …])
URLDetector([prefix, read_attrs, …])
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.docs.html b/ophyd/_as_gen/ophyd.areadetector.docs.html deleted file mode 100644 index eb57c53f99..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.docs.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.docs — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.docs

-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.html deleted file mode 100644 index 4c79bb0689..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root

-
-
-FileStoreBase.fs_root
-

DEPRECATED: The ‘root’ put into the Asset registry, use reg_root

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.html deleted file mode 100644 index 10350400e1..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum

-
-
-FileStoreBase.generate_datum(key, timestamp, datum_kwargs)
-

Generate a uid and cache it with its key for later insertion.

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.html deleted file mode 100644 index 60b5ccee2a..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBase

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreBase(*args, write_path_template, root='/', read_path_template=None, reg=None, **kwargs)
-

Base class for FileStore mixin classes

-

This class provides

-
-
    -
  • python side path management (root, seperate write / read paths)
  • -
  • provides generate_datum() to work with -dispatch()
  • -
  • cooperative stage / unstage methods
  • -
  • cooperative read / describe methods that inject datums
  • -
-
-

Separate read and write paths are supported because the IOC that -writes the files may not have the data storage mounted at the same -place as the computers that are expected to access it later (for -example, if the IOC is running on a windows machine and mounting a -NFS share via samba).

-

write_path_template must always be provided, only provide -read_path_template if the writer and reader will not have the -same mount point.

-

The properties read_path_template and -write_path_template do the following check against -root

-
-
    -
  • if the only write_path_template is provided
      -
    • Used to generate read and write paths (which are identical)
    • -
    • verify that the path starts with root or the path is -a relative, prepend root
    • -
    -
  • -
  • if read_path_template is also provided then the above -checks are applied to it, but write_path_template is -returned without any validation.
  • -
-
-

This mixin assumes that it’s peers provide an enable signal

- --- - - - -
Parameters:

write_path_template : str

-
-

Template feed to strftime() to generate the -path to set the IOC to write saved files to.

-

See above for interactions with root and read_path_template

-
-

root : str, optional

-
-

The ‘root’ of the file path. This is inserted into filestore and -enables files to be renamed or re-mounted with only some pain.

-

This represents the part of the full path that is not -‘semantic’. For example in the path -‘/data/XF42ID/2248/05/01/’, the first two parts, -‘/data/XF42ID/’, would be part of the ‘root’, where as the -final 3 parts, ‘2248/05/01’ is the date the data was taken. -If the files were to be renamed, it is likely that only the -‘root’ will be changed (for example of the whole file tree is -copied to / mounted on another system or external hard drive).

-
-

read_path_template : str, optional

-
-

The read path template, if different from the write path. See the -docstings for write_path_template and root.

-
-

reg : Registry

-
-

If None provided, try to import the top-level api from -filestore.api This will be deprecated 17Q3.

-

This object must provide:

-
def register_resource(spec: str,
-                      root: str, rpath: str,
-                      rkwargs: dict,
-                      path_semantics: Optional[str]): -> str
-    ...
-
-def register_datum(resource: str, datum_kwargs: dict): -> str
-    ...
-
-
-
-
-

Notes

-

This class in cooperative and expected to particpate in multiple -inheritance, all *args and extra **kwargs are passed up the -MRO chain.

-

This class may be collapsed with FileStorePluginBase

-
-
-__init__(*args, write_path_template, root='/', read_path_template=None, reg=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, write_path_template[, root, …])
describe()
generate_datum(key, timestamp, datum_kwargs)Generate a uid and cache it with its key for later insertion.
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.html deleted file mode 100644 index 2103d45e75..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template

-
-
-FileStoreBase.read_path_template
-

Returns write_path_template if read_path_template is not set

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.html deleted file mode 100644 index 8bf09d7bcb..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root

-
-
-FileStoreBase.reg_root
-

The ‘root’ put into the Asset Registry

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.html deleted file mode 100644 index 0442950a57..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.html +++ /dev/null @@ -1,294 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBase.root — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBase.root

-
-
-FileStoreBase.root
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.html deleted file mode 100644 index 5b5ece8f76..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.html +++ /dev/null @@ -1,288 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template

-
-
-FileStoreBase.write_path_template
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.html deleted file mode 100644 index e051ad4992..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.html +++ /dev/null @@ -1,296 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreBulkWrite — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreBulkWrite

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreBulkWrite(*args, **kwargs)
-

Cache records as they are created and save them all at the end.

-
-
-__init__(*args, **kwargs)
-
- -
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.html deleted file mode 100644 index f6ab9351cc..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.html +++ /dev/null @@ -1,335 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreHDF5 — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreHDF5

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreHDF5(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
describe()
generate_datum(key, timestamp, datum_kwargs)Generate a uid and cache it with its key for later insertion.
get_frames_per_point()
make_filename()Make a filename.
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.html deleted file mode 100644 index ddaba4799d..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.html +++ /dev/null @@ -1,295 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.html deleted file mode 100644 index bb77b04574..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.html +++ /dev/null @@ -1,335 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
describe()
generate_datum(key, timestamp, datum_kwargs)Generate the datum and insert
get_frames_per_point()
make_filename()Make a filename.
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.html deleted file mode 100644 index 0b6d96b92b..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.html +++ /dev/null @@ -1,330 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite(*args, write_path_template, root='/', read_path_template=None, reg=None, **kwargs)
-

Save records to filestore as they are generated.

-
-
-__init__(*args, write_path_template, root='/', read_path_template=None, reg=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, write_path_template[, root, …])
describe()
generate_datum(key, timestamp, datum_kwargs)Generate the datum and insert
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.html deleted file mode 100644 index ffc0933e8d..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.html +++ /dev/null @@ -1,332 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStorePluginBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStorePluginBase

-
-
-class ophyd.areadetector.filestore_mixins.FileStorePluginBase(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
describe()
generate_datum(key, timestamp, datum_kwargs)Generate a uid and cache it with its key for later insertion.
make_filename()Make a filename.
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.html deleted file mode 100644 index 21af684ce0..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.html +++ /dev/null @@ -1,311 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename

-
-
-FileStorePluginBase.make_filename()
-

Make a filename.

-

This is a hook so that the read and write paths can either be modified -or created on disk prior to configuring the areaDetector plugin.

- --- - - - -
Returns:

filename : str

-
-

The start of the filename

-
-

read_path : str

-
-

Path that ophyd can read from

-
-

write_path : str

-
-

Path that the IOC can write to

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.html deleted file mode 100644 index 0b8b6a90bc..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.html +++ /dev/null @@ -1,335 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreTIFF — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreTIFF

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreTIFF(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
describe()
generate_datum(key, timestamp, datum_kwargs)Generate a uid and cache it with its key for later insertion.
get_frames_per_point()
make_filename()Make a filename.
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.html deleted file mode 100644 index c291393316..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.html +++ /dev/null @@ -1,295 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.html deleted file mode 100644 index d029039f5d..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.html +++ /dev/null @@ -1,335 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
describe()
generate_datum(key, timestamp, datum_kwargs)Generate the datum and insert
get_frames_per_point()
make_filename()Make a filename.
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.html deleted file mode 100644 index 2001763787..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.html +++ /dev/null @@ -1,380 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing

-
-
-class ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing(*args, images_per_set_name='images_per_set', number_of_sets_name='number_of_sets', cam_name='cam', proc_name='proc1', **kwargs)
-

Write out ‘squashed’ tiffs

-
-

Note

-

See FileStoreBase for the rest of the required parametrs

-
-

This mixin will also configure the cam and proc plugins -on the parent.

-

This is useful to work around the dynamic range of detectors -and minimizing disk spaced used by synthetically increasing -the exposure time of the saved images.

- --- - - - -
Parameters:

images_per_set_name, number_of_sets_name : str, optional

-
-

The names of the signals on the parent to get the -images_pre_set and number_of_sets from.

-

The total number of frames extracted from the camera will be -\(number\_of\_sets * images\_per\_set\) and result in -number_of_sets tiff files each of which is the average of -images_per_set frames from the detector.

-

Defaults to 'images_per_set' and 'number_of_sets'

-
-

cam_name : str, optional

-
-

The name of the CamBase -instance on the parent.

-

Defaults to 'cam'

-
-

proc_name : str, optional

-
-

The name of the -ProcessPlugin instance on -the parent.

-

Defaults to 'proc1'

-
-
-

Notes

-

This class in cooperative and expected to particpate in multiple -inheritance, all *args and extra **kwargs are passed up the -MRO chain.

-
-
-__init__(*args, images_per_set_name='images_per_set', number_of_sets_name='number_of_sets', cam_name='cam', proc_name='proc1', **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args[, images_per_set_name, …])
describe()
generate_datum(key, timestamp, datum_kwargs)Generate a uid and cache it with its key for later insertion.
get_frames_per_point()
make_filename()Make a filename.
pause(() -> None)Attempt to ‘pause’ the device.
read()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.html b/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.html deleted file mode 100644 index 672098c5ef..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.filestore_mixins.html +++ /dev/null @@ -1,357 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.filestore_mixins — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.filestore_mixins

-

Mixin classes that customize the filestore integration of AreaDetector -FilePlugins.

-

To be used like so

-
from ophyd.areadetector.detectors import PerkinElmerDetector
-from ophyd.areadetector.plugins import HDF5Plugin
-from ophyd.areadetector.trigger_mixins import SingleTrigger
-from ophyd.areadetector.filestore_mixins import (
-    FileStoreIterativeWrite)
-
-class MyPlugin(HDF5Plugin, FileStoreIterativeWrite):
-    pass
-
-dest = '/tmp'  # in production, use a directory on your system -- not /tmp
-
-class MyDetector(PerkinElmerDetector, SingleTrigger):  # for example
-    file_plugin = MyPlugin(suffix='HDF1:', write_path_template=dest)
-
-det = MyDetector(...)
-
-
-

Functions

- ---- - - - - - - - - -
new_short_uid()uuid4, skipping the last stanza because of AD length restrictions.
new_uid()uuid4 as a string
-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStoreBase(*args, write_path_template[, …])Base class for FileStore mixin classes
FileStoreHDF5(*args, **kwargs)
FileStoreHDF5IterativeWrite(*args, **kwargs)
FileStoreIterativeWrite(*args, …[, root, …])Save records to filestore as they are generated.
FileStorePluginBase(*args, **kwargs)
FileStoreTIFF(*args, **kwargs)
FileStoreTIFFIterativeWrite(*args, **kwargs)
FileStoreTIFFSquashing(*args[, …])Write out ‘squashed’ tiffs
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.html b/ophyd/_as_gen/ophyd.areadetector.html deleted file mode 100644 index 7e7783248e..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd.areadetector — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector

-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.html deleted file mode 100644 index 529f7a1181..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.html +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.ColorConvPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.ColorConvPlugin

-
-
-class ophyd.areadetector.plugins.ColorConvPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.FilePlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.FilePlugin.html deleted file mode 100644 index e7fcecc299..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.FilePlugin.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.FilePlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.FilePlugin

-
-
-class ophyd.areadetector.plugins.FilePlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
generate_datum(key, timestamp, datum_kwargs)
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.html deleted file mode 100644 index 76be3bcbe2..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.html +++ /dev/null @@ -1,397 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.HDF5Plugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.HDF5Plugin

-
-
-class ophyd.areadetector.plugins.HDF5Plugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
generate_datum(key, timestamp, datum_kwargs)
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
warmup()A convenience method for ‘priming’ the plugin.
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.ImagePlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.ImagePlugin.html deleted file mode 100644 index a8e6d3854b..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.ImagePlugin.html +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.ImagePlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.ImagePlugin

-
-
-class ophyd.areadetector.plugins.ImagePlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.html deleted file mode 100644 index 8a8bb4fc95..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.JPEGPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.JPEGPlugin

-
-
-class ophyd.areadetector.plugins.JPEGPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
generate_datum(key, timestamp, datum_kwargs)
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.MagickPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.MagickPlugin.html deleted file mode 100644 index 0004017fc3..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.MagickPlugin.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.MagickPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.MagickPlugin

-
-
-class ophyd.areadetector.plugins.MagickPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
generate_datum(key, timestamp, datum_kwargs)
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.html deleted file mode 100644 index 3c6e6d1049..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.NetCDFPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.NetCDFPlugin

-
-
-class ophyd.areadetector.plugins.NetCDFPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
generate_datum(key, timestamp, datum_kwargs)
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.NexusPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.NexusPlugin.html deleted file mode 100644 index e16505fb36..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.NexusPlugin.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.NexusPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.NexusPlugin

-
-
-class ophyd.areadetector.plugins.NexusPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
generate_datum(key, timestamp, datum_kwargs)
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.html deleted file mode 100644 index 8b490c84ec..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.html +++ /dev/null @@ -1,406 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.OverlayPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.OverlayPlugin

-
-
-class ophyd.areadetector.plugins.OverlayPlugin(*args, **kwargs)
-

Plugin which adds graphics overlays to an NDArray image

-

Keyword arguments are passed to the base class, PluginBase

- --- - - - -
Parameters:

prefix : str

-
-

The areaDetector plugin prefix

-
-
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.PluginBase.html b/ophyd/_as_gen/ophyd.areadetector.plugins.PluginBase.html deleted file mode 100644 index fc27133659..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.PluginBase.html +++ /dev/null @@ -1,393 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.PluginBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.PluginBase

-
-
-class ophyd.areadetector.plugins.PluginBase(*args, **kwargs)
-

AreaDetector plugin base class

-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.html deleted file mode 100644 index 4568613c43..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.html +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.ProcessPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.ProcessPlugin

-
-
-class ophyd.areadetector.plugins.ProcessPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.ROIPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.ROIPlugin.html deleted file mode 100644 index d32df2bb0b..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.ROIPlugin.html +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.ROIPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.ROIPlugin

-
-
-class ophyd.areadetector.plugins.ROIPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.StatsPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.StatsPlugin.html deleted file mode 100644 index 35027373a5..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.StatsPlugin.html +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.StatsPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.StatsPlugin

-
-
-class ophyd.areadetector.plugins.StatsPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.html deleted file mode 100644 index 6abd54e0bc..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.TIFFPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.TIFFPlugin

-
-
-class ophyd.areadetector.plugins.TIFFPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
generate_datum(key, timestamp, datum_kwargs)
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.TransformPlugin.html b/ophyd/_as_gen/ophyd.areadetector.plugins.TransformPlugin.html deleted file mode 100644 index 2f3086d38f..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.TransformPlugin.html +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins.TransformPlugin — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins.TransformPlugin

-
-
-class ophyd.areadetector.plugins.TransformPlugin(*args, **kwargs)
-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration()
disable_on_stage()when the plugin is staged, ensure that it is disabled.
enable_on_stage()when the plugin is staged, ensure that it is enabled.
ensure_blocking()Ensure that if plugin is enabled after staging, callbacks block.
ensure_nonblocking()Ensure that if plugin is enabled after staging, callbacks don’t block.
find_signal(text[, use_re, case_sensitive, …])Search through the signal docs on this detector for the string text
get(**kwargs)Get the value of all components in the device
get_asyn_digraph()Get the directed graph of the ASYN ports
get_asyn_port_dictionary()Return port name : component map
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
get_plugin_by_asyn_port(port_name)Get the plugin which has the given asyn port name
missing_plugins()Find missing ports
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration()
resume(() -> None)Resume a device from a ‘paused’ state
stage()
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
validate_asyn_ports()Validate that all components of pipeline are known
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.plugins.html b/ophyd/_as_gen/ophyd.areadetector.plugins.html deleted file mode 100644 index dd4b15be7b..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.plugins.html +++ /dev/null @@ -1,370 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.plugins

-

AreaDetector plugins

-
-
areaDetector plugin abstractions
-

Functions

- ---- - - - - - - - - - - - - - - -
get_areadetector_plugin(prefix, **kwargs)Get an instance of an areadetector plugin by supplying its PV prefix and any kwargs for the constructor.
get_areadetector_plugin_class(prefix[, timeout])Get an areadetector plugin class by supplying its PV prefix
plugin_from_pvname(pv)Get the plugin class from a pvname, using regular expressions defined in the classes (_suffix_re).
register_plugin(cls)Register a plugin
-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ColorConvPlugin(*args, **kwargs)
FilePlugin(*args, **kwargs)
HDF5Plugin(*args, **kwargs)
ImagePlugin(*args, **kwargs)
JPEGPlugin(*args, **kwargs)
MagickPlugin(*args, **kwargs)
NetCDFPlugin(*args, **kwargs)
NexusPlugin(*args, **kwargs)
Overlay([prefix, read_attrs, …])
OverlayPlugin(*args, **kwargs)Plugin which adds graphics overlays to an NDArray image
PluginBase(*args, **kwargs)AreaDetector plugin base class
ProcessPlugin(*args, **kwargs)
ROIPlugin(*args, **kwargs)
StatsPlugin(*args, **kwargs)
TIFFPlugin(*args, **kwargs)
TransformPlugin(*args, **kwargs)
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.html b/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.html deleted file mode 100644 index 2369754a03..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.html +++ /dev/null @@ -1,361 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.trigger_mixins.MultiTrigger — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.trigger_mixins.MultiTrigger

-
-
-class ophyd.areadetector.trigger_mixins.MultiTrigger(*args, trigger_cycle=None, **kwargs)
-

This trigger mixin class can take multiple acquisitions per trigger.

-

This can be used to give more control to the detector. One call to -‘trigger’ can be interpreted by the detector as a call to take several -acquisitions with, for example, different gain settings or shutter -positions.

-

The are two levels of nesting here:

-
-
    -
  • cycling through different actions on successive calls to trigger
  • -
  • within each trigger, executing a list of acquisitions with different -settings
  • -
-
-

See the example below, which takes and 3 and 1 acquisitions in -alternation.

-

Examples

-
>>> class MyDetector(SimDetector, MultiTrigger):
-...     pass
-# EXAMPLE:
-# 1. On the first trigger, close the shutter and acquire three images
-# with different gain settings on the detector. Then open the shutter
-# and take a light frame.
-# 2. On the next trigger, just take a light frame.
-# Repeat.
-#
-# Each element of this list specifies one acquisition. It gives a
-# a label for each kind of image that will be taken and a dictionary
-# mapping signals to values that must be set for that acquisition.
->>> dark_and_light = [('gain1', {'shutter': 'close', 'image_gain': 1}),
-...                   ('gain2', {'image_gain': 2}),
-...                   ('gain8', {'image_gain': 8}),
-...                   ('light', {'shutter': 'open'})],
-# This list only has one element; it will only take one acquisition.
->>> light_only = [('light', {'shutter': 'open'}]]
-# Finally, put the lists together. The detector will cycle through
-# this list as it is triggered.
->>> trigger_cycle = [dark_and_light, light_only]
->>> det = MyDetector(trigger_cycle=trigger_cycle)
-# Note: for simplicity, the settings were specified as dictionaries. If
-# you need to control the order that they are processed, use
-# OrderedDict instead.
-
-
-
-
-__init__(*args, trigger_cycle=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args[, trigger_cycle])
describe(…)Provide schema and meta-data for read()
pause(() -> None)Attempt to ‘pause’ the device.
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger()Trigger one or more acquisitions.
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.html b/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.html deleted file mode 100644 index 0854de2fdf..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.html +++ /dev/null @@ -1,327 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.trigger_mixins.SingleTrigger — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.trigger_mixins.SingleTrigger

-
-
-class ophyd.areadetector.trigger_mixins.SingleTrigger(*args, image_name=None, **kwargs)
-

This trigger mixin class takes one acquisition per trigger.

-

Examples

-
>>> class SimDetector(SingleTrigger):
-...     pass
->>> det = SimDetector('..pv..')
-# optionally, customize name of image
->>> det = SimDetector('..pv..', image_name='fast_detector_image')
-
-
-
-
-__init__(*args, image_name=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args[, image_name])
describe(…)Provide schema and meta-data for read()
pause(() -> None)Attempt to ‘pause’ the device.
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
resume(() -> None)Resume a device from a ‘paused’ state
stage()
trigger()Trigger one acquisition.
unstage()
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.html b/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.html deleted file mode 100644 index 2ce4571076..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.html +++ /dev/null @@ -1,321 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.trigger_mixins.TriggerBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.trigger_mixins.TriggerBase

-
-
-class ophyd.areadetector.trigger_mixins.TriggerBase(*args, **kwargs)
-

Base class for trigger mixin classes

-

Subclasses must define a method with this signature:

-

acquire_changed(self, value=None, old_value=None, **kwargs)

-
-
-__init__(*args, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__(*args, **kwargs)
describe(…)Provide schema and meta-data for read()
pause(() -> None)Attempt to ‘pause’ the device.
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
resume(() -> None)Resume a device from a ‘paused’ state
stage(() -> typing.List[object])Stage the device for data collection.
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.html b/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.html deleted file mode 100644 index d68e867bed..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.trigger_mixins.html +++ /dev/null @@ -1,319 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.trigger_mixins — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.trigger_mixins

-

Mixin classes that customize the triggering behavior of AreaDetector

-

To be used like so

-
from ophyd.areadetector.detectors import PerkinElmerDetector
-from ophyd.areadetector.trigger_mixins import SingleTrigger
-
-class MyDetector(PerkinElmerDetector, SingleTrigger):
-    pass
-
-
-

Classes

- ---- - - - - - - - - - - - - - - -
ADTriggerStatus(*args, **kwargs)A special status object that notifies watches (progress bars) based on comparing device.cam.array_counter to device.cam.num_images.
MultiTrigger(*args[, trigger_cycle])This trigger mixin class can take multiple acquisitions per trigger.
SingleTrigger(*args[, image_name])This trigger mixin class takes one acquisition per trigger.
TriggerBase(*args, **kwargs)Base class for trigger mixin classes
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.areadetector.util.html b/ophyd/_as_gen/ophyd.areadetector.util.html deleted file mode 100644 index a762e4ee78..0000000000 --- a/ophyd/_as_gen/ophyd.areadetector.util.html +++ /dev/null @@ -1,322 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.util — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.areadetector.util

-

Functions

- ---- - - - - - - - - - - - - - - -
create_detector_stub(db_file[, macros, …])Stub out a new AreaDetector camera directly from a database file
get_prop_name(pv)Get a property name from the camel-case AreaDetector PV name
get_stub_info(db_file[, macros, base_class])Stub out a new AreaDetector directly from a database file
stub_templates(path, **kwargs)Stub out a new AreaDetector directly from all database files in a path
-

Classes

- ---- - - - - - -
StubInfo(signal_type, record)Create new instance of StubInfo(signal_type, record)
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.callbacks.html b/ophyd/_as_gen/ophyd.callbacks.html deleted file mode 100644 index 633613f9a2..0000000000 --- a/ophyd/_as_gen/ophyd.callbacks.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - ophyd.callbacks — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.callbacks

-

Classes

- ---- - - - - - - - - -
LastUidPublish(signal[, raise_if_disconnected])Publishes run start UID of most recently completed run to a given signal
UidPublish(signal[, raise_if_disconnected])Publishes run start UID of most recently begun run to a given signal
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.commands.get_all_positioners.html b/ophyd/_as_gen/ophyd.commands.get_all_positioners.html deleted file mode 100644 index dd7d38896f..0000000000 --- a/ophyd/_as_gen/ophyd.commands.get_all_positioners.html +++ /dev/null @@ -1,274 +0,0 @@ - - - - - - - - - - - ophyd.commands.get_all_positioners — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.commands.get_all_positioners

-
-
-ophyd.commands.get_all_positioners()
-

Get all positioners defined in the IPython namespace

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.commands.html b/ophyd/_as_gen/ophyd.commands.html deleted file mode 100644 index 7b4f80ab41..0000000000 --- a/ophyd/_as_gen/ophyd.commands.html +++ /dev/null @@ -1,370 +0,0 @@ - - - - - - - - - - - ophyd.commands — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.commands

-

Command Line Interface to opyd objects

-

Functions

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
blink([on, file])
catch_keyboard_interrupt(positioners)Context manager to capture Keyboard Interrupt and stop motors
ducks_from_namespace(attr)Get all instances that have a given attribute.
ensure(*ensure_args)
get_all_positioners()Get all positioners defined in the IPython namespace
get_logbook()Get the logbook instance from the user namespace
instances_from_namespace(classes)Get all instances of classes from the user namespace
log_pos([positioners, extra_msg])Get the current position of Positioners and make a logbook entry.
log_pos_diff([id, positioners])Move to positions located in logboook
log_pos_mov([id, dry_run, positioners])Move to positions located in logboook
logbook_add_objects(objects[, extra_pvs])Add to the logbook aditional information on ophyd objects.
logbook_to_objects([id])Search the logbook and return positioners
mov(positioner, position)Move positioners to given positions
movr(positioner, position)Move positioners relative to their current positon.
print_header([title, char, len, file])
print_string(val[, size, pre, post, file])
print_value(val[, prec, egu])
scrape_namespace()Get all public objects from the user namespace, sorted by name.
set_lm(positioner, limits)Set the limits of the positioner
set_pos(positioner, position)Set the position of a positioner
var_from_namespace(var)
wh_pos([positioners])Get the current position of Positioners and print to screen.
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.commands.log_pos.html b/ophyd/_as_gen/ophyd.commands.log_pos.html deleted file mode 100644 index 9803b845d1..0000000000 --- a/ophyd/_as_gen/ophyd.commands.log_pos.html +++ /dev/null @@ -1,292 +0,0 @@ - - - - - - - - - - - ophyd.commands.log_pos — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.commands.log_pos

-
-
-ophyd.commands.log_pos(positioners=None, extra_msg=None)
-

Get the current position of Positioners and make a logbook entry.

-

Print to the screen the position of the positioners and make a logbook text -entry. This routine also creates session information in the logbook so -positions can be recovered.

- --- - - - - - -
Parameters:

positioners : Positioner, list of Positioners or None

-
Returns:

int

-
-

The ID of the logbook entry returned by the logbook.log method.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.commands.log_pos_diff.html b/ophyd/_as_gen/ophyd.commands.log_pos_diff.html deleted file mode 100644 index edbb6a7e8e..0000000000 --- a/ophyd/_as_gen/ophyd.commands.log_pos_diff.html +++ /dev/null @@ -1,293 +0,0 @@ - - - - - - - - - - - ophyd.commands.log_pos_diff — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.commands.log_pos_diff

-
-
-ophyd.commands.log_pos_diff(id=None, positioners=None, **kwargs)
-

Move to positions located in logboook

-

This function compares positions recorded in the experimental logbook -using the log_pos() function.

- --- - - - -
Parameters:

id : integer

-
-

ID of logbook entry to search for and move positions to.

-
-

positioners : list

-
-

List of string names of positioners to compare. Other positioners -in the log entry will be ignored.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.commands.log_pos_mov.html b/ophyd/_as_gen/ophyd.commands.log_pos_mov.html deleted file mode 100644 index 039b494182..0000000000 --- a/ophyd/_as_gen/ophyd.commands.log_pos_mov.html +++ /dev/null @@ -1,297 +0,0 @@ - - - - - - - - - - - ophyd.commands.log_pos_mov — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.commands.log_pos_mov

-
-
-ophyd.commands.log_pos_mov(id=None, dry_run=False, positioners=None, **kwargs)
-

Move to positions located in logboook

-

This function moves to positions recorded in the experimental logbook using -the log_pos() function.

- --- - - - -
Parameters:

id : integer, optional

-
-

ID of logbook entry to search for and move positions to.

-
-

dry_run : bool, optional

-
-

If True, do not move motors, but execute a dry_run

-
-

positioners : list, optional

-
-

List of string names of positioners to compare and move. Other -positioners in the log entry will be ignored.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.commands.wh_pos.html b/ophyd/_as_gen/ophyd.commands.wh_pos.html deleted file mode 100644 index 7c7a9065b6..0000000000 --- a/ophyd/_as_gen/ophyd.commands.wh_pos.html +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - ophyd.commands.wh_pos — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.commands.wh_pos

-
-
-ophyd.commands.wh_pos(positioners=None)
-

Get the current position of Positioners and print to screen.

-

Print to the screen the position of the positioners in a formated table.

- --- - - - -
Parameters:positioners : Positioner, list of Positioners or None
-
-

See also

-
-
log_pos
-
Log positioner values to logbook
-
-
-

Examples

-

List all positioners:

-
>>>wh_pos()
-
-
-

List positioners m1, m2 and m3:

-
>>>wh_pos([m1, m2, m3])
-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.BlueskyInterface.describe.html b/ophyd/_as_gen/ophyd.device.BlueskyInterface.describe.html deleted file mode 100644 index a653a1c6ea..0000000000 --- a/ophyd/_as_gen/ophyd.device.BlueskyInterface.describe.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - ophyd.device.BlueskyInterface.describe — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.BlueskyInterface.describe

-
-
-BlueskyInterface.describe() → ophyd.device.OrderedDictType[str, typing.Dict[str, typing.Any]]
-

Provide schema and meta-data for read()

-

This keys in the OrderedDict this method returns must match the -keys in the OrderedDict return by read().

-

This provides schema related information, (ex shape, dtype), the -source (ex PV name), and if available, units, limits, precision etc.

- --- - - - -
Returns:

data_keys : OrderedDict

-
-

The keys must be strings and the values must be dict-like -with the event_model.event_descriptor.data_key schema.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.BlueskyInterface.pause.html b/ophyd/_as_gen/ophyd.device.BlueskyInterface.pause.html deleted file mode 100644 index e3b5f2415f..0000000000 --- a/ophyd/_as_gen/ophyd.device.BlueskyInterface.pause.html +++ /dev/null @@ -1,302 +0,0 @@ - - - - - - - - - - - ophyd.device.BlueskyInterface.pause — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.BlueskyInterface.pause

-
-
-BlueskyInterface.pause() → None
-

Attempt to ‘pause’ the device.

-

This is called when ever the -RunEngine is interrupted.

-

A device may have internal state that means plans can not -safely be re-wound. This method may: put the device in a -‘paused’ state and/or raise -NoReplayAllowed to indicate that -the plan can not be rewound.

- --- - - - -
Raises:bluesky.run_engine.NoReplayAllowed
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.BlueskyInterface.read.html b/ophyd/_as_gen/ophyd.device.BlueskyInterface.read.html deleted file mode 100644 index efe33aad65..0000000000 --- a/ophyd/_as_gen/ophyd.device.BlueskyInterface.read.html +++ /dev/null @@ -1,311 +0,0 @@ - - - - - - - - - - - ophyd.device.BlueskyInterface.read — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.BlueskyInterface.read

-
-
-BlueskyInterface.read() → ophyd.device.OrderedDictType[str, typing.Dict[str, typing.Any]]
-

Read data from the device

-

This method is expected to be as instantaneous as possible, -with any substantial acquisition time taken care of in -trigger().

-

The OrderedDict returned by this method must have identical -keys (in the same order) as the OrderedDict returned by -describe().

-

By convention, the first key in the return is the ‘primary’ key -and maybe used by heuristics in bluesky.

-

The values in the ordered dictionary must be dict (-likes) with the -keys {'value', 'timestamp'}. The 'value' may have any type, -the timestamp must be a float UNIX epoch timestamp in UTC.

- --- - - - -
Returns:

data : OrderedDict

-
-

The keys must be strings and the values must be dict-like -with the keys {'value', 'timestamp'}

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.BlueskyInterface.resume.html b/ophyd/_as_gen/ophyd.device.BlueskyInterface.resume.html deleted file mode 100644 index 68f4d6ca8a..0000000000 --- a/ophyd/_as_gen/ophyd.device.BlueskyInterface.resume.html +++ /dev/null @@ -1,290 +0,0 @@ - - - - - - - - - - - ophyd.device.BlueskyInterface.resume — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.BlueskyInterface.resume

-
-
-BlueskyInterface.resume() → None
-

Resume a device from a ‘paused’ state

-

This is called by the bluesky.run_engine.RunEngine -when it resumes from an interruption and is responsible for -ensuring that the device is ready to take data again.

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.BlueskyInterface.stage.html b/ophyd/_as_gen/ophyd.device.BlueskyInterface.stage.html deleted file mode 100644 index 07517b7c37..0000000000 --- a/ophyd/_as_gen/ophyd.device.BlueskyInterface.stage.html +++ /dev/null @@ -1,313 +0,0 @@ - - - - - - - - - - - ophyd.device.BlueskyInterface.stage — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.BlueskyInterface.stage

-
-
-BlueskyInterface.stage() → typing.List[object]
-

Stage the device for data collection.

-

This method is expected to put the device into a state where -repeated calls to trigger() and -read() will ‘do the right thing’.

-

Staging not idempotent and should raise -RedundantStaging if staged twice without an -intermediate unstage().

-

This method should be as fast as is feasible as it does not return -a status object.

-

The return value of this is a list of all of the (sub) devices -stage, including it’s self. This is used to ensure devices -are not staged twice by the RunEngine.

-

This is an optional method, if the device does not need -staging behavior it should not implement stage (or -unstage).

- --- - - - -
Returns:

devices : list

-
-

list including self and all child devices staged

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.BlueskyInterface.trigger.html b/ophyd/_as_gen/ophyd.device.BlueskyInterface.trigger.html deleted file mode 100644 index 7d3969a4e9..0000000000 --- a/ophyd/_as_gen/ophyd.device.BlueskyInterface.trigger.html +++ /dev/null @@ -1,311 +0,0 @@ - - - - - - - - - - - ophyd.device.BlueskyInterface.trigger — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.BlueskyInterface.trigger

-
-
-BlueskyInterface.trigger() → ophyd.status.StatusBase
-

Trigger the device and return status object

-

This method is responsible for implementing ‘trigger’ or -‘acquire’ functionality of this device.

-

If there is an appreciable time between triggering the device -and it being able to be read (via the -read() method) then this method is -also responsible for arranging that the -StatusBase object returned my this method -is notified when the device is ready to be read.

-

If there is no delay between triggering and being readable, -then this method must return a SatusBase -object which is already completed.

- --- - - - -
Returns:

status : StatusBase

-
-

StatusBase object which will be marked -as complete when the device is ready to be read.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.BlueskyInterface.unstage.html b/ophyd/_as_gen/ophyd.device.BlueskyInterface.unstage.html deleted file mode 100644 index 26886717b0..0000000000 --- a/ophyd/_as_gen/ophyd.device.BlueskyInterface.unstage.html +++ /dev/null @@ -1,305 +0,0 @@ - - - - - - - - - - - ophyd.device.BlueskyInterface.unstage — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.BlueskyInterface.unstage

-
-
-BlueskyInterface.unstage() → typing.List[object]
-

Unstage the device.

-

This method returns the device to the state it was prior to the -last stage call.

-

This method should be as fast as feasible as it does not -return a status object.

-

This method must be idempotent, multiple calls (without a new -call to ‘stage’) have no effect.

- --- - - - -
Returns:

devices : list

-
-

list including self and all child devices unstaged

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Component.html b/ophyd/_as_gen/ophyd.device.Component.html deleted file mode 100644 index 30ad764522..0000000000 --- a/ophyd/_as_gen/ophyd.device.Component.html +++ /dev/null @@ -1,358 +0,0 @@ - - - - - - - - - - - ophyd.device.Component — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Component

-
-
-class ophyd.device.Component(cls, suffix=None, *, lazy=False, trigger_value=None, add_prefix=None, doc=None, **kwargs)
-

A descriptor representing a device component (or signal)

-

Unrecognized keyword arguments will be passed directly to the component -class initializer.

- --- - - - -
Parameters:

cls : class

-
-

Class of signal to create. The required signature of -cls.__init__ is (if suffix is given):

-
def __init__(self, pv_name, parent=None, **kwargs):
-
-
-

or (if suffix is None)

-
def __init__(self, parent=None, **kwargs):
-
-
-

The class may have a wait_for_connection() which is called -during the component instance creation.

-
-

suffix : str, optional

-
-

The PV suffix, which gets appended onto parent.prefix to -generate the final PV that the instance component will bind to. -Also see add_prefix

-
-

lazy : bool, optional

-
-

Lazily instantiate the signal. If False, the signal will be -instantiated upon component instantiation

-
-

trigger_value : any, optional

-
-

Mark as a signal to be set on trigger. The value is sent to the signal -at trigger time.

-
-

add_prefix : sequence, optional

-
-

Keys in the kwargs to prefix with the Device PV prefix during -creation of the component instance. -Defaults to ('suffix', 'write_pv', )

-
-

doc : str, optional

-
-

string to attach to component DvcClass.component.__doc__

-
-
-
-
-__init__(cls, suffix=None, *, lazy=False, trigger_value=None, add_prefix=None, doc=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - -
__init__(cls[, suffix, lazy, trigger_value, …])
create_component(instance)Create a component for the instance
make_docstring(parent_class)
maybe_add_prefix(instance, kw, suffix)Add prefix to a suffix if kw is in self.add_prefix
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.ComponentMeta.__new__.html b/ophyd/_as_gen/ophyd.device.ComponentMeta.__new__.html deleted file mode 100644 index 4017283c73..0000000000 --- a/ophyd/_as_gen/ophyd.device.ComponentMeta.__new__.html +++ /dev/null @@ -1,281 +0,0 @@ - - - - - - - - - - - ophyd.device.ComponentMeta.__new__ — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.ComponentMeta.__new__

-
-
-static ComponentMeta.__new__(name, bases, clsdict)
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.ComponentMeta.__prepare__.html b/ophyd/_as_gen/ophyd.device.ComponentMeta.__prepare__.html deleted file mode 100644 index 50c4ca639f..0000000000 --- a/ophyd/_as_gen/ophyd.device.ComponentMeta.__prepare__.html +++ /dev/null @@ -1,283 +0,0 @@ - - - - - - - - - - - ophyd.device.ComponentMeta.__prepare__ — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.ComponentMeta.__prepare__

-
-
-classmethod ComponentMeta.__prepare__(name, bases)
-

Prepare allows the class attribute dictionary to be ordered as -defined by the user

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.ComponentMeta.html b/ophyd/_as_gen/ophyd.device.ComponentMeta.html deleted file mode 100644 index 7144991cd1..0000000000 --- a/ophyd/_as_gen/ophyd.device.ComponentMeta.html +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - - - - - - ophyd.device.ComponentMeta — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.ComponentMeta

-
-
-class ophyd.device.ComponentMeta
-

Creates attributes for Components by inspecting class definition

-
-
-__init__($self, /, *args, **kwargs)
-

Initialize self. See help(type(self)) for accurate signature.

-
- -

Methods

- ---- - - - - - -
mro(() -> list)return a type’s method resolution order
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.configure.html b/ophyd/_as_gen/ophyd.device.Device.configure.html deleted file mode 100644 index 0efce47ee6..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.configure.html +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.configure — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.configure

-
-
-Device.configure(d: typing.Dict[str, typing.Any]) → typing.Tuple[typing.Dict[str, typing.Any], typing.Dict[str, typing.Any]]
-

Configure the device for something during a run

-

This default implementation allows the user to change any of the -configuration_attrs. Subclasses might override this to perform -additional input validation, cleanup, etc.

- --- - - - - - -
Parameters:

d : dict

-
-

The configuration dictionary. To specify the order that -the changes should be made, use an OrderedDict.

-
-
Returns:

(old, new) tuple of dictionaries

-

Where old and new are pre- and post-configure configuration states.

-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.connected.html b/ophyd/_as_gen/ophyd.device.Device.connected.html deleted file mode 100644 index c8d2a26ef4..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.connected.html +++ /dev/null @@ -1,275 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.connected — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.connected

-
-
-Device.connected
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.describe_configuration.html b/ophyd/_as_gen/ophyd.device.Device.describe_configuration.html deleted file mode 100644 index c8bfa8041f..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.describe_configuration.html +++ /dev/null @@ -1,297 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.describe_configuration — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.describe_configuration

-
-
-Device.describe_configuration() → ophyd.device.OrderedDictType[str, typing.Dict[str, typing.Any]]
-

Provide schema & meta-data for read_configuration()

-

This keys in the OrderedDict this method returns must match the -keys in the OrderedDict return by read().

-

This provides schema related information, (ex shape, dtype), the -source (ex PV name), and if available, units, limits, precision etc.

- --- - - - -
Returns:

data_keys : OrderedDict

-
-

The keys must be strings and the values must be dict-like -with the event_model.event_descriptor.data_key schema.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.get.html b/ophyd/_as_gen/ophyd.device.Device.get.html deleted file mode 100644 index cb3fe9753a..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.get.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.get — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.get

-
-
-Device.get(**kwargs)
-

Get the value of all components in the device

-

Keyword arguments are passed onto each signal.get()

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.get_device_tuple.html b/ophyd/_as_gen/ophyd.device.Device.get_device_tuple.html deleted file mode 100644 index 26af1cbde7..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.get_device_tuple.html +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.get_device_tuple — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.get_device_tuple

-
-
-classmethod Device.get_device_tuple()
-

The device tuple type associated with an Device class

-

This is a tuple representing the full state of all components and -dynamic device sub-components.

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.get_instantiated_signals.html b/ophyd/_as_gen/ophyd.device.Device.get_instantiated_signals.html deleted file mode 100644 index 944a3eef94..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.get_instantiated_signals.html +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.get_instantiated_signals — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.get_instantiated_signals

-
-
-Device.get_instantiated_signals(*, attr_prefix=None)
-

Yields all of the instantiated signals in a device hierarchy

- --- - - - - - -
Parameters:

attr_prefix : string, optional

-
-

The attribute prefix. If None, defaults to self.name

-
-
Yields:

(fully_qualified_attribute_name, signal_instance)

-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.html b/ophyd/_as_gen/ophyd.device.Device.html deleted file mode 100644 index 287c8ff5fb..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.html +++ /dev/null @@ -1,383 +0,0 @@ - - - - - - - - - - - ophyd.device.Device — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device

-
-
-class ophyd.device.Device(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-

Base class for device objects

-

This class provides attribute access to one or more Signals, which can be -a mixture of read-only and writable. All must share the same base_name.

- --- - - - -
Parameters:

prefix : str, optional

-
-

The PV prefix for all components of the device

-
-

name : str, keyword only

-
-

The name of the device

-
-

read_attrs : sequence of attribute names

-
-

the components to include in a normal reading (i.e., in read())

-
-

configuration_attrs : sequence of attribute names

-
-

the components to be read less often (i.e., in -read_configuration()) and to adjust via configure()

-
-

parent : instance or None

-
-

The instance of the parent device, if applicable

-
-
-
-
-__init__(prefix='', *, name, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
__init__([prefix, read_attrs, …])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
configure((d: typing.Dict[str, …)Configure the device for something during a run
describe(…)Provide schema and meta-data for read()
describe_configuration(…)Provide schema & meta-data for read_configuration()
get(**kwargs)Get the value of all components in the device
get_device_tuple()The device tuple type associated with an Device class
get_instantiated_signals(*[, attr_prefix])Yields all of the instantiated signals in a device hierarchy
pause(() -> None)Attempt to ‘pause’ the device.
put(dev_t, **kwargs)Put a value to all components of the device
read(() -> ophyd.device.OrderedDictType[str, …)Read data from the device
read_configuration(…)returns dictionary mapping names to (value, timestamp) pairs
resume(() -> None)Resume a device from a ‘paused’ state
stage(() -> typing.List[object])Stage the device for data collection.
stop(*[, success])Stop the Device and all (instantiated) subdevices
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
summary()
trigger(() -> ophyd.status.StatusBase)Trigger the device and return status object
unstage(() -> typing.List[object])Unstage the device.
unsubscribe(cid)Remove a subscription
wait_for_connection([all_signals, timeout])Wait for signals to connect
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.put.html b/ophyd/_as_gen/ophyd.device.Device.put.html deleted file mode 100644 index d1dae7d9df..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.put.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.put — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.put

-
-
-Device.put(dev_t, **kwargs)
-

Put a value to all components of the device

-

Keyword arguments are passed onto each signal.put()

- --- - - - -
Parameters:

dev_t : DeviceTuple or tuple

-
-

The device tuple with the value(s) to put (see get_device_tuple)

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.read_configuration.html b/ophyd/_as_gen/ophyd.device.Device.read_configuration.html deleted file mode 100644 index 467303a9c8..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.read_configuration.html +++ /dev/null @@ -1,282 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.read_configuration — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.read_configuration

-
-
-Device.read_configuration() → ophyd.device.OrderedDictType[str, typing.Dict[str, typing.Any]]
-

returns dictionary mapping names to (value, timestamp) pairs

-

To control which fields are included, adjust the -configuration_attrs list.

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.Device.wait_for_connection.html b/ophyd/_as_gen/ophyd.device.Device.wait_for_connection.html deleted file mode 100644 index e949fd3e36..0000000000 --- a/ophyd/_as_gen/ophyd.device.Device.wait_for_connection.html +++ /dev/null @@ -1,292 +0,0 @@ - - - - - - - - - - - ophyd.device.Device.wait_for_connection — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.Device.wait_for_connection

-
-
-Device.wait_for_connection(all_signals=False, timeout=2.0)
-

Wait for signals to connect

- --- - - - -
Parameters:

all_signals : bool, optional

-
-

Wait for all signals to connect (including lazy ones)

-
-

timeout : float or None

-
-

Overall timeout

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.DynamicDeviceComponent.html b/ophyd/_as_gen/ophyd.device.DynamicDeviceComponent.html deleted file mode 100644 index 19b321df94..0000000000 --- a/ophyd/_as_gen/ophyd.device.DynamicDeviceComponent.html +++ /dev/null @@ -1,339 +0,0 @@ - - - - - - - - - - - ophyd.device.DynamicDeviceComponent — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.DynamicDeviceComponent

-
-
-class ophyd.device.DynamicDeviceComponent(defn, *, clsname=None, doc=None)
-

An Device component that dynamically creates a OphyDevice

- --- - - - -
Parameters:

defn : OrderedDict

-
-

The definition of all attributes to be created, in the form of:

-
defn['attribute_name'] = (SignalClass, pv_suffix, keyword_arg_dict)
-
-
-

This will create an attribute on the sub-device of type SignalClass, -with a suffix of pv_suffix, which looks something like this:

-
parent.attribute_name = SignalClass(pv_suffix, **keyword_arg_dict)
-
-
-

Keep in mind that this is actually done in the metaclass creation, and -not exactly as written above.

-
-

clsname : str, optional

-
-

The name of the class to be generated -This defaults to {parent_name}{this_attribute_name.capitalize()}

-
-

doc : str, optional

-
-

The docstring to put on the dynamically generated class

-
-
-
-
-__init__(defn, *, clsname=None, doc=None)
-
- -

Methods

- ---- - - - - - - - - - - - - - - -
__init__(defn, *[, clsname, doc])
create_attr(attr_name)
create_component(instance)Create a component for the instance
make_docstring(parent_class)
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.FormattedComponent.html b/ophyd/_as_gen/ophyd.device.FormattedComponent.html deleted file mode 100644 index cc14098e95..0000000000 --- a/ophyd/_as_gen/ophyd.device.FormattedComponent.html +++ /dev/null @@ -1,331 +0,0 @@ - - - - - - - - - - - ophyd.device.FormattedComponent — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device.FormattedComponent

-
-
-class ophyd.device.FormattedComponent(cls, suffix=None, *, lazy=False, trigger_value=None, add_prefix=None, doc=None, **kwargs)
-

A Component which takes a dynamic format string

-

This differs from Component in that the parent prefix is not automatically -added onto the Component suffix. Additionally, str.format() style strings -are accepted, allowing access to Device instance attributes:

-
>>> from ophyd import (Component as C, FormattedComponent as FC)
->>> class MyDevice(Device):
-...     # A normal component, where 'suffix' is added to prefix verbatim
-...     cpt = C(EpicsSignal, 'suffix')
-...     # A formatted component, where 'self' refers to the Device instance
-...     ch = FC(EpicsSignal, '{self.prefix}{self._ch_name}')
-...
-...     def __init__(self, prefix, ch_name=None, **kwargs):
-...         self._ch_name = ch_name
-...         super().__init__(prefix, **kwargs)
-
-
-
>>> dev = MyDevice('prefix:', ch_name='some_channel', name='dev')
->>> print(dev.cpt.pvname)
-prefix:suffix
->>> print(dev.ch.pvname)
-prefix:some_channel
-
-
-

For additional documentation, refer to Component.

-
-
-__init__(cls, suffix=None, *, lazy=False, trigger_value=None, add_prefix=None, doc=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - - - - -
__init__(cls[, suffix, lazy, trigger_value, …])
create_component(instance)Create a component for the instance
make_docstring(parent_class)
maybe_add_prefix(instance, kw, suffix)
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.device.html b/ophyd/_as_gen/ophyd.device.html deleted file mode 100644 index 21a8a74473..0000000000 --- a/ophyd/_as_gen/ophyd.device.html +++ /dev/null @@ -1,325 +0,0 @@ - - - - - - - - - - - ophyd.device — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.device

-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BlueskyInterface(*args, **kwargs)Classes that inherit from this can safely customize the these methods without breaking mro.
Component(cls[, suffix, lazy, …])A descriptor representing a device component (or signal)
ComponentMetaCreates attributes for Components by inspecting class definition
Device([prefix, read_attrs, …])Base class for device objects
DynamicDeviceComponent(defn, *[, clsname, doc])An Device component that dynamically creates a OphyDevice
FormattedComponent(cls[, suffix, lazy, …])A Component which takes a dynamic format string
GenerateDatumInterfaceClasses that inherit from this can safely customize the generate_datum method without breaking mro.
OrderedDictType(…[, two])
StagedThree-state switch
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.epics_motor.html b/ophyd/_as_gen/ophyd.epics_motor.html deleted file mode 100644 index a8df764dd3..0000000000 --- a/ophyd/_as_gen/ophyd.epics_motor.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - - - - - - ophyd.epics_motor — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.epics_motor

-

Classes

- ---- - - - - - - - - - - - -
EpicsMotor(*args, **kwargs)An EPICS motor record, wrapped in a Positioner
HomeEnumAn enumeration.
MotorBundle(*args[, configuration_attrs])Sub-class this to device a bundle of motors
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.collect.html b/ophyd/_as_gen/ophyd.flyers.FlyerInterface.collect.html deleted file mode 100644 index 2ae4a3624e..0000000000 --- a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.collect.html +++ /dev/null @@ -1,296 +0,0 @@ - - - - - - - - - - - ophyd.flyers.FlyerInterface.collect — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.flyers.FlyerInterface.collect

-
-
-FlyerInterface.collect() → typing.Generator[[typing.Dict, NoneType], NoneType]
-

Retrieve data from the flyer as proto-events

-

The events can be from a mixture of event streams, it is -the responsibility of the consumer (ei the RunEngine) to sort -them out.

- --- - - - -
Yields:

event_data : dict

-
-

Must have the keys {‘time’, ‘timestamps’, ‘data’}.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.complete.html b/ophyd/_as_gen/ophyd.flyers.FlyerInterface.complete.html deleted file mode 100644 index a05d265bc6..0000000000 --- a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.complete.html +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - ophyd.flyers.FlyerInterface.complete — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.flyers.FlyerInterface.complete

-
-
-FlyerInterface.complete() → ophyd.status.StatusBase
-

Wait for flying to be complete.

-

This can either be a question (“are you done yet”) or a -command (“please wrap up”) to accommodate flyers that have a -fixed trajectory (ex. high-speed raster scans) or that are -passive collectors (ex MAIA or a hardware buffer).

-

In either case, the returned status object should indicate when -the device is actually finished flying.

- --- - - - -
Returns:

complete_status : StatusBase

-
-

Indicate when flying has completed

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.html b/ophyd/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.html deleted file mode 100644 index de79bdd7a4..0000000000 --- a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.html +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - - - - - - ophyd.flyers.FlyerInterface.describe_collect — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.flyers.FlyerInterface.describe_collect

-
-
-FlyerInterface.describe_collect() → typing.Dict[str, typing.Dict]
-

Provide schema & meta-data from collect()

-

This is analogous to describe(), but nested by stream name.

-

This provides schema related information, (ex shape, dtype), the -source (ex PV name), and if available, units, limits, precision etc.

-

The data_keys are mapped to events from collect by matching the -keys.

- --- - - - -
Returns:

data_keys_by_stream : dict

-
-

The keys must be strings and the values must be dict-like -with keys that are str and the inner values are dict-like -with the event_model.event_descriptor.data_key schema.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.kickoff.html b/ophyd/_as_gen/ophyd.flyers.FlyerInterface.kickoff.html deleted file mode 100644 index 62a2c54d5b..0000000000 --- a/ophyd/_as_gen/ophyd.flyers.FlyerInterface.kickoff.html +++ /dev/null @@ -1,295 +0,0 @@ - - - - - - - - - - - ophyd.flyers.FlyerInterface.kickoff — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.flyers.FlyerInterface.kickoff

-
-
-FlyerInterface.kickoff() → ophyd.status.StatusBase
-

Start a flyer

-

The status object return is marked as done once flying -has started.

- --- - - - -
Returns:

kickoff_status : StatusBase

-
-

Indicate when flying has started.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.flyers.html b/ophyd/_as_gen/ophyd.flyers.html deleted file mode 100644 index a60e5cd6c6..0000000000 --- a/ophyd/_as_gen/ophyd.flyers.html +++ /dev/null @@ -1,310 +0,0 @@ - - - - - - - - - - - ophyd.flyers — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.flyers

-

Classes

- ---- - - - - - - - - - - - - - - -
AreaDetectorTimeseriesCollector(*args[, …])
FlyerInterface(*args, **kwargs)
MonitorFlyerMixin(*args[, monitor_attrs, …])A bluesky-compatible flyer mixin, using monitor_attrs
WaveformCollector(*args[, data_is_time, …])Waveform collector
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.html b/ophyd/_as_gen/ophyd.html deleted file mode 100644 index 0af5eee6e2..0000000000 --- a/ophyd/_as_gen/ophyd.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - ophyd — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd

-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.mca.html b/ophyd/_as_gen/ophyd.mca.html deleted file mode 100644 index a7a45ee46d..0000000000 --- a/ophyd/_as_gen/ophyd.mca.html +++ /dev/null @@ -1,361 +0,0 @@ - - - - - - - - - - - ophyd.mca — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.mca

-

Functions

- ---- - - - - - -
add_rois(range_, **kwargs)Add one or more ROIs to an MCA instance
-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
EpicsDXP([prefix, read_attrs, …])All high-level DXP parameters for each channel
EpicsDXPBaseSystem([prefix, read_attrs, …])
EpicsDXPLowLevel(*args, **kwargs)
EpicsDXPLowLevelParameter([prefix, …])
EpicsDXPMapping([prefix, read_attrs, …])
EpicsDXPMultiElementSystem([prefix, …])
EpicsMCA(*args, **kwargs)mca records with extras from mca.db
EpicsMCACallback([prefix, read_attrs, …])Callback-related signals for MCA devices
EpicsMCAReadNotify(*args, **kwargs)mca record with extras from mcaReadNotify.db
EpicsMCARecord(*args, **kwargs)SynApps MCA Record interface
Mercury1([prefix, read_attrs, …])DXP Mercury with 1 channel example
MercuryDXP(*args, **kwargs)
ROI(prefix, *[, read_attrs, …])
Saturn([prefix, read_attrs, …])DXP Saturn with 1 channel example
SaturnDXP(*args, **kwargs)
SaturnMCA(*args, **kwargs)
SoftDXPTrigger(*args[, count_signal, …])Simple soft trigger for DXP devices
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.mixins.html b/ophyd/_as_gen/ophyd.mixins.html deleted file mode 100644 index 3ee14ae827..0000000000 --- a/ophyd/_as_gen/ophyd.mixins.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - ophyd.mixins — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.mixins

-

Classes

- ---- - - - - - - - - -
EpicsSignalPositioner(read_pv, **kwargs)
SignalPositionerMixin(*args, set_func[, …])Mixin to make a Signal a Positioner
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.html deleted file mode 100644 index e2143605dd..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.html +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject._reset_sub — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject._reset_sub

-
-
-OphydObject._reset_sub(event_type)
-

Remove all subscriptions in an event type

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject._run_subs.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject._run_subs.html deleted file mode 100644 index e6cb1d8825..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject._run_subs.html +++ /dev/null @@ -1,286 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject._run_subs — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject._run_subs

-
-
-OphydObject._run_subs(*args, sub_type, **kwargs)
-

Run a set of subscription callbacks

-

Only the kwarg sub_type is required, indicating -the type of callback to perform. All other positional arguments -and kwargs are passed directly to the callback function.

-

The host object will be injected into kwargs as ‘obj’ unless that key -already exists.

-

If the timestamp is None, then it will be replaced by the current -time.

-

No exceptions are raised if the callback functions fail.

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.html deleted file mode 100644 index e532499d4a..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.html +++ /dev/null @@ -1,296 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.clear_sub — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.clear_sub

-
-
-OphydObject.clear_sub(cb, event_type=None)
-

Remove a subscription, given the original callback function

-

See also subscribe(), unsubscribe()

- --- - - - -
Parameters:

cb : callable

-
-

The callback

-
-

event_type : str, optional

-
-

The event to unsubscribe from (if None, removes it from all event -types)

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.connected.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.connected.html deleted file mode 100644 index 856f8cf298..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.connected.html +++ /dev/null @@ -1,284 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.connected — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.connected

-
-
-OphydObject.connected
-

If the device is connected.

-

Subclasses should override this

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.event_types.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.event_types.html deleted file mode 100644 index 478918c60d..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.event_types.html +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.event_types — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.event_types

-
-
-OphydObject.event_types
-

Events that can be subscribed to via obj.subscribe

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.html deleted file mode 100644 index b950f19bc6..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.html +++ /dev/null @@ -1,344 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject

-
-
-class ophyd.ophydobj.OphydObject(*, name=None, parent=None)
-

The base class for all objects in Ophyd

-

Handles:

-
-
    -
  • Subscription/callback mechanism
  • -
-
- --- - - - -
Parameters:

name : str, optional

-
-

The name of the object.

-
-

parent : parent, optional

-
-

The object’s parent, if it exists in a hierarchy

-
-
-

Attributes

- ---- - - - - - -
namename of the device
-
-
-__init__(*, name=None, parent=None)
-
- -

Methods

- ---- - - - - - - - - - - - - - - - - - -
__init__(*[, name, parent])
check_value(value, **kwargs)Check if the value is valid for this object
clear_sub(cb[, event_type])Remove a subscription, given the original callback function
subscribe(cb[, event_type, run])Subscribe to events this event_type generates.
unsubscribe(cid)Remove a subscription
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.name.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.name.html deleted file mode 100644 index 7becf59b42..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.name.html +++ /dev/null @@ -1,287 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.name — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.name

-
-
-OphydObject.name
-

name of the device

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.parent.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.parent.html deleted file mode 100644 index 00b4521a10..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.parent.html +++ /dev/null @@ -1,288 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.parent — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.parent

-
-
-OphydObject.parent
-

The parent of the ophyd object.

-

If at the top of its hierarchy, parent will be None

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.root.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.root.html deleted file mode 100644 index f58aef4bad..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.root.html +++ /dev/null @@ -1,287 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.root — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.root

-
-
-OphydObject.root
-

Walk parents to find ultimate ancestor (parent’s parent…).

-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.subscribe.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.subscribe.html deleted file mode 100644 index 83e79ce4e4..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.subscribe.html +++ /dev/null @@ -1,331 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.subscribe — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.subscribe

-
-
-OphydObject.subscribe(cb, event_type=None, run=True)
-

Subscribe to events this event_type generates.

-

The callback will be called as cb(*args, **kwargs) with -the values passed to _run_subs with the following additional keys:

-
-
sub_type : the string value of the event_type -obj : the host object, added if ‘obj’ not already in kwargs
-

if the key ‘timestamp’ is in kwargs _and_ is None, then it will -be replaced with the current time before running the callback.

-

The *args, **kwargs passed to _run_subs will be cached as -shallow copies, be aware of passing in mutable data.

-
-

Warning

-

If the callback raises any exceptions when run they will be -silently ignored.

-
- --- - - - - - -
Parameters:

cb : callable

-
-

A callable function (that takes kwargs) to be run when the event is -generated. The expected signature is

-
def cb(*args, obj: OphydObject, sub_type: str, **kwargs) -> None:
-
-
-

The exact args/kwargs passed are whatever are passed to -_run_subs

-
-

event_type : str, optional

-
-

The name of the event to subscribe to (if None, defaults to -the default sub for the instance - obj._default_sub)

-

This maps to the sub_type kwargs in _run_subs

-
-

run : bool, optional

-
-

Run the callback now

-
-
Returns:

cid : int

-
-

id of callback, can be passed to unsubscribe to remove the -callback

-
-
-
-

See also

-

clear_sub, _run_subs

-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.html b/ophyd/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.html deleted file mode 100644 index e51637b21b..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.html +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj.OphydObject.unsubscribe — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj.OphydObject.unsubscribe

-
-
-OphydObject.unsubscribe(cid)
-

Remove a subscription

-

See also subscribe(), clear_sub()

- --- - - - -
Parameters:

cid : int

-
-

token return by subscribe()

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.ophydobj.html b/ophyd/_as_gen/ophyd.ophydobj.html deleted file mode 100644 index ad7aacf58d..0000000000 --- a/ophyd/_as_gen/ophyd.ophydobj.html +++ /dev/null @@ -1,313 +0,0 @@ - - - - - - - - - - - ophyd.ophydobj — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.ophydobj

-

Classes

- ---- - - - - - -
OphydObject(*[, name, parent])The base class for all objects in Ophyd
-

Exceptions

- ---- - - - - - -
UnknownSubscriptionSubclass of KeyError.
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.positioner.PositionerBase.set.html b/ophyd/_as_gen/ophyd.positioner.PositionerBase.set.html deleted file mode 100644 index e3d828b62e..0000000000 --- a/ophyd/_as_gen/ophyd.positioner.PositionerBase.set.html +++ /dev/null @@ -1,319 +0,0 @@ - - - - - - - - - - - ophyd.positioner.PositionerBase.set — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.positioner.PositionerBase.set

-
-
-PositionerBase.set(new_position: typing.Any, *, timeout: float = None, moved_cb: typing.Callable = None, wait: bool = False) → ophyd.status.StatusBase
-

Set a value and return a Status object

- --- - - - - - -
Parameters:

new_position : object

-
-

The input here is whatever the device requires (this -should be over-ridden by the implementation. For example -a motor would take a float, a shutter the strings {‘Open’, -‘Close’}, and a goineometer (h, k, l) tuples

-
-

timeout : float, optional

-
-

Maximum time to wait for the motion. If None, the default timeout -for this positioner is used.

-
-

moved_cb : callable, optional

-
-

Deprecated

-

Call this callback when movement has finished. This callback -must accept one keyword argument: ‘obj’ which will be set to -this positioner instance.

-
-

wait : bool, optional

-
-

Deprecated

-

If the method should block until the Status object reports -it is done.

-

Defaults to False

-
-
Returns:

status : StatusBase

-
-

Status object to indicate when the motion / set is done.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.positioner.PositionerBase.stop.html b/ophyd/_as_gen/ophyd.positioner.PositionerBase.stop.html deleted file mode 100644 index d96bc51fb9..0000000000 --- a/ophyd/_as_gen/ophyd.positioner.PositionerBase.stop.html +++ /dev/null @@ -1,293 +0,0 @@ - - - - - - - - - - - ophyd.positioner.PositionerBase.stop — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.positioner.PositionerBase.stop

-
-
-PositionerBase.stop(*, success: bool = False)
-

Stops motion.

-

Sub-classes must extend this method to _actually_ stop the device.

- --- - - - -
Parameters:

success : bool, optional

-
-

If the move should be considered a success despite the stop.

-

Defaults to False

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.positioner.html b/ophyd/_as_gen/ophyd.positioner.html deleted file mode 100644 index 7affaee3b2..0000000000 --- a/ophyd/_as_gen/ophyd.positioner.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - ophyd.positioner — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.positioner

-

Classes

- ---- - - - - - - - - -
PositionerBase(*[, name, parent, …])The positioner base class
SoftPositioner(*[, egu, limits, source, …])A positioner which does not communicate with any hardware
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.pseudopos.html b/ophyd/_as_gen/ophyd.pseudopos.html deleted file mode 100644 index 1fd96d3d48..0000000000 --- a/ophyd/_as_gen/ophyd.pseudopos.html +++ /dev/null @@ -1,319 +0,0 @@ - - - - - - - - - - - ophyd.pseudopos — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.pseudopos

-

Functions

- ---- - - - - - - - - -
pseudo_position_argument(method)
real_position_argument(method)
-

Classes

- ---- - - - - - - - - -
PseudoPositioner([prefix, concurrent, …])A pseudo positioner which can be comprised of multiple positioners
PseudoSingle([prefix, limits, egu, parent, …])A single axis of a PseudoPositioner
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.pv_positioner.html b/ophyd/_as_gen/ophyd.pv_positioner.html deleted file mode 100644 index caf94bca3f..0000000000 --- a/ophyd/_as_gen/ophyd.pv_positioner.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - ophyd.pv_positioner — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.pv_positioner

-

Classes

- ---- - - - - - - - - -
PVPositioner([prefix, limits, name, …])A Positioner which is controlled using multiple user-defined signals
PVPositionerPC(*args, **kwargs)
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.quadem.html b/ophyd/_as_gen/ophyd.quadem.html deleted file mode 100644 index 08ccab26fc..0000000000 --- a/ophyd/_as_gen/ophyd.quadem.html +++ /dev/null @@ -1,310 +0,0 @@ - - - - - - - - - - - ophyd.quadem — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.quadem

-

Classes

- ---- - - - - - - - - - - - - - - -
APS_EM(*args, **kwargs)
NSLS_EM(*args, **kwargs)
QuadEM(*args, **kwargs)
TetrAMM(*args, **kwargs)
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.scaler.html b/ophyd/_as_gen/ophyd.scaler.html deleted file mode 100644 index 8cfa87d0aa..0000000000 --- a/ophyd/_as_gen/ophyd.scaler.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - - - - - - ophyd.scaler — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.scaler

-

Classes

- ---- - - - - - - - - - - - -
EpicsScaler(*args, **kwargs)SynApps Scaler Record interface
ScalerCH(*args, **kwargs)
ScalerChannel(prefix, ch_num, **kwargs)
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.signal.html b/ophyd/_as_gen/ophyd.signal.html deleted file mode 100644 index fdf3a447d4..0000000000 --- a/ophyd/_as_gen/ophyd.signal.html +++ /dev/null @@ -1,319 +0,0 @@ - - - - - - - - - - - ophyd.signal — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.signal

-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - - - - -
ArrayAttributeSignal(attr, *[, name, parent])An AttributeSignal which is cast to an ndarray on get
AttributeSignal(attr, *[, name, parent])Signal derived from a Python object instance’s attribute
DerivedSignal(derived_from, *[, name, parent])A signal which is derived from another one
EpicsSignal(read_pv[, write_pv, pv_kw, …])An EPICS signal, comprised of either one or two EPICS PVs
EpicsSignalBase(read_pv, *[, pv_kw, string, …])A read-only EpicsSignal – that is, one with no write_pv
EpicsSignalRO(read_pv, *[, pv_kw, string, …])A read-only EpicsSignal – that is, one with no write_pv
Signal(*, name[, value, timestamp, parent, …])A signal, which can have a read-write or read-only value.
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.status.DeviceStatus.html b/ophyd/_as_gen/ophyd.status.DeviceStatus.html deleted file mode 100644 index 08eba98538..0000000000 --- a/ophyd/_as_gen/ophyd.status.DeviceStatus.html +++ /dev/null @@ -1,321 +0,0 @@ - - - - - - - - - - - ophyd.status.DeviceStatus — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.status.DeviceStatus

-
-
-class ophyd.status.DeviceStatus(device, **kwargs)
-

Device status

- --- - - - -
Parameters:

device : obj

-

done : bool, optional

-
-

Whether or not the motion has already completed

-
-

success : bool, optional

-
-

If motion has already completed, the status of that motion

-
-

timeout : float, optional

-
-

The default timeout to use for a blocking wait, and the amount of time -to wait to mark the motion as failed

-
-

settle_time : float, optional

-
-

The amount of time to wait between motion completion and running -callbacks

-
-
-
-
-__init__(device, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - -
__init__(device, **kwargs)
add_callback(cb)
watch(func)
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.status.MoveStatus.html b/ophyd/_as_gen/ophyd.status.MoveStatus.html deleted file mode 100644 index 6125e87ce1..0000000000 --- a/ophyd/_as_gen/ophyd.status.MoveStatus.html +++ /dev/null @@ -1,359 +0,0 @@ - - - - - - - - - - - ophyd.status.MoveStatus — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.status.MoveStatus

-
-
-class ophyd.status.MoveStatus(positioner, target, *, start_ts=None, **kwargs)
-

Asynchronous movement status

- --- - - - -
Parameters:

positioner : Positioner

-

target : float or array-like

-
-

Target position

-
-

done : bool, optional

-
-

Whether or not the motion has already completed

-
-

success : bool, optional

-
-

If motion has already completed, the status of that motion

-
-

start_ts : float, optional

-
-

The motion start timestamp

-
-

timeout : float, optional

-
-

The default timeout to use for a blocking wait, and the amount of time -to wait to mark the motion as failed

-
-

settle_time : float, optional

-
-

The amount of time to wait between motion completion and running -callbacks

-
-
-

Attributes

- ---- - - - - - - - - - - - - - - - - - - - - - - - -
pos(Positioner)
target(float or array-like) Target position
done(bool) Whether or not the motion has already completed
start_ts(float) The motion start timestamp
finish_ts(float) The motion completd timestamp
finish_pos(float or ndarray) The final position
success(bool) Motion successfully completed
-
-
-__init__(positioner, target, *, start_ts=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - - - - -
__init__(positioner, target, *[, start_ts])
add_callback(cb)
watch(func)Subscribe to notifications about progress.
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.status.Status.html b/ophyd/_as_gen/ophyd.status.Status.html deleted file mode 100644 index cba6e13501..0000000000 --- a/ophyd/_as_gen/ophyd.status.Status.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - ophyd.status.Status — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.status.Status

-
-
-class ophyd.status.Status(obj=None, **kwargs)
-

A basic status object

-

Has an optional associated object instance

-

Attributes

- ---- - - - - - -
obj(any or None) The object
-
-
-__init__(obj=None, **kwargs)
-
- -

Methods

- ---- - - - - - - - - -
__init__([obj])
add_callback(cb)
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.status.StatusBase._finished.html b/ophyd/_as_gen/ophyd.status.StatusBase._finished.html deleted file mode 100644 index daf6149932..0000000000 --- a/ophyd/_as_gen/ophyd.status.StatusBase._finished.html +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - - - - ophyd.status.StatusBase._finished — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.status.StatusBase._finished

-
-
-StatusBase._finished(success=True, **kwargs)
-

Inform the status object that it is done and if it succeeded

-
-

Warning

-

kwargs are not used, but are accepted because pyepics gives -in a bunch of kwargs that we don’t care about. This allows -the status object to be handed directly to pyepics (but -this is probably a bad idea for other reason.

-

This may be deprecated in the future.

-
- --- - - - -
Parameters:

success : bool, optional

-
-

if the action succeeded.

-
-
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.status.StatusBase.finished_cb.html b/ophyd/_as_gen/ophyd.status.StatusBase.finished_cb.html deleted file mode 100644 index 0ecf8b06c8..0000000000 --- a/ophyd/_as_gen/ophyd.status.StatusBase.finished_cb.html +++ /dev/null @@ -1,270 +0,0 @@ - - - - - - - - - - - ophyd.status.StatusBase.finished_cb — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.status.StatusBase.finished_cb

-
-
-StatusBase.finished_cb
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.status.StatusBase.html b/ophyd/_as_gen/ophyd.status.StatusBase.html deleted file mode 100644 index e8d3cc0c53..0000000000 --- a/ophyd/_as_gen/ophyd.status.StatusBase.html +++ /dev/null @@ -1,310 +0,0 @@ - - - - - - - - - - - ophyd.status.StatusBase — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.status.StatusBase

-
-
-class ophyd.status.StatusBase(*, timeout=None, settle_time=None, done=False, success=False)
-

This is a base class that provides a single-slot callback for when the -specific operation has finished.

- --- - - - -
Parameters:

timeout : float, optional

-
-

The default timeout to use for a blocking wait, and the amount of time -to wait to mark the operation as failed

-
-

settle_time : float, optional

-
-

The amount of time to wait between the caller specifying that the -status has completed to running callbacks

-
-
-
-
-__init__(*, timeout=None, settle_time=None, done=False, success=False)
-
- -

Methods

- ---- - - - - - - - - -
__init__(*[, timeout, settle_time, done, …])
add_callback(cb)
-
- -
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.status.html b/ophyd/_as_gen/ophyd.status.html deleted file mode 100644 index ec2578c19a..0000000000 --- a/ophyd/_as_gen/ophyd.status.html +++ /dev/null @@ -1,340 +0,0 @@ - - - - - - - - - - - ophyd.status — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.status

-

Functions

- ---- - - - - - -
wait(status[, timeout, poll_rate])(Blocking) wait for the status object to complete
-

Classes

- ---- - - - - - - - - - - - - - - - - - - - - -
AndStatus(left, right, **kwargs)a Status that has composes two other Status objects using logical and
DeviceStatus(device, **kwargs)Device status
MoveStatus(positioner, target, *[, start_ts])Asynchronous movement status
Status([obj])A basic status object
StatusBase(*[, timeout, settle_time, done, …])This is a base class that provides a single-slot callback for when the specific operation has finished.
SubscriptionStatus(device, callback[, …])Status updated via ophyd events
-

Exceptions

- ---- - - - - - -
UseNewProperty
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.utils.epics_pvs.html b/ophyd/_as_gen/ophyd.utils.epics_pvs.html deleted file mode 100644 index 86337d2307..0000000000 --- a/ophyd/_as_gen/ophyd.utils.epics_pvs.html +++ /dev/null @@ -1,358 +0,0 @@ - - - - - - - - - - - ophyd.utils.epics_pvs — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.utils.epics_pvs

-

Functions

- ---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
data_shape(val)Determine data-shape (dimensions)
data_type(val)Determine data-type of val.
fmt_time([tstamp])simple formatter for time values
raise_if_disconnected(fcn)Decorator to catch attempted access to disconnected EPICS channels.
record_field(record, field)Given a record and a field, combine them into
records_from_db(fn)Naively parse db/template files looking for record names
set_and_wait(signal, val[, poll_time, …])Set a signal to a value and wait until it reads correctly.
split_record_field(pv)Splits a pv into (record, field)
strip_field(pv)Strip off the field from a record
validate_pv_name(pv)Validates that there is not more than 1 ‘.’ in pv
waveform_to_string(value[, type_, delim])Convert a waveform that represents a string into an actual Python string
-

Classes

- ---- - - - - - - - - -
AlarmSeverityAn enumeration.
AlarmStatusAn enumeration.
-

Exceptions

- ---- - - - - - -
BadPVName
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.utils.errors.html b/ophyd/_as_gen/ophyd.utils.errors.html deleted file mode 100644 index 3e6a451a65..0000000000 --- a/ophyd/_as_gen/ophyd.utils.errors.html +++ /dev/null @@ -1,316 +0,0 @@ - - - - - - - - - - - ophyd.utils.errors — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.utils.errors

-

Exceptions

- ---- - - - - - - - - - - - - - - - - - - - - -
DisconnectedErrorSignal or SignalGroup is not connected to EPICS
ExceptionBundle(msg, exceptions)One or more exceptions was raised during a loop of try/except blocks
LimitErrorValue is outside of defined limits
OpExceptionOphyd base exception class
ReadOnlyErrorSignal is read-only
RedundantStaging
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.utils.html b/ophyd/_as_gen/ophyd.utils.html deleted file mode 100644 index 0acb0ddf68..0000000000 --- a/ophyd/_as_gen/ophyd.utils.html +++ /dev/null @@ -1,316 +0,0 @@ - - - - - - - - - - - ophyd.utils — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.utils

-

Functions

- ---- - - - - - - - - -
doc_annotation_forwarder(base_klass)
enum(**enums)Create an enum from the keyword arguments
-

Classes

- ---- - - - - - -
OrderedDefaultDict([default_factory])a combination of defaultdict and OrderedDict
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.utils.paths.html b/ophyd/_as_gen/ophyd.utils.paths.html deleted file mode 100644 index 77742424f9..0000000000 --- a/ophyd/_as_gen/ophyd.utils.paths.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - - - - - - ophyd.utils.paths — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.utils.paths

-

Functions

- ---- - - - - - - - - -
make_dir_tree(year, *[, base_path, mode])Make full directory tree for the year
makedirs(path, *[, mode, mode_base])Recursively make directories and set permissions
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_as_gen/ophyd.utils.startup.html b/ophyd/_as_gen/ophyd.utils.startup.html deleted file mode 100644 index a9d9b61fab..0000000000 --- a/ophyd/_as_gen/ophyd.utils.startup.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - - - - - - ophyd.utils.startup — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - - - - - - - - - - - -
- - - - -
-
-
-
- -
-

ophyd.utils.startup

-

Functions

- ---- - - - - - -
setup()
-
- - -
-
- -
-
- - -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_images/inheritance-125299db027430716e817e0d5c4c9da91b99fca3.png b/ophyd/_images/inheritance-125299db027430716e817e0d5c4c9da91b99fca3.png deleted file mode 100644 index b606ce7e7e1cf3de107254e2476f38436d5a990b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15232 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 A0{{R3 diff --git a/ophyd/_images/inheritance-125299db027430716e817e0d5c4c9da91b99fca3.png.map b/ophyd/_images/inheritance-125299db027430716e817e0d5c4c9da91b99fca3.png.map deleted file mode 100644 index 6b02880fc0..0000000000 --- a/ophyd/_images/inheritance-125299db027430716e817e0d5c4c9da91b99fca3.png.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-15bc9368c2f46f77d1599b9d515a6682240bfc8b.png b/ophyd/_images/inheritance-15bc9368c2f46f77d1599b9d515a6682240bfc8b.png deleted file mode 100644 index 3be776eb70dcbdf4f88058079615e85e69fc45ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6727 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 - - - - - - diff --git a/ophyd/_images/inheritance-3976a6e7436ad02c49d005e595a1a6cf07b83c70.png b/ophyd/_images/inheritance-3976a6e7436ad02c49d005e595a1a6cf07b83c70.png deleted file mode 100644 index c36642ca1bf61c06591a03a185940602e019cc03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5043 zcmZvg2{e@L|HcPVjjcg;Q%J~`eHl@VCD{|QW|T%@7~2$CVrq;eN!ewKETPCw_B56x z*&AyTV(c=^@AjVe_n!0q{{Q1S#yQX2Gq?Nuy{_-)dZNrt4OpT4PzVIVdeIPR34zeP z1Aki`VFJI8j1C_KFHERQ21p3);OAw1UOWWCiN1)uV1-Lv8V~ZgJWD&g63Fbja5lp6 z>(v1F!rIce5*%ES$GQe3cm+8HT{*r!2{Tp{kAXrL+4K3m6bPoWw@_0RYwRW`+Ydcw zEy-tb9P}5l=S#Fq_;f7VWBd^QizXO!&SGq-+6E4OzzZ|+MTR5%g> zgIO#VT+v4`h=^oOqU1$IvJyK``beZa235{^QiQ)dWPj&o9d(t|XX-kpkYs$p^We4; zLGfnK%bc7;Vq#)_rZ>hUWn@_I+NZmn`e%7;+am%21&`)~!P+#r6-BZvj5E!V2z=rP zu$-&qf#qU5D*QV5KByvIhpygr;Z_e^=#Q=@I?~zPPj?N#i6p6+vAUg5T!oT`X&BY1Jj7& zwR0m-zh`;o5~YF5PS@SsbY5Gr;Y@98cs`LxammTV^>x3+v1-Mfs*dUKK6IpYp`MWu z^jpzYh8HAdG%fD0&C-!x$aS0urG{e~c9A+~40HefxIA=#u`GD_1`6J&ZXiBGPDl zI{s{uvGBRPWwV8*h{Jjo7IDXP2#4Xg^MV?FAEkcpVygW!Jr&4cS%tZ3sVFg*c-T*B7}2rckZZvd*jGlI6(aU+bgl#t;nHTp-7!6;-K0@HbJ$p zUTvBnSYEaDJ*W)bC(=0THBx?bYs}ZoHrDUG$MF5GF5|95c?Qs@t#x8*h?&k_>wGL6?H_i6M(Fj!}PaWP|<&svb1iHV7XtSsDHLw*RS zmhk-f)O4&in_IsfJP8Ji@fA?<2y2-fBf${Ni+ZsQ~NBXXYl)kV$z9{rq(9Y}&3rEM8@^Yn|oSc`XrN`FhdOIHR zDSrO)<$hIFm5*<-kJ8auCDGU}0(z`=`Y~bxTkSpnMGW#ml^h&V`TZ{QnFOd&E{C$R zvPI7mdKY=oET6o*yu*$Af25LAQe0G0DE(&IF2BCM-rgdI(m}vmLFI8%QQ}YH<0GOt zck;01(+DKe)f$75v$MDN`Sn$@yuAEnaWU&)iL(I~tFV6e925#I4cWU3D(vnSZSPgh z7|kuy{Cm7M?&(vJ@ovLx0if(QP2ocxDgx5n%%*7?jD-Vd#y`i!$1~JB#SRqOh^nd% zE}OtFzcOwD=fCnJ1(Q`;>K*A!$NIuU-d7_nzpzkX-U0oLu)#cT5DVW(h7Ev3vjFh`4g8qTu{VB}L!gNYZ4FA2_NR%X6i5AW>kbon@<4FunxXJ$~&{#4ba z`OsLFPc|-bF2T{pyk+O>Ym!*~@nu{{yNo|VQFqe#u?x*=D$LLaa=)TG1Bpg%Q;jY6ZF zt-H9O_;vF$35I5723N20g@DiS_J{doQp=!&C*Hq$by^dAgo}H$&S2=+AFW`$U4{wGSdoF7&XFU+pZohG+S~PwQ&eQmG^+7m+TY*Bw03kDfa5O2bZs6#L!Rw>u*(}) zM@V(EI+I{tI51S>F9rHWtTtv$oV>rF31@$#FIsLVV`*tw>ekI)C@i#ac8;y7(I~H|Xj%%$E+{Y}mN?b( zr>J7|Z{8F)O;r;{jCXL~33`9(#oKe|)OJV#YK}%Qp&2w*jV)Hhj5W@F zo1L4B{`Sq(|h;)&I8%SB_&Dz=t+}egKJ8>ajMst8JyVNXWw+1_tS8x zu*-Ns=VobM|3S?dQWkjnC&9O+6u0zuz%W)p1cMz$B<^&YT^tu%KLsK4)A512-JA9p(27-oyiB_=4iI#bo1_iJF-pr+en z)b9OJl67uinP}YU1cL)<94li_FQ(3)=9VY-aQs^{k9a zLjFAJURLH?c3JXS&|-bcL_;JKFgHMI$Fy)1?CQ0 z7-~X`8%d|R)(#4vsqdqs zQk%p3~4AG{Y(5Enquw|fqCI1A$pEk}>h_a=5W z_V!X(EH-j<3BJNVvoBNW)ti0}1-Ll^|3Vq3#rC7Z zt83!MiC`W?jEvazOqjI1>O-Fm+Vt=X40N6Ul6#gvMz}3XBDnpEe7t(Lk<#^qgaqKe zg4k3-^G%22iXuc!z^b#P7p|)_ou3yrKt2g`DtV}%J;?_n@`7Xnl`6K5j@91h^{N!$ zk#z`bLtXInl<7%Tk0`V$p@;Zsq*=`XlzM6TIxAJVO#`eT5~`}ye)?&EOLP6R?w3D6 z55N)O+|i63kA-wiOjvAZ9ws$5*m-kGyKW=i3r{`lkFp~44l>Dk+-tTR-ptE(q!-P2fIUG=8zZA~}hnL($1kf|KIzcgCuI#6)MHH0b0 zR^{WOLWO3xA=33zYZPZ(Mn)`^8eFmgG6ouhG4S&86Vf=fR{&{a z1AO0CHSMkTvVZ<%AKDwRrRzR*2OM0Yif6JP;PUugp9#uA)wG#9Z!zKg&K2A_DxC9hY}NLl{7S}v5k3GXI>7gf@uw%-1u(6| z<5D1r%6azF(1w}j6Cc7E03iWRN<;+8f)J34``?Uvc@quYUJm4s`8Q;}xv+NSA27=8 z%-F3wkxx5MIj`Qiq3!V3F3W*`0UfhBhwfGQkwQ;82U8e-EiCweL?Z1}$Gb3C^5S2) zcU{AAzObf-A3zFVd|i8c0pPI(1qJk*FFHrztE1Fu=?;6H}QMLJbeWU>E-z zh37scNTEP0O>K^1ctGIP0p~N99%Skl5MVUAPV;3xf8bzt0o4v56>&E*>8CyEXF3d$Cp_b#CDKj;o5t5aeM? z_~XZHAg+Piu?73tX&G`oK*&l^_y5Vp)A_%&M|O6m-1R|K^rzkR|FD}Wa=`i$+d=mu z<^T6lk_homopJ^tKVxjn;p^A06GLULeWv)}oZQ@<7|OR`5fP&Q!F>Yi#6M4;z!KVF Y-sPMUl1c>%JcWZ?)H6lC(Ybd2KOarTXaE2J diff --git a/ophyd/_images/inheritance-3976a6e7436ad02c49d005e595a1a6cf07b83c70.png.map b/ophyd/_images/inheritance-3976a6e7436ad02c49d005e595a1a6cf07b83c70.png.map deleted file mode 100644 index 35e3f5cc77..0000000000 --- a/ophyd/_images/inheritance-3976a6e7436ad02c49d005e595a1a6cf07b83c70.png.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png b/ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png deleted file mode 100644 index 577bc2472c4fdd69df4eb0568bb0e0f09dc40d62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75414 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 diff --git a/ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png.map b/ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png.map deleted file mode 100644 index da4d3a85de..0000000000 --- a/ophyd/_images/inheritance-3ead649a59595e814a12c6fc7d6708f6b9d28ff2.png.map +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-400599b6065a4805b6977a7d8f4e7a8d1803134e.png b/ophyd/_images/inheritance-400599b6065a4805b6977a7d8f4e7a8d1803134e.png deleted file mode 100644 index 10c28e5b5a436700b1070555621b1cfef50bdbeb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21150 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 - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-56ba088399d2c0103e2f5f0b87e1a5c50075c3fd.png b/ophyd/_images/inheritance-56ba088399d2c0103e2f5f0b87e1a5c50075c3fd.png deleted file mode 100644 index 10af27701f1205c674bf7f073c8998618cf7adf9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 109531 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 ^5-V|C?)+vU~yUPU}#%BR^1 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

~G&WofswSma)K0 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 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png b/ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png deleted file mode 100644 index 20e4bff80f9f2c6560a4645045fe8789a29ad2cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15045 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 CY6yG) diff --git a/ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png.map b/ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png.map deleted file mode 100644 index 50823136b8..0000000000 --- a/ophyd/_images/inheritance-5970b9d36cbddbb5c755c5f0bae788be51abe4f9.png.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png b/ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png deleted file mode 100644 index d0505091332855fe7da3e3aa2381919d4747b05a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18844 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 Y7Pj$;ttaK;UrE%D>Zp_|pA7r|0B^;09smFU diff --git a/ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png.map b/ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png.map deleted file mode 100644 index 46bceadbc6..0000000000 --- a/ophyd/_images/inheritance-5a622bdec20ce63c25d8c373388d172ce9d499e5.png.map +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-6ca39687e659a6c23dacd535938e324e17fe3201.png b/ophyd/_images/inheritance-6ca39687e659a6c23dacd535938e324e17fe3201.png deleted file mode 100644 index d77242913c5690dfa775ee468b2817f849859a38..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75861 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

HwHr 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 G@BalEVMVn7 diff --git a/ophyd/_images/inheritance-6ca39687e659a6c23dacd535938e324e17fe3201.png.map b/ophyd/_images/inheritance-6ca39687e659a6c23dacd535938e324e17fe3201.png.map deleted file mode 100644 index 5fc27412dc..0000000000 --- a/ophyd/_images/inheritance-6ca39687e659a6c23dacd535938e324e17fe3201.png.map +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-702fe028f75ebee8c51545abba1e7b9ce9898e97.png b/ophyd/_images/inheritance-702fe028f75ebee8c51545abba1e7b9ce9898e97.png deleted file mode 100644 index 2aad2756db92ea59a28ca6216be8d0ead9b65a2f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20510 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 bPen4h$}1Ke=OrYup9v>awN$c*rau1%bk!0q diff --git a/ophyd/_images/inheritance-702fe028f75ebee8c51545abba1e7b9ce9898e97.png.map b/ophyd/_images/inheritance-702fe028f75ebee8c51545abba1e7b9ce9898e97.png.map deleted file mode 100644 index e4cfc6e3f7..0000000000 --- a/ophyd/_images/inheritance-702fe028f75ebee8c51545abba1e7b9ce9898e97.png.map +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png b/ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png deleted file mode 100644 index 1833d73493aec9de244668b9fee1f80b5983e8b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4233 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 a+n2%*`4t>D$|r%DhYa=2kY&1<`~L@zO8LzI diff --git a/ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png.map b/ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png.map deleted file mode 100644 index a188120389..0000000000 --- a/ophyd/_images/inheritance-77ecbb618f5cdbc91401d379f808279e6fa77e9a.png.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/ophyd/_images/inheritance-80ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png b/ophyd/_images/inheritance-80ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png deleted file mode 100644 index bbc03ce7473e4206a2d503d36d3f0e67e386eb61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 99334 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≥Nb)O&6ft4B$dlWf z4w6<7RKI;Y2GnbWyyA%!Lj0}-6dzgvWe{gl5gHmO@AJkdN0%$?7#7ZDZsC8PWpiG~ zeYx@j0u=byn?wg;WgS$1P~St$CMOLBt}SSnR|tRPv7f4>b!LA_NuxFBd~i357;Oq5U5!K9!Dv zGY(Q=^YikGVW?hb`k1U)IezKVrTq)(cZ%9NA*&wHGdC9iupvoyk?q@ya3JmH{@B3n zGyD1V@vYL|pSGuTx)#oHA3Js|^+N3y)In2ZJ}ABr*!AW1@2KOT|ioG~-?AHeKuj61)yGvSROUslS^faa*Mu#ZL8xqijEwqL0_UxW=fUZcj_ zg%;^Jdk-7KxSdKwJ?xaN*YKAH#kPMnG#Sdygo3c}iMHLQ!qB?*;XsobYP7K(?9V4eB`ME{)@IHrb>LXji1D`lB!kR?h;pZPyeGu}A zXg}x%`=w<(!1f6%qG8|)fXoP0m!4Cy{H1vg67g5Q@l9?bwNDe}xk#7xqLtNb+uJTA zG~;0cA}KiXeNH=8<~jx=el@38eh6*K1=1%a1Ctx5C-a3%(@O|R872e|Y=cUFLdMUV zObw+EK;v(XAEAbSbS)~19SR9|b4tb8k0^f-eY^Vlt|LtT+8~VzYBBT#5+qeBi(e!~ zH2o!5DfkRfqrFCQV+v>uVr*mn^79|~7WPO<5w8F$2~;^^;{jF=H|Ndt$1rRRoE3)e z|3qr)>2X`#mmR@u{n<~Rj{YZ2o9SV6^=n;!VoJeBAQch|^2E?0cj?!Y0KEJ}tu?0F z=q71ykKC9i9BOGSYyX$nziM-xNNVs+zO8Md&%)AsA8oNd0)`4>aJR&FCXR zH)C?<%p>?M>#?;^q6$d|BLCGVl;^@ zw*mumWw+=swsk^ru_{3o9{aqICOd+2 z1$D0Bnb;k4?_#J;<7obTva)$qQh?v98F`3hh!CO#D52W*BX!22l}D8S5IQKL`cd2?li%lc7+R4ddWsjgY7tg zIz~pfK`UwGUt4+F*!`7m4_%L)%Bss-T=<2RS2u&+}9pWaC|H&v_?lg#b57dT$ z+qa9c*<&|YEcrOK5;n$UByM$PR?3kiNUFl5 zA7T+YY!L2orbLB5?7)a{DmW=n5sTdgC z!*XvxQgYyqOr6QT;S3Ff_@Ie;&FKfm$8xj5E(nDv^V$8=!It1w3PmrmeneQdv*wo~ zuoa5JAf*d0bB$Uz%Jdm>X*NKygAY4|tXVxmG!f;$7kBT{N=*4D4vrv7}= zPh6hXX^gDCiuKvLPGsi~)rYy^&=RP4x5mWxacD3x6k^f}~rsB$9$IqQ8}Yn#gq!$EeVqz%I#; z-oeA@Sp1VoCYUfvBsceKw~867BFXD9^2m~B_WAtVwgVJ+&+k#JVW|YbtM7>_oEO3c z#~;e8n! zF9P1lla_47@fUpln*~71b1iV0;~C{I`uh6*(C$}IZZPr&mzN(REe`o~;^#u|c0ee} zD9;Tu1B);1w2%Tu z9O9A@p1JyuEEE>)p;KNks`WRAB}D0j-9RL7!1dN)IgcLZZ`f(JHC<7sy>G&R1<4~C zCThMi&JF_xlkVKP<1%;QAq7|$sk90@U%kZZAI{)^v8g#Abbv<2E~Ya(vtl-L%C+k7 z&b^Y7kD$S;(J9*1JL+S?LS%6=LH=<@1{-!z3CaaYFcFy+9*w1?C5#cZT)Ov|yS_&` zno=fskP`rncr-Ye9@?18G0=|u#L7v?rjq+6m` zyt3Ci$PH9uKlf!ZQDIEzf;rj+lAkDIJ@Sh^@`gzsKR=&b!JQ737hK2<$u{H|?%S5l z7PD%1HWV&8XLe}Uu}iGmGFS#4DB;+9h!S$1*~q~&ZM()yv$d4y$v4HxUbY56dA|BmRkr+sEB zPb*tnTPLRNpWDMUC4lo*7Y9cWm5Yp9pmK?CtljX;Q%OmwuWiG>SV!ob`@j5YtCcms zRnV!;H)loosE_IDGGoHmu3)Bg#HsM%Ab$UphPwI(#2R+OU(S>bxl+Cg39lE0Ib=Zg z$o;Fx`jyK+tCgqagP(L0NDU>KmT$A4ub?`PJkAh&VO3=Q2@{RgN^mMyW>|h2Ij*BT z2qcYx!*pf;c&IDGmDz(34~fWV%Z?YDw~(=0Bvde@l%Z-NG<&UYQBF% z8BUmtXpFT4$I;`*{YVr64GKFx=}QTa4Y7vsH4jX#k;FaJ0j;5qjp*{Qix(QLqI%to z!WHTmA@5?gay`^AP^=G#lXExwU^K((;zjOe;jy1top`MRL*e373dHwd$dE-)HUX+s zy}jjN@&}W2@Vj@%llhyDX=<)RhKkP*DVL{ttKJC#9^K~L^Qr5!k_W^XB$xvLyD^SZ zWGPAf~_jsL5$j1FTx!hj6L|yMvK>YeT#z@>ub#+QrkAGV|%J5#U{VwzveW6GG%8xUM22TRF1Z$58l2-s~ z7*QU#Y@t~m-Ag*vFmfRX^$XgwFIWx`jsplYs4A}fvrXY%&5*r3nR+Bb2wk1X+;EX8 z6at#$W_nqXm0KylG*fN7L43+_WG2%$;DJV%;DZAm8Eqn$UEiT+foy80?G>Yu(|wTXg>r_P>y1Jn{+bh!jh8f@u*!Y z8h#wo+`SL`W5w7{ze>b<%%R(0P;8^tL)oVOxo8cOy*s?{-T}x>WJs3G)Vegp8k@yL zl$mKLFC2k9PB;^Sq6xBA_H0O`Aw^VNw&e3?M0V?^?QOh&r-#=?s~%-i4tnuu^VY1Z z+gBVkYHYO^_#o7;bzZ})Ua&!<{z!ek^Jr|H-SdfR%^>xW&tlz{N1i-U)nh%lK8j<* zhjjs>Px!a3c~k!V>*UPBhiCpbXxuO7c8v7T9M{}v^2Osz(XPqb9|wNyyGd~mr_MHF z*t>TxGOfIL0SN;G0}k1D(ddYZvlucECMtT=j?;sCf)f+B<1HW8!Bfl6?gC=rKX8B> z^2zzR=Fggr(dmb;fSh3c%BX_%(%Z)|xIo^50ryGL@(85AVhn>|ZVrfrG#i{Z zXs0QsW76$iTvSa>yB?j4!oV1rdFHMw7?ntpBd^?OZfS7<@2dI|zSuzNM4v*Y>jRqqD}Gmw`LNJ|_1JW78IC>!Id7vx3`v&{aT zowW)>{@q|6sZGP_GF%|+a)8WTZq}iP{6IKxjbt>zPVXr%5LL;?7RVQRNaFIuS%4Eh85vIY9VXOYbF0#_vfRFQ zX&yXy(B9dZ^xh-E7w~2U@)8Lgbsasu8z{#(R%|vlHe04O1NJ;>TjzJ1AB0W?-m*!) zyO7gXnoU_ZK2}uFt+`H>oSf`7)_LXp2|0>peMvzZ1ME`6X&P#35+acXRY*N0I92cC z>UZpAG4RjV_I8HridV3Z;d8>uTPL%yZv+JdR^t4rAo^4q%)Q-7+C4ETNd*{}P1N9# z^TNOAgz}|JyVtK-h3La(wm^cqFyOX=7>}D-ZlXv^yf}>=hO`rzCW4%mSJu|rdK-94 zAxW>Owzk%a?KUd9&voFuucjPNK`U^bQu|rY$G_<2=ZjbA5V@hLsVNn?nUcSIGlD3b zPHin`yjv*d^-niEHquU~_ibXtDuU@Trxf@#u z!JHk@)g`5+{KCQ(R09vT=CLj#zWi**H z(9cQrM&)h2mvJI~6a?~(xs7>!@+>WZt`C8%&^yhu!}&B?$TG4qPpbNRyp>4E@&*ynC>d)ArRS@MRb zw@=W$d2xKDFZJIpIlqtg-=|_fjf{*a`kO{{wNI^lPn_KOnM;~sa27&9ewU{Ok+ay4 z^an?VJjX=Y-(cxo_+!8|nzpt!Rqs{LFS)v^!Qw;&FAcgFd2a<$QRM9$Fg=9~jEWbR zpY?kOF2hr&(islD*&tBmeI!O|T?o&CtKs3SNf=^ENywygG&jKGz4Noxj%9Tp@smq_xqJS81LPSin6o?QdvprDtbnk1=}J z==yrfzO}8b=Id87*iT-N;Ok;WC{S!Jr<8T0FL-u-x4nbI2h2l+K<$Tx!!fquUX+1o zDF%=+8%^d{%xj*gkgAD{A#w`Idn)ax22ZRI5X!iPn*6I3Ivpu+pcE~w0{-x#4xV81 z--QtFa>QnfX7tlN9%R}Z!}1r>e@HXb)YKGx*XFQ<@k=}{25uR@y26OmWZr;ILO^6DKFcW^t@U5udZNF{eEM`B@JGy@U-0H-kdcnqq`_EaG`$wKT z8#%>cmV|%*{!?$m1rVgh>!eEYhLLy8nh&Iz(Fzgis*}0lE{$!D178Z>n`+&(EAha$ zdp**~ck%)(lmWPR{`?t$$a>!IFZ+q8WiwI3`ZZU`1(D?R* zu+NU#bGXg+fQXI%YT6AqSbb;~$&@?L_Tks$XZp*?$aDj3mw>;Km>VLuF@GcPHIURN z^ywH`e)mTO-@X^``suKe&*c~X7RiQjm`k0!;PBK;ksNo_Q)PZ;cXxLQn`TK_?|BXd zyN$hg6TpS$f`vaVN_s}W_L~_tye_uK+7tTd`MYXwbl6wFM%I?O#DlaoEtpPCweM1t z^_s2g*Q!oTPUdmg)`6%+ib?*r^}1^q7)l`mQYfIX+{cepR8`r0ZT6FcXj$vQXYNBr z7Rj7^Xy{JsCW}+&0@L@<`fOF-Tpawe-YP(upyc1)A0KDKwc?YIuy2&|ve-iqAO1P| zqlOoaoFi%q@5FT@{?N^+@JOufmi}H)D`;$FM8+4cSqQ%VK-5oIF^!Krq=T<1^OL5E ziss~P5+@fhwTw_6#m5)*v+ejZIr(!TKv_I$=)uV7VV+rJL0j)kF%Z^&?$de{=Z-Po z8V{3VG-0?1iT7(#SH;H05*Yw5YP$;bKq2WC=yZtSAsEnKBD-(j$)O+L>g%tA_8~S( zp}^IopwD4NsQy~8d|jG-FE`ta2qYuUKRCteG6(V=towzIyI3?>Xw!5dv}63``Bzhe zBOSBX5$L;^Ax}d?Gbmfwh1X3e{b2LBTosfmhqmK zMrXc`N=Xp;a>i|bJj92ZlDD)t2jyoqg^cwh3={3KFSyqI!xDTSwBlftglj$0Rj)Oc zh8E_2cJu=)!!#u3Bc&5=?w;TJTB?fbRD3RjNU>wIiAjb&9(eB1vt#iiv3u=!FdvgR zV<5<~Zrkv$p`rbjHy#(_4LT$tye;z63l7Q|z-D}X86HajR0z(t5FzqHu<|coN`b4! z5s#<(DJC^FkPt^jAuY0M;65xR!;s{s$3(~!JAx%t6nHJ0qbh4^Yp-E8r@U|CV8h&W zO<@)CB@iNf+j3o3`qta-;6A~@S1kT4A>rcU{@uHE-yfoPU6^&&)7MYXZ$XBxs?aJu zdgt?nbZ8N&ICP9Tqo~qFe-e+qY{W~QQU+?*L+XJy9GL#@-M!W*5$oY;1$K|WoYv)D z(b%U9Q$9ahzkfe}>G~xiwhRos)IasdCuAes=5gqd2jg5XU8>EdArfmAj=-ITTP0?2 zhq^$%-Bk}rA`=fT@&slcvVaoV@`|F@N!dHPbcvJafIFEdS<4k_+DJRaJliA9aC;|t z;Zxz_>~`PwRRIeP>$k3712sf-r~m^+Pu{(AYAnEpBv`RMIM4(ZH;@vk!a%iS--P-4 zl{c`{r74B*%9ld3UO|Bzh}Y#szGvQ8ddJ4WYgHr!UdjDjz*1uX(}bWYjGC3Swi@9Q zt=cw$V1gm7%f00deZ_5NLWr0)pqv5)oHl@aWS9XeGmYc)#rx#GFFl?09KAex0>aAc!HvU5LRK503f$$0^+fYvow%Q|* z>*VUnn0wTbET2OU4KY=b*#F7hVh_wg+9aln6doTnIGcMK!f8|4=0DeY_A;4ScmWBU3MQH%3So6^izgQH%^2{JekBNCbO_>;@4gEg@ddD9Nhqj7mz`Av+?WG-O3& zl&lbC7YW%Em1HK$DD(gM*8Pn4J>KL09MAC_$8+D&b^XToJkQTMg;)rvg8H?6gt-Y{ zpTr!XUPYj|qWx=*XsJy6bDk597%Whe$NZ1}10^9WhQ776nj|p@zkd@wbgz859F4ub zUazVGaqfay4LH#^d5GY3Vf;b|@e$2LyP@n=rc!i0LAyl#2dt`ANkg`@s_VI70xDKG$wtZTaj-;vIoVaWH@90e2Z3)HW*-(0uy#xtTUY6 z$08>y>(Z#(Kvm!)w|n=R-yP(wLG*@OxLCAiHg1>))BsxOy zejRywV`FE5SQ3bvJ=nivCpq+4F{)`T@r$9C zU<#&raqP#`R26L3jE_3kN4_TMKLk31yi+2zjp`&+a>VtHdnyP&Ca|YpAAQ%5PZv^S zPLC`2>z3E=bqN(u?8#fT3EkG2vD}(PNGLyj{c4>(fks0IgB+&9;rV%}5{NQ`B#61q zY{oUkqf5RdGQ(JebSd7zZM1&&0>_eZz7$xB>Bnz%*;rE_jnZg`&6Wo{&W%_sWnO_Y zkt>(m6slIR;`~qd;nLvzrLC%}qN&0$k&Vw!-UZPWw?xnESXdoVM(*`$4mXh-(o$2Q z!He6hK{FT`^RL6;c|pAb*3>{TJv@tk5Z3tGv!d+%>E|YD_;rsQv1ly0i8P3~j}U9g zq^$|-LqUchH}kiFU<8R28L*9<72=7CGFV4$HWe-pz>&2mpwPOQ|M>D+cuEqeH;#20 z3Nf3Z&$W}UalH37mKMj>hWnA^7`P|z+4a#yHmm|L33PZi7uT}x-o2YZ8$7$ttK?ja z>XQZ0xgMYi1#R{NSGF98vrsG$lXJ5960l>_(1eE%)kmCOqd5lICb)6qALoHm!b`xj z(s2W_XB($rjmgXt;Hj~_*1409nX-t4^?z{!g!?sKR=uydPj;*4i zmg3^#cScaV*Rrum0ANkg5#gW+vxne!IP%m)Y4*pD;2h3KOjJtOUXq*(-}$ax&E;a8 zHEF7Do}jZ?8Lhb@P0#KyKUIPJRTaU^PG4XTCM9kc8$F2~9dU_Lr+e|>1B7bXGI5%q zI6x%l;lfn=&`?15VwgUO0kd@e$AS7OoQK+GDU94Qf1>v&P&TY0nI6pLo_KUJw8sxYS%`FB{kuLEv%h}De4A4YsFt+0 z2&`vS%0(c}N7PK;{5AS|dft*Lzx(X#fig=szfXBpTTAluC?CNe+MGSx)-@Xgh#E60 zni*6OgkuH-2G(5n+#0P(^Z^j|snyI(4jsWDOyUP}3>K~~_OiNLG@QH}Es}7XTIuwA zbWf5FJdomxP2U7^U2-PMKA3$D?N& zL5%4Tgy2B%UtJ;OabK*_nZXH+mUqvMH;3-;Y0^|eTQvT!@#{pk0RzUtWBs)_{x)pd zRP$xv6Zi%-VE&5;OI?SHt0TfDJoPX{Lx`xVzAqS29S;wqdqIwrfCW6|GB3`BG<@EL z;#h-TS9-q^U~!U>l__L~%ZF>(Sm-SYT#f+Tuwex7swe1}cIDcNh>5j^T4g{%KxkbO zFau7?7r)|eORoZK-_NJj)z-PaR|sOvnPOeMbNBA2;o(|iFRBpX;HuAx;p=3>nos}a z))0euMNoG4ZgStZ^|yd+n^mj!INgx?&SFxV_Goj_d6T#uu2cQ3?-lgEvu?hJtbwn5)A{8 zDP_2|(aIo$X2s(L*1r>(BH~uRhPNPRMdrZX%g2tjD~8Z-WTB7JOm35Qc6J6%v8MBo zjm==tDY?mYs1ShqOW5~v+2L9f#T0-^l6in`)law~bOpS-zU3GBb5r#?g_k-1y!WU0w_)lg5* ztdlSJke27xYrzoK$Fz2>KgtFvuJ~u9d%`3seFm*jJr`BBm!4w;6E{%T?Vnd=$S3>z zKhWD!@0L}GGm7M0KnY-%V-$Qwiw)ySUxtQ4ZnAR02v4~NtA9#8b2 z-$mSiAc``K3*P?Prg8{K9U@FNPzVcmTTN|E1p_2dF;p$U%;xy--`TkeaKtqd*aFOsECM!qbCZ}(^uih z182nBG7az zUcp0#5uDR~$i%{ja6hIL&P|ssi7ZiG8AVElm+&X_o7UPFuSFI7OAEl{#5u<7m!3ZI zWH$}^R-oOO>8%=LfHa*uf4&^}3qw)(8oa>xbc9)j*a01w)^I~t`!lAW@dUK9{I>s! zj-}M?w*!+HLpIzrUk%hGKdW3vNm;qf@m|@g_1YU*f*}>4a(13ETNiX04a_gpI&H3y zK3O2y;6F&p*1*8jkgowh>01O4&2OIVQhBNEzL3G^6=eW?AgncNCtYrA2osK3y)CUl zrzD6~97wB->`hq66hztA7_KxD`Cq6>$-cYL#NmabqTIM~7&-xU*qkUe%0*bpwM`eM5$28YRVHRX@w&+I4nYU$;v*#d`#p0y8rym zyLao*h3`0%{^$`0B}G5o5Eh-ElarP!{jV%DHP4Pg<5J_Om8Q44Xl!us6)2+IE(U2e zFLa?9h#F<+-6-|)52O%)#@^)dso#GIIr8C&X9X`wy?ht~b>6D45{%Fo2rWZm+61UI z=DBOZ!HRI~>q=r4V1xY#oQ(AFRi>L4*G3`m7Vel zVz_ntcG~S)cJmC__K_@Y*7?-Rw+mz-?5hGIA~qeDAt%E_wh1oF$Td(J*sSL5irh4~=z;u_-iwRg&|U$5}^a1F+ZYDfx0<>T#; zHE9}(M9bdPIr?li@;EZ1sKCV-(P$P^`7YTv(5;DId^OHv%vPZt&S;KEg-x=!3y!hJ zZA47_(*~ssW^%v_9R-L0)_ z@!X-uP^%e$Hy3E|XQU^~)Ma<#=&hAvRT53Xw128f`NAjJg99PoL6(!VKGuGDrMaXK zOYn(q4dfOPH7F6j4ssAfBj9bg$k!q^PpW%EG7eiDCbyFv4nWuP-n< zo;_{$WB3D%P~q@TyJ!%R$&&c!K8y~K0n;8|^B1Fa>e&#j2{@T4hwU0 z;MD2u9G^aY`UMMFQ){c0(>+ft-vIx3ZvK~JiFZ!{v?Z0w4<(YVV5J@0~kc@fjB=7UtFCG6Lwt3L>yU}pM^b>bsWCC;78KZPvV~W|T7Y*9r}=idwngBPFynv) z8;5nE4=v&I$pb;9qsB;>qkA}vr2WSVK~rpho%=|6)ZK!+nLD%5a0%Y7MGyK)6^0fsKk z+c7ag{Fi_EgpcpQhe3vRD6CkYkV)6<`bAp616&%@*0#1b8FNK`V`7#M;j?}~dQ%+q z@gq{V88nm6cMv);dFCK3g>cKzk^~(8Zb}->_0X+@eXGVLpM11>e^560Vpoyc(^ch0 zXqB=x4_7iWBIP9FZ3Ce}wn6y#;{=FKk?30H$lyimhWm`wF(+u%I4xiwCx;7p`3QqR z+Sg3O_0N;8hWHs|W9-MvqJ~Rl%^0o)ynO?TNxvjvImz0J|BMqt77vJUB#cO26;jyO$}XYH(<%EN*df6TC=wHnJZ; zZ(gx@?@u@G7Za_Sd<7{Na-q!EavMRomIJ(lRE1;b*?T<;cu_c!;z9Dz4PUImg+kxE ztkIpr00tKh3xedmSm=I1q7>l#tpE{BxVfAvv$IZiDOLo4$cQRwQ75VCAZ+|rQ&B#C z{(L1RML0GNlObm|&v~rT0K&+~bp!|+t}{W<2IY^CXl9_2P`=`?Af=qRl-7cuvT<-I zFyN`2ChuN!k?YTt;~DCyX=&MaSm#K$h~8*q{vLGk&?^O&oD^a)L-X=SL16+(0M56eLA?Ht> z+C->0$fd!xP$_&5nE`!4b_)?u;zRMV=KDY_&;Se`k3xJkDf1MLmiv9r6x;E7fvd}% zMI*?MUpxK1_p!7*Gdn>(bDriqU#*C3hx93>J--TVBlppVFCq1VXb%wEowAub&1khI zhFiCyFSp;z{u{#H2`n~AC@J9u?LgD$PKgE?i5Y6yxXRvc}amjt@q6+J4L{n>i@f9v^QdZX6)JIo= z)c`ZyVJA~=Qu^!jD&p(`Z1fAzhjhEAhsX6BH)<}yJ7Y`dq zWpGB!3o%J|b{Y=qI6Y#!@k|;EOPVnjgDWDxB-uTLTTyc%1Z|i9z1v9f-+=$ zx_wBpNP=h+os8OtLqQt}i^+Kr=ZKEJzRZ^a6sk-_M*EP&3>Z2%c?p>f)Gu?miArGM z&-0vpYl_bM$)`d8*PXFeFmQA5q&DFk-Q0f_IIELSo=X7fo(`QL{7S#fOP1CMTe1xg4tk^GYcv}#@46~7 zBz0K&6?v1<3c5{6UmVs$N$La4BV4ruwpF6vIO(+@jYCj-IE3j4xv*|PTgc`)O57Xu!hUjfs;ca$c*9`iwKwv77eTWvQKne&k{yuk^DF3oZCrREh17_uL zfqZ>LtCitz^R39+wfgrWg)36QoCe=RjvT@ArL)&k?@RqkR*9q z-bz$c#|=MDPxpQJ@L{~4cF8u zJx-gyID&p+PEO>l&2B*TTUXI!YLnr*DwKfqD3wDW1^}Hq0%-&~ccg-fLa25~cu2yU z%YJ#frgaM&1u8Yi^Z3fRZcrO{8SX{=45(_S4jJ@v=v&+#Yg4?@g?)xpOG0`NBZ?P^ zc19T>zd~)#yE{zsWJ-_zr`^#SQy&z<8-OE*@5(g?hHQg9pY<-AnB42x%}c>6#|hh4 z--5v)_@+MCw#x9U$?-8ged)y9rU&~-ueu%WgL$^WlZlX!kTd2@=3Z!!AZz^b8#uIyw|3RSeaO`p9SF)IbLbV`S& zoSmFrHZ|!saxnCdj)va6d6T(2^F#?3#zLB-ISgyoz;?ieQOD)64^C7hQLe7$5I=WeNvkADN#4ez@`)+YkibYw7zE2!aoP`UxGxGlBT)nPqiz_7(dv zIa!J3{9}K=v?Vu$eG=6S@_zQnhXF2Gj)v+t-9@IbK9YAwHTXg8E^<%+QGCYv|7$QQ zT*AIhw5-nQXZ?xQiaD2{`(oPK*x2~8&W&23<2F1zXL9IkVdR*U3zh`4f}=z_)d2`9 z*ks>J8XWe3^n*e|!0IcaSHPFaXwPo1$Zn0>EXhl{dx3<-R7kssO7lu+J;a96<~KI7 zhv0(y5LmIL;O<>+Yy=7eJ{ZH2*n>q`B=4HY14TqMPI03if*pX2BeDh$Cnjt-F69p0 zZW(aCaf5k886D&DzGA=Z>)S~-r;KNm13m;86!p{V*x9XHLKaYR(d#0K%udV28vZ3_ zWHH6hsJa1wzq4*+aa$KGJiqErE?z;95Lisp?>!|(GnA74^dm=(z+)wqdi-R!PkUr! zWZtDdD33hnrWNt0kci=1y`H_APT)$B+te0}3Li6Hz;5#dH{nNHoB;BsR&d@rghR|N zuNc_U*3FwG?LzUrrop^ns8vIB_}dYR0U*l@j*d+pCP$A}VM0Oru$AXFW{Lq$XNyot zf2A^tM7BZ3#Wnvm%ks2@^~t8_ZJ|AmXU!7g1fw%w&hJ8Wl@-c?k;ULoY336j9s)t8 z)<1c&q5JPmbdM2-=4cP-akbMsVVEXDid0FGFta%C8hI%63kfO9WtRrzZ3;sac`9{AVVJbPTu=@kEq^k-#dg&FH%>wi^9+G~oUAr?xD zsserpccTIl|9ooZYdts8J^_u~E0CXRYHK58HetuudE0p=7j8elyud|{IUFa~xCSs= zL!S_+lpryD*%MiOogc<%+~@CP=ny@nU_5%?ddEr+me0JNSgQw?-E_jSKDoHqy;A1v z*|Rv?RP623buEYhko0w_3akP*RmkIljU()jr@sx%s^vz>lA|M_MS5jyhCK;@~Q=H}rEMR$jGm@7K|wWU;j zQXtv_Wx-D~hjNTE+YF0e-fV4eUxiXg@b%?G!^58!s^Y_wPqCn}l!R(DB+T|Ktd#Km zG;iHcA(~jCr<0LsOPzRgTV%XY;%2Bgd5wK=u_sFTmN9+hU4YyL88WAFjn0tz4oW3G z6T&oD!o!LBWAA+}VZvmQurs4K8X3#+>e787DB$?G#DU(M_xDS*i!&zFBPH+g%1}@C zZ6`v3Q{Rb71?qzEHi7NiBU4&}KmMsUbdrXZXHsbd^%UrF~SAt4SAN{a$djew*i zGddLX%#vx_{+5>IgJWYdcuHSB-PZL7&+0JmGc@`;V?Ayg_3>O( z0^QRd3t>_w)tT~FF=Cs)D7Gu|uk_F%b5H&-xf zi)K7~)^U1-dDdXqQ5m{hljFz5q;57sKE}ht15u}CqbK1Z_FfuH0(1v>8t*Jws~G3; zgC3H*K#X}OY6Sekt_oL{|B~l&i-#@=N%~~>gEeeq|(kLD2l%*_ee(*oR+-E6+^ET~yk;Ry_93K#=FB3tmXiHFYOx1TVaCWl`E8 zDjf-|K+cYZI^J0ZXJ>qNHZ$PC=DAW>;|aX`41<*6qtnns!imBB*9>2dOd%Kk3ighl z`X&jDnB+uLA3m%Z^?GG$--yPOp#zkHpZNI9U`#* zLFt)qh4F1RYPeDCdJvN1tKISBIj~U1mq{NS9vA>FIS0x{TqFTP-pC zE@W)aU;2JK>k?0m;y-lp=BU~E`-guBh?3qR9u*MdZ(W9k!LWaEQ4tp^2s>w87ioL& zG^%|lwy0SRe%z!{EY$OL`TrQQ)`4;gG!e&t+viWu6|9JFy=)rixm5j^C|3Ah$cN-9 zaFR`~`vAaYZQQhp$kL}u{zDyK$lNAut`^Es=;Ob_!l{DVLRp$9vg2~RzT!sZe zosf0xOBJ)wN?&*>KevdVwPFeOTW0!ihPOd+<^myh!LxuH{#$)QB~xr6X*Wck%!Tvk z--R}>I}!)_qOGgT?#Ik^oA;y=iK=Ak8(R+RVRvcCs_p9_sfcjQXvG9PG5$$8$@(k~ zBwr}zp$P6~h!|>sZ4rTJX!8LaD8dDYlr!n2)u&e}r0*SXxE-*FsRjY@6w2W=HWJ+o z`5WyAeym0tu3{~@DqkNY$O;F6bD zR;+p>cMuiXTGKW65j^`iD+vOgH1-1Wen@v+V`Uot^1BWToi`wNf*B<$U*X3?%gIv4 z^_At2iCIolFMIMv>&oFYKP}9k{|@P;O|CodPxF0;*BWTIdRCbGN(y_(Bgm zoO$-do4xjcV3q*|#BU!Vvj^VXJMRzS0lB}=D-4C9*;lYqgM1Hb1kqHW)QZX6FXZ3Z z=(D?m8_f@(IjG>x&YuJg=Q1_C76QpSWlKK}g73b`!10n;%=qTEkiq#g{$j=$bhqWu zD>(432x_`sjEO6Wa+1|V>D4BqP4}3aS|D^fvK9wn1<7^>7ZHH{GRgbE93tZyq#c+cMzo*Q77X~`FUej? zG>PV#eldupy4Bg!x=K=bBV9l@NQZ;imj|-yM;qy`h~@?l(?={iW+iJ-JQjZsbmZEy zVtRGuu3>lN34~jAB?gYaPhr+=zx;d|a1uRpdCq9Wfg@Cb79vB%&#oCDD-%GNEufzH z1rpwQ9?@ew)Jz*xlYeU&vCx&*23b_22^hSC?fq-ofp9@Z<>-^g!(V?Iy+Ce^pD>?k|#5 z(KmxAXavlCb20hwX4FKr)2Ci-*r3e6t*K9Bj*JV|?|OO;Hvd#P0G%*_3_`-|9PfSg z3gCGwt!E4e0ZAYRvgr@I6}(r}_$RU7cKt8W@~>bCd=bAv|AUuz#Ht9EfdV2a+hyj1 z2iR|lA74q4J@=6Uqzq!`KZku_czDB;Gf?M@BRhmh46qc4o`k(ZhHBeY^XK$GvEBOE zv2`$tV(Lg7vLJJaB;)h@_wHp#Z>Vx|L#5@b1?zkN^mrb;6W1?C0#?eHMjOgLiEPbf6&IpIf)jYH7JBbB=+ zqYpA8;s>?nwa8@+slr0#RgmWgAT_OK@G`s}5w~vDSXkz(XX>xwy>c7}MMvJzbbWf> zE1kqn3W1C`SQug| z1lL5zyHbFHr#eYzi6xKf+T@jIXk&nq)t6L1_dd@#Xf}X!{K6AJP=a4DbnmPI;^YPl)CSz4js`n7o6pVwqGfDIrB}^Dn5G2?Vg$~ z)1LQ0^#ZGrjvG12GL8Jsts&vzr$Qy$nwu*yeBag*Zhk-V@#9Op9?~<3Ck?ysOhK9^ zooqefWo3^*oERujEkYUXn!TR;B-_mqIUBHFZl}FCZoI$08^ykw(;!EQ__>aOpecNWm}0j5U-cmXh54ZCrK7&k}zj2Hv5 zX~}j?Vq`*GwUeynq)39;b<39R(ueZf_n>RNv$`Rh1?+kkceo2qaO+Tdt1riTJrr%t8@zhnKI?4e87z zYLBdYB(i5jo?GjfceJ$lLDR8{EkOcR81-DxiQ`h>4QlfOaI&fgT6zFSB%a~{>bV>Z za(fZ10fB#%X%B}^kF@PfCnyD`tCz5QFHP_-`2f5UM94njE9F!|$l_1%=wLy|027Y3 zLBu8|qYt_Rzy+b(6c2fyh6n@|PkT%qmNwzY2_|OAO)!n(C8WHh<@fN0pzae8w+>7< zsm6y68yRhJqPrA~#=wPGSV$xV`to1j9K5y~@OX$NK8KhR%k~-$oUD|Bb9og=7GOho z$-_HNv}f^oUYZScic2f@54uR|I3HqWh|3et7polG3G)AT?9dyO2wEm{_I>K_@5t|o zJu~~ld*r85PkZT7(k4$<@6sQAMC2E@G=B==c2=(p)VSj40`)gCm-~`Lvkq(&BkPQh z4C>G|9q3)P^z!NFg#%Y-9NL#Gj`x>G{*`cK=Ho!s(AHMPHu$&hG}Emwc-)p`z?Jzz zWC|p`%#kPdlI?!>Z9g=EV!0kM0pvRlSe^Ty1A^U~ALgU1fvldP5vvj9ig z=t))QZxQt4%fHJ427<|{4@+)K=LZ+M|5FM$DA0%|&$Mf4DFGc7=)z7=zR+qOVZ_J^366I|TgjdO(xrQ_8tzY;V+CF#+lm6*Mi0u{B`cz8se=qeAA z$u)>(@7eW!lj`J;`05w2D$SC{b~y#Z0kAE&c9eqFlBZ<%%Nph;%#Th#HVCM!BFL!^ zEMR6JZH1?xF|h}uGQq|yP{~I=A}>*j0l4>D?TeO_G*zpi3x>956)%lIK3tL|&F)m87r!IS_aaGL5ol;%}}7SY?4}N3Hkq;WV2jeELnK z!FPnpT)0&O>?@~q^E)CafkO1xhwqmIah@s&N7`CP&NggumDU_@i+&9#Jq=LQHwi?t6)-ydU3AIzuW%*@6>bgx3#mXw=IVgafVh?16b z{ND}K@_%(;5Uj3>-$~EmB8Flu*tGBD2`IMzBW$YABZgTBa4Sf%F>sdpPN=N~;>6ehCfNtfswHMdQUG?BKHQraX}2y*Bzmt(=OVF`0a-pLDHOKGt87o&E(OYFMczQ z3=NrKG)H)wt$h27Sffm91dF_BZjO|!j!{Z5rNkJBTJzLMCLd0_culezCCm^pzZRjk zUH^H1c6cHYDjPqR#jO^kl>+J6hO&M^IIb{7-o%v_m4GeEf+}QNs8oG zPX-`5j}yw*Kvd1#Jn?Jn?#8*X5{KcF|HW#qhsOMTArJZ|v|L~}+ly#O!1nmhpHvj> zyI2W^o|@#HwuSZ~vJ!mj{Nl`u_B}sfzg5Oun6iyR$H34s4`bGwSx5bn1rKgMAlP+%b;l|c!* zL%=k35td8&1@*>|e`HK3F%MO6SO{m*c>!~Rlh`#hh;9gTEm59;)|voQg#vWRn+VCx zQpQfli=CQIz{>~CRTcgicEMjEX%uknu*!*=(~`F%0L&yI_n>(X3D(?iqtCpC0;-X#*+-`zFa?D^l>bZ41Y5l_dv*Zhd_{ z@(rYiPZ;Iel$>~R`5FoFfE-XMP>D{=M94B1t0MyOpGGq#UJ&cPFbMzQb!VzLDuCkQ zmbeDJDXPcn@j-P5OBb9>Qnkd9jd@{E;uXe)l~7cxoj)(N?UWt5hWMPE=E1A?^1lE} z1);D`j-i)6Q`s1(FbzKG&KRppm_o{{$cE77m(>MFpKL1bc{Es2p4h&rOkikZ7HOF<+v zyhrzNTyJtj7jlAELzsG9Luj(t)}K6{GqAyLHJr=4c{HFTMmcZF2|eUA{#Plw69_5EXVSyR zL&Elz&RGXLJ9BK8eD`}7MQcm+)86^7JKr=lMI6=BvytEQZ!plD67&B*{Zd*_oxHoa zFkOWuVpZ^wSK@_=(M&cEm1JjStw0ht4xEe!4^)0WRuSZ!oPvzv$K>%1RDUqV)3_5- zk6c*yo_(?!va~Xik{V!%Ig$*k}H_JQoADE$A=LWT5(QW>hb6%_Py zaO8ZRd9kz?YF{`<;LwI>PTF&s0wNZ_BG1C=t-~r#Z;MbQ7@1!MYEK{zpjhnO+y9bX z?8V{Zfsz485C|y93{$p+pdNk>^{PuGtr1f{c-*~P(2@Ja45HTlQA39^=M@xmzjth# z7C|%u%vDkckZsvQRzFZ_NdT)voO2a;<;?pyi?d$7b7VP#KC}XDKcRhl=FUQt0_Q3*NO5speSu}1 zzeaN!T=)Y+kK~Uww9T|F%d<6>tMhsasCykBmTSloQKj2;?y`iDom6MQ3NZJO&eXWb; zK#+iqHeT$Pf4MGnK1m1N-FFi-{6KUauyK;|0`eAUWYl`5koaCHB{d(I|K#>)P~cvJ zn0!ZJ9OPl3YBmT6_}ri}*PZNE3ktSTT;J4>*9ZfUNI|$q+>upMH)f2W8)P z4DWEl2PXEL(b37fsu~T*Phj-{hz{4QSD7jZQAIC${LBQ>(P&=m&ivB_72FmSq#|n= zAsX0e8xYJwZ7xR65^9{#1fs2~PESiK1C+*C6!`XB&OKmvdt84|gRhh*BEc6hKhfec zq$@yfBk2R&8Y-8nYVyvzT-?2p{w5TpoRKRz_Tp#AO~Y+|$`t_N!;8=&6IcRWB+pZA5LUdwrxTl;{ABq5#35uL z0uOjP8_wj1`su_*H#t+3m$w%7%?e>UKRO@Ol+g}6tZy!fO8!Q`%IS=gFM3klqct}k zM1U=5)1N%i`HRLPQ=JF*8;jHbF(g&QuYIbxlHh+Sm5>RbVx|9_+%JD45;&{?peOJjmtTmHk{)WQRlocQN*U+# z4>#Dw?qEsaKxkGlQ5WMQ-M@9C6RtT~k6#j$kH{^9#*u^rqSwT8vyAeO#vswvv0rvI zW`w1w`X(S~C2`f1HEc3BdTVBW39O9?KYHHDZ=vCKY4UM*m&e7Me z$F_}}e*4LiwWiY0AwyO+pS4-HiY3*1<(BpI7lU=bm)OrPEF`?)zLqkRIJc`t{l4>< z`}fv#v#+=3dge?r7fx}|VCqvwKZf$+h>13DHo8CR3|s{;`675*Df8ab(T+Ym+4_c3 zwGs>+fn^FXg}uIcY*BRcW&soNTcHcG6a~t46w_&xl%we<4fQ(%loHls5U=d+HqPX! zkWdk2Pv@N(A2(eR+gvyP+v7$|j0TjeowM`;5Hbehm}S1LrA8+pBq9=YPL^ldxwWOY z2@bedQ1o0Y8tXG)=G`AJ!iqtqbH{#Np!5h6u|D@3Y%SoacUSi&!ra&C@T?lzfEv6= zVzaXm8baiFq)@;ieEj(v92G@PjfoQf`0<*3bDa%(Z-4&$iMmfkxmLg(^*90k*{A*0 zZTpHC5%6_ypBEn#gh#d(*td)0)8_SIW+i;3=553l2_oMNJOs((cX`8v!Dt`QR*>8^B+b4F)m& z!2}-{*Hf2RwiS)JZ`k_T0s;aM#9({w_syH^NbzmDx|iz(F_z%ZCcSk#7Md~<{bWbXD6-3$<5P)SH_N-QW?2O^{r=j8-Rs<&>}*1hxRmtbsM2}u8L z9?oEg$%13GKS&lJP<8H$2chl)&}yA6kF-i95jH{i@=a-@)J zl@*@Ipz2F~Rmx`rEqz5r#iVa#IeHTqigc6c(3lbtWAQg!8N7ZZ6Vxe--s-{*4cvC+ zeHx+-9lCxng`Mts-Z^?{74kAABuszEw6Ix;yKN6i3>9JzIWwz$Trk4BPFnQ-F%h;M z8c(pl7AYqTC$4lMjHIkg5tCI-2KiaoWW`uc>qMp5TvyOlgTv5rXHvF5vT%^O+Y$d1 zuz~>=W<|U2D23X-BXun`SVakUFMpgaO5(Sg{S2Z$kOwMM4^@DET9e$ zQ5kq+hAqZeNeTGEm-WQ8X#70t3SiXRPV%aTs~A~CYU$1wzBk+cey`Ue59Hwm&O1%2 zG3_uO^oxp(Ju@CuVE~$hgNLUQE|#C`TF!=kwX?C2aM`%RQ#tP*#G@Dh)g5*L?Jq5r zkDQ*s^Qa1@49*Dcp+sHcokVmCW%x1cpHfi1_~M6ae*?a9+Pw`C8d!7~3~uQUrb_Wq z@CHNsbl}?FOGwO&W|qZIK=6ovjE*Iz2H_!&AXee`UMm<8#As7J?TEx*L&Ap;)*BI zE|XG_0*b%hFo$O-lM>!O4dieN_&u@u(8FaP8WrZB|SBP z3T+NPc`gqzk)*Xv5qMRXXHN|K;MF1Uyh9-(r|<(E@#Vgp;F{T~a-P6@|6&avt4T+20L!KYGL^a`F^A`DU)?6N^!chAp93grH7AJ!T z1(VM*`8XJ~1}!L1;#Ui=KXP*yjPbA*5@S;SSv;Yr^q{GDC$>mbwtaVF>#xL=b4F@U1_TKfjZgE@CYqvTv3K5Zd5#4lHx&g zh|G~l;V0IoP7z5c`x+*ZS|f6j&}_jd1El2J2gYlI-tkt*YBEJZbgRR=^M3Fi4X_9s zTib*>z0D7mwu>K*@|m5RW4yy}xbzO6n~WZ^H)EeDwt|((sQ=@X`08|sEN#InL5lajg`q<< zrve{{Sdfy%0AGW}&;20*);fA3Y%+t_?6-fBp^{*^&dDkS53{oPEn}y-F&v>d_({ex zkOf&J=tEL_HhXrn-3~d&h(rdmJEi@Edwt58cdvu;BcX;y>pUWAF)FfLfErYt+lX{E zNEM(r*B~m!QBO<3S!=kK^bJ%D3=AC}?-B*DrI>_pp#d1ebsSol(Ik3Nk?6847ROL`#g%&)%ZXf@Z2$ z(3tErOhn2c+;|ej;#Z~E$$?9AuBAS5G+VT}6=NF-D3q&fK{^KlK51GvMZSiw!8&5? zCYW~pfwTBf(Z0zFNz_tAg?yJ(Sa`c+$$o3V!6>Jek5#wP>%?|$ISK7Y3+*Cw?KNWt zHet}SAfNA=xI^;jRUC%N>S%B9JX$o%0Jpm-YM5AXFR6#dksaPuvHXiZ;duC}t;HiU+L0tS}ESD1pyCDw2yoF)uC zr@(q7rKY}$_tPqZcA5$rrtIH?YgKKPHsP_R67(A^i6-banv(8R^{oBCEXt|B^+p36 zIXBuN={u~cp&?;Epr}MgTrCiyzj?5BD=0?=SJ%SV--=mK!tRc>4cC$zr2GeJ)TZ7>!1e+)Vg|?zXIhuz(<@rQ8lb_2j*S6M@>g6zUpsx>tD&h`4o05g(N-WH4$mh7UV9=gd+~~L;OeG(>!K17Yi#T zCx3?H`?t%JCV}ToVwovM zav6Eia)BtxwKo_aIC?a?r#~F>Hw0Pa>xP>gB4X{MjF6wwc%G}NskytyP!gmrSlaEo zUP`DzbP5ChYSS;uZV0(N-55W=-kO63-kH&*trzx^v=4;xn2y}g5W=1V60QPP4ohOVif~F_d`fAF*&Jc+gnqk z-rxJOW0A5RfX(P3@mu!edGVq8DyS5iA;3V2N1x!8e);L#>7Fqc%;8R9Or&GtmO0&M z+<@Ac4aGoG_cm-3191r?B2>Oz4+^9>&uPxN7&DIfLG^uyx01!^IK<&;#+gV(A!+#G z^0Pr=eP6!@pywjlCKPXUCm6l{U06@{b5M}blpUN9Wkr^dAcG9(?7`#(s6$9p-X6X+ z3>B$Uw3NFc=GetbGERyZJt!&v(gJ8k2{Q;dUEQH-i|xDq`02X^+{hW)p6LK^8Sb;FiAkLSe%O^9xeWq#k|4hlU-7EpRoj)bJiGego+}bR7_os?;;lma$Dzi?>pkCMw@XPm9dv6U&MmU>BUC;-aWvT4 z7l0$=Z*$UuxND^LV19S^Tm)?``aH9ck*pmi7e8z|4gh+ZvQ9aV+ zhz?jS_EZpjP|v5@j7dj~Mm`uts=1x^rFj2?H|jWCxsuY;4~*=Et{<2m{(aiiZ?yL) zvgHAL&x>_k5%pI}aQ0J!#yB&xK6ULjys-$IQpY;uCePM~5EtX4!&)o}0Vzp14JlC6 zMV(5Oe43NPc;~q_BOE~k!iq`>ja&F-`+PKn-pRdx?7&ZJYROjCaeOB{AY!FMhk+=P zK^Be_677XUfLPX5yW>SR;+nT`2u8dTzs=65=&&`R9x$I+EmDwt7_V`Le6c8#}J~uYU33Fr*BSy=}J<&Mbtz%;!3t| zWN1YsENRN%Khgg%;FDOLh*S33ja#=)>E!RVmvnaJOODNFj)4+kz{aT!$ zFvN&mx+{Rni^5Ir_@D?2ro%({Spv;8O3B&-v63qgz6_oRQWl2_zQQo{|D<8-yRfjZ zK(avG&O%0jVUze6kjr*$EJ+wEE@+!$WejoR4Q z&B!*j=5Shz*^w?88JTjN{5>DeX<|m_+QfUw*?Gj|odI;^$4+{-#>-$n&4$`O_JZal z*ei87LdsbAUO--$)5VRI5&(;n+M?b^T_Sx^=o^i8Y1jH5X!X9`{P?=l>eMNF9)a37 zZ^%{1y?+cj-#}J}GEWvdU)h!B4Y3lEn#}c1tng7#C{UKU4!bPQMBD48%kjjqshyP` zEZTX-fqYQbJ-do<8LlbM;9HJJgIbi9-LLE6@!YV06WwQ1ON+{O+rz7a!;b2*sj0E> z{N|I;PP8-x@+&vsWoc!_xno~4wl-jFlld)k6qq$2R7kv5N50+39y_ne8A3zf@(d^S z=w*k3%uMZ(oyTr#eSLCaBTsC8a4=?WPy*>~7Z`Z+T*-5kb=>}NFM1%TP>I3iu2ZQD z>TpfpC-Ch@+z%dklE%P;d1C^bal9)&ajeynV4xDe6@sNeA8{}ljkI4Z6$b)B*y&q! z$%E(;AI)Tm*}89Dedbu_ zG}uaV(7>W8^9oh++rA13!ngrmCApbsxQ%|1>mGIqrvut zUQ4B2l4*L6e%=|LH5OrHV6e&PW&)G*1)YF!?Cv}Hy~`+$7cOi76DQ~)9|x5m>HVg6 zQ7}6Bohvj^q7z`KV9GYof+t29dbZaeKd#rkyo0hHqbnWt@@YT;2=3O@>pCLBCL}E# z4Mj_i)h?be&4r|JcNdrI7}TN%=moYc9L@jM*Qbm(B}hwngC7$M8=DGHTjPBc1oXdI z)LT4}6s#h6rQdN&uW#Zg zBeD0pPm$F?cu0< z!^aVzXm7t2z((inGE)@y(L?>;RSknmD%h?*eF(7ZU3a(r_p^iZ`gX5&8f$LXZXbjA zz^Jab#Qm5bY-w5Nw171EdS_5$0HT9(!pn8Gc!U3X zXRLYg@et@4NQH2(+!77Q)mo*_nK^lRX z-aedVaPtLXaSqqT`|?1?U8YAlq1(eb+SJ`0($jN-R+FL?4i!N3*+{ESdb?c(zzbSR zAXLFizrvR&ffZ$d0C@z*FRJWtkz!)aU* z4Gz{dcC(>}?++4AK!IdK2OcG;j7A!5t2Pe+p|vx)QP;mZf?x3#=39h4_L8E3=p#J< zHH?g0zJ4f&sC|a^$MLaIOw{T(lRfJQUOzh#&48{5gr*uWe~=^Y_h{&%@)}ziTb><3 zQGm*~vzXfrj=SRTn?Gfsfh^;1#Cag+?6Kn#8(AYw!d(k}qOvg*{So7%r^n72KTU51 z-8Pk8pH#<(&!3x&s3@u{Z4xsIGZ1Zib_{Z%wnB!ROjp2<`d&DS_6@Uq*B9-$9j>rm zKnpl&2Db;=hC^><8c&vce?aTZQE2EalvJah|X%{#%Bwyzv zijZ_4SUJ=D?5!P1K1Hf1(VXm1h#w6jPYda4!1#3)bJI9}onM@8!_TtNVMT+@J(U;$ z{t)8YWj;(x+dtr^wh`uNaPdSmmb*Iq2bwr?IGlCViIRp}rsWyQkw-evtDX<>r$s^a zV^p-OxtPgE=rUQychCu3JJ`C1U4WYGQ$`9RB3#b26ynJM7Au|Zc?>aOLBshLcimn^#iS>%?p>*)dSxa(%@-x!78fBwgtTC=%ZRP_NSm?L6}9tWVAF{ zfii0Dqs#k?a^K?v=yGjU_1nV*5AosUY@1Z>Jl$khbP;WDl4Bl~#Esic*GINRYXbUM zm9wairRNCKUX2su6VqIfPKyCLn`(c6e1UbE?M+Pyj)~oHj>bN*PDHCkG)A7lQ8Og> zffa5pV$&C4BkQx=y02clCT;)NkBmUby$2%Z6k}D$Q1N6*mrVih5)Vcjr&kOiT{ri= z6Vgn9KiWSoj(_f1d^`mP*ezC|nR02&2$m{o5zuo9G$KNpwN~!|gmE2r1rVjtH>%ra z9OEu~o&ye`iA(bMHssDI_1}#KSKQ7AUjGe`i(NuLUfU05)9m+;exUt#APme~BV_T8 z{>X537!M*J((Aut4^E5RX34#Kc@c}!-bo`svfoIbx8E}Z9U#zPps(6;y&OQUvE4(? zJ7P^g7IOc0!;!C}U;4Fr5yM|@?U#dp0QKdjmg2<40#cSj;rAF{hGRhd#Pd`@yM1?t zsp8*lvfB4wjI3ha;526dktq^r9c&pgfLq?(3SUl9(iP80OA96xOwWf#C`L5D8DP0v zT59SOWe1ZAln6b(Uc^UdhNg@hq(c~iA0SO*2X0I#>md#ko_Y)_7o0(iQlr;VWB2ZKkbO-|R`P(;bELdC5#6%(3 zLV#J2fvEm&`J&P$E47*ZorfU2VOh6M9RQKhTx}`)x^+4GfL@ig2T1+lYE6u=P55oz zc-U7|KAI0}9`0z~xe{UJx#I2~lY`7ShSPt}L*k3uofjGw0Fp-0$|_m+uIlXrf1z~? z{<+!N&!9M9O|dG-UMyR4*&7VywSho@0CV?{2qGve%K?cb1))>_H);@4vUdCIufbWh zTb$jS{x`0k=}9ptJil@7h;XFg=Nq~fox8OXMC^w~MmAs>C7vYxJEcu_b2krgT2E>y zVW08qw{P`b<^Qthc6(-^V{sdK;XaeKe*qhw^|||>u+5$^-0gPejT)em_UL=}PB%N8 ziSmR=HqBB)6o5Iv5WQNP?h2w_ce^EZGb$=o>*@|Ys0b~BEM^ZTLBACTJV zju_CRbs31+|8lNwN9^kkV`&@+;N!Pgp_o)(Kx!UY^btFSND}V7%kp2m;731OMTR}O z@I)T}3lHLxL^j}gHpBc$z71XxySq%BcPazlWh5mjZ#*E#nG^c>`SW`vfqRV(9SZM> zILj-P=-shC(wONc4jM0Wc9#ykY+|g&s}+OgkqSEwsW1!)fTF z>ID33w5molii(R{FRdRP9+q-3HrL##ouq-knX7r-J|HXTC5=X4Gn5j!&M|_{7$aPi z?m*0EtO*BK_N(>rW#Yvq6ElgY`k=}dAL%Uy{wu1^v8|A9$G$85&<f#Aim{VVqtR2WR#dc_~iY*F$NatO^Hk=~=^6YTX)cH~nIltpn>Kn^7(A0BM9 ziyDDemIyvOYk(&7(N1HQYB@U>iuf-YB4PfTPlRP;c^lN*p(D8vU2$EHjb)UN3y1tR zoBl!ROv!h{Ol><4O!obU2^kOXFOGT}U>8_Nl??__A2GVsjIlWE;EPF|dX7_*BX6Iw zt}ZiKN1XS<3Q7h5unEOJQTJsZUGqZ#y*1lA);cwqsce&w$ zCr=j<^wWWs?e+fHcFd3PMo+B2eWydAm>47 zYWjJtURw6#?!o@>J69yMYp??A3MAe(nLokq5?VUd6Ko=o9p5@`gsoA5ye1mgXC|{Z zwL958t8~SEm_F}Frvh-;dQ;BsuAVw)3Qn$)6bP9}R_dGyWZlTte{|`fm)Ab(u?`kne+JI1BC4EE_`5Kd(Z*URcQR_Hs1y>qyQFyL|MB(aVL7*J+y7;1AW0dL zk_eenl%Y^UnKFh*s6fFEdRe!tt}?nantRy1-QdW(}l3iCnZ)^0{K!};h~rft~H{Pqv6hXHq! zwYvDRoVF-<{ra`Tog)(e6Atn+GCHRdU~dcee%n#9$Yija+DSb!xN%y!s(~4)>bs(n zQcC7aLofD26v%A)M8~{0p~_>v>da%`C{VXcfplf~W?2oIx*RZ-JAUuzsPU~@7ubN2 z6vT0Xz^~7E&RO3VT>b}t(T>oA0r`Y8S-ctKe<&g%fGz3!gu@Cup-?T<9I^xG05_cT z*b}B?s$iWgO#{08XMSfU)Kh<6RZL=MFe-&5aLkjWvT&2=s3V;d9BTV60Jn48G>ogB zvV3Md&o@8hN2*fy?oPoWa?A&UkBGmkb6vqM3VB0LeFvbFx{o_=NAV0N3yBb&_^F2b z&Z|~g{7NlhhM-j}OESCX;^467`Kg!_Ct8Dq+D1Oq>u&)z9N!N@Ajsh2#|a(72R+DMjx&|D?hHxb6rPX5wBDj%k=ew4gTq|bN9i|g zc3fC+`om^iF5g@4ZeUiq@+Gf(-$FHHBl*QkwgsS*D)aau94}Zt2&3`JYNO^+-IpQ) zU1%>oZMRKHnYvu=(*LZ~v!)n0;0^_@%?jeb77%mab@N;_$58S=t9dUQWg%upc$|i{ z4bBpcKZhnSIoMgjckNI*(%z6DIQu6JPK z`-Ov@GXuquAD0x{?s^SitNY7iyuYV&{}%ryfw6oa3rMjKADE6NGKivkaiou%&ccy@<(U)!U@_Yd1dx*ko%Sv8dY4>D@M z;NCcF(@qi; zP3#J4UH^yng(-1snx-u;P^x8Df14W^wA$>~XbI)83l8oh-9M^INGA9{;0fI`T=f#s zLD)4BkeA}#6;a8pNzjxUM-Cr;h$V($-A#S1EPZIB!6b!%_t3_{dW$=l;n|p4dYPBo zu__OU2Y*xjzCSqX0_Zg#omdwzF>6e-63hDWv=!9|j(3iDu`&0>a~%OoOj$0%w$?@- z8d_Krd<02ANR_{sT$Mz^tqps?h3{*jX;oB2J$XGfU9{~jcVxevS26RE!*?~`wOA4> zGn7srGkQp;w$`>6Vq@5R)tV(*b22MM zdb6a}&kbSs*`tEkf5-$23kkovA-DmHcXuTo1DBUF52HXpWXNy| z5@8?;K^QQSy?kUu2c5<2@Zq1?TlSg68Mij= zXFQ1?qdYD4sPYj`YpxL__g7oW8+)KVe?7a|O)hE6&(-21_$SVnuUZcjBuk_7@@0MRP$I)MRFL0K(noNS!oH=BU zg>Dxadhoe zkoZTYFR7QwFEVLU^SEUJ4RvZs`g29R;o(O~3FGmrXV$*m!R$A@%(ft=&w}l2SQmc2sW=pW==o4L@ z$FHixtl*Xh1x-KVSfH=&d9_98hP&ohUleS)c5diPu7JE>m%%M{zJ72AZ>jsR&yQCh z?iKmJ_v(J7Ni4NWhg0$*Y={F?P7?%rS-dW!K=ci=5NLeQ}s$75M(!M{OyHteDzzDX>(SE4)dlL9P{NF z3@w?`oHK?=`@s_DWW*n^7|@3b{F>aD37U!vV%z%;H3^<` zN2d3BL+kJh#Xk;B(j*69X|+jOuU#fD^}g92Evk7Y&9jc0Z&~E~PoGxIH}4TU|>;vSp^Q77k zJ)!b*rEt%5(5FRcMcEvDOba|%hVD_=oBVa=O7CB=2&72W1lq#9#Kj5g&MsNe=fJI! z^7jyWf5H-hss~FU^haE>~=l zoKKKLAdEb``YlO6j)&;|F~bJk957B;NR_C*x@UZO#O0XH;O2NhuKu*z@($aAxjm4S z+O1i0KhAyQqga5B-w}IvY-vAp_Z;nQn%?Ix6%d|dq1YX!kCST7CV?z`C_8m=>*Ym( zU_DlYjC*=laIK-z?Nql2`8O9p#Ewo}(gE-QmW^`p%DuR6JM3FJZl0_nZeHdBJ^zne)^z~lWf$zlShQM+H3Kg* z(%jbmC#>Y#wYzxJXA^J^wOs^>`B=FLf^)+0{u#lys|1`Zko-^QEJH9Eg*^YX&Hka0 zYb{KV?BDd=VaL#0iaKkjjynJY1|xst72SotgKv2EPXmMl?+3T?`yA-LBU z!ui@FEkR{O?k6hX`f9UwDv%ORo$A*}!r;oI;ec(iZUfIkg9lA8nBS2Vzp$`y>^`X* z^jvAca!7c3!<|c)&9i>9R9OmMg$UdG)l}5KTz`zqB(?Ms!wp8UK&=O@AwX16h}Gwp z$A>h^%{)}Z01EFrPR+&H`38OhCHdTb$Kv0-qXRDW&J(V>EVghKnf9@q|B>17ZlH*# zWGdEkSR0!Xf_9E|qRO0vfe_oLq?}tc#lWDdv1Dz*1-l^8E%(XoldGdr)O>!9NjtealJuw=Ta zs%pZL8Bh&46U^D0@B^=;{Xh?)k1z3>t|iUDYuLzzzLtafasWo;Reugzbw+(#lkUrJ zzch7qgK?d{P}qkZ9{x%6w~Md z^_E@s=uF2rivsOYh+F4O^$;79Rppu1PFKaaBrxN52iVjxKnl+Z9L}D-bo(=U-5a^B z5WlWr2>!1|w(*&nx~Df4Sc5oF$g68FAN9OPZ~Nbvnq!sQhtf81R^3Jq8sz`{wE2QJ zv=NRUfaiMsuL6j*eM(`k!uOANi#WZ_RwnwbT>moA;R!@Nr;$au<>zbU(PGc;UXI4Xhv+DJm0rME-QAfea>-GIt_e~uKMlpp6d-ai39 zht9Kv@TlisJ!$({sn%QxIWC*4qkZ7%@Vm1>aA2G6&T?H-e)gxW=={Zd{Z#KX;Va&O{FK1Uuw^v*=iA5hKNwrV@;BfhL zLp28$<9g_D=dc1#Gv5m*7~w@?2&a<7^g+LYhbIQMze8B72t7{XQ zf3``J_H@hIVXrIaMZx-BS9eCW@YbyyP%q>kdwFdye_zv7W1n>Jm&3ja6N*M{`ncKC zrpZzNDUE_}${}Y9Z_e#~Pz-&O{D>WQ=R#Lois{AaGiPRxdhriha4`ta5p}&y!4Xt%q;f2o2N1L9b{EYCGuzV6=KJtxIQk5@qyjfwFAxQYrT`8dyBn<}fnhIM zr5u>q8ZJW=Og|h2wMVSGWg-=Z_HY2AB`_KQp9iEgn^u3LK4OlV*O3)Hvc*s zasyj$%0XH(Brc#P39TE6Wb>vL9t{gSQ7V~gAy;iV*{8m-&im6c~6DSA;}UifCl#_u)3rGw7{RI<67 z{AqDp4ss$&FP021I*9_zjGjialwGo8_qnqUrWEzexh0(6d31&U=(ws;s`5l}SX{Wj z%iFsG@MJ*wL244t+9k=SIdKksY)FHJZFX_cLZlhBgLfBQx=&be#=7X)un@?RC|T6D z6adj!`>-9L&Abndmfi}>R;-8tgjbc91|Zpx*16N8dPv6o`e0~`VbqMVzgm}jd}~iG zR}vnbSCypm?~R-JVljK^`lp3kPtG=d=+VZ&CufbfLV{uE*@xyb7cwoKX>AXFE0Q3r zb}Q@z+Kt#`D5Jp^Fh_JuzuU$KDC~@n9|Y@LaApCg{5XJyz9H)fw z143Rwr{GfrJ-+n4$C&)3D8ZO%9;e-zG-cFS70r^pCeg;&BjY1L4tn&VRV(P7I52l* zWo6x4a2t3qKkLu?td`1?mroeQ8c+&=TAlf$?xXMRhn@TdIQVR~NXQkd;|)u8bE;|f z>u2Rzod;E37!3iAfzqrGY*F=jP!CN`E{Hys=?l-2^nPihK_SOAueVTI95})046=g0 zM#tsF=v5`>TfovtnY4w26F8zv-0e;r#%@k!MZ!oGli16+fr%(9|KIp`g@WBvk#^XP_@3c|QIJxpt9|K>VUS!*B%PpO&B?WT#@$-eyya=Q)mxok+Cum>e_B1W88Mmpv3@3R&1A;Sn9+fm zQ3Pp#IWf_-zzjzOdv6auSi+#DVkXP*n`Osw&x$Q}Vnd8-lCrXLHo{CCKTLksMjbtt zduOuFvi*lshsFdkN3oI;zSFgK_G(DJ#Zu<&iC(^Ib=Y~a%>ha%!4Xl=;_wW+XUHHf zcrF0!F>8Bhv|h6HS05%+o8YK)dI9(wt>I_O$*oThkzK!YaID|m%r}B<$ORVo2aycz z&px)B6cv37HNH?e)@5N8ZX@7V8JQ?bdUDYg>6uSZ2<8A~_VETdGNmwM1=4ou>*2YK zt8?#>mRO(F+-M{y{qYhJka21Ca}$sO5xj;hgM;*b|CZi(aCINuBgk{eqaVlO?hH#} zV@I&>oXT$vH3JXq+b2QZ2>C0cPr~u!iwpJ%5wFN0JTcz9#i1u=jG$s>4eXWl#4=@*1@=^ zMj{8R*~4hre`}PVZtC?*Ovy1H{OR0jGv?@o%!|LT(5n>^F>Y2kjNaq4Vu}f_A&_- zqWhN2JZrY;+y!mPe|FRV4M+cNyGtsz&N-Mwy!I{i=6W**-zv|Bx2IkU_e`jIV_}EL zPo6rpH%9_A{9w{cXUDGMX#Yiq!5&P^(<7K1ghH9M&tw;u#MpF~4W%z0a!!bU{qoC3 z?|s2PXH*sbOYq!B!aw?#*cm~Z#fv3oS&@Nb&%GUUxUl*Fn(9|?-`+~?*QqUD#vS(h z`Sl)p1g+Y?R_?Wpmric&){rrK`M?WLCtb@|-{y~;OcdfQ3?5qeud+UKbZP7D&)@uD z7_Mz@mCcIxsq=LG$1(Bm8NGZE1wcRmrheL4`X7;UH;E8}$zSd;y2=1br!L+R;tIg~ z<5^>SL~vs?uiN6qi-pS+Pg33?rMA07`hZvrebzdTD-i}>*iRt|@!^oLLBft zJC4-wyupbf2Sy@$mOU~}Nci%x@CI#06*Yl3imGXbkJ7qM4m3_&HNxUy$uD0_H9KI4* zOIxs1T%!#4#N4XnnQvB-{(X&65`LiM^fT?b%U4s^ZqP}rp$io|t9k;yf)5>9o_KDK zHriVixEXB8-c5@uqxlzl<<6bQ4eE07NEajyx=6f5JI$~tO4b6C5IA)Fg{LP5n^R3A zHt%8eszx`wyjT$8(7(qN_VyNcD0Ix0)Tf?nED#mVdV2njsyMK9zPh+lEvRZW@85gP z)M`z?f^Etywt;So0Z+iOML`#8H%6^hZC6;$`uO|-JVUN)-JguFV_GYBD>^#X(*TD| z`!(;}s(jll)l^G9Y43OLG#rP(Fw4C+sx>```0G1($c0Nn#(+$%%h?&-CTNXtnZ0~v z>pw@*pNj9&Wzfv0pI)feWe!>KsqU`*r#}$jqmY0dPaJP%_sJ=KZ)~HU!CyzXX?^Wn ztO!HKM)7=$?bwvxs9PPaHSm1X(biSJv%d%c$>8TIdIQmkQ9yWxN=9_3n)!;sS3Iyn zgZ--ej9H!R!-`rMqoZcUvQSciVC1`uWa6j+n=^8zL&RGD;=#;&ej*$c8DxRyO-SSH z$;4=Yb=k(IdflzxW7HQUZ_}GQQ2&L$yhJeQJ}x)hET2s~YyKw}_GjJj5S?6|0daHlPugziY*e4q;q%!g zzuWR4sYG_A;=b}5^115pk_$=&k{=c+**8ZNL0!BM6cT4&oM3fIcf*H`u5Tao5i(`A zAPaAY9tbOb_WsU%)q6w4{R-%G+@RHHbvA3>p4}i=(=GI1_OlG9)TJ4iOmf|P&#?#z7+nVS&h#>m8hBiu+FE(T>R=e@;Ftb=~v;l zJkn%i^hfscW~X&t{as9A>7vz!feF?hq z?q9h0Yf|4eVU|mJqUODR`?ep;+$4L@E9+}IavI*J59+6QntjL8I2Zt25u#R7GwM@K zc9Ym|2=4}yJq;UFJ!@&v*y#>mRbmV!PFB)#JD9G5$@(SvJeKqiN>0DexP9|m(zNq> zUY;Tvo*(*(>gqEN4OudsMU}DS^dcjZJ@+EtEOuYv@qG5dfKCfMWHs%L>J~3v{?FU= zu+P3a5$~>h@f|HDr`q^SzNhkrHOAVX)bd^1n&*tIrDHw^OwqGv{t$!{E^X($f?0q( zbLwHk+1h)ND@~lGqNQ}~ZNZhcO~YIlG6fX4R!x{sfF;PB5PzKPX4$_$QNS3?ZHy(; z4CW6A3A_3x1AnpjZyyq}vdUk-Um;8L!z?h57juwXK!}x8_X9}>6|S9}H6P%9*je=k z#ZxVsRYU%=2L~{YR($vnK&`V{HuW7BF)-XYgt+g)#|G|J8CR{DwvW+(!V|XsF==n=|4Ejd8xP)c4SHaw02^OjFQDU7DFm@YbD(&0yA34FYyG#;p zn+NHdnEMW|SdH>^k?b!TF^z`)w-I*>Pp7w}=#;L7)1W5y0ps#lrED|))&jWQZ zz@=0tT4(HLm(?gF8~4<7`WMV(|FDMEf)MlGg9ke=l9oNB2l zZ`g}pg?k0Gq?I(up+oK4!sVa2cyS;`lSrrA1M6NrmF4(&0Pma>zdB{y25ol5$QZ9N zQi#7ueTIz?;3vBsA-zhg9ZCIf=ATS^akM1!69WNlYy4HSBT!4eSh<2^ML072D`xE9BXeh~+r$Qhv{Gi%3v0 z1vOF27xho8cbz_0z)iCRf$7r~X3z zKqdDqy5I{R)9h5*a^>CD3Aznw^upl}tQX{gZv*3qfplwgV|gn{=AQ;9!i65cM%ML1 z*gaf`5{{kSyE&6u32icEUC^S#85xEg7L6ai(N&wdxedn(hFd<@ZP#})@#u6ulZ4pK zv%3waAXxJV1eJn!%5@W#!|3k1{PtW`C2dsSBGsk*-qx7;2LD3aTPpurI)AG}#^uW| z>1YUARFU-jH`uO`8Sxr1+qjKgRnzc)NkUbUa%PswlU}K+AD7sDL!}ZB-{OSLku@1B_y;5 zvJsR9DQW2z+pm7$oIUCG5v0B7#f#O!owfLo6WOOzu0#!ISbxQFgc*~5#%kXSBZQ^G zAcs}^bWjzB1h*+z3-H%dK}LsYCYA|Fqm*#j60fy@ia66I@Nor$b@1dvR0WyFj6C7B?P09Tt&(7IGTdCaW#}Y?)#R0-I9S zuApk)dOP*ow#rhA7vm*n*unSRBD}=LTz#MyemZJ<)b>f^6_(91p4lQq?ch@XzKbtC zdv>`^Qo)I%h9Plbald-cJrb$Eq56sb2=|k_mGw<4RovPHs8p)xYwtKM^Kqco*$XmP zvW!&k-M`=dxw(7f;$t)Bwr%{r<;Bl0$~8XgUi{qjT&%uDS{I80ff3l++ODBV+Iq|w zz7)%b0O-7O@5jf^&f!QD5G6^ZqvG#;v4ndjo>OLI!Fb}?d-?92FMG(Cz?guOS&0b` zEEXJ4mc}qSd0OGk-S^rA0{s#lIcTO{syVjZ8G~8=cOxP~O2Sbu9PA`7G?j#IlT~Wo zSb>wkM*yRjh`6rJ{vdQ>AH$0$66Vkfb9-Kb1DUG(DcE7d9F>w1vcI*GiqY1lPm^Qp5l#@uNYVv9>s5BiZ(^n4Ow1TxpNmwSGg(- z?R0luZ(&Kz-zRxlPXu9H-5fHdAZ*X71xWJF&PbBw8N zH`heee+rzXvf^gHAb&pdOw=e64Fi`r7s0oC_s&r#FUn#76q9z+($W`inBZGG;e(Hs z#uIPdyibR9_o#OKyhnj`8Sh zzAlV+I8uiX^^%j{6l@BS8d1>o5AwZ3+jQfLK1w;Jj5M5I;NTI(7QZ-MQ z49|)PDTnw`e`#Ce2r&oKuyit*X1mK_I^XX#8$AA{823$lY?T1 zy#%^wa)QV~H@HJLZ%DZ6XW?^;lU5#<{!!o3z<%Li8KcC3**oam>r^5imYgYBJf%zV zHf#WmJ!=NOR~oO~ts*eHQX8Zf*LKZzFcVVjF{g zE-{J145G1H3=$!#vPo{@rYwu;(^6Yo8`J4wb`w&aNDp*awd(Z&FKSYz>bLCPJ|YVj zla08%cZc~3p`$llc(G*_98N%)SM&s&htEp>3~i~h*?rf(7Jq-@y?gh1ukJ90B^ymJ z_Rdew?RYIR&IH0{RNZRhx0}(IFE2>&#OYYD*^&|=_wvNukIHB%hGnL%B)B0d`KpKB z2#`{!bgmZu6QaqOrZRBWyZy`jpPa-w8{1Ntqx-wGGvT>5eZ!m0+>!8UYV2$v-ca3M zWtxX?|C;Q_tAw9|`jh3KE2SkszSs5)R1%$l@PkTr-w7Rr8!%=O0lyHV?>BnPL56jW z!kGl$d~5X`dX6*Z%ltW~jG{!^`MhNb5Me<1S>s;^SKxpUz2_g#z{=ff>ZQ{8u397` z&yKqeVYA*2qJ@Y85pi=gpnq0($aiJlk;-=!4G5A!x(||3RvbS&VYkiokFY-4s_isK zSFN3~`Nz9G&R}ZS2{yXhDcD&wQBJE?Ed&4c*Uf`O*Uip9c)Z9E}JIE#2$k;hn zkMXGA7cqL%Y^N-N4skx)`F>z!Rm*W?k7mX0UH;6l%u`vkfl}LBEM4OHqcf46mlxdw z9(|f^mb0X}VLlA}yUKQVa&mUC=G4toZk5gP^pwp?C}8BA0U>e{0$%tGG#Sl@yN8UbxoK(ASCzCV7hr> z*_80jlp6Q1-D!8#aP)OTXWayB*X7%%rW;+CL?Pi7hXk(5QWbY24it`U^mqBj*#E_S zA@rEX1!H+o1hIm_WE|WF@WUllx>(J(-DO+yCC5`Pc>(t7ERxSJzpIkz0xkfgXG89Q z;7N{@=cSvte0ksU`7~V3A#S(y)B|-(bDtbzQ}q(c2e!PO3_67i77&z@FZw@IupOP~ z=9YTo_=Pco+6u@ec%X1>2(#)5+eq^0j|WCcLMhI0+jJRupkNgJu#m*jeGIRZ0ET!CUui~K*ROC!eyJ> z(TE88#B-?&$36Tsnlrur?WxE|fjFe_40=UAjG7E1v0s z$W^!KW^&b<0tQoaB_0;x_I#-twRE@Q9$g@y&subf2qiV z97(oAv!(O;GMSVoO?lOkQHL}o#`vAFD;2qa4j&>bM{cz{wPTaKU1wOt9GRl?5%;c# zQr-m^t}%6HwOw)gUI)0+Wxo51W6ZrT0RzRQQ?_$#93eM7b@#n?MSAnGgw16XWO1hA zs!CRz*b2jTF!gP^>$rohw&+p7S@O`u1Uwm`ktYtkmS4Yo$zdh2OFq{TYv902z3H7g z``vI{*HO=WY3mmj*^gpRTp$iixaobbDN1THW&)~Q@sd!uY*6h}Wpo^yz5Ux@#;*{r zyK(<3?(G^};{IG^POqe`Qz@kBDDFQCN2%R_x|1E%$;uWb61ipeF6Ch^zB{qL?!a0lN1(O16R zGsHw&D)ZNy?tOq{-!YOd%#?MiCRT18yDts+V$p8<>(O!wM2M#EKNd78r<*uq{{b|Q$ zjdbm)5k}j_;uP}Bu(DPE9S|RLXYem%WyY=(WE5>Gy_;NWGQ&$60kc zFhc5+%%~EkQdeHe6g#m>1u)jDI{+zVzUPiM?YdOJN?hJQ5H_Ju&2!VEF&Y9(ptS1! zO1qx<*BCo3EzLju*2AUj%ll9m2`2C}J`ChLQX|AAd3qU~Ns`t;1 zRgO&GwMv3KlBIcWVPR17z8+WFX-54jm0xXS!9#(QL0r(Hgf;XgMO0@4f0&rcVANTeif>=vf;v*ldO#UfJ>=hhaRL4U6L{K}mt1DpV(aoK&GVv3^mb5_ z9-}u#6~7Q`SdXMW>-x53Br};euM3^0L#pmz>jevr;0oWm!TY?On3!B$iLVGh;oR%_ zB%oQS3Dc<5Uq64oZ~1enmiZPtAe;&i_l1SH6^;`QZ3Ab((fVBf#qMnB+u%BRjZ#u- z^2OS2^|O)WUw9E4{5iZ+a1krYfOVr-gOqMS)To|nOLb!y*yDwtJ zC2&ZmmM8i*y`8b`TE9q-p(n>OGJtg+pXgU#4DdwDB$i%zb?M(n?PqY}w$c+$S=!ok z@=i6U)vHfx=3Ij>=5R%Sy6K3tz9!SA`Ikzs$NN67{Xr_QD>-Zlp6Qn_=kT0HnV8a? z3dLnthoJ<5X^WI~0%P7aiM6n6DNr&h+TdfpIoD`BBt29wUF%z0Td!?r~f# z#ct+R5Rc^9l!tECS(qfu`YUb7`J%6@#8zORvDV7d>f`a{;qUMQrjOtdh~e- zb_w^2y=y+qPd~6UpBC_CO^w!iDNI z^PCK$>EK@g4AelM1p}S7vh2e^)C^9iSkuH^JvBS-J`6?SS%hpX8YuHP-{gX5UUTUYdH_lhWrG#Za+iBSPD?4=ke0>GQ zhkYEGVwffqICS8X)6&@voa3H}p<(w|w(TfyUwYEM=7%RXONQv3gJY7cy%N7w7;*J3 zf_MJefKnD#(8H2^ii@dQH4K1dz$U{--eaeHQIG&2$K+OwO^*Il^|B^Rxy^Hu10F!W zdpJDDRA+tVAY%DGe#M537LgrEJ-Axwg@mA^;|*4RvF!{A{fFL zhGO66yGss%9)8)P%bS(5wqX1xg3^ZwPCV)^!&jEvcrKI5x3S&Xp~L2DCEsK8$dmjC z{WEEk_O$t0SC_|3h&8*$daW*nWo6w3s6xrqvCESK7+jg)Hu6DOBkhGqQQ5k6Ywy4j z{E47N@E>bnfR6mg9}4l~wm;R|gn_~%<6V)lFoE2dFJzl9 z#J8K!15VQxpO^Q+YoJf0CflM{Tq_2=q2-WQ1-ah)(xsp0Gey)o=@P)|HrI6zGd4jW z5V~`_z~A^m3JQh@%;N}AepJW`A+M9PMyUu8o3@Pl&+#<0z6sYAr$Lel$=%Z{D?#0N z4|efqiP(_Vvp*4&focy|9%UsHec{5|RV|tmv0DICu@yn0{pKt7YAq^Ra8h5{0U^H2 zbAp2L;Yh3cHc9zF1aMV)1i6pIgRE0u@8+^-NV636!Pxpy2Ix{xDg zmjFE~w}^Vpif6;S6%>>-Ui>{1kA4?;9&`)Q^9VDryw*Mn>qLf^Qt+*1cE?8R1Cefh zGq&h1oyz@Z&+cT&w{2@;Z5^>Nyr@T2&9~DlFa^Q!{QNBU&qv2>87_J(?p4sd%L?OW z?O%F|!;52s05kty0|q$Wx&5KGMZT*?fcN?HIsyV~+LDu#qoQ8sZ}GVks z=w@u8VQn@YGZexw?Iw9ZNq>&z_nKNB~#0WA{Kyq$s?Vf(UcUb$(%Ap%m zawX=w;$W)jyprDsV+oi&Yk!R%S?|^NcFshv-^jdNqgeN$D|55 zggXr6TAXofJSul8F8vip(#8_&R=l4eIgVpiI4r0x!ri6~pupzmJMQPhqZDPk@_zJq znx@!gJ3?tD-OfN9+248~O?*1+Kwr_wV@Z&GL{kmZVLa?67Js`5l4hVgvTB-b zg#+RH$Bj5DU=(oTo<-~c>5`_K+uLIiEUhB2y z`0w}h)tfafSfLuj;1K4rLwAWn!nyLc$V^fcUEU30oF z@n|7|<~x4gyhFG0E=WNfHSt+Gr)K_SlW7j0A6!XNE|K1;tc`1DW!;_hM-wK^n32z` z`a@;Lpf0@`Hd#;tV%14OVLR-eKR@8}e}STtGF(_sXx`_32U!klv2jj`V@+>4 zYv5RU8XeOisVDHy{CCSyeb{`hs*gY)SFC8YagH3GTCx(D)e-x&s3YIzeJotY}0!q__fr3p9Wi?r(< z^M&h>A*NR2zR;}uf52cXYTbs|w~f62S<5BLk~&suf1wuk?MEi`vhmmLOClAWMyqUq z3BLJqU`dZM9w@2p*sop0g;R&E3dqlt*!?X;>%aq=&blU$z&>gWsw{es%z#u~02525 znfD()*!$}q3J%VpEh+E%4-TWYXIrw9v0U9iQAoYvDhZpUm>({=qy@FfYK1&8l&H$JLar>6xhNT(^!N- zlI<=r&i-uSiR0)93r98oCGQV=F^jVXD!@Y9V)I>=_go)l;yvzZ>M!MQ3yn5@-fo?~ z{+7e4QyL-OFf!@|BUBVs{F-XLT!UTUT~>^d$}!_`9H@@=tH27ZqZMD>sGyE z44D~~km|F@G_KK!2dB$zs{tEps#E71VtmM8NznHqB_w^IqZYv-mS>y%jrMSIo~gD;o500 zs6_JrsYEimvcs4C$iH8l9sXR6zWcQ9WN2Tc_nAzcdi!*FKN=sDxN;;* z#7fo~xpW5gA(Gve>FeWisuhpR0-TIzH;`A#5n&g)rGtW>2?Ne?L)kYY9!T%kfWi5h6ldj>8CISD*?%~f zxSAhOk)|#nI$=)xb3R;uTlcr{!Ty?%1Lb7`` zN)Po0f9UN3->rgXqRGj*cmTnW&igB8GHv1$b9%ZR?EY8$ndzn;Vs(TnE#tlz+&xr$I6S;;Pj{84XT>A(=#iY^xxsM{>VEemp9N>>bLT?C z!)dYG#&~Q)wA}R3Ju4S5$n5!?oeFdQb}GZ>?nfgM#L~O_)g?~V6cn^ODRv~-(g2j6 zPi1oJy*QWdN|+~BC*dUHztC-zzJ6x_E3w2Mv$f~WDADq)b8~z0_GxM+#{~1N|BJ-I zUw{5A-uV6n#R{Hc(dJ`JqWFy5YZJr*Sp<9loflPD`Y_Gqa{XP&mP$Wsd?%1Y|4z0= z&_;&XapCQs_6DKqaro9UI5AH)FJ??x?5+e|cjgijZ33=}%?=PNS_HAPHhmwyFIe<% zo$2BA3gS0gvF`XxoNS6+uV9A~T}dd|&DMsu{SrL68mJ)NZ7A+*WTXx@o-Q5VTfAC? zru97#4GEsX?;0QLabHJ8+i9ZI-QYm|XHe|YZ_uDsC9iLAo1C6qxm8r;`p79XICzK9 zvyaXs6%Nom08Uy&VUZ8qT@056C@I=-1WhXaoD_%76ClXIeqH>qm~6M#J2OI>{g2$h z!?i4-=rkQy8G&JS95|?8*--JArKIHCxH0jRGEl6@twZ|Pn-blekttJ zgQ=)#=dR7gXv{uCfRa($Z5|alz}xaNWNkr*2sLy+cR$*)lleE}<9%Jz(Ph%N|zC~ z^DPy`C~{{9i*$t_!NNKO`rv5WNU)EQZndE=k_38p=FF6Rzj~|Y!=CM470k8-mKI`z z`)Oq-wD;yYII~_Rg^w&gE!QLoJ>L;tawuTdH9EC{pqaG4)1GWYUGSkwX9CG!n9ZMY zV?1|C*d)A7xH>ByZKbCgUI2x&K3RsEFk0d+)#A#peSv;{mCd8;&oZF> z`CZ>EM6x3{t-W#E?#_W?>Utg5*^$57^ma`S`Q{VyqbksEv-ghHN1na zpZIMR!?P8TkLX@MHIWJr7#>rX0XgVNd3mDyXtC14eWs{!wDrM5ha5?Up;$#;PD}fo z`2PKSwm*Oc^Q^3HOLQcIMvXc`-Jcz|Oa%4LGnAGHc|7Z^rP$i#mahHV8u&zfB3d5C zG{L+sG5^6aEV}2ykt783bF(RewrQl3-N5eQ?~=w~NxS2hmb{(5Ga}kh_8NBDs!12r zbt9pwH(?#5QjR8O$Mhg2Ar$}iW`-9rt^zY;rrR88*af-K-0(*=pFVY{xNEnMekj!F z#giwyXBhqNgtlI^+3(+XcMAlpg4-bMt0Xg>!uRiQxywYi77dyQsT?gN<;(x4Z+Mg^ zEStE9^w`<1s)8er>@CF-{!x9R$+II#{Z#F~_k4JaMSE}Jj(KAC$0d4NTdT3YA|6%l zK!A-i1rgEUu-ba|1<5Z?zQEU*Wsup23?N$cWoy>2e`I)$dH3k(O%F~_?Xq%1ZgaGg zjh_DcemVDMPS;YMv!s#!gDp_^zG}Ip4Bf}0qsJw#Q%k3yp| zXNk9eXBH2kd!gBYi!VErgh%1MtQKWnkOC_i!Eyu7S`6SEbsRHeK*;e^r_8EPIEin* zr7nKfn_ak>M`K4Ic5Wa26vi`_n^A<3V{-dfA6a)!h-<~(;iA8N`+rGE0zL(#dSK{j zov3(+%^O4E!+~R+AuK@F@}}K*=tvvBDAv50lk z6^~zQum5W2HEQI@rI^8(mW2#MgN!nAEL-7}kE6!zi36rK6MR@OBEs5rmG(|B2`{g~ z`^o*$;Nx@V%=sG;)F@_P`d$CjF*uo@{*YHHX6&~X{37Ncyh{6w&k!D z?Y)5LK}?>ks$7uH=F%bIf|lZ5)28eV^ov`zWIUOx7$%4Y**jWo&L6d306a@FRXN=S zX7#2pG6=}C`vy4^DRz^AHM5m>m&hagJ9Aj)CNh!abIV{7~A2Y(MmMXHvR#YzK2SB&C6E54Mq1$ey`x!H_PmF03peG851;C z(LnC3SST%D_HjSWMo}6GCN!pZ49>;Q<}|FS*?!=_!}C88I(&v+E;yd=f3<4VW8pTf zS{Fs}ENklkHX+x_%F3eBeAcdCKY{6gR>Os^Z?u*z_Y=va%eh)YGkP&##l2FwCx7WK z_m1)!5Y+eNrxd^%S#|>D+8mG}l-TGY<0qc`etF9YC#&?{_S*zX=wCD5$`Z;AMyP ztGh7#f7T5acSOwgok@E%$HmTG8S&U9$h5)uD2&%V`byhJC@HcaMQ|EboQB^r!QAq^ z$v+GVXSTXUG>GcIXLpwFkiD@}D^HniRfcz5hxh9$oB(9#%UWFN|7f0tg*O;=K=nG+ z5w#^~dDz=MYS8|FlQGJJSm1h4y}>jn?&!XI4;fN;bN<6XUE2|Vr~Mr|!iTKZcG^@5 z{$MwRTM3^&m0g-~YAa8*^Zj~^eU`&|kcu!gF8lelLj5h1{JbSg3YG1q#aVpK2ZYP! zF)bWhU*XlU%=gAC8&7!;s=Ph4l@?3k-+6cu$|9+ptDZ=@f+I4yX01OmX^v}fB%?&H9yi| z!vGd_$%pn1Pu-ExhDzLY#vkJkurkstH(gI{mC{@4qn_MJ=xDaq+z&L|H`t@^j)?rH zHpdtKueI4070dr!n@hWZKsL=E&};c`xlS*pC){C@D&!q`vtzl-#TO=|yq@_8ly zCk16G5bkE#XO8=aaDKI8Smx&W_N@Hm7ymmooU-RpP#5$BhZNNPj41fVN( zlS6h6Dbu6cBR?s1>JK-Y=qjY781d&1M>eZ|J zCTaCcZVmdrbBq^$*uv$mr=68blI7@kuW>b5649K%`F($3LwfG~N4oaY~>ZsNa7 zoB(%j+-Sqzbf{^49XLP1)|kDmVpvZuYTOFRhvV34VEhqBywR7-tU+r zR_zhQ-&zEJ+~%r!YF^5W17blB$;{yA5hiMC+}8MLJR9T)88|NMJ7K1n5LW=~m_1i~ zdW_Vnm~-b=Umrg7$h7Lqs+@`lkWDu&(%JCNg3ASJvR%2|WO02Y-xq9iX$uUok$5tG zkcx}Tr;dkBTDpw=jz<++f%PAYVHw&cm7Fdv&B^0@$!z>+*z_f6+ldJ~LgnTb zC$*wrFgbDohTdc)Bj6SW!)_DeERJ8j>UsTB2-kzTXW4bF6c-v+Yy@Hj!R!D*FPv`ec&^tJuqjS#>U>@ATYso5qF-wo0w9Oo%JM$PA z*S`qQ?!g%r#TSI=ys!*lhiOg7b?6xlent=_DD=CSC)fqf!L5SF#_nT&54;y-)pkCP z&TsFw-EF&O7#)3J`uD

@g#Tx8OzYxRoCCYD1U36L>#!d28g_&lnQ(VeLu>tMR2u z@5LG&R>LR&)Ctl;rUX1>>Re4u3SJ;@A74UBagvRR<1VxD|CCEro`0{MJ3m(j8C`>B z&Qnv5h6C%V6G>zKJq%~F|Ip7&oZ8eo?#!8;Q(|{c=oLNThCgRdD#F(aVdppgE84#?v{u3d`+4KCwq&hh` zEM)^U!ogqY8F7~My7#!Q`EG@J_5ZW9wo3UXRoY>7yY0V`dD#3-S&^IvE@30&t{^1rF6Io;(j?K>tkOF8hMCL;7?tbWtjG8^VyeWJ)> zaxzP92>Ga~&`UvDTAC2?wrY8&w{$HD7cadb$u2>2&g~m>l8XPoz;>NKX8XW;G@jvWWZ!Tcw^3K#uEk@L(s_ z?krl+CE_6A}CAv`1fWYA-|nNJebqHuG!@;J+Z*DyL7(XFQcQD zA&`nYu2`jH!)6)!ar3@T1&mhS=WEV)i&4<#I z%@Jnhg}Y;%PF+$-KVZDam`8gjsHUu%l;C4QhHj^}dm_^Q;+5fVn1CzTsZwkoZ;|67 z3GgRA{?0xHS>3+`uRU=5CdQX_@w>6!$xR09BZ0Y}O658bB{JOMDDzTpc;!HPVuEHv zX)LoNCMM>dl}1@RYo#_&NwI~(5Z?nwzy?S(h_PvzFhot_EsX=GmL z#Q6Mvhs=p9y*{Pg)N8J)g7a8f+IIf@;#p;eZ?AsnDS%T=>Y+(`Xqvcw7Z?%7s0O032|hvr8h#S=c|EJwqJn6wsJgq9ailt1G{%Wvv_ zesCCO92{9c3|4S7OLbkKV&KM}LsXg3o4-5U`Q7n&2eDsq9Q5|y?mm;JPk-Wcj$o7# zJnukSd81Rok%WF96$JQ?m+tVBb31w0_|kOj3A^-Sb31^SaQLN1nae79NjLYIMKhL9 zNyN>|`Jggl3bBz!U220Fc|DP!wg>&r9YC%wAbqvAvlVqrSNjv?VWH*J(AX2a1{tLlPjIQ@PMGNK+&oHxvkkT$=YtCH0;@|<3l}qwUi;L&i%p5eGQ5SZUFW`SfAuo&Ygo2vV zj#XaFbv{lo2MQNLCDzEww9K`8;2VxLzVq_r6;JXM>B*P?WO=W}j0$$YWwJ2Yc5SM6 zy*R}FQF80e$@WF*N5@Y+`=M1I+2QdC2?1^Ucl0V6ApL>Pt^I)TCVCAU_EUZLOnP3? z;d9ZU68Y7)U5_qS{{slzE4U|-)nY4`enq7gKn}U5HHUR;CwPqd`r;!H z$_(YMDC49z>t-4$v3pdSI9xT~RWKTO=pKz-MoOfBV=omg`=6EXwpG-9$8`h2QfB^p zN?h}wDe-rCKD7M*H*0_FOBTh0>$rSSI(r%zguUsZ+`aek_ef6&E16uQvqzpO(Ocdo zl*Qt_dGq?NSMK86{O7k+ggZP0H&l|k0V2(&4$In=9xk7Q+$8@Zl>Heg5eP1GGmGa9 z?(SzJMttUo8Y%&W{gyBFv(10)dV_4L<-U)p2fPKQIZwsTQ?4wdBFwY4zRP3vOBn{k zk^ld)wXEa^G!6alL(4J*sM~%Et{rg1`-}{{m{!(^$1QU>Pg0Ta^yOr|TG*~_+iUFl z%ohgPevT1bb+N`m;L+3wlu2!*jFD}6zr^e>e|}eKvou*wA`~qz>(GCQV?%3??#T41 zI}jOJIOCC;!$mUha10Z<86M>{A^$6;8~PX1Krm5dd!QlG9o5(-V5YDy>J? z(_Z%RnW91yugCWzTAK_qh6l?P+$C=p%DeE2dn>L4D}x`UO)Jkc@(R%rr=e-!6g4|J z{)gL-&DH+KZFM>P|3WJow7-sYNK_29t3J|R1+r5(}FV?HR8wMr5lm5(s6|`M=-#uyc zAf<^$s`hzCSHQ30w}LJH?8>GCsXrGJ=B`K)p2P{;Zp>-&2!b8QXH*bz#x$>;y z+tn*q;BWf4Wd6$AGppl27_b6H^&3A|?6_~^Kes|!gu1z^g51UfCvX?z|v zmfzKk3AN%>@vU<{KbA98Oq=||iR$yxt@!(>WAsjrMH4+~Z_AFV;_vNm{eIc4jAw#g zoSHh14Ze^&Vpb%Wcqg|K;T8-%uKCZWW>exygOB%~;7$cQ{hyIyPx~XJW>1{AE7{_o zrBzAj&n)2*1%lH`?8uQj=}uqcU9)F@>+X;LuKebuE$luu^MLX9OCS}ZC|_0wJAkP} zH2Cs6-_&G^qy-UO0o?1W!5=%U8~pxuOuHXLM-ds_MQ&T}5Ta@2a&;GIEmAF2>{XLy zHT0R#yPu6mcEQ8Hm9%_Muv!M7JHLgl%$M*LB^l&+T*maSrukIK>HV@-%a>mHMMX;kUEH@5 zL6@gtYa)iu-h28_%|Y74({7>vc%i?*jnV)3`CZTdJs&yt(g%mOg5Ebaef9@`PS5|H z+J>ktgfuaxg+uSO{CVn~t9sppd_P?{+?TQ}(icEmgo-}4?pH&3%h47QIt08KR*;w= z9ArW^ZIvXe;Y*zL$q(CQYHMo)xYa!PT3*_Ll>#6PSqM_UFw+mRY|a3raAIyoL3nRn zk6dBNg{h7`f0!4BR~4w=xkbgBuVJ@zQzT|8jzT zDanfjH=oYdHYENm0PXhcoKnxehVSVDKjKED%E^0?<$zzRua|0HdK@RPU#9E0!s6n) zI1H90H-k|c^lY0&;M)!HmyF+wWs4W$n~Jc1QO zGc@)ze%K=;JU9QdZk_JQ8FwVL8~@UTg%Mb5#QBm^-_3dQf6qk!=DvRWHXD%7mK3m} zNY=ZGL1^)_a*D%Y!jm}RivLiB3ckPV2JohB?XX3a0Ln+NU6nv=SZc>?P{@TNI7?Nm z4g8uU64FIDNMrS1z3|MMDM663|E)d_#x(yW^TzNT$Ub_B!cUrT=>NB4tDHbj#K>EV zMWQ=|;n|Fi60%V(p&pQT-pZZ9Y0pG%rnQIKAFdZ17+AY#{rdGbtKP~=R)x*`Icvr7 zG+=62@or0O43#XgDv;DEUJC*t%&;i3(~CYY0ZqFQU;=$Oe>na37_!`U*O2$U_u#?d z`^QDtC@e7P{^apvbGgm?E(N_X`D--AP93Mxvu6YbrpGz+Zaaw~MlXa$4-Yv_;0J<} zMF0_PVrX8B;xKtpDSEs5z8kwvX0+a9J3BST5vTkHAH@cX>Nm)Z{{t`xePE0^DNldk zuQp%z7P`z63LHi*4b)4+g2(wcVuX3?{;-iKvKo`r5}qeUDDUR$6R+M=f@%f{SCE zlxR2u!|rfWenG_6PCe)Wteb6;QyZU8FP5jC3k!6?VinF7v5M-1PEH*lTE?@d11V%@ z`e{;I+lrhZ8~J{l#k@0`#p&ed1Ee~M)n0#*v?F=adKIjBMS+%$!n1N$2PH0%VUX3Z zk`Auv;h%AxVL#xxdH{-H3f>Esx5U8ODb$^_CP!?#fd1x13d<@i?1GlaEI4Kl@fB2N zOTPDRUW>AS-m8OtM!IibZYD#+=`57?X1L!^D)pNF*DsjBDYa8TLol$w6b*L zL<&@l1%m6tyuxif)vtelXNIDmA1^)HNf;CurkuKRlIN_+p^EJ>Jti#8z6&=bC^BRz z?QsW3F$;l>cF0kk6K}f-k)Xi-Dlh2lw$%wbcI+7Ewt<+h+t7aropGLHB?LnU8I`MaiWm?AJKXq?FPfN0ULU|kqA_&5v`0-JxKDWFg~2W6*=S_cU%#6!%s&+`!$_y&6Laz8E-N z%fUXF(*73KR=8a=-i_$+-xib47oHx$W9nT&h#J|So{$KVE96vwQB>$^HPc(8b7JhS3@^2eEnvj1o5KJ${RucW+6*W(7 znsR}nqjbKB$#@CEj5|fMo z2`gId|2z0WCrH*oe~3W5Z;3>_{}DHo_5TZ4`% zR0EFF=-b!4#>ggPkU{o;X#t$n&=;c>fWX{t@pS3^6_v)%f=JbxzImLE8GxZ*^RH#x z-@q^>QNW~fB4^t;9HwjHon;mZ+^HuNYJ-GS4ElOPrLL@oPtY8=|2A~_(`L`!ilI|Z zecMBH4?kZ2Gne)x-6W_VIrUaa zj&+wek!P==CI;($FGoB)_rp_CcK;+2|5TVBGkFV&5tfHdQBmLkik*;-!>^?CYV`yC z|BDX%=fA>Oqcqz-*%R;7oL~08Ubg!uP_Y_0VK@M}9%&sypm{sK#F(*r4v^bT$5LbU^?TnfaGjnTqc!BTDZe05T`DfO9tZpJ^icmpn+-=yXiDq>7w-WH z4%o^mvik6|2y{h)T$|5PJ&)L_@aeL6+RqjrS5L|@=^>N1dg8s=BtQeQNUi(UVhgtm zG%U0spfa&~j3qyf0tHz|*{FGM}o@;kBR^`eG`24RxLER|I)60UIGu3L{Qqn%*EMMKL;Ov&k^H}m@67vhipAWH90C<$3y_%}|Jl?`S z$sfd6t1)n3JIT(&hvl!#pR!Lr)D(tfHBaMTTV@|c*C~n#BYmtr@gCFlbb&5nh(e#& zvnc4t-QGfjyKg;TWp>$0tsF6!VPSWMh-S<(qCFbTnod|jpjbm?VD;!- z=sdcNx8Qt1vj_J5ajUrA^Fq2=9xV zTRflKn1e_*X*H_Q%Nu?TL+C6XCk`?=Wv;doPHECc<$&acJDcAiE3s0JKWb3sq_tQV z`~lVH)dlCCVjx72Of^EmZLWE|`?cGv{|MI5RdGLqNQD~JIisJZrbuE&iK8;A^QEf@ z&;eN(!uwVFd*th^Gx9i9@-dly#Xn9;gC68m9_+@D~;-5 zR!n*AGHAenq!15{K(E=1__(n164rlRlSPt{lxCD1wqiB=yEwE7HOxBn&3=lazmHaI;&;7O3Hk zzBPtH3)N$!Z}{fzlQv72Bm76`Ky-DdRZbgq()j2Ik^e~%bpXY`kd#!mql8$&-Xt=J z>4=&oA)wpRmWFC}Lw>mIC(@&kmjqF7K zCfB&B9g-LNH+eS#qZ>iHk-w%8Q6Uy;X1MRQI$2gB(k<{czU-BoljB5A9D+~_^85pG z93uwqyIVIkz{{?FUE5A(68#QaN3VV(OVd2aOWR}$kUBGYFuWXTpzYKn@{`wgKXa1h zh1OP9EDsmEN0YF}ZYk-1lk&TBrPz4&-Do%$921&jWnPR~aDj%1Rlo%Y5h3!XVs3#K z%G=^9iSOKHMxTVFcOSNs@C8+M>73>(f?B$M{P z-bW>5)DXJ?15a4k4M(tmG`BsE;&Oep7<1i;7@I}gCXXW?HEX9)J+_>kHBf+#;!;tu zgp6N!uOK@s^FrDjA0#(tTe|_fir9l{PS7Dg2%~*0qcC1TKKnW7?pIVX+iUBRvZr3m zQN6`+EvkqFC59~R!e6cSHrAPU#1Jb41b_fTRwZYu4qqCUr=ck65!-$I9C%>iTNV%Y z6F!65&d8JdF_3OAGSXRfJy zgCUWM^U2U$H*{5{y2V5zuGmwz7wHC`t5@Fy$pq)s^wO3DFieOT4|Y#%nz*>zf-4+z zzpnS^Tk%!o7aZ?zDI^-DdnapMI@8I00$K7(keVu<{m6B1%YPNJeLJWws)W|O+ES9b znv$+WG?x0ko7_i-6SnGxa9p;m?N&35i6%Sg09m&pHsvfGJH}ZaW_JAWwi%@i}!){Z!UCB4|>REMaLSSPg|@ zdv&W|pxM_vf2ti5=0e1VT&1+){iZ_yKiE9;3utMq#0b4rv*MC0rcVX)AVG1H*;)Httr7-b}W zzgSwaok#v_LtANSv3I4>8El^;P$GdC5`Pr`L54H&Dcu;jPx-GtVa{7Hj0$S-YsAWe zjS#bs~G=aruHBk#l2`@KvxUv52FML4}ME9|#hLs>rPsS*j<-6$1 zc%SIJJsWdO_BB5^=2dzWrlq% z!!GKoE?+7txVRy3$|x*oC9^vTd-TAUv_l}`DGUzZ^@UD)FdO)g)k8)H2?5_ zb+ZkAlbiYZN-*R`)*AiS+#w(xNLoozQ8IPvRJH+J$gVl`qZ6hc+wCPO$=9l`+w@w~ zqb)!WSgWD^)TT~4Q|te!uUD*_V3B^82@%C)+PMxsh)sW1^lAyA41Jr~FYPopv2BMQ zSss4hqI^!zWW{bS%=|BpdquW0Te)oLNqy5EFkpF7>lps{VMmQXz68u3FD5R~IEn5b< z@n!BTbVP?r`x~__l_sX_T6TG;p%m)Qn$=a6L{T)qC)dYk(Nybkb9)7vuQ9Uib|`I= zsyT(5G_v&hgR-WLZE3tTed&l<+MO??rFpE0`myq)i*bu##?3$L3uxLGL`!QD$7`kiX1z2L%GbNPP*jtJA6*C?=I#?g7rsU2bq?tapIfyo;=KR=v*Jh&n*-$giFGYpffy{u(C2)hNf zpov(iG9lBiNf21g<&*=Yy-K9HG4B7vv{fq(l{$*kDYymx}E zg1_de)#TUG7<-?2<2k|WZAP4Z&RqMuPdf|EBHC5wmsy+WiT$t6R-^d4$ZBdx^OOlF zee!-yudP?E=Q5>>@eJK2+oIZ1C!>wt*cx9vz9`dARo6knDS=J*fpT{ZGp2GYMwl&2 zJ^G%wB>XTS6$l&0S5A`_=^5Z%uyO2&?#W!Tl}tqpD7vd&j`K6-!D1Z-5SJW{#e)?G zkSvgsB96z_GV)pYv#%CvPCv0MX6^ZXh!YAMqWj!_#vCjfcn0cNJ_%s8&&J<%rW8MY zH3hK^1-|GtUK*jCM8Bd(JO>fIqOkLn)qeT1{89#_4n<7lNdQ?7p0kbSUYx7Zrd#OZ z7VmyfYF-fEU{CVkWR4?^(WB>A>ZTif*yGR-ft(_p(Z!C+X34^0dhJKCtEKxlkV`># zPcP9o%uz*j#8E1i&+|r84Gxo&N42`_U9AGyEZ9@(Qf!Zz>t`QNPTqUW+|)jP5@~~u zwJ&e*DFUuuT_2pN-E-t>X$YOl{nFiy1&Vq=gvCH?Z^p`Dd zw{we(!cAsr5pueLHP#EZ?GO!#hObP=o?$eW6~JV*_4Qpx^|*w$2dRNfUZk$*)Tn&` zdx_V+wi7p!wsACL|SWYsL0z9@#doGbaZs|-FhnQkGqE1 zXgVt|s|@7_B)Oj-_Tq%MP(mC!2oKWC!Uth#(djg9-as_V=msS&qm_=~s3J~)PBdFY zelaj#`(9-KXM=?4``M7dbY;jp+Ddr*#rz})Xm&Z-m7X48KJ{NhV6r&4M|C-!DxapI zZK~MQ`#}G|WEX;3g#K^iw3hCzU7yf&^za>l;EF0C;o^_oGhC%K{%NNM?kQ2~n4k&dMC2P~E(*OSdIe{x{L z)Qwe$HGR3`@tkfeOO;;~FR`&+)oHl%?SYv8+o`vz+5}(o92^lI>9~nsVCz<|c9#Io#&o)*rOwW`*v562ukq_GnGyS}V2E-> z07T}sGiO4i95{#?TbPX+eM2p73YGA61$Yf$S5?WkO%8lrEIrN`=#fgK2odQyrqZek6bLHMV{@8pu=6d5->&9IF#E*i}=#>vTK4OR=Bt*jtX44_9d*1Tx)fU`XK=Hw#|YnfR?w1Xe$WOjiy855!Zb_dDoOFQ%c{}o8A|nenhyX^Vi*pfnH*GU?2%( ziKE%c8Lx^r_Mxv=h0!ER8Cc^9vPChmF8`+;3Z_{h4R>qd3rn+4yLZ2n(0ra35&fQBA z{k{(pB28GFgq6d&Z^D&94y;%R>RFkmfgJ6Sj+U9c=|*Lp9-QN)lLXqu9x(}C*Vn-_ z{MZ-{op*ykErCr*!uzkQndDCw0k--q#kDI8yIe#Cqa4=!yF(95)buqUo>Id1s&#Lj z#l-Q;{r+wN-#Synl6{%X?9!y{dObsxN@>jSOEo zsf;YH8;>4!9Cz>S#(v6je5laG%x1O!G#~fcOt7$^srxYasr%HmQK#Hp@5!{zn!9M@ zRzxgZ{n|UBXRkH?t`>d!w-uX*pm^pLW|q7GP%1z}9(q!r$M0FGbSXw-r%FW7SY_A8 zN6Iec_zhvMvOujahN4nSrbVhb!jB;NZZ{w88W$p$r#R6}R__3-fjaTr2pbJO)Z?>; zq61`bZxv8>CKQV=NBQAiOV8%JNFN!#*{dVSf^Lp#=@!is-N_I)r6(0nL6xTI)14aT zKktSEMBt)SfgOR+MQ@DyLs-!>>~#XYr2EOK#DggO6%okl_1QI1I!E=%3IjOE{Nlog zBjoh`Ziw4K7)uCKvLmNU$hK|6ij#D4=^ND>?_{oPBrIdGomYTYOU#%|f~<^c<~< zofxo&cbo%d;F`MNVJ8M^DX9n*gOg>CT+VKhh>wnAb2dq_)5BEtT5)2ikLkA7r#xcs zJDL0TAGak7eU_}=a4rF8E#lA{PV7DHB5E5Aoo9f2X1kw;-qvecXCb>`(PS@)gi|*OSpv4&583D3cSQD5*pxg? zY?7f_JX_I0qZE=tjpvHSRX78fQ}%>^Pdhd2IZy-b0-qGehV#{u$BGm8#A@u^Zxx$A zZS%N^MyHzmRM1@`XLHIwKEBli&C$OfuK1_Yr?p044|0 z^(w3|Mf!=`NFMr-AyyIB_=uDDGVC2Ho4BBydm3t3#N|-#a z>=3sVR<13AE}=e%3^{USL0pMNaUcgbLaOBwA~M;%t_<*;d3dG)o_R+h7Ok(Gf}x|_@4zO;#p(}=cNP$ zLDJ`cx|mjd0%!=D4MEqkEKEdN^MJ2hTP~(Uyhct*muKdxY`%19_+NE`I&aq&&IDFV znuoz)(-v?vSTm5Dt=69b_lk(I?tm@67AWL_GoC$A? zG6Oyx%!-sUE6^SSEjxDYdSHlp$zi)e-QDhB=n-IpL}W*Op|^5;a%MVlc@tn#+C)6m z<-05HvsyCypozwbHT)um-F7K?p%h`aTZ#ki7B! zi5&!tcA^ZZj$D1>PDFXPn#yFZf9*-L|E388i zt1M7iVk>^GuYEVLyIZJor%upP7clEC?b10xp>$>MKt-wN#l?srY+syM+0u~NvK{0L zCfS*;MIt1zlz-uK<|KkmFsJ*Jh>e*vKpULEW&%)Hf2~QGWoWzBKYmP?o#JDWp;xwDV&ifQnJF_^r6D>}{#d1@7uq8zj zgM7@=DaOjT2Sc->7 zic`xBr3A>SS+LotN>DOYV;{G;F6|Tk^mK~tg<2HUSA%XsC->gHdza32iu&Z0yI*WF z$9Cqj_FWk~$xX=r$T_q!lHO{T|G}4@Itvu}m0-^Ju)~+v_%*`L zenG*3mnO3Agtp3dg+sF2l0QLX&sp^7hT@a{H(CkCHr6s6xtUo=8<8-MZ}JP8kr;E0 z1k8a!6E!#EUDNMietz8A?*k2}W-oy@{+f?@;*;xdm_UGv2%irtBIUFHHqtjN&hG;K`BJ3pu8w(jQOjZ8ot%U(M!fi4MVq0C_ol?FWiV zdhqyNaM^?x?}%S6=bBL7_|E7j*^N;di;4&SQ<^+K)$moN+ZETp^$0)DUaKWhB`#xY zA3>inQ622BTX3Ep5SU6epwU9-&d{39L)}c;|wSdYP_u%a;Q}7nL1{?5peKX(V=QmV*1MB0V6uZ2|qmPf2>C1iXSk44q=CX5l^^CeuL?}6z zdKvZafBNyB+ET!1wqi6^008twLJ6vmo|%E^deY607oaShv1ulpf3F&z*-0#g5j>)N z&(XBxvKmW$fZ%8YQ|;@^6=6AuCCA;`8X&OngV91N2uPAM?aqQRr>5a;ksjcAc=zst zc>i(B1ZXTw1$xkw!e9c!Xu15U^w%n@%>hg*0UUcmkZU1?2@w`%~wa@svQQ5iHsBT#nn&)Qd7)f=9rc`Sk=xB)B+_-IB(6cV?JImVN< zG&RLiPsY)S6DR6g$-f(-;WkiI(4?xLYd>@cSB$YzTPVts3AWtG3>&p^oRSE3{!boy)T#Bf~Ih0391CltNYviyQgVS zQv8=QJbqZ5W}xbU*x0_Xu5iT9(|!WR9G=>aOko+8$*#Rv&g;@bK)n8<&tSrBTE2~K zxs~V|7pUvdIP7MQ5A+(>RV}%OS6uX-KmvpS_9W0uN2RmVMZ~H#)TPr3zcVeqAlf5R!5*V?*o7OQ9yV z3fv4^@*gF+84Yf0E^0QW(XAa$S|55i$3@n<>8LLw*qnww0zAj3ofz=^NPdls6b-;y z?Z;YyUj6_}V%;OOWwfWu2UPoZAGfc1cfT8%MV;Z*tCdpva~4a^^cb#jVgT|&QQ|0F zB#jPx?g?}-%HZ&$8IcutZ*hIU5a$13@cN&%8nE=NEt8u%^^sxyP%t>=X49r_I^nYh z7G6E#obkEyplsFH4%-8Fs$}23E%xu?E4?zQI4vpZ1|d%FNe6x^yn;3;_`z=HO%Q}5 z*h1s-aoxfF`(8yR#?uroFACB zw!p}Hy!D^M>ZTZ~2$%Vzla8sA>L1;I`Yyirs!TNymG01&~I`$a0Sa!_s%Dy6@LQsed zpTE2Z&rWtL?wMzsKTKQuOsVZJO-D+QZ(;JpTv9$d(#=|+ptqZUEGo*i@Z051X7^nw zzf`1Ngd@O{Z0&Hmgx=*pvDkXNXMk6c-nS2?I-g6OpOWgd1YZ%+P37^e-lD}|jmuGj9JarTMp)r4*PxoC~6%?H_iowS)ur|0Kvz2|aDcz6dHL??9~uCS4D_cj6P zt8hv)bidj+cOhE8xNKE2yH&tA#6AUV;$@XHmvvX0@c0-pLjMkZoG|X})dzUJ^W0j- z60n_+n($|AJATr~*!;J4UQLjeh;DH!zphTfv~-`#a5QkAT8fR?#7ANuA4uoT{b#NCIBP~5;Bz6p!@d`yywp@E@@A^;!B*MXvm%(S&{qf*37HL3$ISPiEKl- z4}>;GEj&kiYIKUD>Yt=e5+d8v#F}l`aLu&A`^|`&6#D%R`11dK>8v`?*tk19magyB zz@0}OF`J5=FW`K@2^O&@?7lSqTEk|LaVKYhd5EMPJfJrjesvfBt4KTKb+(BbBA8%` zrEgm0pn(HLz2Ptg@4DRZ3AAgE#XrT*yMkwelj2F*&X@0%6 zsdzlZ)%OK|D&t2=?&7c{NP*!I6?Pl^(&>(KxlIMHtJguJsvPKKHgUp|Wy>znpzEdB zp(s;f4|QY{I_r;OPX$+&nRlCBjxGCH5dAqpoXMob&WW1`3nz9GG`tG#MO0<05&%Q- z7b<%Ph__`J`4tM8@hBo2q-Y^<&tWF86a!f>hv!-7C`uj-T$DT##{-*+L)(U zqc?kC7a$|tn=rN(cUmt>8#8s|F7R5@6KEnfvVd{0K#}I>2U8xT$uLhVFI; zGOsY(rac%l`yE}%77{a(?S7s;aYCACKR)cSm5ktxPYTKA5doE8w&=vRBE$bsV~>&_ zyZ~a@s5;)m)pa|_FB0FjbPJ!n8tHlgl%i*=od59nbVvBg^BbQv>+Iyn%VoGnKeTCV z^OqeGwf8FJyad!~NoDU;xrcRy;O8|6AI6`r|UaO zNL2gT5_R;Ncg6OQkN_riCfvG+l7bhN#M4Xa*6&ZPYxH{i=1t{yt0iHt@Oz;Y&xH<^ z($_LhS67`qaNokg-U2>ODI0cjh8*lghVvchq9uKHotbwBJ4!ontc)cK{`uC)Ohe^A(zp=FM*y6Zz=Y$vjdSWClB0MGzNdKb0 zeEUMe)jHh$fYn0s!ft^+tR?1=+;H{Bj~|t#SB*GC0{C=M@!MVpNVTqwDsRlubdR#X zI#)U5mEG0dd1Z&+Rx(!_>Ypk8gjcdN+c!?8H)$QBW53a)4qNCU55^}QHIkD z^(Dexn44{=g&_yS z1p74#Te`IDjJ|U?`Xu3snV_=Z-JV`v_YVVdy{Tw5QeBd^-_ST3AifAB3^c@Nd2ENt@ zCl{Ud;R}5!c1`@E-j%j-JEdmkJ8M~`!*HXVct3N)^n{L?*-7Nmh>bN%?(H`ynOa{I z@Z-&pJ$DX;JF&z`1jh=S^wVqk5oUZ{F(oX0c=+rA&B}<;kN5FLfnr-J2i993lRl!+ z(PY16>sXvoGXM! zGlM6~Y8)x@vh}w1^0->rd<|Yk_;%)`glg?tCt14Y7 zcFm#?s{4o*gh0=4p{+GjmuWegwY26&A}G;tGR3Ol&dRJ)KKwkLT3bWeSGb{&B+m; zFHcOLf-Z(3lfh&tuLZSb2l5A^(QGR7WHnCMEb{x+?^;Gin~^`b(+v63XU=Sm2or}5 z5K1ekIZKl%U^6fb0#pK~Nx2+O3^EUXSqm55xKk7twUaJ7y>W z8cQJJx1*8Gg3>5CZgEh&`uw^4oey$58vl2_So$Lr{fsfK^PW9khqY<1zM`2g`6GdI7yi>m zBIYStQ%4lrKpiy0B1UW6xN(;bsz1nvkfZGfF3z`aW^cL}1JF`&l61QlOuA&(7pJH+nd8laSJ|VTg+7+l?Vz?W8AG23Ze7{sKIowP1anFFTy>HUZ;VA#VM(Prrs*QEB48l*oRX?RauiA7 z@%wetyfhyW{?GQr!8Fe|ffW$y2Jmwu`(ZE_G08k)qMsfzZC|7rS_@4*k|Te`QDG~0=mjD4qRHy3r4{5qcFx?n0z2Z>-~o8wKTX+e{aj^1 zXhQAl=F}p>`?haTH)o;QVZIi~s)!(9r^}o7_6_D(ZttMQ9gE)|8Tfe4v{Pwu}{dRHE=woVfcy^0Gay=%#<|X?W+O zd2zR_Y~U4Sfuqa1hRCh$7mKQWdjK0T7O)3zt*gAi_@vcPI3bcmT#G?m3L zCiF>yOxts=*?+ZlRvnccEB16ZUfhvm*?DsoOw1#hHX6nMJP8&gQ zkhaK|Ev)}+Tc6<&R)5TA<74mQjmcw;n%rQqj`{r_AhaJk=TV(*fQlEMOxS!8(u1Gk zL(0=)&(OE4)~vzqsKbZ+0__${=7UEDJu)YLDCh^VhCodZEwfw~Gu8PN-TIMOLiMY)}^+AzXa&h_+YY zC0HWLmWuMDlpW?iq;Wq_yoTD4sKxchH!OHgx?*2X{UaCan97wl{QC+vO@?7WoYat% zH}NeWa(DiB!)IPMItm802_UB}>Fj;z4Vnm(XpR~lQ2{?5&)uO1T@xFO!y_WzEt*+c zzQ{gt8UGwWG~X@V&gqKK0gK;>$cOIZHovOKEoy(6zfDUHoaTXY|Kg+N>HgKl-h@Y@ zGd@yQe&vU%kB<*ulVX((u@~3%DIhZjgiVRpf42+MyJpaF=!XB&0`QhgqU(R<7khfo zd%dyps8z|8=?Qb3-`zi$uu!hRMPCG*BVA^hhfrK^S(@$k2%0M4y3Qp^BomTU?_TkH zxIxe9f9&SB4ZtPII;dgIo`9!O_%>Rrb^OJ`ZoRX!?y}?pX`p9gD&zMO^3|KhrusGc z{$RQHoWun+&BZN!`}RFJQFBGn(NAOOf^>!qiCBc$Yjuw2{7WMaS=rdse7xtZ&o&$Z z8t51p>?7(Y`LfO9_wA#fe`}QmV`Gp0&-vqlr!~ZzES+(7Zw4}YU-y*c%ukN8xjkH`Ip)*C#E3^<5n4 z&OCA-VT4b0eCRtrtukMMj)GkUC-bFSmM;I|)j53Sg_T9k&BOcoy6ZfpS6$Wg+Z(Y} zH?M}D+%=dvp+n+jeMz=>koMsHOS;Y^Fp%t3f)eJq-40PwHFQ(OQ1TLRrQT?HIPWMT zMJfFscdp>nr43y8&)a=HM`k3C?~ho>Y~ozR3l7k{0$&1r7upc)`u@M$cj!Rv(B)PN z#)UOj&ei#3=R>2xF_B0$KF02#u1ny3kr zSD5X(BcJv}&xsR!e2jlfb56t^?W1G;#il)>qI%p$pBKQwB5+sV>T6sxVu4_RYzglH zR%i=}_Vd>-(;){Sl&+mFuefA~{cc0(vrp&2wZz(XlHL{%Vx70N{-$m%>SXIP2$GhjITqq5l zKV$-^52Kh2=q)lI+GaU*6^$A^u(vof9Z@ozoq0NSz4ElPvrv&sF)$E&z{c#h(McC} zkYdTuoBwXs&D+-TLz@HyLGGw(Eh%qV^1V^KdvIa%oUSVJU|T!_8# z^}ZhZs|(V5z8ruFEVS4iDm~P0{6u?130SQ~V2hY})s0il8;opvCL?yExfLf}T;z=l z#y}53hQrw8u{Z88T|2udbl_J3JcMqhuf>4Kqq{U+Snh%>x)q2MN6N`gd)h?D$=@zU zWG^~7rWwltSu<&n>4q!&b)-8%W~$q-<5Dl$0VD`wZg+84AwLn2i3-CAdrPbRYZ_?&D)H&pL=){FZXN&I@u*j%fL;)Zy=YdPdGCZq{;G5C$UPsPCibFO*X=*TQ~>_DBK2A<5CcEyf&ZO5 z472!FBla1085dkWxgRs5v@>EH`vpn=>*@;C!{cM#wC8 zJ?CRylooV-Sha9iQ}2Ofll)u!*iLq0=Fow9CbZ6?fuk)DnpGZ0VNGOF1K*YU(q6q! zRSZB1U>K_+`hoCoSB+zd&@RFv|i<#= z=S0^SuOAYt8Pf*P!1jWJ6u*Ag;lp8E7g=@X%4IJqBVU@qOv4L`o2pY;;-z zVsmY)f<3~y3jvY^<3O&2<8Eh{(-&7hK;Miuqohjn_{paKtxUEU6LhLYJ~T1GIn{f{ zHz0Dx5=e9LJo25c_l@=$>#W&cgfx(fbD(7T9frSO$Bh06j)NGYE7CHX2J;&H+LQUo zwOfxK@%7h`@rzxf&7P0TpF)rGM$|3M+{5?AgRZ7>=GW50$qQN8<_I>e)4%_O%4rkZ zo-JG<7)T!;l0Sd3-`kKWm^G$jV$A!ROyof%wqWSYxI*3RE?h01Lt3d-W9W;xj@p?dcr+OUbI!+M_3eQ>mCo^{C`OpljHV z$!biFY}yAv1|37g{T}2ZULa6pyMO%E!OmfT;cyud2J3eqE70xUJ!+|EO0BP#-?_@8 zl|25U7Ro571;P-Z5VV1rO0m}-M7mqc&)l&uD=R|=%sk})>%4T^!_mKg)NJRNgZ31% zSk^Mhs#_iyz43QvW(3RiJ#h-6FA%PAz^5AxDMg-2Ki`hI^r?kI{XaPVzb#NPc(RHr(=7K^3qmy-e7FABko?_ zfa`FK9na2MQ9HlmxDxfQti}dM#^R2>5`y2^?fJzvRB2%+5K?#A5t05YzBWBELzcvW zK8~=H4VT8q6i3t-yLWS@$rVY=qOjt8T>5$6snad{M-3_17dYiILPx=r09_+*@>2bp zK*IkvpvWY~`5#bA!!4F947w)s&S8M37arr#{FWR8HH8vPKI`E?qe|Yse}4&VQ8%YJ zb9Y`{%Z@R>Lx_`VE{SEyD$~v4Fg=xS-R@9I*yN7gH;RAxl(lb{!6dz;T z=eI9k9I+BSC=w69SY+lOZ*pqo)pU1uJYFOsvN`F0wRzjE|KDw1N(n8p_nVD}cJIE~ zGDSYWXrJ^NsVo$e4UF&##YfL;sy+u6M;_OP)@9!9w6voS^E}#=9z1zXCg`@~zZuIk z&;ZHehtj&z=PSY5Vqc1?zKdc&j$L~}`GSp2gGnKwRfg5RukQW+gnioH+bX%Udeiz} zVvh>l>J}}96B;|E>9E*CA&g_l4_La`GNkLv-lvvCblP(^sE>Es^!}rMe6~JnGk8II zXIK?7`^@7Gj4xS{SvBT=bAdOJ*Vw;Ei_Po=Du^DudB!K+McjA_#6V{H2~Q&!oGzRd zx)gx$TY&%6T6Cbf=s4L|pWR>CVx5Q!rfsSP+9DV4Il@S3`lVbLT7mbVLZu}vwzFFK zL-ySWy-EKAiLY(gUyS;YAzOH~n4%R%o$p899U6Dx>ABJ1;@|QA0Z3aAQX*XM1dc59 zDEX5==-*;8Cvjmo2X;Wk2(PUYkhGTE}82+ zE(1%m-l{I57ePZbztU~nRzQh6gc)ql7>@PGv?6n#RX3==^ERYv_Qqb>9j)Y z?Cxz0E=QV%ec_97gT2q393!WN{YH<-&r z<4oLBQS}#!(V`0Ab0k#x)o)9a(|#a-Rjx4H`E&d&D9B zdc?>5eqBXWSNSFThIBX?5sNTjfSgF;LM9_bQUn#W2Nk~!nLhXW;L@Y7B=YH{(N`aG z+lkK3Wm9)d*SG-fUXMRB>zv92n+#faRAO2?V)}mo>^wav1p{DL$j_=zb340u zZ5c^)+$O;+$DcT1f#oBm$ai4uq|dJURZ`~{l+75rs@RP@@Tm+o;0Qd z|0E%z*PAdQS7rT)igJ^j1B2~zR9(v|x=WBz&%fl{{kK}A9TA)hr>;~h&GVdle!e4> zQNQHN#HYe}So8c6QAv|SEsY`{ld`pn)GPsB{&9OBUYR??_eYwAvERnOu7%h;5zYe= zH=Vql-{sx4-O=A!;4P*D;R8F<))?LTelZS9X#~v-8=V#)`s5Q4}|v7y|&WFJh{Ph zx}y5OHsf}>+DE^y53c@|a&nwwR@K{InmMV5>kkKat^CLLVZ${KXXn1O)PR7l+uOTM z_rB#q3Y;k(6d`Aae+2QAZ@75z_OR(grrhVZ1OWnxC9wndIk5_Pez1j%ND2`KM`X}2 zz_2FsgZ1NGYGgVHDJWO)w&?b$&g-$*lJIL>P}d!~=8G3= zitS6FC!XpLFOZtk!;YY8)u0>jo6LK`lnREHRqFc-8N|oa%RF_Ik0YS`$J*m(&&rv_ zTqqxAY(4LqRl=OU#>P?Ay3Jiu>`FbdZ%h;&&e1RNCuJh4Lr8pq4Qi z-_wR^k3H-Ms_k*mNVXd+wtdkki-k9aU+x(cBV}+}bKpDb8c|vCyo%s`)T2w|Btm$E zf(PU6g_5gGRHOT+YA~g7$U>RD4XECucn_1@7WT@)NERQuH@E$ONf&hO5>&{yAm7Y# z)~qMdTFW$2t>X$sxE&sFE}rPxC4?Kic=;g|L`>{_)a@@xQb1;W+4uWE_=}d84~)v+ zjOyVO1Px38vLkm2_jwP~{-L=icr!%Cp8NI&z-$`~e=&ap90>PQm>%U}ET>j#6c z*D)TVhIQy4s{gn_+(S!^$_`&~RQ0NmZfIdb&{{w`cHyI8XjOcw zaS%0vK9HdJEL|~H@28cs1PNk%Dp$wW^Teqi2Pz^E#=9s@= z!Gw`^!(Ir^jFa!TqGLa_1c=+s^bHOBP#r|U;1_J!EiFs|J5fq#}4z;y^u8tg*LpwGuu02U)F?s`3{#EX;I=rtIu_3e9uQz5dX#V5Jtq~dw zQMUMKKVd>!?gluC?wgTSEKr+nXLmQkRqXcWI2im;YuOsQH=dN%@Tky5kzDzsucj#9 zpLf`;^Hvx%bw^)m7v}NlCcqV@#io1hV1sj3cB6ohm2Ro#=Y8CvD5Y zW;;7OHqtyQJ5IIjblYsLV`k8oY8Sk z6k$venKay?pbcHN$R~=h0W6Tiw4?gHsQf(h>X(AAP5tD=Q&?YbWNR?Hz6JL0dB3Xf z^|AK5$C#LuevE83P3!JvgNBYF5;2?rar&Sxp=tyZOuOsIk#LHD#%C`4b{pBr)8h&S zD8yG?MaYkcWWe+$HUX8E$_!t-ye9t##~ETPSq6EY{MVy;T-AT3X}WfWp8fUi-|lGp-3!;Y&p-URfeB*16F3IsfTy#G5?J2iE2-#^x z7=BwzVAjOY0Ba!Q&aGr2i^++Kc~6b|Ii4;2FlP8TYc*4QMgt-pwogK7+TcO3o8TAqGKEf4;QZz+q;)ZFOr-j)~F>|+2{M6pbl@(}*7ZI_t`CME3hY%FSS zs>_CDVWi`YGG(3tI(|^*(%SO%+I`d;sdH<49oqE!!C}9Y6W1~33Up)n@~R6pdvYtj zH<%!O9@ks(LW%sTv0e?Is*im!%*j>jkQ&*$QpniIj-Z60auW;hdW>GDh#vCID19dl zj3OEvGj?_O9v+cfvFXwKj%ULjs&zZISf<3|)bH|wDZ@a5F0<7yWXJ#(>yca>hNI&+ zM48Z7PnzVIdA_kZk1Z^Z%?rO0sw*4mU?k>rkU4wcJu=h}6n*#*39aN_X7vI4=X5|m23hgW9(BJchO z1!k4i(l9-9g9~VaTe+0(&oZ0unM0=Mc|2Xzg052yf?F(74*8yoJ;9Ss5)RAJ_Q$gM z7rjA7`9UwiB!xEx8$8prNJQtl~5U_ctv@NxL!B}bri{$TEBJ+1(Kv+hpRI>m)j-O0&_*rLgx-AVq=}N+|NiC zSSie!(psFvf;V3``l#vhFwcYcnUV51_V^4y_gt>gevPX94$HssuV2U`g+dddrjlny zMffZi)_k80O>1JJPX2`I^A1(PW-(d)k8Nm0Cod%_Tx&l{tUT_E*y zz}!7{-TXiQZW_zlCS7^wyz`mOpR1}I{a5}DTAyl&REqQA<;#~+Y3goOJopWsWD&FL ztkpV$U)F#32ZsnC<;VapxQY=3k>Pm@BdJ4IehbFZ)C5nt$g_h+pSpX?E7va5&xAu# zTvx6R+mv7;w=Q^d7assDmm~ntT)XqOG1Z0N7i|X(08-0;@gj`9!Iv6VjIe$Ej{syeDr$owu zQSYFEYte;A;SCm{o%3yrLlx- zuqfut)2Ei{iSbR#9ObC@2RVOMsRyO}97^oOiVGepzdhWVGVUlCSx;21`+h((()rBB zdXENw%_$x1684ioDc?Ugb@u+9nso=gbwscpocA_GJ=b(nhpP;C))#Od$1xfVQ5Q*ZGWMdN4@KgIuzWdAzwWh6k zoy%^3kM-MI2Et+XN8RuA%d90P9Ehor`to{BWk4gSpCWlb4|XtAkOGd~n~6JkBq8!S z*eOmaMkW-%*7Z9L`z&HTY@5yXwvox-y6wS437Q2gdHl5yMA>$U9-&w_nRqN-$~H94 zB=Wxe*`Mj=?Y0MPosNm5+SJtx&xREdhYo5Z0%^UFuAr7^y|eXB=-V-w9Y*tuJfDp6 zy5R;qU4ue5Pm5Ta1<`j~qLJ1@%lc-xP4&60yc`_o$I!xtWNDI0#_vAY*BoM?T=)c9*7^s%lZ~8o99`c z>WBNzE<44*6e4Ix=LdlEj7+u&pb1q(0ZEFMDz-3a2FfN-TB8pZ?@C)T$6XZ6H2BDl zxH-X7UV56$33zZm*F1mmg0OFBaN!d&#`;&1x6``mxfEk3iOoaM5{6)O^MPiq*d1^Z z9l1$_FV-m5uR1cJ*CR3_;olEqu?5?uaFXSt;m3$;1VwJsu~QDmMDYxim3wM+@laTi z1@iq=c36fr0ACG>yGBR~QRb1*t;Y=Kht?}-N@9FR^d(u%pzWtq5OwPguhs0n&2~+D zM&jTc1-+jD=_J|FAT^4Hjejr1qfG(u0aYs~K>>g0lnc@T~LjJgg-p)+_XyIN^-j3W!@ljpsqsH?ad-3kW4xmT_5?gVf~f*h;b% zyd28O50qCw>Agqi5&TdR%gm(n;rr9Ewv7kl2LM{qw709|j!0ZV`v;3o#7h6`Mh@mG z39coM5h8sfihTO53v@a}z=lH5@3p2I*Mk&paGONjiJC%`M+l_MY-a7FP>fx;oPfxA zcnL91+TRfQGqKjEu&Y}tkszjO@+=0Vlfq#eSSF)ax$nRW2IfvDa`DGPlqQ!Q*0 z1gqr4Hi{+^XxZ(O<3o6hH(17p!J}OYek-KfcL^2`!>g{uc-Lr|9ERK_Kyv%_GOFGD z;=YlQFF+ZT*)1375ooEKb8tN)3yz0`rBxNL7_JKi<~TXF!X-cVSc#)Rlg{!SXx*2> z&VF`d!DU7E88KXmX0xby4!MQ545ArpVOrXmS)%g&BoEux_K+!TH)#0vd&8d^^vQ2k ziQMXv6{m9iSdNaQB?B=*P@73_vqjQ)yN6+jFiH8{`{I=Wt3VprqHq{^_+k)nI^qAVP+m$p z>+1;QuRZY%-LT<4z{R~jCYqs|i!c9(gMoT33JV6!zV{zN03zY3u`sm{#& zoNZZmu1Mgq$cOC;W&xs3n{=lTxE6{%+l~+B%LHEdV;`D5-Ds1pHbS(++(i}sX0YE? z39Jv{^js#P);U}~*pGgS$i=5-0bfE!+Gs&K%`=R%yN tg^^BYWf5yX$z{^f@u$JVnZNb6!Kf?b!5rOkc{>Fk+;yRx+CctK{{c;u)r$ZC diff --git a/ophyd/_images/inheritance-80ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png.map b/ophyd/_images/inheritance-80ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png.map deleted file mode 100644 index f06550c541..0000000000 --- a/ophyd/_images/inheritance-80ef9c26c9bc2afeb9bc1c8baac10eda7e123a0b.png.map +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-88121c6d044eeae967fb3b6509ae40ac1ec963cb.png b/ophyd/_images/inheritance-88121c6d044eeae967fb3b6509ae40ac1ec963cb.png deleted file mode 100644 index ad598c1eb43b1dd1246e33f84cd969208d9b6289..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7975 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 - - - - - diff --git a/ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png b/ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png deleted file mode 100644 index 8fb4e0152390f44274e44cd9bb902aa92b0c5b28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21097 zcmajH2|Sf;+cmyRQi>!)88U=aLMii@d5$E?5J@TXJP)amLMX|Y5=vwY87c}%DP;)B zJSAf?`>$)?@B4huJN&painIM!OnIAT zqoZr5JzmJTuTuQG#%p6r20BNsmTQK`M^&zea;F_Ocw}%OLXt%3^yNzWH`z;DE-5H& zf6ck)Yv7gZ&!fu&Iy1a3T5V8srtp;uNJ>of`6wh7wCr3fVX!+=bser@K4fb<@n@i` zf;0XgtzGFS{#d1~Cw{sd&PM*%<<`*cd)`H`Yq~S6e5~;KtD&iRrj=6y@3673vGMA8 zLz(|@*rT(vbHgRa)5I_S=kITcroeyAGxJc9NKLhRSqAxvbT?*e!iXW)-I28o_4O77?Xt46Y2zjvJn`{gELN8nl8TL= zpH;Yc@nVAR(IZFZ7Z*o|i5LDNdgKV*pJkz!v@C4Wp2yA2Q#8`ueL^3qMzZYM_4(ov zR@Q{_^77HqO9u}=yMLc$wfNh&Z{NRvKYH}&vnt=GPo5k(dX%!4Vcy-IeQosHQ+&3o ztLvNUYB}3Ai=9cow0B3gw%FI+#xe|R9~Kdjk(U1Md+G1*u7!n#cJiyVwA5$r*Y?WS zxmBy)YpZ^OaUJ7aUz(c>^7HR$4St9h3Cne4W{#Vm_w)~*pP#4P!j$>+smD@L$o1=A zMrLtoRNHo2Sz8ykt8m`5kKobL!5VR{d&4FX6%%u=pxsXP{H06xQ&MzeXQrpG)3R&C zE||NsAMsq6KEEv_Gdr8-y#SM@p5E=+K1K$Hoh&S(Vq!C%<%5IP=gyszO!^_2JU#8~ zL4E~^?;B^65I%bJAU{9ndt5(9v4hA>ot`>kQ|#~Gzt70XXeWD8PtW4gC5_k+8dgIy zGeKVpMaAmfv=5#>)ntf`jcv0Py>{%7nAnTw&r3X~xUU^k*U?E9cj69U=)Iz(si|pf z+fLuFxMoAm}mxPDd(m#zC}-`(Ba$DdWDW@MZ)G0}<*zj5RG)?M7b!7UyX zb5@(yjkV@RMnpV5&j0!IXI3%${?;9GP1v4~i4r0gn>d4>T|9Ey&re3rT6pI(RiSZ%0mKigvB@~UqtS=#Hc$M4P{3M$&2!mqx6m)y56Eb~G^`&i4fJ@&jtFL0E~)~&{w zX3%)c)`V=UT3hwmwJUyhc2+dS&gE%&xil*)E6XiwD=P+8)(*+lI|oiZdHVG7<;x*g zuhum*Y_V-q*vUTc_~L|DTCxPbHq{4_`P`}?%Gt#QIY7zTxu?1-qM67|74NRoumfPdhmZRD5wEv0)H(<7 zzE@S`9|s2fulZvOp8^t|%^}O0(7bcC)a@mCd3lwU$&J>nEiIy=qW;tMd!Mzcl6qvk zXEUEaf9^&@y_R->5+k(+n<(a zXXF-#AMV(zgY;AAPaPj*#6`}Xt^@Dyl$4a1zI4CEDi-m}Xpx=BlbohzRsI$JD~njM z$LZjYdS66GT`YwN++!BpGW#LwE>>$nT7FcViBMSbw#!FB7_(a_Mu37YC3 zKh7zY=uZ>FiM?OAr}g;h)3K|Yci@I^?~0;TrA4y0LefbPwYzciCfm_V4DETOYvioId{E(QVtJzq_v$A5E{(rfnj2>ovEJIAC(lZJOrR3NOIcNQZN4vZy$E;k ztUOV1qGO_?qZ1Q-e|Ji-+){BDXc8o^0apkuyZ2P@+mYrBr`tiXio{zjRXgv=KRBM2 zmR1)*DH+m9Ln75YO;3N@(Q(GyT#lbV^p}x5zc~4wHI{kEjCfgpOjLIl;1nQ#sGt^~ z%gC2>DUaWXSo)JGk-KHS7hH(U^d6f*oZ8yjmX$HysqG8f!-7LNw7R-9k**o1qN=)$ zL)PSK7auRL9zO$4!}huMQ*J)yJ@;|5bQMpYJi)u()zpNFijeAG*-+w#hc*W1*|z6b zhipr@e?OXiiz^keO?2s}a?K8&DHf2G{ZUhM^_Nj<0(o8PV(;F~F{@ZaL0ep0w5na- z6>=H7B!6VsbrB_n2!E@M9BKMlRv}H4&-v|$H{`{Fs ziYW_;3Hz+0Lz~bzH#Nm2mH3;yL0!1x7gqJrnVI}33Hj%2Snp^M;hL3|b>+&N;m;2z zI!j}sqJ%ALHYqE=-MoWO+HW!TqM?z|aBpuK-t_pfsKXCwz8LkdVxpqnK0YY&qobq0 zJ6=Qv$X{s~xPJZm{d@Ni7y@UCZ@#tMd{fG*E(!~mk&zLwQ#WB-2WzGqm!KfB(Y?^+ zslM8@b_F|fs_Ck+E?^ciE5F>Db9;|!G`prM^26NBC%M+IUj>YwpKZxD-nVa`n8OdN z!|^VIAB-!!kA8ml?VH>9_adCb^z?Ma>s#B4?O63VSXeYNno%8hOM6De$JbAYAafr$ zfMk3IAAix_o_6cjUlvj0G+$49dwUxiGR4#C$2U0Zg+=650w zhFyt{roVQq$NXs4qeoboFlTr7;-sXc>(@8l(KvbH#8XuI(F6PU&lgA(B~RYg$v|?Q z$(8Z_Gs?KOFYU{hFZzatqI`TRb(~o6BGEm}RAk6@RC>2VSD9OZb>pb!Q(;_{kGD4y zBV$ovp~0zBF5+xyX1cn$j~-p+XJ%%e>0o7Hxf>fh8E|Q)q-bAeiJhP(W)&LMWdGaJ`txiU+NolnCL{Cr8 z(9kJ8;)TD|=Kh_VGt0A7R!~qlapHuTSu(CCiUP%Xyt^vpt>vBA*zD6qPnv_&$e^<9 z=dbnx>D?3989phx?Na{B^Vrdo1_rivc2)DeTl`ld*rm2^-Kr9~+s?*D!sZK)mzP(X zKkk;6mUd>a@x;lKrX`LKfB~W?-oAa?RpO+msoBud;{NXDt|VF|YWhLb^`t;EoRkAx zTs??g9-WPev9U@Ij+>a8^2)i|+vmi@#B7LI2)~qSKXHJK$oLQXhlW&@mHqy9c~o4E z4@~ZOZb1?JI<)Te2Ll> zXhqcNzzE-&MzI5i**m4&1=@oG`^i6aXP5SL{MDA%oT0l{iY|)ZBx)0hWVf_1l(L1I zx)SLppJJUlIR)GC@7pKgJ1^{{oKRTmF_A1!6H=X(n|mS8NPy{SWuFBwl1l|$HF6I6qN$S+12nF@EH`WC}=b`y{RaE#{Tk{fT1;Z104T>YOR!a`-;$_PZ}q27x;Tm`cH2M^N3v4n0QR{K=|GT+6C9~Boq zCEvMy`%6j$4j58&Z6pVWl>4tTw=uARQj?spu=?qN28#9T>mqU{$XS#D5Mplp3>E>! z6}j^^yC&=XgamA`2WqZO^W%f&l_og)YX*vn6t`6N94fA)3Ngoqz3H0*@L^?Q;=2~F zfCTL8yWE%{*45R85EvL3pk(0`p_3qDRetlfZ7=XDEaZ`j3b3)amv!o`8EA-$6EgSz zGx}|{*x*RmquFeF5=l+V(9qDvCJT_LJ!pAbT!W0;Xzas>4{zLf4=6eKF)93me6%C* zMyfdg^!FDI-EYI0>uLJ~z+blQmJWTnP3>wDEvYF0X&~FAbb7LN51wV`A=C`@@V3RlJQI)iKb2 z|G|THz)*;T{_C&%rlMnFbW>z20P56Z_-?aqr6W?ttSau=$;k;f#V2;NYIX5)Z3O$= z+#E7JwzYpFg)ebZ7TE>k#`^kPa2mG_ZH>BDR#x`v)hkpQ96;A|?ecU7hy_~#9Lo$3 z4+qgOUT0G2Ds^_Bj9D_&mS&D$FLrgTzd{Qxw8Xi=IpJY9$BKOm%ZL8`Jc> zIJ}!kA;ZkcvVQmP+$pkdWKpMme^waK{zthNPVmhSsm!mB;=cUMH8sOyVwzDb-CSLH zL@(;=f5|$LLAzU8+;`qFjE0&!h`|1S=4xu8adB}qhl5*l&2!DGR{J95bhNeKepRX1 zPHc#*pp;ZXy%l)5rgaI}6^EoNar9Gsr^7NAQB#1$7HvdeWLi{i@dz;)8RDUw16)1DR+{Sb8>Q4-!hwry2UZ~t^=(UAiH-H!5mSFNA_DiqIL7ZP*;QM6;oFmwsA2SD@|^1AZ+Z;CeLW;3 ze6F)9P%}<2Ny23iNCxG-mz9!d8}S_+1UT=h4vE|)qN24T2FYM)3DE!$_$MTRG0Q+t zXA95wA7ln8Z+^nm)DMU4z^R@HGjZhMJS zU$Tr(|G>c8&kNX-W5_H%r^!e!_qz7yrW!fWPwcmCtYfXYKiP9}m_uCFyUN{Wi-+Vjr~ zFoj=~PuJhGXAjNRtyWg6f0T{?Cpdg?9AIV!D$Yy?(D3NU$hVf3>B}Ja&JcHIXI+B= zDd%|BEY6*Kh!lrR0!gUSZ)yI|vn|L5SPb0t4n8f<<$0%V?q|q!W0t+!f5{GKyl&#S zxO0Eq1H}+Q(=wg`7X}b#0kiTFx5j8*&BKQeA31Ww#KZ)AbK%d_)YKLxf#au6MdH-H ze~*0L63#4yJWWACv0&%F@~3s_?}STfXA3)a1aPxBJ3G6u(6ug#OKJDu!~_RD{Tqi} z^z^-BV^1GHZW(8$|F6)p-8umzK08~0F9rwh!?&lWJbbc?r;uoMaWJ5-Nhx*gO=vVL zbsj)yD0kSM;^iY=?%$EI?>1V$$U&`*i;2N5Qc_YPpEWi%O7G4^nFl)7$(Zq!c5#`3 zltzDR*VgN|Z*SLw8X{y~+5fkBu=Tv1-LuL{S-s-o;?=2I4lijl3yTN%LHOHC6(_yC zO8yObiTk1K99w9Vhr>-@n&L`(T;Jz{n`oC2{Px;`#_86;uBC^9NeX z>gp=@uY$tDuQ)VaU4A$;+`kNcQ3o3u8qTyD7#Li%u>o&#adFwQB^;}%&mRkl3C;`> zuFuaPnPhKo|FOz;605On7q)SIenG+buV2`dOoJ!)@1H(@o>xzoP5P&!IA9;(f}y@X z_h?u$2rp3lIZMl{zFdIWSR^v2ZWP7FC@H9`hc#MnX)lN(*9^*_pdcicw9gmQMkj%) zx`Bbft%0YMzh#u*vXf-}%G??ekH3EX3Y}j3GlpWgk3qxLbr$aq(*O(rxLy^qrVXj? zE^gF3(Am``BO?O=3i%t#%fdK28{5XMJD($WAz|g5F1pd3JY4+b$tcvj;Ego&!?#o( zers*raeia)>s-Y10YZKPrZoMrUFJGbXIqzmQrm3j;>`W`MgIT`^Yrw@XFEF+5{L4a z466;4liG@LkF}pZeJbTUKlzUsrEUO*m1~rjmYSNH zm9>5EHCs!B=#eTws!WpRw>Cb~aa=4ohX zoX%j_y?ZwRDV7y4{Kd45lAF*6Qavu)*i8NXyN!m1QQZM~Ae`yomzEY;kU^siGbSn# zk%A8&KBV|B+CUAdzD}d5tNW?0Zs#G(4OOqPs1S|B?7r9J8o#hl3J$I=_nI*{d6HSs zWVom2^AsH*RCk%%Q^fJJXU|^UFhn^A3;a7f%OLv`8VM3A&QbgK?;r0S3O27gS4&Gl z5&Zd~Dg+{(`$yEZP8hn%f4|_k0SH%FN$K9bd-$E%@}~#}`|pJ|&|5hImYqKN?0E3# z5fAk>?g33vDRFVEvg>^_*OO$Ze&Um^psNi>FXT*lA(f2gf`S6&=v|3Y9smWCU$ahp zxr;I_7{|)Nu{J%RDJCYS_ovjNdgI1mg^Xs%eUO5bzCDY2Uc4T^UW{mlN;CI7=I-6Q zVEma+o+Qf!n4SH|L3bT%otNi?3c2ZTGSsl5A~z679JtJnyEc<6j{~8?0Q2nHxpVeW z49@e(r-smL)K`aWQn(^^%vO?L+!KasL@D!5_n7#>%fs_1J^jz47*vm<%dOY1T?;#R zaN}?V`S@!<-h?xCx>Ph^R6?e;xTFQn2`~t*yF=;&~l1HMO;J-m}BK zZ^J8o`zuG0Uibe5EQGZ5=<0f;*rwLjy;9VqD0k`ILRgrW6P05>1`&-&w$GB2&1`M6 zFH!`{Do&QYfBsxpzc&!&zN^9~?iW8Pm3h7=gafL@pB|I)H<>v(?k+9~A{TTVj0M-J zae4LwqRGF%5D$#=>C&Z3`X^2xb#>md12L~$nd^Woj1+R4iq8H*q?L`Vn{e-5TbVVW4Iuo_T%SjonHMcAZr{Dz@{%by>NI(UZb8yQN(0w)bE`)5 zfiR<1HN1a+V~?oi-rJm&L|H2~H4X7X=Y(h!cWbKT*-0WGgC#qRY#h z{^ZFe1OZYY(CeOLXGh1V+qX-d`ZiW=R8pSoXl-m9e{*e1*F=s3FI9@)TzpDOH*hbn zuwkx|%T`j|u@8AE_wPSRP37$8yL0Cb$m1qj+Ew7Qw=45?UH^b z@B7)g)MR6@)8tQuZQCL{UO0pw5zayh-@BZ`O$xk+9CQA{1qYzYy18AucBw-1L%Zcw z5XD=TdznomvtPe{U0WWKL$wE-k@1@5S^XRRR8{qym6a80_4@Veot>RGB=>Td(s|Ym zI4deDYHMksI3cRvS>}Z*mcP!ot{??QKtbRv83OTiXuc zUW+fL4dKlzEZl@OF*RMm)wBQIMrxwL-FBC{WJKKxKxoy})Zk2N23SKJWMgL^@9Ejj z#AJQxk~cIM4*z)zbVBO3sCK9YqBA!)5Atzu{UY|TMKRG!`+zRqP(l!!g^XfWM8PDFms#t*8 z;m=9M{ZpR687N0UXfno8>YdXwGr_^ZRg0rfhlej7IPetY^WEFGjqxI?_s{+I@LUrG z@HM-z!5ar5V0r$~+P0*+c*TB4UpSuBY-OHTfQBJn!6@P8mA z`kgQG^P~9-j07Odi1yi#?+65cTQ$@1GiRRW=IRpdF6ef9n^G%QrJ_)NkWy?!NW-Tf zSp)}D#MJ*PJb&UubN=}TP{V^knPoxMJ)M<)1jI(R0I~rJu~OZ@K4R_sN@#86Z#VAN z+yR@m&~k{+D=U-C3j+Yv(|!24&9?ZJ;HBI(T4+Fl+rT#Wi;5OE zTTgUXdAPX^tj)ykMq0g+^l2jgUuNv`^-hC*T zQBPDv1h~c~_kv)Y&!5qg(53wya?L7OL~YxE)K9-ar{)8so13?8p?gL7&Q3^z^S9y8 z%R)EjM2Dt4ksJ|xRsa>~0=l^!UCRRZ3h?Yt?Tc&Y1F7Q-d~4Zw@6baO!anP*8_z-A z)&Fy*8~_%o0jRdQ-ycYO2FAv_+P5pT&d$y?L1YdM4b_!hP)hyr{{5x3)fGroj~-cp z3NCv)I7~1eFl1n0KvIXI0Q9@#4^WS8vNVJfKK~0d9b;o-Yl~yKsEk8G%KyG#R$yNq{Pv}$!Y3Gg>v&d9&~}oUH~7g zAaqk`;&l0n!GiQ^Ol97UK|ub&!HRl%+acXX#l>AXcTVx)=bJZghVoX2dDDg{3T%3u znksDl;ojG;25GCv<<{2LM_3xae3^yyi5g)!J{#9XJk6Ex;T1&HySxCOZ8zGt<$< zWvrwzC17>o+bQV2C)N2L%?ZbUh}o(#vm2r5Zya^`7WUBzT1Iy zfAX)zK@A6(H>>m=85~6ah(ziI85W@pX;!dyT$~*-4_NtwEF4|6l3P+T4+3Os|6On+SI-onR zl_>rh%tKt^GVFU6NJIs zcj_%-ug=t-S&e8U%AdyPVu^7+f{@O=0o3uES_z`s{lP7*trx7V!9lOpTlr7DWd?Zy z2Ic0U^oEN=zkhb586_C?dG_9+b1Ju3c!jA%NV8s>H*W@Wrkn2wK-Ukvy4bEm)Z)#C z?GflbxIliy&N_*+QBj42hHeT{{*@}H=*+3iBxELS^W_n+70&2hNy$Z2ek42G$3vA{ zs1Jw5#NzJU;gwP$(Zyj=A=IF4Q;QmmSa7d{?K_PevRy2tUcZVH6{ zsYuyHH69s7b8hj?UvM>`nsqlGr*t3@wdI{V(+Y_hD#IY!Fa7<}0juSurN$~M?;xcC z20+7vbm1FELog))f$WJSCxHV8pwtJ?YKeY3^;aZFBVFU$qf2{KZqm)~h}q9Z8*=Zl zX=-xAz>Uer3X(}W4?hlw9%MD>7JRH>FetQZEm+Me*AbaQ}3aGfB^6*dYrsZ9zYp?G^%M}5E{>) zu4>-(X@gBd_6I6ot6W!^ao>&v&7{UvU$e>CT;#V~mCX5sGZ5)o^%c z2DL#qfHIsezJBxOips;=I}d`(tEka>%OI-j5wOY9@#ZH0X3@RC`&e0*{&oid=|Y`o zdGp5dYo;DRfbGnDKO_ru%@-TRy3f8B!I^Syq8cH;ramblt;z(fF5}~n+-k0E!LDLU zS&m-%3Va7u5*LL2N)ZqSPT}OFqpGT^b04HTXD*51B~WSkM9ZHkZP55WHa7ZUKmV~f zAj1PhfTlu2D|Q|Eg7nHR=bzYlZ`~uBJNrEsMCD(ouhnj@R|t5Nm1P4%#O2GH(p$G} zlLM^N^Iw{?b9bLZCmgL5Lm(6l&o65iC^)5klNGM=%sIW;Y@G@qxTc3X-P+1=$nxr) zJKund|BiQv`7O>0x*bc`&oX#|Gz)noJ$(SF6l!i)h38~Sq0IK}+mW2`|IZFc{h0Y0 z0E#d?I_mA|8GGlBy7c6at5vm-&LA3qt^2fDWTaduSLNoK7SrM3S#zRiMFfruYP61Imzsm7Y8m<>rPsL>kQU(aW_Wm? zbLq2`QO{4%f#5nqwug8Cd<8(DCOP}#dfPb(2?<-#j@nvP%RRj^qg?e>PH&<vzZ0^NgbQ)ZSvv02#Bj{b0`eoa6T#ZiY?PS6oKMG}Y|v;Gxy(ckfgj z92~T@5kRJvC(j3MG}wQX+$%QH({qB5AITxdG`wr#w%Vq0C;Zdl!(U##3M^rK3IYyF zfwYDflx+uFTb}!FBURc7OI3~U=hAw2bk}BuM6m^y2q3-g*%Qo`cJEI!P6UYoU?*UC+W*?8uJW9+3EBEl!q4#1-A+LvXw%a2pH_1~K3(6P z?h`+fQc_aTG{!3-;U!8}ns(f3M`7t&NA|Dck$(EEOH za1gB;-uGKKf*Xha|2WCYo+4a=NPEd z|Aq0D{r%*8Bfq=AlR|wB9tH{6m!6$@L7$r!;?N0xz0jzot&MCQ=4@v6qv?TSnDc)w zQ|xkW)`?@4eI;ks)exU2mn4#;1FdLCPMNJ+ zcl>&yIbUnbt7~QkgpsV1(L6GH^X687;&bQvl*5_a%6cGq5n0DOuM!4Dm?&}^-#z;) zo&Jqc3mqI#3BtMIA8G~0+nzrF2whXpzM5|a8^%jeE>Okm*Hs{ELIK&=)isVKeDvXz z_9NARwG|ILJ3DptdI%86of1fRumD(9>A&wXUg7j?Ef4T~vO5Wf;7(lJ zjsd}y7d9?yFO1t24A{r&Yt?zsv#uFHbw)Q&slBP`Ia~!PG0w0U5bPhxh=H0{QqsHc z-L3U9J9qAc7QNY^xb-AQOH-5MbbozIZdpl*I2YH0ilbjnPb{?Hn+wr81a_j|hGr=; z@Bfi&eVjW>oX{~OR_x|YlVaOldhNOHQd2DdW*59*^Dn#LvbT&(1q9$UbO|~u9!%~2 zqvYdYGB&e_&|3B&5)`5TmujxreeYbeGjyk8RLJJY*u8yla{a7gm+Z4wmU(cN{6rJa zwu%-SuH_z!`BByg(U2RS+R5O5(^LuQAwZQ&s9 z9LE&@1{(1My;cKvhZlcGo2kdY>E1tLGxRYDkuM}D=@Yg3 zs3AoawKU}OH90xOaJb}0cX#)XAFGh*@nMV84MHBj+7!Ne{72T*s1Hb#^-o)_<8m9NkqFd1W!onj+17;U|D*p%();EC5 zv^4JCEI`e8*mxQmfS6#*n)FygX$7UYc!Vh1h~v=rzsKG4D?O3H?+O@4Z3U`eRD=^nAJyf|87XM2f6jB*&2^Sla#X60drkg)jiy+#wAYt1 z{j2rs(6@oGjS!58_=q|YI_BwVy6n(Axav@#Kh2S$vw0!n+^FD1RwtJHiG#cXcDb70 zd$%7%Zpb>#ZEQIOIZRSQ;7ZbcmUs}*$`01I-4*x6Sk_$CIN5zs`& zot=HG6+hi`t%%gL4yq4c`40nSuXIN4hz|CDl$SRJVHp_})?joSQ6;IVsezJr0`;Lg zp;UNCSoj`5jgnGLNV6|wa=D=X)K8b}?F9t{e5d=>(a5u~=t0DS(V>3;xHy28x`l

Xm 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 diff --git a/ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png.map b/ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png.map deleted file mode 100644 index f1cbe3fb4c..0000000000 --- a/ophyd/_images/inheritance-93ab69f3c211deb5155033d05233120f5a03b15c.png.map +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-9b988caf02abedc54423afddfe2feb0f3b822846.png b/ophyd/_images/inheritance-9b988caf02abedc54423afddfe2feb0f3b822846.png deleted file mode 100644 index 74b8e29fd8289ca3042d790d6fbfb4aca6481bc1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89364 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

Pr*?>;e~7 z&Xw}#kEf~scs3lc zn+p7X3q$Fr*0PZk8$zgdZz=I=nzy{c-Z1+2tQPB8o;e+R5ZENoI5MCk z$9g?WC&ozH;)tANS!D~ck^?#c%~r(-`ZDbI=M z&(aNi{`JRhls9x?4VWxUbz|Y8x@ej2R%Te=AGnNkna#X zqycx{uOvkzs8HZ#50cu^an27O71mZID6X8t?}-HJF9Uhub+GOQI;!Ax&v7)IGS*kd zg_KS4Q!6TR`Uu7jf;bN;oP4n5%FpYkPaLOo_#DhuyxP{kMV(e$VLK-hfjC?0VK0%l z)I<4MwQ|K2DhM!E2>!SvLDeWsNuy+!F`^(QNRW9qHV4X;wWV$k?AMJ^F;{$F&rgj| zSd6cLI%MB6q+wvbr+wLSztT-gL7<;YZ)!!!H2_6NBd-7BP>X~#B{*b}a0hoU+fREe zK2neKJfs_Jv0S9SBHC>CCl}`EiixW0PnCgpi#2mq$7znM49RFW$4gGY2`wbqQX!r;;xc%@S zk6+2%<)H567n$_$TDK=_VM@Hbp7g)&TvuPLHJYSI@Xs@`6N-}kM~}+Qs_rVRCzYH+ zK~hmYh1e}Y=8N!4wE4BK=Oy*M*-cw7xaEWpBg(uwukBl%^mwyC1YElIW8J<^JC5K;O#c-2IKYNt`rRPm zqioO(?DD=jW;MpYDyg`zAkhc;{&MA{wEGz+RtJ8zb_&~8(u}|06vn53(!SL zve4~|49vo$*0jBi=CpONIX`t=Y+~umE7Sqi#$^fymkeM{r7r zr=8Yn-MT(+3mUo`N&O)7>S2|*A;jm@kEOO z2gH#xW9PSLXLVWe?*&ON?g!IVTX*Do&&m?5yc2T*I28UEnnAE_>tqMSPzxlVp3aH; zhoW{2FuUT)vFCdV)=yq=4Ri?jrU8$+*tSUy%y*!+9z*IMun!@c+YyC3p}y5HKBR)O z$AJ2);c1tEW&eM8+SPqYdYW?o*4lFTOxLaD+)eQn^tH6gvOEf}sh4p{a)+Jv91BW*h+nsN}`=F*He?PH@qZAhm)qPhs==`rrZ z`|_hKwy(2Jm6`hb`kr4?6{q+6^S7mym9`|n_jom{_n$vZL+~@q)bxx~#O*~7l7E`9 zYfn}&u}a6RdmbhEtHx1BbFx8jpEaFk*Kep$th4gCI6KoOxG4gpKN4KC`#ngX?wxh2 zb#vc@q@a#l@48r> za`xvNPqSu^?GdQpznOIcEyJEn|IB_fe9(nIXH|nIcA>j_ zuKRXWv)Uax1UgUuP+sJl>{VUpaJyi0eSYvG4Kd3yY@CI%=lX)6>kHn#d@wwHzF~S% zxmAsic{ik@W~?>mfS|16(@9A&d{S3$@7cR|@BZ-t08*Q+>8DdtPM9A#+@h-~A@f(_ zTGX$bUr?~>@`~pJhYgFi&^7r)upmq|YnTtR+OuKh9abN@NXwgdLv zA+nvgcY-xfU%dF@ebbwWO`?t*8Hu(R1KurAgR9B*_PgqkP24r{+_^=3ysJyrdV4Pc z3AZ-VHa0zUZrnt^Odf41U)JfH*OjlfS}ovL44@@IYQP+ND|hrnxVMn7j - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-a80cbab97fb867a5f24b830d763319ad33b63840.png b/ophyd/_images/inheritance-a80cbab97fb867a5f24b830d763319ad33b63840.png deleted file mode 100644 index 4d04cadf6aef4857bcdce9ad5c2f91aba3b51ec2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88035 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 cAei>oAtKX+>DP}==)ehvdWUtNXgdY}KPz - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-aa46490e2afb6cd7454a429a1a96057e59742cee.png b/ophyd/_images/inheritance-aa46490e2afb6cd7454a429a1a96057e59742cee.png deleted file mode 100644 index ba568315bc90fef0a4d45a850680e7fcebce2c91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23883 zcma*P2|ShU`USjIN~n-2kqk}95K0OWnHrFpjFmDJh0GdI5mE`2WGc3V3@P(mR3ao~ zY(NQ>A>+61?fp;ZobUU6o!;LG+uqOf-1l`|>so7F_f?&P>MIy|7%3FW3QY}FJql$} zK7~T3&9D^TQ4pV}$Nw$0(NX;qXMZEbW9o`<1Qkjv?Hk3Y8(cWs52=Zq=3Hd}o}<7I{KO>XnfU z>k>zHwLSD49ENT8yZ9%*Ss1aLfrfakr;v@aED`;>AK;s6V z*|86io#TH7-cR<0D?QK`k-Z}zBEtCSV62LvA!kQNhonods4q?R4+ny~;0jQ3iEcSy>65zrRwyeA7<-<#_kTjf6<%HEY&TzjSn%Tie(O2CxVU z2q?FH{CKszTty&&B``3sysS()>EXlMFa4*-oq7faw(M3=(DwCBjtrG3o(l+A()WwvQiAZnzW~ z89Dg#*jfG;_8)>^TfhScxd|hji_qmvMV>2_MEn75meP*ZJT3cK7z1q3HW!cN` zJ&E;aWn)`JVOYMr>|31wlNRy0d9~x`es+|N54AVsyY%TzOKso2&%)xq{Z47=Y}L1) zKOb%W^*bhwhqk||5i_&1tUNry25E)@Teq&js!#r|SCaA=v1;Cq<-K0_MMGPAuc;}| z=QDq`zr8j*YUXro^MT>cB7<{wDMlIVa1(V!!@uQS`_JQ13GLXy_3G8DXi4jfrUg+^ zTr)E>*YDpC`}4k)rCD_)4IlH)&6?*>G8p;rCw->Fbo1B_b5s$L{`Z|WAZP?S=+FH)* z&t@K3`+!rQUi4tM89Kx%`77R$bqLz-)K=Qu%rRUtuW0|_$&rCki_1Ue5B(wW-gt8F z<(0l);-*sv&0n}KU%Zt0-JpJ86yMqVWwdk<8m;InzfD>?;?5mLB_$j*jle=Y<C8teI%jvw4|F|xpu8d!!n#-sk-9ws))!)dTD9toD&TyLbErHe|q7T)->kxZZXMv zfpPwGYpSZMBHPZ*&HQ~?TdSh1OvlK`sAFz^4Og?}ochFLSASov ztJpW|?6-sY&!21ZMOZ9e*lbe4At9`soIzMtYg~VS$MbAcZ!a(T$LZ-CwAAmE?_5YN zygSb<@tqzIjE&`6$tSO$kWXLQYk0_+cAW#cj~|P@j@`wzef##-f^!msE$O0e!j0Q# zSt%(hfTcCxMd;u?xeLeYZkHjX1~v56wN&)cE)XFWqhp@{w;ZMh*;PAe*;$pD7t?4F4J@KFx;^XZs_`}qk8IsSDk4$K2VsHB<$hg zQCe5WbmsXzyj#t}yS+!?T^<>6c5KgEar^ddy_$IY^R(wbAe^js_4(OvD#***wz1{f zXFZOe?`5Ya`*A1!jQshd+Mef>b@UY*=d+}s;icpUTdrQc8ok|#=eGEfV7#$5-({-6 z!o5nbfYzUs^dhOt;N0>ye1conk-te*W}yn!Ln>6Z|Uu=W>zOoYl+vc5Mj7}cIZASo=~ZQ+V)op2@obALDC$E#xYZ*=3O z1`L{u{nk8=t)-uwcj{9xLK0g`^;>ZJ;C-WwH&f?KOiZjlzl?bK_H9e8adU1y{X)s- zXv?-+^)`0bzg9v{j+>wgS67)+9r+g!*<$ATI-(gvxGHuIj=;l@ z4w831b?TITMgjGes@wfN%2*cp;U6Ef8CI^WMvc*VbdWE#FGY3VzC|gmiPmu?nOcZX z1qHs-g`-O;>m?*sJ$(4^<;$1nQPk~^B<>5n9u;L|?+*}nF(iZu36h?2qO)+P-^{4G z+^$`VDZPDtDEA3Gztf*}me0*jH&6{kDW$Qy&b@nn)-EY2>DJ3ARKzvX$0-!|pB*Ol zb6j<$-#!$H)P?vOe0Ga^xUHt|n8#8AMsvQF2Qo1*Gpiy1az#$belc-jq9EYuDFzV} zj9VscV8qvk)2S8vFNGqS$8oPP-e78ol@Q^0L7`&G(y?4-O8#9vd6l z+iPP`kee%e~T`pU;Y#~{#yrM$4#LqXiPk-(6=g$cY*ni*vif%BfR9ddL zr)ODx{i=b10gXe4F2}{inHGeHuc{7Rdl}G-ot=IC_U)Ya@86HCZH(W$Ow6*F7w@5Q z@L+Yo^3@`@lI0f~0Uo#cIp6)!l62ocWcUw!thi(U`|F!%1@G;zU%!5rZnnc`vgfk> z5UHBk$KSkrcwlY*ix<7K6J6>(U z;-yPj=Y}n~xktjw^?esoH)CCGZTYn|(wVk3E4kOMMOo5V;r|H*D}hmWGyBM|U*$kx z?~*iEV`)=oW_)sM+V#dN3pV2}bOU|HKiZ9qkMGN{C`tSACVTdjSR1enC3YIB=kOx|efucy;0ZI6v!C zr^3(@Sp(jPopPf{Y!kw57`<>EU;}~-z;n{#Q%iedSrWz}YPcs}r?j?~@!W8y8d8Cz zZ8h`j`wC`*9{LCGCG0_FIrhSPLcFl3D9d}|l(DI)7N5GP-}KOqfS{mq0H`z1c?}H> z32Z@AcWHj+n-Uh3+Qgc=h*kg^v^h99tlvFQ9+{Z9oR*f>6e_Wi>H&Tej1 zx3(O9m!d0V;O*ifH8=HL!nOaMa``R&HMC09pM3o7y{iXf<*i>{7r^F-#>V>5nzgv# z-0(i&b*ba8xtr3A4hXwsGG9qFksE^yyEH9izFJ3Wzz&jc>oy3nHApE+}eJeMCG z&sU=~`KmX(e5v8skD}RS1oWKN($54LOP5cr`O%t?i4)s{loVmr#C5%v==f^ zoJn=bcUg>Bz9Fv_xP_hZv2oU-`3e8|M^VpY5`!CtuFB#rl2}QHL^Vjuv~LzkP1J8i z(QnAGR4SYuZ0K8<~t?AxB5Yq%hTH=6cfHH(MdvYVbg4 zNGtJ{HtN?>X72N=lxA4&?l^tiMLW5d0IdWb5h0<)qDD_DQAm=*erY{B-4$dmu8#UX zf>x&-4Kna;C@pzYF92Nk^z~gr#a{|~La)Yii@=iYr#h~rq-+*D@`8P7#qwgJjP zU9{2E3jjY$PoF+b+Kj=?5^lf09`Nw??i+aj2uaDxMf*!N4b95Fj*+$_y*O~I7GJWy z3WH-?&hmza1_nmPi|Ogx!V( z=Vv#Cm{Hkj%@tL75{-5!aHlw5eJ!1mLf z*RZ?Fs;blmH`|jKys&s#`KwpUQD5v_v@=3!9l8B^JfiMLaen1bjua$?B?t!W0j!&w z>|2F2T~=GGmDb0n=))}_AmDuFOyi(j(i&7QZY96n_#;v%LEGXAMmjnaw0b@hpUx4S zUqd(2wM+Q*9a*MJOIMTwCs2>>4^+_|xOkOnarEfX-G95o|n;EHCrKetowIEOC!GraMV=ZRrN)%}5Pvg*=XsN|$IwfUgBgOWj0X$xR zKNMBLW`1rq#ULbE-IE4U{~W(ZT}bX;C+hDjWIlVQ4yYtt=RDLV%e-zk_x#*MNtSbu z3gMV`9o) zzh?HG`lE~r-;`CW_V2)UV87(Tv+eu-Jp?PRai;putDBp+ce#r_&CVw6Awg}m(kB`b z#tq;(NXAB|UV**yF3m{dPk+PW4;hwG@)pk-{sjpOr_-u?lDhj)8(|87aGuxJ6g&4U z3R=k*e0B9Ea0EtaN+w3POG=cm;g(=&jZI9j85mJeE(1msPYsF^92&ZIM>Qg`X}rLH zUXi2}-c9?z{F>J7<3<@4RVXIbCr@5ox`M~5yYvDY z@L5HnF9ttJm|Ax2QEdL8e{|{Sd zG??F3N)W%sAp!}ImT~bJjV_T|8?f(2-|Xm0VRZC$K_kG-uUJ?)#VWL~8wi?QG%k#E zF}dR_)^0CtZ(sZM>sJDJK`63dE3Vyf>Op2E3lo>Pe*4`2&~)0@zV!55z!C|83fghH zGaxiH)PCv}L4+q71aoIOx0)_NJB+(M(QEdAjfLfWQ;gu&_{7Pfss0>@T{s(Sb*C!Lkl5`UClqU=aj>97J-$ zQK@w{vu|km_T|e}(_H)I0s$Ht8Z7Sa?g^QhIt&7;*4FXP&dw~Usi`Uq0^rruY-|$j zyI#NEZ+-f7hUwDvc>AU)i8R%^SFc#}^75!(kUOq||FK{YsBBI%3Pi$s`R2{mhI%jo zfsYycu>hSgx_^M`zJm z;Q64$MBB(v&z^F655VM>$0pG-C-ovj%_7CNZgoN2uzi33{(S?=HRXJEwzRpqc_u&< zWxnWAmG^MbvR%7&QTEu|i{LJr#m9jmZ=3qp=WTt1uDu~qeHFUlJsWSvgKb9Zp_8k$ zE5r;Gk3`7~8!DR$NF9Tr`f4{fx4`�hPUbMaPN&k&V3lK_f&yFZy5nqrQDdEsdK> z>igO8{1VWN;m4}IDhy&~dCVYPON)J{N5w4qeq+eh4Eemx=u_Lf}k0WwJiC&3{ty*kY>y}T{gq4{gW_|H#k z|DoA+Gb|JU>8Wi#K0cDCI^=|fg&#b4Kml1yR{vZO$l<08OMWzYK!sJ4qkYY7$F{Bc z`sVIsB;MC?O8jnvO{q-|L+|1j-ofHF^yz7s zRQ?Bo50$3;?&;#xu`KZ;FP2D1NchbC{l+b26VOtVwi0_g@aCpNy(n2KA)H&^fj(A6 z;2?B26n_I?2kRQW^X$X6DTHhJr%!yOOGkH1f~LH#F0Eq?$;ThF?JAIgu@@>X^ZOaw ztlhhJZ;s2FD2t2j4ln>&u(m1vTE98Jjzw1J~@)5D2K zppoki-90+*FDOYU#%Po&TafZVsTnQ9o&_i0Z=9L=T~9E~;D?Ni=B%6z$U~+6!&(nc zcYONP^W}>{eEDCuBmdB-ZTf*9c3Lddv&66Uap7R(Pv+*osjI7qma+w(7J}IO?&y-1 zaZ78%cE{H9w{EdBgXH_(cOXuYFD51is}L9$#}7F4U`$H%(yG9XV8N6@DF*J}SfMmG zx+*=?1tj?XyW3ZQ_1TAVk-L4R!F|L5=q7}%$>3f=nKxx+bU?O*9i5sO4hMyq9&WM# zlU-jUhh{;u00p4#V9UG9ow>{B_lolJ^4h{c4$U;G-JRMmXI_5!CBm1zjRwmHqR~oO zwdI^d!EN^FLhJxdp($;BcG@yIXjBi>r0SFGt-}8%fkmme7IhRE{PIX+DU&_i_w0_GLg3oYqan)1$ zB9YO%&WVE?z$Ye-c@G%cF$OL=6sL%Xxwj%{MRM5QjMS!cPgUYevGd1%?R%-8N6o*y zj+ND*xK(cleb=~@rLU8!qfY0__ zmWvlJ2I*4P)Wi->BBeHE$$FF#EYg#vV%Z5JS>$*=)-`LcV#k$1cM+Q1uyLae9xGu0 z+n$}yh){I9fL{$lZ^u+quQ>2?4AMOgb^!rPX4AI~IOae790JltT4fINDvF|R( za$;`!)FhFu&d0WyMDBJ;q*gZspqC{aU%va$owr9f3MNol*RBmgzMJ_SH}8|~$H>G4 zoq#NQdWX$^F60o>b=keWccG|Afhc4)l?-UC)AIiQd4EXP*!T)avUts#8`&Nvf7q}( zS>K?3qou=?Ao!FGvv|hFEnSrt(|jR$)FA@5k8uv zk&72Eg27Eowa%dm24+1B?$?eIkH>z>__PWU5QSE+5c*bzLB~d{Et*^!6!!UjV8z3< z;Hpn~()*J}=}Of&-O zTp}bSlxoYusw)dpa5ZTqFR$W%;>wQ&u0-L?bZXyD$YaSPV+r~qqwS|ltO0j{vG>)4 z@k#m3cy!j41WCWsdbD(DW?o+PMS3Qd)vFH=ZcqMHGyK;L9||aqTSsM~-xt0v6bas7 z8W5aNU-huS9N{{2x_TYv>z*Aop$$NuY#=2g-|?dF5C@2U8V6uw?>`x3;%ebae2F z8b01UF$vhT_O_VGMTz3cMYJ+BM~MCSy_Yi`K8P2Ionm5SbnbsA03K#3f_X2PVhC>J zdA$5`1{o)I(Zt6!9Y|i?{PUCQ$y5Is0OqdZSL6jJR)Mt{MN#dZ=<=6nAT)T-*RMfH zLwg{%bryQkJ8rr7UtR#?oD;0Kw36-bs)cYWi$^5_r)(Gx4-PIz!MYCpYR8Tp`|ruI zmd?M`XA)?7xTR1;dZep8dj{kJn4RSDzJG<8E1>5kw)ua2dQ9%@S7zu15w~sy*2(EZ)Y9v*T*tN00v(^Gb78938Q z^aSgp>OAYD^)_k!12DB5ytYs_%*CJvAyel%X-&V#aeMprt)P^YZtlI9m@Pksh79W7 z+>u=k9NG&6kUXC4HD+(^d7A_U-%NeJd8jho?3qYm7vMl8k}GNS zbFXXhU`^P;(s6(#w|sAWq{>=kD_m{agYkv=1HP z0tdw9KRXu1sb`Q5JjBY&D+a=JGXPg5R>N{?eqBS|iS$wql`GJ*i~c-*1n|{%+8Pks zeu!KR_?!%0qg4H1>_8^?C~{rE_H8iDIU#_$sO{L5=VT^z_UnGofa`z#{;mCHg1QJY zO5_QDgRe$oxMYX~T;yQ^d?uu%XdJb(OLKbv^jKZg{j#mY6OY9RqD(>yC+amem^?nO z=Xp=b-vTYL@zG<)PHu@AKl1#H8sVM*wT|qMQ#=CbxexnHlP|G5!Zq5r#dOo7UL7Sg z7T#IXe{M$WQ1@xD$!u(FBDbFJK6CagA;zQc+#y78Uro4?1HY_2`@@5=!H^wydyG&} z@ILe-LkNdLcc;nWQ~m?*;`b6_4k&&p1fH!A-xnflO-@hS0!g%H*)9X&;oMzH_t^Y7 z8^6y8-LQdn#-kjn(dx6#TgAizfZIX!zi8WDkDe|VB!Cer5Req5 z#}XJ35pkkDFTJfW0gX_wVY=yZTU*L-q@0EoTVb;*qW&lW7+(OMP&vikp%b;5&#U!-@ZMFT}gF1tfRC3>)TjSJhVX2 z`lt%Wp4UjMBD@gQ>*UFkP!1ARrt#8Xq@c*?DZ?XMBDGvlG*DHm0FJ7_wKqR`FVL7I z;(Noyt>@>@l>p%$o}S?5+Inuj2J_yDh6j@M%$ZM}TB-V^gFDeoMG_#?Q|WLd~eX<|kV3-j@+VFxRM9TMKyo>A#RsJjEEwBYQ)hr+K|BwNzF{CIFTK zK_MaS*B{|OpxOgtnmk?7)6ghJ*Ljsa)-03nwlwgm01lvA5bKtO>0-AAs+jvu!H+b!ok zE{5MC#3$L5$Rc{`LR1qXR_nUKRTPfE>cj0FJ2mk=qr~R#uP?26PHREU8mkRxodXE} z@u`4|OWgcCOaVk8*>d>dNZ2y{AsUl(gK%&J!l5H8alH$_g*7Df)?5d!YuBz(B|ptq z*3^J#Uj$9K95p-CZ*~eEu$X&;>diE3N`i>{x3_%vcAZ-ZwB<9f9ZnDOw2_ttZoZ<5 z-DO!+GB+hk3^hnO#C5Q4-8%5*8Bdv2GeYRaQ(wJ#Qw5Im9g+urdgp8^1U0MC-YVmK zXX{ia6^7S$cdP>2NcKsZaD8^WCm&n~XrEz9kp6sTC-k$lqdtNMKr`9HJwo`kUhEg+ zEF1b?zkXRcIx^eY+2x#kzw~s;?Dji5PQU$YsHz(23KknGX#xX{HdBW_CIRQs zUNv@3PSQPQW@TM~z(N6Qtm4q8b-=RgkgW1Czx$D1OFy7D1s~3{Ty3hXt&OLprKSHv zMx6Z-Z1X1;MZuGk9*|W9p&h_hgz(=3r$PfRI6psM|L;~OcE&)9`Rjg1Ud&y;30#AS z-g`POCuPeEzk77+<>l|h9oy>p>+^EprAK)O`8%bL^-OD?Gx%EcY73+ONj#Py=&ztv znu0@t2g#@4cH~@omu%a%O$UG(tY6C8@#5cacS%Z1-;`8f)qOK&`aJRO0Uczag!Cwy zh#X8WZV+Slp4V&qN2;ljzJ37Oj9wVVEuuBjpB5`#Hr-B$L1G`Oh+uz>9T_xe5#Vf0-dOp9p`SSJafD0Gs z{xLSKS5V+1ej%{)L{}!D+qlF}A!Cl%mpJqF6-u;Kxst8Eg*z+wqC28=_^XqdDlT|sA^hFv_AALrvxZqpcK@dO6 z74ASlUY-XHROC;yjW^*-EGsRgAXT1EOA{sJH4GLf#r)m=j(kv6R#r|iNaI9N)XIsR zXjN+e`7sZg85BhoQ&UreB4)3v-@-%TQ6Qw#j~|Zd*9;=+rMjeFq>6MMYSTZW#MM^4 zD9RP3y71CJ!Uy1qIsll=)KOW1C14#I-@hM)iv;@l1H>tkN<%BR{uq7$`Rg+A!NJX- zmHf1F`xk|A6$S*)oJFKK1?7!6`rLW?xS}judi=(q-SsFgadpRAWeltM5s;U-;^#Vr`Ofj6XqP9i}kT%fu*H;a>uz! zRx&YNLh<^?V}hlQlo#)kZgWEd+04!uI$_o}t@+{?m&-J-U2uG~7R><^RQ!g2WRBf~yD3(&U#Y%aQ5flC(DaHW$=n84zp@xei9K zfgKR7(maNxUym>Z^v!qfDHr7*<@rDUlxR5@o7DDEg~TJMV}zdr2jDz8VhtR6(yb6+ z4|?C6&aB!Al(2lCzuVr%DTTwd(1(07IrTlmpuOa6{mj$O#m90_-pEtrG8MS;=k;}g zy&^@!b&72C^z;N=QIDZ!MMOuZn7)1enjIky79DsqAT~C3vzQpW3IlkC&0x_~?d|Qa zN)h~RV{5C;m;G4EqUO7gKeZP0A<%3f4B-$&nHmZ`&(e7O?rtlzSi13ZP;&%$cAOGJ zW@k}h2vnhcapT4f{q|c3<+?vJN?09MF0P5j(X(gH1fa^BH}u5x9oR-@iW$;{A4;Mcb&~|0jQ+ z(DHU-fAfh?FLDRH9giLrMw_RGn5cx>x}GS2O-7!bhhRvtpO)LX^J-m`MA~hjSv7Q6 z26g|vEt|*A>as?9p01tqXAmrsa_!fF3{apqUHpUb9m)Hj&ULB5c0+kUT9>ynYq+@| zW3NpUU?{0&eu>ofaiEpV+RIdMqx z4PdO`=N>MeeuCIiNwozH{wulUO^N-r+Qz_anfkc0+`K$a5YJqezGIR3zSDWAxGC?} zblBNBSk72%+^``vwt4GtmV{FQ;Bsng3>;n0TVcEfi^PduS#Z~`f~Hvz9&$dDnK0h# zrN3`-`4HGARyqH+n+LoeP-%$3-k>YEhY$#)j3q%vvr*$d1&DSCP6k`Smln3fP@h)! zdOsZ8z3Y<0@#7nTFsslO7}(Y3{`K?vYGCIqJ1Sk0LvrAMZMHKj#T&GN=X!dpLXb17 z@G)5s;tcNoCmR%XytBx=58{z=k(Vq$(=sEY4|+A+|JF51OmI)Ve)*CC4v(r7-9*ww zR9046^^^yK9(&?!36q5iJd^0QALMnSSn)xw9ecdTq-IVH4K{TDa@5vD(m9W_?h&#Iy&ZIMISe0S&Go>0E^zmEvS%ZY~D>ED+KbjFW8evT}eU zF={`Kma7~U4zf%ncV7&=)l#s{T01z1A{MJ^BSl4J_8se=GPx6czig;AD^c#uXN^=R zAV+q{4s0s7=4r@93Ac~VQyj*HCv9JA`2E>Icj&#@vSP&wgIzyy0px48>gww9=4Jy` zb@jA18Mh9%SvjWoPtvEbcSu&@AV2Qxw17j(F#Slp&J`F+n2<&r5RTXk32bMx>Ubuq z+>7m!j5zF^IT!J}xPMScr{@?H+iOY(=TY#@e5$lJRPch2TYl%v@@4_w_BB2m1@&rcCl zrKD9UB~^%3^PrI;mzcBWHzHr5rXxVN1F9~fXlQ96Q7!VD9WyHY`}Ho{CSgI}ZkWNa zAL7CA6JWPz&-tc^E5eUNg>0UCayh=Z3`aQ; z@xm3S7?6=8C1qI$n4X)jd~Po8#++cUws09|ut_UO*Mw3a1k6B^E7r*hHZdT?imEDl zU<4rD zG-+O8LsP@;>wiD}=|yt0OWI;zZ>5I1lb@AW6?&c-GwkfU8546A^eUMM!YWX+f8m3u zJD-9|P)8S>%l9{z$ccqqr`Fu(J9H!xp3)F539bKXPSL_a$c~Z^s@@6$1k#R}OOdjL z#X1my7|&S_{E{9j5l{*sG73tf_vfbqG9Q8q4@YiH1PN%m*2sPeNPM}-@88$xPpuf~ z9mOiNLt%y8c@Om^CN4ywkb(1`gzT-I!@Ob%8$87=i?2b(AXGKRuJ)ob z5*pkz*CS@-fOxUD!+A6v#1@2IaS8nx!M$i{iE#`)ir(~U4p!EaQ8#a{Mh3nN@{L&Z z($leFCqdp|!b@g1ghA-CEne%mxVV~cT?Ibnm3L);%jn|s=R0Ao2tXRIz!iMoc}3=` zowLJvENdSa5=2vSlkSx(4D&@!y|AEV!s{4yYBe`E1BhRuE*nJu@Q3TVjY`ZFjS>*;-8T;@mZ4j(?RX1!3k=@G&xLlC zy7^OGGo~AenVi^|`28m7P%KE4KB0~*;`Lt_{PK1BKVrYbcX?a^@62>RL28` zI1rLkH!7Q+s)#bzHa6CXQ`0}P>mic8HBuBi36~GX;>y6sqlq$58?bnT=Y_7K5@tf@ zk#1#TVIn;R^tC1a{{E<}8hjD88D@zwr2GRtA={bzLV;i0&dURh5Jx2RwLEP8-_hH6t-#8GAwlTZqIH1v}KS!wT>;( zIbQv(zEI>pbesl505l-M1OS7H^A*0Vlrd0h9vh>sXoQ3Bw}HF@2r(x5YzWq3h%8d> zKa4RX2j($YN=Bw~8NbhYw6)kUWfc{Rk)>4P6n&w!xM1Qy^DEooH^Q11y#LjbWdA*k zUnvY-bT=B7{4-w|A!{YHtozp%NRVO$r3va%L|ezh|IwC6hvPCfXh3GQ$e1BOPVVi| z81xdi^GEzlO37kL>#M+}C}2+WGK zX!Ly-cKGi3p?62C?Le;6Oih^8I}9l>?Y7xJUD&n1HcA`@4SgV*4Zc6?@>`8bFwf`D z{C|DE$}R7jg6=<>^YBS^Ev;ave4KC|u*Uh0#~{>LppQk!a}KQ0eA^8Mr5CN!h8B3A z5<%_Rf5-5oz9pPqg_V9_S*RK4jhUeJnEJVMK12Tk-Fw6FH+KRdvo4}w<|n=79GH|G zJbM_wqVwYh!+t|H|VB_CRWW=8hYL1AX=N!_El6=5Gz!!8<{h(#E9xGZ(dk# zVJ};D_Ur31I8r68%a<73g*;{21^>f4uYGV;5i8L{9QcwNz&*V(SKtL9IpNG%;y&CN3Pu?Iq9u5^I|-wWeU1?&^}#Di zX)-Q6`3e4u4(;F14(gr_j#G9lF>umes403f_Dvd?d{WEhqcjwpI~{TR_C~-`Rrs!} z;Eii;v;5Qh0&%;XLR16$?_6TW4_eMarfwc@-dBx%j0vVgto-~E(6_2k>np*!8w{Z^ za?VeED5(TRTnVrfn30h|O^3)SsHj+M-qpoLto{+FklWbct4bU3gRR2m?Y*7gaqR^R znh$SgC%R#IO^rHKW}PL=mWAZx$fVjvtc*w^VqD4moS6^mTshVfLQ^nMkp}Sr4E9j6 z;6fz;6A40`$av^$7VZIcsp07{Z4d=1d2;}BHZVt*V=EK?>yo8QZ?_t~UlS4%qITj$ z3Y^@Wpbis&sfja{I{xn<+Q11qHwzq!kDJWRiLm%WKuO6GGlP*{D_*8ST`;=FBTLnr zHnc;|>V>>&9UG_q!W(T~`t4XjwxUurP%gqVXe(7tBfYP<>V; ziE`C#d94N%0gZ`^7R`w&=V*rT!B}M%GgDtv4kH2y|*B0u}P0F zSl$r4&I&2Ld2YK+q_vgRdCVJ1YKD6FA|E0YEZ~agAST9l9`FYX&Eq;VM)< z;3GN;=8jOf78CV?3<*K5C!@0az^`mLsHvCILjUvo{zLCdUx$1cpB%MK6=GqHSZUvo zKu@fUNTtNH@_1wpsGecfsv0O!wn+SBQ(BO0!hBV0( zC*ocWA2QmY&QDw-#IY>D(SWrmmJCZI)p3d$lMw)esY5?;tK{n7wYyZWG+(%Hc3|$~ zPz{-$gAI>T3KA9MUMTF+(A00e=z@=t7y<${H5bO^4fbLfkXz;iOEJ354}*3ylcW93 zXH9$UQx_vi<_usngBK;(Q zGNG7zF_FCw;xU|*5ZOw2{xV%CrkOGI54<|Mji5+~J-$Q5a1dRC#lZ$9t4VAInd=9i z5eyUO^J_VAI6=rKW_ir)(@_x6%gDqtnA`crP1p3s9!7+`2Imxr$UNYxhOVOiZ}+8D zBj_9j&cjQ7LCNqL$j^XtLof2NM_yxePQ<>VBKE=Zg25?YKc&?d3ORbbK{WG&-?x=1Ka zQ23HEGEEwBFJ5DM3l6Rzn9a}@Qz$rMfc%4qOOBZ5=?!?X6*gB7vb&% ze-Ff+YETn0E#DBO#^$Cy=2a|>HaS@*~^OTbqnu#4F@3j&Cj00F4!wNJ2BMG zMSvu9r=1ed*l;ezpe6dgcQ75Ia2;^EizW-s?Pb{a(6{yigR!h#YnBk#IFgm9lYg2*D+gk!C2SA0}@x_-+a~&$7tqiMcWgN%J}? zaaf{j=Oe%ti$O*P2=xc0dGqgAC+nxKUA=k%oYOEuUO z;>GRx{CNqcOwjb`IM@z|!j$m(-p<2Aqc7*?=HQoR0|{Vt>=?bMXxjXT&Z1>%ZhTgh z`6uTY7*ie`QD(TP$8m$xN5+sZd#@dJW6%l_2G%51<;6lzF+LH>>a)Z}Ct;~&qU{yc zbgi6~H-Zf|Iqg?Ju=q+ix3lkK9pzEF{0Q~=mzi!H*FXIHc%-3Xl#z_@5@v%EyXi>=-;f46i|&x7OO8f$xrF;ASJs=3;k1 zV|dMqoE^~vVNgAOVn6&ZI;r|tpHi^2m- zwprtYVaJVCUbn$aSN8%&rkBvu3vAx3G2FK%Bu_E$``gElQTz91nFkHYJ#Cf zqUl^GU(?*wR0=l9dl{4FjT~*A`?E*V4Q;{wQO-k+;SBfPez?y8GnK%T+=wDZ%4QLf zi_e~&yZKG~MgRyan9}Je)U-6LYrx>(prJoMC60EEfm3&1-(uLlko8rEZFkDc_oCix z-m-<9-QXdb#VI2r^PsqR9qhW7;20+s%OOQ|b@dLAD1m32>}3H&@A%eNhrC9vgw%iG z&!0c;#}218Bd1??Z-?2Vs&8%GRtk`F0?N>lJ{~qE*c2kJPWLBp>iQ@oV1@ z7PBbih8oU^f$3_qtGRn_2ty?xc%hQ81b7B?6f!$e#bsIOJcG`!dw96($F!`)QQ+So z_%r`NAAi*cmqxsF#nepK%a0$|Y}l}&Z3wjPc3<(sr57=&bF>#`E>K|ss}v_ot!!cN zy^9Iw709t8m>gZ}Xnq(bfFLqc2mnYq59Nj%8o@rCqM@a&t!ru;3>-#SOb|@NBOXHg zu8~OqDwV3Er*{#{89R$nCHUlY(wfO%kx0IE?^`oz+w1}$3m;H4n7jP4YF-o~GD+h< z@8|RD)uxoRH0jpXhZqCgNsJnl?q?;lTj5q1!Jr6f+lf|2G)L?}7-8Hz9%EP-<+K!v zGbR&PZ#vlYF)liq!N|yHa&oft!v`+pcIb2lmuqA<(xz2k?mr>JL#Ph8i}}4KemcF& zf>G@nu_r=8=azGRpj^|kW3T1jn({E*XXe*W;rM!gh$kP!1a++9b^U>u((&k z|8Iz#hL@3mbJ7Px+Wd0qOI+5Tq#7dD*z_T>(JMZLfEtUQX7ebB@#1vn`9T_ zJs$h50tpY^@z6|WG(2rgA$agxj_!+jv5}J;k|3RX{0$Frs~$UctbCisjQ}KU&;f)W zQJR}f%oJ;KTUgUAu)LwawgGTRNVIw#Eky=IAyQ|-eAv{|5*(&_{2D!mfL>lh31lW` zG=OPURaeH|A~RHEc$hePkvmk?1*NN&DX<_PJ)fHL0w5>uG004ue9I_0CMH)=6iFV( zgV{GLoDO>Gt=zfmU}-T=;FvjTOpdpCaUQdEwm`+uK7x>G`sGahXTMu!!Es8eFt9EM z-{sd!$kOO?k-1<}u3p}JYx=8eevS+6@8s;Te>e$@6h^t2jZer@3<`o{*VWOna$RNF z-&LaY^y$-XI6z^`CzN7>P{h?f+6*C=9`YGj8!oU4+iD-d5-38Ziw^lut;Q(9D$N_X z!PS+t$w=`^NE5gZl>6fT%?G@`L>iI30Z;IHNX7QKrmn)`khuddcxcy!vb~4ZpJ|yws z!+oyz49~i|lamjS`N#oN#MXo*h_E6LOK|4vj*>FSP4W67YU(Gm0qnbhNUM>;u8`%z zWFlT`WlkG*HU(R72?Gvjg7MlYv@-(ehLq-Kq+6aGVFKc5h|r+WVxiIg#0kRrk;4(b zecL2|uz;wX2rA@^^@=kidvT7AB`$gW!mCI78-z$r!%Pn4RBCL#Dmj|WR3BR(?G3@QnCegH>#xEGk#)nU|NI`}sKWFsx&YX%$)*5@ z$i^4ZcAg}LD;89YUg5L$;B+mV)uCF`a2J+QTlnv3Jwqw-6sUAn3{3FTJF3vaJjDQo zV|3Vmel4t5oP27h3C{~Jo8h-ybQ3-2N~ZZxIf#6%{3>PZ!ml(#%I_W+xC-v8L08@Y zW7|tF(cZsb z6>Tj}BDn^RCnW6sNq7!2F*M&G^&$xp&q4n~owQSXOb^@;CZ!S>iRiZda;gUw)^a=a zu`;w>F!Nu!bBCwF<%$KZHmf?pj&XsUMFqVnH#aw-k7aHw-A)6Zl8 z9&Fi#!ouA{QbSt;oD|e=2oHs$5dhTJ(baAE>S9)L>!(;9sVk~{dC2FGy?HhryvM>< zwI0l>F4i11HXdt9ur~~oc*4y0ljGy*AQ2+v?8Z~cKe~jr&zqJDYnG#-3`0A(9yEz7 zZ_zGz<%wwt((?nX0nB&&FitrSHf^EI$6a;0cf`pRtSK3lLKqPy0ciw~(rou89BV>| zXjuC&aRcX2!_kfZ7X-Uce*7TAvjVEhGQc!wrvR}1Km6w=fEn@&3MycR!v0c54h-pv z5unvX-ADbMMY~ALj!YV#lcSF-^a3xz0+!c*?swdQPLcG{lHY6XjMkD_FDWUhe7EnM z@Ql#mqv3Z=sya)$bJqbqeM3XS_Q0R|*h2B}nKRq;ML59i!#6`8`-SrWv34SH=~!5V zVJw9(I9{)s*ZJs6U~9QiNwbRgCWm98DMD(F#D3bYAU+P04jJ)7OX&;~CD=~PkaSoCs*eA*!U0qf%#&>sH-Vg?`S%&zh=o~q+V$-Hg`bI|22B*CZ%}SH zbrV5;BnM$&imME@L#?KPIIW2@d;V{|KYlM1A={1alek~Zb`Rqn(X6SXXA{t5gGt93 z8a-$ID~ysO@_N31X9Cd$FxUU%w0R?3RZyOpFjVyHyL4)^Ju{DtM!`@|Pebo$=od~3 z1k2FDc>aZ5H4wzS<|2mh(38YdsajaG8^X&`{4fHz7(g=d_tfv>ucI$O8R|hlmy(_i zDvln|-*k5kx_cO)s?qa-?+gL~5jz{I%~M-jdmS1e{JgR;*`()?eq1jhw0-le1$Ekbc z+<1^s05rc9QmG;!#}hFWh`tF`yzygK(@tb{G%MwxD(NWj`eYP`0vN%XkV2)ZXlgEp zGu@I~Jyl;N-Ec4drt0T8@Y*h946onN7lgKNZ~3uqpup$v8A7XZZ+GN|Leeulyb9nE z1E%)jni?9VWRND-=fe@!XUHj<+iMBz=7< zDV!;G{}HI=uvB$MiHrzJqegGjB&K7$CCaIqdORn9L?Y%rP_CfXG6t%+Cb?VFiutAJ zoo6=^Nf9E?l`xezWP%U83Sr%GJk5F>+w(s!HGy4_P~JFQFsf7NHnRi_wGakWO-$C1 zaRQ97G(@xo(#j39J#5!xiXZkcT}w*|`IRvOw8FhDAA~tMYX|Ws_Pl9;RyH)QfWd?A zhWWO}$EO7L^)4*EB#7_|5ExS45_klISl zmO@>+5*8M;FOd}>k(YLHF#!aB!g>m68htY^?i%;P#c4i=A0i^h<#>4%0c?#0gf&D2m_i)C zw)~%8gB#`=Pzlb^y8ivlRoYs=-iz@kFkFG8@`1`liZAHb5N3!XNBKmUV9ux#z7}Sj z3V>B6+Lo&@TLA6okfZJ*qM~S|7$C}!<_kUmKu0XC!Kz6yjMyrpg&>q27E!Em+<7tN=)>>J0U~R zMR<7ly7zkOglB>$;=s>r8D~yxEy1FluTRx`b|mX0 zh^NNKD^I^~%8Msn2Q2$izHHsTZwd==2D45+0z2i`($=y;T38dlZXV*5O>fUI7=UYn zoC^kT97&@PJ8nfqeZO}zB7zReA5s%(kKt8q`dMFBcL_7EXuiP6p_y?%QSUJGZ1h~{ zzDqcD2Q(E_AVS6Cac=#3Q+PR1^gs}RzFt8z_vxW$M1{nlX-*6ptB%ih?(mU-Gs1*= z`;T*tjSeKXzP=&t4WxN=kgnrO^WNHB26hX5lGj_PU!!1q62WRwByngL5=%G07?GmM zVGkgOW6u({1!xR6VTfnjq8gDC6Cg!F z2;&DbKPAOaAtUPk^V3~qd=~>xM4u;pClSB9{E^0* z4bT1@aa)>NcF#y=HE?VcAj36a@Z7(VX!_)9ChhK#BsK=M6*KOD!r z&A)Jb_LTGg8wh8a48Dm!;KC7JXpM0? zO~cNIS($X_0lxu`b8!6JM;tvO4B8M!5d?xpJYHj%)(q|9-6`O9Zk(7zo}troC*JvE zG3VzcLW%ht4pJFr^FEXdax^Xu1In(E-?b|-Ki{~(7eqN+1Ub@d}O8Q@C!l++-{drQ7YQe0dAL~LiS|m`ZjNtV8KW1+N&_$+ibM=ENg&Cm{93)41 zXTjUjkp*Uj2A3iAfJlPW;=0*i{of#t+c?g~!|^r$jdB>ZrbHL+DT*|(uzMq^Ekn8n z*N`(XgPtBN5spEogJqs*XxTMnavR_eDv>Z|ES7`4$9V@iiTv?(EtoIH ze6OyZzm1I`Vi)$e#g>+q*Z6jEf - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-bbcaac3b6a2ffeaba54a908d74c83ab374057a3a.png b/ophyd/_images/inheritance-bbcaac3b6a2ffeaba54a908d74c83ab374057a3a.png deleted file mode 100644 index e96a8a91a674c70b4955e6ac437ad01689a29b50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16731 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 Y<; - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-dfc70fb3ebeec9e78455292b41bf6e388acf5744.png b/ophyd/_images/inheritance-dfc70fb3ebeec9e78455292b41bf6e388acf5744.png deleted file mode 100644 index bf0e6647950548df91682fd8f1396f57c08ebb7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79727 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 diff --git a/ophyd/_images/inheritance-dfc70fb3ebeec9e78455292b41bf6e388acf5744.png.map b/ophyd/_images/inheritance-dfc70fb3ebeec9e78455292b41bf6e388acf5744.png.map deleted file mode 100644 index 58df49103a..0000000000 --- a/ophyd/_images/inheritance-dfc70fb3ebeec9e78455292b41bf6e388acf5744.png.map +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ophyd/_images/inheritance-e074d941bae841f54e92991832d2f65c1d96eaa0.png b/ophyd/_images/inheritance-e074d941bae841f54e92991832d2f65c1d96eaa0.png deleted file mode 100644 index 04516c9266f5aaf9a3559ecbf5117acc4e083d12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4621 zcmb7I2T)U6w?1$Y5m6K|AYF(My)=;;njlCK2~9w{R0&l;K&pTmAru4Br7DD8r3XQJ zs24+!P86jVr5XkNH}}5xX5Reo&AhiWvrjUUbF$Xj-}=69B~njU;}jzYBLqRGv^3QW zAc&R^yf~&7b6URcPCy9bqgn>pRQ>2)-++qUUluDsNv?!9;#`I9Y-4hFjHk*xwY1yvKM= zP>a+y9vK-)Lqns$ z`m#imH@-q#W&w-E?rqGXJcj!FU%q_FKu0T@9Qcj$zUB8}I$TRBOBspm-4@c4;ODpX z@p*Zn*Iwd08yg7f*|TR!iHQR;tkdfo8_Lqsj#A=6yo@I$Qgs9qM8*bG^7Hd2CMF!6 zoJ1xR5#{z0;~3tMp0}ELABu{uI6f&XEDR41|Jn!6;~gP8+Xjv9y@`Hgv8lK9h1pn~ zq97+Hhu6*E;N)}xxjH*vJe2FRKSagjaJa0jaxz+qs>_Q>F$l5yRW&4GJ0E+114KbBceHu;Gq_c@ro`?cQG9mm`E z)$6Hh4jH|`8Rd?;eS2VFz|GxVnw@F>UVVFxXAYZ~mFsll!+|uZhK7cWjEs$KQyF5h zWs`4nz|QjCY^V@JZe=A7PTb!1na3{-Wo;}kquq|y!CaiOs71YvK+R0nmrA@Ojc`w< zN!p(#WhDg#f8CdykCBe|3<^>Z6zoFRQGH8w?*$@X4=>Km-S7~)bV)Jv@YM_t7gsbE z`x;S%#|ueIkJ?Mx5i*Y4WN($e=5LL&%1mRlYXHBsv}2@2D%aVAm? ze0SSdLqh{ZB^COg2Z3!n)opXx-oatIIq;)z*6!|Ze0)48+m=589Ng~(<=+<>!aD>0 zJYjBbj(R2g{R{D2hOWk$jw*+~d^~=^H{IjoGV8oBkLH;tH(%ql^9~LU=v3(F=u%pw zw>LM_Qd2K7*n+UKf;P2`jYl)&{dg4oJy%9WwsQ6l4jv-8(+8w^ec$DT4kViJ_zkn2!cvEn=@5aRk#~54b1Ff7t z0Mr89@e2qnSt9WlzJLEN<1qu*@(Kt@gKG(@i!@e_yEa>)JeZl7Ozo>WS?A~HgC0D1 zpsRbjSpHNB*H0p_r zf}pPse(pF8z8Xf?ygWWn?!>Y+H#fH&?3!bJi~nRtXC4Ka^Nok8-on?{*UztxXwT2k z*0&Pc(7mt~7!Z)66ws^$hr`9i^-7Hw=I15WVABQ$2EDz#+X2l6h5dbf)r!aNt&vgz zNKlyy)X!M4ke^HVYNw$OF&JiEC7(q-6e@1`{_5i5ShW-L^t*>EqaVwytsA^9ArPAU zI8&yFl-97<8gW-x88dYEz9w5w@LZ9Sx+9nXiVm7R&)}}9X}vQ^(20j}@5{={%ECfj z=~IG&oCnhd32Boa9>*xh)?>O2gVrjvh8NVoq~Rd)9EVlujB0&u|Us%zsk8r`f+ zv_m=5n!Zphm-Lu@2kHnAt;Ub*`|4x&=+UG5_YnzE;DNT4W8K}LBWiPV!=39EM~8Szp|9~E2RKtLlVXptj9_DvVQ86PS!JE4I6=3A&4M7Mpe$<47zKPGw%z)~) z>~G%k^z_uz)6>*^t_hz2v5$hM$HsL$>2hLkb~ax)pWxq%o}T`#*%}Ft zGAXxOTV8}(o3mRVpTGH9KhNNDqBdYUqbpJzr-G%U`@S+hRSgXdZREtXpN&*w6Ses9 zV=k_`s>*^x0;=ckqrDOT#zNFj3t`g|!zt6%(Xs#Q0TX?MY7RR)yB>lS++1o*N>=#n z)xeL_gtNGfRoolORGc?CEy$2tU2T}7*U{Y#8ctYVKK(Fv18~I>b6W%k@HilWve-73 ze~Qv4W@dcn&O;xcpzUD|T_&cP+lGcDkmJnK$p@_J!+mGzgHI^rzxd16);1_On2l?# zZZ?GT!iDjc&=#r`oP&cyxUBm)j|M;P$o;`owp%Os@nR@v%cNq@!_ZN`S`7a8LipIz9wz=v9 z27}==pQzG8W#P1QxH7Be03hejpEKm>Ay^_od+FVRTBoyH{ofD>3a`58AQ_CuCOF|6 z*{u-Rg&o3D1HJ1)Np33tqbbnEKG|Uw6D#lO=>hOBHEvoQhM*Z`9zr;=x0he5s9JgG`U#IZOhT2@DJb33xLbK@cCz(gvUubn3>&hS(Vf_o;f7{c4VE z>k(4$&!0biH)gnDu&z&@A4nvPn>R~*t4(i;9|`_nBO^v;W@#^8P*zqrd3Z8YQ^&`~ z7WXv?1VV0ZF3^(6i3wL7nOWKD>S~bkImV|7JR2mGGI?cZmn#&4_Ud|Q0h4$yj}%r` zRsxYvN`i&+70A^o4uNcjhCZTeIAR2m$i{+#9<MDgo0W>G$I%Z?nNbPF)H`RW-23(#3{f_jJnIINCEwN~*%FR`MJ)9yl$Q^T4Nr~s& zIlG$4peAE{1$%XUy{w#E>VP9wEqAUvE-ofUPJ{*9-t*NTNOI+G?N zA|e1yZ>bMfY;Fdm|GQU;-l5;!{$7eEW2xIM~eG9FTqg+;>x97^eLKJG<$` zWmQ$x!A!+p+e;)Ok@#zGgPECmW3p~26(@fDJGt0IBbJN0zcqC9Q(QG>882U|Wffwh zqk}+O%XiX4ly}06gYwPD%#4iE!otYt=r?|Mg_Ec#fDDfrf>!*O?QKb|_57ewRSeuUm7jqio}OIF7wz20F!dKzlEA4-Q{+2bj;7q<-dHHI5gw|EE$-c`<+qe_4V}u z0U}sM$uTStv>HY`_r2c29rzDz?I?A5L;uFcMqtRN2;UR}cT394hsgT=3PJwdQ;dxL zfiCacNTZ{>l=l(C!@~e_DLVOpUvQcoBRoQEnJ3vqxsX0R&ZOq#!3=o}?H}%)RjqJA zL1SQ)$m9k%M+FHdpaDA=J9ZM~?d=^J+Ol+0(7IKT=`NV>;$rm&PRU%nKZ zlsCdzJw@bC#_8hI)6yh3VvcOL#V2QX_xUX0I;j5aEB=UMV}|~$jGc>%2yCZ> zn1aq)r9Xw3AOvU!c;~>cy@>$r@+*4~i`CODq1y-^;w#6%0nyPZ-{m^f21iUv$Ullj6(EH;V2Q8<(0n47*Em z06(CeXHZN&ckY~z9T2C`(BA-D;1f0I9Vy}%)D6_r>D$iEZOx;Vl9q<_o@Y`y)0ZSN zw?#cXJiK@B9!sPe=nmvf$kevph)I^*(Lsl4C-(HzKbY$R)R3s{;Nr3pr+moH%KEmR zW^Ld8y+QD%TTl?8pa608>Qz3z$K7*lQw`Pc-pyRXLG{WdHm!wi?d^a^EV(;BJ2*IW zc69+{cXf8g#Kp--N`iUGb%roben3+%0KRKC@)7WH%gpSoHQ$-3`Uep|oTOSocQ~k6 zThFdfH?_C5$#Uri1pMsjc}{kR^)Wd5t+T=aKWg8)b&iDv)UCa}{o1u_oSdANEGHiS z0#j!k?%%i;QEh&o6f7YjvAMNXV^(_eb!2R;=#?u~69b2rh2P}o12-xyBg4r=zva82 zK}$LGjABxF2DAj!6F|Y%&Tb)4|M%+nwSaaobna8PT)^2*Twb4QFf=w!0uE_%lJore z#LUdY0hw7(S+2jIQ4vlPr*CN~lH7NRMa$Oqb32B)bl2I8O~(>C?D zq>|F%`~Vm>by27UIMKddT}C>+^yA8s+t0$;E>`J9pGFGB#_#!)fMh!c3YY2o$K5@H zgX`<-KpyB+{2v{NJ){POpis;tjq;C}Cr{|;>5ItAQ&Sd4tOHu{?%h?}@v(q{M!rR97Xn`I@!0byiYR z*HHoTy z3)Ffwl6Ka575t3?X{qa~ Jm8sf<{|jPR@`eBa diff --git a/ophyd/_images/inheritance-e074d941bae841f54e92991832d2f65c1d96eaa0.png.map b/ophyd/_images/inheritance-e074d941bae841f54e92991832d2f65c1d96eaa0.png.map deleted file mode 100644 index 1352472e81..0000000000 --- a/ophyd/_images/inheritance-e074d941bae841f54e92991832d2f65c1d96eaa0.png.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/ophyd/_modules/index.html b/ophyd/_modules/index.html deleted file mode 100644 index 194e9973b9..0000000000 --- a/ophyd/_modules/index.html +++ /dev/null @@ -1,211 +0,0 @@ - - - - - - - - - - - Overview: module code — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

- - - - -
- - - - - - -
-
- - - - - - -
-
    -
  • Docs »
  • - -
  • Overview: module code
  • -
  • - - - -
  • -
-
-
- -
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/areadetector/base.html b/ophyd/_modules/ophyd/areadetector/base.html deleted file mode 100644 index 2574e69ca2..0000000000 --- a/ophyd/_modules/ophyd/areadetector/base.html +++ /dev/null @@ -1,351 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.base — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.areadetector.base

-import textwrap
-import inspect
-import re
-import sys
-from collections import OrderedDict
-
-from ..signal import EpicsSignal
-from . import docs
-from ..device import (Device, Component)
-
-
-class EpicsSignalWithRBV(EpicsSignal):
-    # An EPICS signal that simply uses the areaDetector convention of
-    # 'pvname' being the setpoint and 'pvname_RBV' being the read-back
-
-    def __init__(self, prefix, **kwargs):
-        super().__init__(prefix + '_RBV', write_pv=prefix, **kwargs)
-
-
-class ADComponent(Component):
-    def __init__(self, cls, suffix, **kwargs):
-        super().__init__(cls, suffix, lazy=True, **kwargs)
-
-    def find_docs(self, parent_class):
-        '''Find all the documentation related to this class, all the way up the
-        MRO'''
-
-        classes = inspect.getmro(parent_class)
-        for class_ in classes:
-            try:
-                html_file = class_._html_docs
-            except AttributeError:
-                continue
-
-            for fn in html_file:
-                if fn in docs.docs:
-                    yield docs.docs[fn]
-
-    def make_docstring(self, parent_class):
-        '''Create a docstring for the component, given the parent class'''
-        def make_codeblock(s):
-            '''Make a codeblock that will render nicely in sphinx'''
-            block = ['AreaDetector Component',
-                     '::',
-                     '',
-                     ]
-
-            lines = s.split('\n', 1)
-            header, lines = lines[0], lines[1:]
-
-            block.append(textwrap.indent(textwrap.dedent(header),
-                                         prefix=' ' * 4))
-
-            lines = '\n'.join(lines)
-            block.append(textwrap.indent(textwrap.dedent(lines),
-                                         prefix=' ' * 4))
-            block.append('')
-            return '\n'.join(block)
-
-        suffixes = [self.suffix]
-
-        if self.suffix.endswith('_RBV'):
-            suffixes.append(self.suffix[:-4])
-
-        for doc in self.find_docs(parent_class):
-            for suffix in suffixes:
-                try:
-                    return make_codeblock(doc[suffix])
-                except KeyError:
-                    pass
-
-        return super().make_docstring(parent_class)
-
-
-def ad_group(cls, attr_suffix, **kwargs):
-    '''Definition creation for groups of signals in areadetectors'''
-    defn = OrderedDict()
-    for attr, suffix in attr_suffix:
-        defn[attr] = (cls, suffix, kwargs)
-    return defn
-
-
-class ADBase(Device):
-    '''The AreaDetector base class
-
-    This serves as the base for all detectors and plugins
-    '''
-
-    _html_docs = ['areaDetectorDoc.html']
-
-    def find_signal(self, text, use_re=False, case_sensitive=False,
-                    match_fcn=None, f=sys.stdout):
-        '''Search through the signal docs on this detector for the string text
-
-        Parameters
-        ----------
-        text : str
-            Text to find
-        use_re : bool, optional
-            Use regular expressions
-        case_sensitive : bool, optional
-            Case sensitive search
-        match_fcn : callable, optional
-            Function to call when matches are found Defaults to a function that
-            prints matches to f
-        f : file-like, optional
-            File-like object that the default match function prints to
-            (Defaults to sys.stdout)
-        '''
-        # TODO: Some docstrings change based on the detector type,
-        #       showing different options than are available in
-        #       the base area detector class (for example). As such,
-        #       instead of using the current docstrings, this grabs
-        #       them again.
-
-        def default_match(attr, signal, doc):
-            print('Property: {}'.format(attr), file=f)
-            print('  Signal: {!r}'.format(signal), file=f)
-            print('     Doc: {}'.format(doc), file=f)
-            print(file=f)
-
-        if match_fcn is None:
-            match_fcn = default_match
-
-        if use_re:
-            flags = re.MULTILINE
-            if not case_sensitive:
-                flags |= re.IGNORECASE
-
-            regex = re.compile(text, flags=flags)
-
-        elif not case_sensitive:
-            text = text.lower()
-
-        for attr, cpt in self._sig_attrs.items():
-            doc = cpt.make_docstring(self.__class__)
-
-            match = False
-            if use_re:
-                if regex.search(doc):
-                    match = True
-            else:
-                if not case_sensitive:
-                    if text in doc.lower():
-                        match = True
-                elif text in doc:
-                    match = True
-
-            if match:
-                match_fcn(attr=attr, signal=getattr(self, attr), doc=doc)
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/areadetector/cam.html b/ophyd/_modules/ophyd/areadetector/cam.html deleted file mode 100644 index a3a71b41ac..0000000000 --- a/ophyd/_modules/ophyd/areadetector/cam.html +++ /dev/null @@ -1,843 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.cam — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.areadetector.cam

-import logging
-
-from ..utils import enum
-from .base import (ADBase, ADComponent as C, ad_group,
-                   EpicsSignalWithRBV as SignalWithRBV)
-from ..signal import (EpicsSignalRO, EpicsSignal)
-from ..device import DynamicDeviceComponent as DDC
-
-logger = logging.getLogger(__name__)
-
-
-__all__ = ['CamBase',
-           'AdscDetectorCam',
-           'Andor3DetectorCam',
-           'AndorDetectorCam',
-           'BrukerDetectorCam',
-           'FirewireLinDetectorCam',
-           'FirewireWinDetectorCam',
-           'LightFieldDetectorCam',
-           'Mar345DetectorCam',
-           'MarCCDDetectorCam',
-           'PerkinElmerDetectorCam',
-           'PilatusDetectorCam',
-           'PixiradDetectorCam',
-           'PointGreyDetectorCam',
-           'ProsilicaDetectorCam',
-           'PSLDetectorCam',
-           'PvcamDetectorCam',
-           'RoperDetectorCam',
-           'SimDetectorCam',
-           'URLDetectorCam',
-           ]
-
-
-
[docs]class CamBase(ADBase): - ImageMode = enum(SINGLE=0, MULTIPLE=1, CONTINUOUS=2) - - # Shared among all cams and plugins - array_counter = C(SignalWithRBV, 'ArrayCounter') - array_rate = C(EpicsSignalRO, 'ArrayRate_RBV') - asyn_io = C(EpicsSignal, 'AsynIO') - - nd_attributes_file = C(EpicsSignal, 'NDAttributesFile', string=True) - pool_alloc_buffers = C(EpicsSignalRO, 'PoolAllocBuffers') - pool_free_buffers = C(EpicsSignalRO, 'PoolFreeBuffers') - pool_max_buffers = C(EpicsSignalRO, 'PoolMaxBuffers') - pool_max_mem = C(EpicsSignalRO, 'PoolMaxMem') - pool_used_buffers = C(EpicsSignalRO, 'PoolUsedBuffers') - pool_used_mem = C(EpicsSignalRO, 'PoolUsedMem') - port_name = C(EpicsSignalRO, 'PortName_RBV', string=True) - - # Cam-specific - acquire = C(SignalWithRBV, 'Acquire') - acquire_period = C(SignalWithRBV, 'AcquirePeriod') - acquire_time = C(SignalWithRBV, 'AcquireTime') - - array_callbacks = C(SignalWithRBV, 'ArrayCallbacks') - array_size = DDC(ad_group(EpicsSignalRO, - (('array_size_x', 'ArraySizeX_RBV'), - ('array_size_y', 'ArraySizeY_RBV'), - ('array_size_z', 'ArraySizeZ_RBV'))), - doc='Size of the array in the XYZ dimensions') - - array_size_bytes = C(EpicsSignalRO, 'ArraySize_RBV') - bin_x = C(SignalWithRBV, 'BinX') - bin_y = C(SignalWithRBV, 'BinY') - color_mode = C(SignalWithRBV, 'ColorMode') - data_type = C(SignalWithRBV, 'DataType') - detector_state = C(EpicsSignalRO, 'DetectorState_RBV') - frame_type = C(SignalWithRBV, 'FrameType') - gain = C(SignalWithRBV, 'Gain') - - image_mode = C(SignalWithRBV, 'ImageMode') - manufacturer = C(EpicsSignalRO, 'Manufacturer_RBV') - - max_size = DDC(ad_group(EpicsSignalRO, - (('max_size_x', 'MaxSizeX_RBV'), - ('max_size_y', 'MaxSizeY_RBV'))), - doc='Maximum sensor size in the XY directions') - - min_x = C(SignalWithRBV, 'MinX') - min_y = C(SignalWithRBV, 'MinY') - model = C(EpicsSignalRO, 'Model_RBV') - - num_exposures = C(SignalWithRBV, 'NumExposures') - num_exposures_counter = C(EpicsSignalRO, 'NumExposuresCounter_RBV') - num_images = C(SignalWithRBV, 'NumImages') - num_images_counter = C(EpicsSignalRO, 'NumImagesCounter_RBV') - - read_status = C(EpicsSignal, 'ReadStatus') - reverse = DDC(ad_group(SignalWithRBV, - (('reverse_x', 'ReverseX'), - ('reverse_y', 'ReverseY')) - )) - - shutter_close_delay = C(SignalWithRBV, 'ShutterCloseDelay') - shutter_close_epics = C(EpicsSignal, 'ShutterCloseEPICS') - shutter_control = C(SignalWithRBV, 'ShutterControl') - shutter_control_epics = C(EpicsSignal, 'ShutterControlEPICS') - shutter_fanout = C(EpicsSignal, 'ShutterFanout') - shutter_mode = C(SignalWithRBV, 'ShutterMode') - shutter_open_delay = C(SignalWithRBV, 'ShutterOpenDelay') - shutter_open_epics = C(EpicsSignal, 'ShutterOpenEPICS') - shutter_status_epics = C(EpicsSignalRO, 'ShutterStatusEPICS_RBV') - shutter_status = C(EpicsSignalRO, 'ShutterStatus_RBV') - - size = DDC(ad_group(SignalWithRBV, - (('size_x', 'SizeX'), - ('size_y', 'SizeY')) - )) - - status_message = C(EpicsSignalRO, 'StatusMessage_RBV', string=True) - string_from_server = C(EpicsSignalRO, 'StringFromServer_RBV', string=True) - string_to_server = C(EpicsSignalRO, 'StringToServer_RBV', string=True) - temperature = C(SignalWithRBV, 'Temperature') - temperature_actual = C(EpicsSignal, 'TemperatureActual') - time_remaining = C(EpicsSignalRO, 'TimeRemaining_RBV') - trigger_mode = C(SignalWithRBV, 'TriggerMode')
- - -class AreaDetectorCam(CamBase): - pass - - -
[docs]class SimDetectorCam(CamBase): - _html_docs = ['simDetectorDoc.html'] - gain_rgb = DDC(ad_group(SignalWithRBV, - (('gain_red', 'GainRed'), - ('gain_green', 'GainGreen'), - ('gain_blue', 'GainBlue'))), - doc='Gain rgb components') - gain_xy = DDC(ad_group(SignalWithRBV, - (('gain_x', 'GainX'), - ('gain_y', 'GainY'))), - doc='Gain in XY') - - noise = C(SignalWithRBV, 'Noise') - peak_num = DDC(ad_group(SignalWithRBV, - (('peak_num_x', 'PeakNumX'), - ('peak_num_y', 'PeakNumY'))), - doc='Peak number in XY') - - peak_start = DDC(ad_group(SignalWithRBV, - (('peak_start_x', 'PeakStartX'), - ('peak_start_y', 'PeakStartY'))), - doc='Peak start in XY') - - peak_step = DDC(ad_group(SignalWithRBV, - (('peak_step_x', 'PeakStepX'), - ('peak_step_y', 'PeakStepY'))), - doc='Peak step in XY') - - peak_variation = C(SignalWithRBV, 'PeakVariation') - peak_width = DDC(ad_group(SignalWithRBV, - (('peak_width_x', 'PeakWidthX'), - ('peak_width_y', 'PeakWidthY'))), - doc='Peak width in XY') - - reset = C(SignalWithRBV, 'Reset') - sim_mode = C(SignalWithRBV, 'SimMode')
- - -
[docs]class AdscDetectorCam(CamBase): - _html_docs = ['adscDoc.html'] - adsc_2theta = C(SignalWithRBV, 'ADSC2Theta') - adsc_adc = C(SignalWithRBV, 'ADSCAdc') - adsc_axis = C(SignalWithRBV, 'ADSCAxis') - adsc_beam_x = C(SignalWithRBV, 'ADSCBeamX') - adsc_beam_y = C(SignalWithRBV, 'ADSCBeamY') - adsc_dezingr = C(SignalWithRBV, 'ADSCDezingr') - adsc_distance = C(SignalWithRBV, 'ADSCDistnce') - adsc_im_width = C(SignalWithRBV, 'ADSCImWidth') - adsc_im_xform = C(SignalWithRBV, 'ADSCImXform') - adsc_kappa = C(SignalWithRBV, 'ADSCKappa') - adsc_last_error = C(EpicsSignal, 'ADSCLastError') - adsc_last_image = C(EpicsSignal, 'ADSCLastImage') - adsc_omega = C(SignalWithRBV, 'ADSCOmega') - adsc_phi = C(SignalWithRBV, 'ADSCPhi') - adsc_raw = C(SignalWithRBV, 'ADSCRaw') - adsc_read_conditn = C(EpicsSignal, 'ADSCReadConditn') - adsc_reus_drk = C(SignalWithRBV, 'ADSCReusDrk') - adsc_soft_reset = C(EpicsSignal, 'ADSCSoftReset') - adsc_state = C(EpicsSignal, 'ADSCState') - adsc_status = C(EpicsSignal, 'ADSCStatus') - adsc_stp_ex_retry_count = C(EpicsSignal, 'ADSCStpExRtryCt') - adsc_str_drks = C(SignalWithRBV, 'ADSCStrDrks') - adsc_wavelen = C(SignalWithRBV, 'ADSCWavelen') - - bin_x_changed = C(EpicsSignal, 'BinXChanged') - bin_y_changed = C(EpicsSignal, 'BinYChanged') - ext_trig_ctl = C(EpicsSignal, 'ExSwTrCtl') - ext_trig_ctl_rsp = C(EpicsSignal, 'ExSwTrCtlRsp') - ext_trig_ok_to_exp = C(EpicsSignal, 'ExSwTrOkToExp')
- - -
[docs]class AndorDetectorCam(CamBase): - _html_docs = ['andorDoc.html'] - andor_adc_speed = C(SignalWithRBV, 'AndorADCSpeed') - andor_accumulate_period = C(SignalWithRBV, 'AndorAccumulatePeriod') - andor_cooler = C(SignalWithRBV, 'AndorCooler') - andor_message = C(EpicsSignalRO, 'AndorMessage_RBV') - andor_pre_amp_gain = C(SignalWithRBV, 'AndorPreAmpGain') - andor_shutter_ex_ttl = C(EpicsSignal, 'AndorShutterExTTL') - andor_shutter_mode = C(EpicsSignal, 'AndorShutterMode') - andor_temp_status = C(EpicsSignalRO, 'AndorTempStatus_RBV') - file_format = C(SignalWithRBV, 'FileFormat') - pal_file_path = C(SignalWithRBV, 'PALFilePath')
- - -
[docs]class Andor3DetectorCam(CamBase): - _html_docs = ['andor3Doc.html'] - a3_binning = C(SignalWithRBV, 'A3Binning') - a3_shutter_mode = C(SignalWithRBV, 'A3ShutterMode') - controller_id = C(EpicsSignal, 'ControllerID') - fan_speed = C(SignalWithRBV, 'FanSpeed') - firmware_version = C(EpicsSignal, 'FirmwareVersion') - frame_rate = C(SignalWithRBV, 'FrameRate') - full_aoic_ontrol = C(EpicsSignal, 'FullAOIControl') - noise_filter = C(SignalWithRBV, 'NoiseFilter') - overlap = C(SignalWithRBV, 'Overlap') - pixel_encoding = C(SignalWithRBV, 'PixelEncoding') - pre_amp_gain = C(SignalWithRBV, 'PreAmpGain') - readout_rate = C(SignalWithRBV, 'ReadoutRate') - readout_time = C(EpicsSignal, 'ReadoutTime') - sensor_cooling = C(SignalWithRBV, 'SensorCooling') - serial_number = C(EpicsSignal, 'SerialNumber') - software_trigger = C(EpicsSignal, 'SoftwareTrigger') - software_version = C(EpicsSignal, 'SoftwareVersion') - temp_control = C(SignalWithRBV, 'TempControl') - temp_status = C(EpicsSignalRO, 'TempStatus_RBV') - transfer_rate = C(EpicsSignal, 'TransferRate')
- - -
[docs]class BrukerDetectorCam(CamBase): - _html_docs = ['BrukerDoc.html'] - bis_asyn = C(EpicsSignal, 'BISAsyn') - bis_status = C(EpicsSignal, 'BISStatus') - file_format = C(SignalWithRBV, 'FileFormat') - num_darks = C(SignalWithRBV, 'NumDarks') - read_sfrm_timeout = C(EpicsSignal, 'ReadSFRMTimeout')
- - -
[docs]class FirewireLinDetectorCam(CamBase): - _html_docs = [] - - bandwidth = C(EpicsSignal, 'BANDWIDTH') - fanout_disable = C(EpicsSignal, 'FanoutDis') - framerate_max = C(SignalWithRBV, 'FR') - is_fixed_mode = C(EpicsSignal, 'IsFixedMode') - video_mode = C(EpicsSignal, 'VIDEOMODE')
- - -
[docs]class FirewireWinDetectorCam(CamBase): - _html_docs = ['FirewireWinDoc.html'] - colorcode = C(SignalWithRBV, 'COLORCODE') - current_colorcode = C(EpicsSignal, 'CURRENT_COLORCODE') - current_format = C(EpicsSignal, 'CURRENT_FORMAT') - current_mode = C(EpicsSignal, 'CURRENT_MODE') - current_rate = C(EpicsSignal, 'CURRENT_RATE') - dropped_frames = C(SignalWithRBV, 'DROPPED_FRAMES') - format_ = C(SignalWithRBV, 'FORMAT') - frame_rate = C(SignalWithRBV, 'FR') - mode = C(SignalWithRBV, 'MODE') - readout_time = C(SignalWithRBV, 'READOUT_TIME')
- - -
[docs]class LightFieldDetectorCam(CamBase): - _html_docs = ['LightFieldDoc.html'] - - aux_delay = C(SignalWithRBV, 'LFAuxDelay') - aux_width = C(SignalWithRBV, 'LFAuxWidth') - background_enable = C(SignalWithRBV, 'LFBackgroundEnable') - background_file = C(SignalWithRBV, 'LFBackgroundFile') - background_full_file = C(EpicsSignalRO, 'LFBackgroundFullFile_RBV') - background_path = C(SignalWithRBV, 'LFBackgroundPath') - entrance_width = C(SignalWithRBV, 'LFEntranceWidth') - exit_port = C(SignalWithRBV, 'LFExitPort') - experiment_name = C(SignalWithRBV, 'LFExperimentName') - file_name = C(EpicsSignalRO, 'LFFileName_RBV') - file_path = C(EpicsSignalRO, 'LFFilePath_RBV') - lf_gain = C(SignalWithRBV, 'LFGain') - gating_mode = C(SignalWithRBV, 'LFGatingMode') - grating = C(SignalWithRBV, 'LFGrating') - grating_wavelength = C(SignalWithRBV, 'LFGratingWavelength') - image_mode = C(SignalWithRBV, 'ImageMode') - intensifier_enable = C(SignalWithRBV, 'LFIntensifierEnable') - intensifier_gain = C(SignalWithRBV, 'LFIntensifierGain') - num_accumulations = C(SignalWithRBV, 'NumAccumulations') - ready_to_run = C(EpicsSignal, 'LFReadyToRun') - rep_gate_delay = C(SignalWithRBV, 'LFRepGateDelay') - rep_gate_width = C(SignalWithRBV, 'LFRepGateWidth') - seq_end_gate_delay = C(SignalWithRBV, 'LFSeqEndGateDelay') - seq_end_gate_width = C(SignalWithRBV, 'LFSeqEndGateWidth') - seq_start_gate_delay = C(SignalWithRBV, 'LFSeqStartGateDelay') - seq_start_gate_width = C(SignalWithRBV, 'LFSeqStartGateWidth') - lf_shutter_mode = C(SignalWithRBV, 'LFShutterMode') - sync_master2_delay = C(SignalWithRBV, 'LFSyncMaster2Delay') - sync_master_enable = C(SignalWithRBV, 'LFSyncMasterEnable') - trigger_frequency = C(SignalWithRBV, 'LFTriggerFrequency') - update_experiments = C(EpicsSignal, 'LFUpdateExperiments')
- - -
[docs]class Mar345DetectorCam(CamBase): - _html_docs = ['Mar345Doc.html'] - abort = C(SignalWithRBV, 'Abort') - change_mode = C(SignalWithRBV, 'ChangeMode') - erase = C(SignalWithRBV, 'Erase') - erase_mode = C(SignalWithRBV, 'EraseMode') - file_format = C(SignalWithRBV, 'FileFormat') - num_erase = C(SignalWithRBV, 'NumErase') - num_erased = C(EpicsSignalRO, 'NumErased_RBV') - scan_resolution = C(SignalWithRBV, 'ScanResolution') - scan_size = C(SignalWithRBV, 'ScanSize') - mar_server_asyn = C(EpicsSignal, 'marServerAsyn')
- - -
[docs]class MarCCDDetectorCam(CamBase): - _html_docs = ['MarCCDDoc.html'] - beam_x = C(EpicsSignal, 'BeamX') - beam_y = C(EpicsSignal, 'BeamY') - dataset_comments = C(EpicsSignal, 'DatasetComments') - detector_distance = C(EpicsSignal, 'DetectorDistance') - file_comments = C(EpicsSignal, 'FileComments') - file_format = C(SignalWithRBV, 'FileFormat') - frame_shift = C(SignalWithRBV, 'FrameShift') - mar_acquire_status = C(EpicsSignalRO, 'MarAcquireStatus_RBV') - mar_correct_status = C(EpicsSignalRO, 'MarCorrectStatus_RBV') - mar_dezinger_status = C(EpicsSignalRO, 'MarDezingerStatus_RBV') - mar_readout_status = C(EpicsSignalRO, 'MarReadoutStatus_RBV') - mar_state = C(EpicsSignalRO, 'MarState_RBV') - mar_status = C(EpicsSignalRO, 'MarStatus_RBV') - mar_writing_status = C(EpicsSignalRO, 'MarWritingStatus_RBV') - overlap_mode = C(SignalWithRBV, 'OverlapMode') - read_tiff_timeout = C(EpicsSignal, 'ReadTiffTimeout') - rotation_axis = C(EpicsSignal, 'RotationAxis') - rotation_range = C(EpicsSignal, 'RotationRange') - stability = C(SignalWithRBV, 'Stability') - start_phi = C(EpicsSignal, 'StartPhi') - two_theta = C(EpicsSignal, 'TwoTheta') - wavelength = C(EpicsSignal, 'Wavelength') - mar_server_asyn = C(EpicsSignal, 'marServerAsyn')
- - -
[docs]class PerkinElmerDetectorCam(CamBase): - _html_docs = ['PerkinElmerDoc.html'] - pe_acquire_gain = C(EpicsSignal, 'PEAcquireGain') - pe_acquire_offset = C(EpicsSignal, 'PEAcquireOffset') - pe_corrections_dir = C(EpicsSignal, 'PECorrectionsDir') - pe_current_gain_frame = C(EpicsSignal, 'PECurrentGainFrame') - pe_current_offset_frame = C(EpicsSignal, 'PECurrentOffsetFrame') - pe_dwell_time = C(SignalWithRBV, 'PEDwellTime') - pe_frame_buff_index = C(EpicsSignal, 'PEFrameBuffIndex') - pe_gain = C(SignalWithRBV, 'PEGain') - pe_gain_available = C(EpicsSignal, 'PEGainAvailable') - pe_gain_file = C(EpicsSignal, 'PEGainFile') - pe_image_number = C(EpicsSignal, 'PEImageNumber') - pe_initialize = C(EpicsSignal, 'PEInitialize') - pe_load_gain_file = C(EpicsSignal, 'PELoadGainFile') - pe_load_pixel_correction = C(EpicsSignal, 'PELoadPixelCorrection') - pe_num_frame_buffers = C(SignalWithRBV, 'PENumFrameBuffers') - pe_num_frames_to_skip = C(SignalWithRBV, 'PENumFramesToSkip') - pe_num_gain_frames = C(EpicsSignal, 'PENumGainFrames') - pe_num_offset_frames = C(EpicsSignal, 'PENumOffsetFrames') - pe_offset_available = C(EpicsSignal, 'PEOffsetAvailable') - pe_pixel_correction_available = C(EpicsSignal, - 'PEPixelCorrectionAvailable') - pe_pixel_correction_file = C(EpicsSignal, 'PEPixelCorrectionFile') - pe_save_gain_file = C(EpicsSignal, 'PESaveGainFile') - pe_skip_frames = C(SignalWithRBV, 'PESkipFrames') - pe_sync_time = C(SignalWithRBV, 'PESyncTime') - pe_system_id = C(EpicsSignal, 'PESystemID') - pe_trigger = C(EpicsSignal, 'PETrigger') - pe_use_gain = C(EpicsSignal, 'PEUseGain') - pe_use_offset = C(EpicsSignal, 'PEUseOffset') - pe_use_pixel_correction = C(EpicsSignal, 'PEUsePixelCorrection')
- - -
[docs]class PSLDetectorCam(CamBase): - _html_docs = ['PSLDoc.html'] - file_format = C(SignalWithRBV, 'FileFormat') - tiff_comment = C(SignalWithRBV, 'TIFFComment')
- - -
[docs]class PilatusDetectorCam(CamBase): - _html_docs = ['pilatusDoc.html'] - alpha = C(EpicsSignal, 'Alpha') - angle_incr = C(EpicsSignal, 'AngleIncr') - armed = C(EpicsSignal, 'Armed') - bad_pixel_file = C(EpicsSignal, 'BadPixelFile') - beam_x = C(EpicsSignal, 'BeamX') - beam_y = C(EpicsSignal, 'BeamY') - camserver_asyn = C(EpicsSignal, 'CamserverAsyn') - cbf_template_file = C(EpicsSignal, 'CbfTemplateFile') - chi = C(EpicsSignal, 'Chi') - delay_time = C(SignalWithRBV, 'DelayTime') - det_2theta = C(EpicsSignal, 'Det2theta') - det_dist = C(EpicsSignal, 'DetDist') - det_v_offset = C(EpicsSignal, 'DetVOffset') - energy_high = C(EpicsSignal, 'EnergyHigh') - energy_low = C(EpicsSignal, 'EnergyLow') - file_format = C(SignalWithRBV, 'FileFormat') - filter_transm = C(EpicsSignal, 'FilterTransm') - flat_field_file = C(EpicsSignal, 'FlatFieldFile') - flat_field_valid = C(EpicsSignal, 'FlatFieldValid') - flux = C(EpicsSignal, 'Flux') - gain_menu = C(EpicsSignal, 'GainMenu') - gap_fill = C(SignalWithRBV, 'GapFill') - header_string = C(EpicsSignal, 'HeaderString') - humid0 = C(EpicsSignalRO, 'Humid0_RBV') - humid1 = C(EpicsSignalRO, 'Humid1_RBV') - humid2 = C(EpicsSignalRO, 'Humid2_RBV') - image_file_tmot = C(EpicsSignal, 'ImageFileTmot') - kappa = C(EpicsSignal, 'Kappa') - min_flat_field = C(SignalWithRBV, 'MinFlatField') - num_bad_pixels = C(EpicsSignal, 'NumBadPixels') - num_oscill = C(EpicsSignal, 'NumOscill') - oscill_axis = C(EpicsSignal, 'OscillAxis') - phi = C(EpicsSignal, 'Phi') - pixel_cut_off = C(EpicsSignalRO, 'PixelCutOff_RBV') - polarization = C(EpicsSignal, 'Polarization') - start_angle = C(EpicsSignal, 'StartAngle') - tvx_version = C(EpicsSignalRO, 'TVXVersion_RBV') - temp0 = C(EpicsSignalRO, 'Temp0_RBV') - temp1 = C(EpicsSignalRO, 'Temp1_RBV') - temp2 = C(EpicsSignalRO, 'Temp2_RBV') - threshold_apply = C(EpicsSignal, 'ThresholdApply') - threshold_auto_apply = C(SignalWithRBV, 'ThresholdAutoApply') - threshold_energy = C(SignalWithRBV, 'ThresholdEnergy') - wavelength = C(EpicsSignal, 'Wavelength')
- - -
[docs]class PixiradDetectorCam(CamBase): - _html_docs = ['PixiradDoc.html'] - - auto_calibrate = C(EpicsSignal, 'AutoCalibrate') - humidity_box = C(EpicsSignalRO, 'BoxHumidity_RBV') - colors_collected = C(EpicsSignalRO, 'ColorsCollected_RBV') - cooling_state = C(SignalWithRBV, 'CoolingState') - cooling_status = C(EpicsSignalRO, 'CoolingStatus_RBV') - dew_point = C(EpicsSignalRO, 'DewPoint_RBV') - frame_type = C(SignalWithRBV, 'FrameType') - hv_actual = C(EpicsSignalRO, 'HVActual_RBV') - hv_current = C(EpicsSignalRO, 'HVCurrent_RBV') - hv_mode = C(SignalWithRBV, 'HVMode') - hv_state = C(SignalWithRBV, 'HVState') - hv_value = C(SignalWithRBV, 'HVValue') - peltier_power = C(EpicsSignalRO, 'PeltierPower_RBV') - sync_in_polarity = C(SignalWithRBV, 'SyncInPolarity') - sync_out_function = C(SignalWithRBV, 'SyncOutFunction') - sync_out_polarity = C(SignalWithRBV, 'SyncOutPolarity') - system_reset = C(EpicsSignal, 'SystemReset') - - temperature = C(SignalWithRBV, 'Temperature') - temperature_actual = C(EpicsSignal, 'TemperatureActual') - temperature_box = C(EpicsSignalRO, 'BoxTemperature_RBV') - temperature_hot = C(EpicsSignalRO, 'HotTemperature_RBV') - - threshold_1_actual = C(EpicsSignalRO, 'ThresholdActual1_RBV') - threshold_2_actual = C(EpicsSignalRO, 'ThresholdActual2_RBV') - threshold_3_actual = C(EpicsSignalRO, 'ThresholdActual3_RBV') - threshold_4_actual = C(EpicsSignalRO, 'ThresholdActual4_RBV') - thresholds_actual = DDC(ad_group(EpicsSignalRO, - (('threshold_1', 'ThresholdActual1_RBV'), - ('threshold_2', 'ThresholdActual2_RBV'), - ('threshold_3', 'ThresholdActual3_RBV'), - ('threshold_4', 'ThresholdActual4_RBV'), - )), - doc='Actual thresholds') - - threshold_1 = C(SignalWithRBV, 'Threshold1') - threshold_2 = C(SignalWithRBV, 'Threshold2') - threshold_3 = C(SignalWithRBV, 'Threshold3') - threshold_4 = C(SignalWithRBV, 'Threshold4') - thresholds = DDC(ad_group(SignalWithRBV, - (('threshold_1', 'Threshold1'), - ('threshold_2', 'Threshold2'), - ('threshold_3', 'Threshold3'), - ('threshold_4', 'Threshold4'), - )), - doc='Thresholds') - - udp_buffers_free = C(EpicsSignalRO, 'UDPBuffersFree_RBV') - udp_buffers_max = C(EpicsSignalRO, 'UDPBuffersMax_RBV') - udp_buffers_read = C(EpicsSignalRO, 'UDPBuffersRead_RBV') - udp_speed = C(EpicsSignalRO, 'UDPSpeed_RBV')
- - -
[docs]class PointGreyDetectorCam(CamBase): - _html_docs = ['PointGreyDoc.html'] - - bandwidth = C(EpicsSignal, 'Bandwidth') - binning_mode = C(SignalWithRBV, 'BinningMode') - convert_pixel_format = C(SignalWithRBV, 'ConvertPixelFormat') - corrupt_frames = C(EpicsSignalRO, 'CorruptFrames_RBV') - driver_dropped = C(EpicsSignalRO, 'DriverDropped_RBV') - dropped_frames = C(EpicsSignalRO, 'DroppedFrames_RBV') - firmware_version = C(EpicsSignal, 'FirmwareVersion') - format7_mode = C(SignalWithRBV, 'Format7Mode') - frame_rate = C(SignalWithRBV, 'FrameRate') - max_packet_size = C(EpicsSignal, 'MaxPacketSize') - packet_delay_actual = C(EpicsSignal, 'PacketDelayActual') - packet_delay = C(SignalWithRBV, 'PacketDelay') - packet_size_actual = C(EpicsSignal, 'PacketSizeActual') - packet_size = C(SignalWithRBV, 'PacketSize') - pixel_format = C(SignalWithRBV, 'PixelFormat') - read_status = C(EpicsSignal, 'ReadStatus') - serial_number = C(EpicsSignal, 'SerialNumber') - skip_frames = C(SignalWithRBV, 'SkipFrames') - software_trigger = C(EpicsSignal, 'SoftwareTrigger') - software_version = C(EpicsSignal, 'SoftwareVersion') - strobe_delay = C(SignalWithRBV, 'StrobeDelay') - strobe_duration = C(SignalWithRBV, 'StrobeDuration') - strobe_enable = C(SignalWithRBV, 'StrobeEnable') - strobe_polarity = C(SignalWithRBV, 'StrobePolarity') - strobe_source = C(SignalWithRBV, 'StrobeSource') - time_stamp_mode = C(SignalWithRBV, 'TimeStampMode') - transmit_failed = C(EpicsSignalRO, 'TransmitFailed_RBV') - trigger_polarity = C(SignalWithRBV, 'TriggerPolarity') - trigger_source = C(SignalWithRBV, 'TriggerSource') - video_mode = C(SignalWithRBV, 'VideoMode')
- - -
[docs]class ProsilicaDetectorCam(CamBase): - _html_docs = ['prosilicaDoc.html'] - ps_bad_frame_counter = C(EpicsSignalRO, 'PSBadFrameCounter_RBV') - ps_byte_rate = C(SignalWithRBV, 'PSByteRate') - ps_driver_type = C(EpicsSignalRO, 'PSDriverType_RBV') - ps_filter_version = C(EpicsSignalRO, 'PSFilterVersion_RBV') - ps_frame_rate = C(EpicsSignalRO, 'PSFrameRate_RBV') - ps_frames_completed = C(EpicsSignalRO, 'PSFramesCompleted_RBV') - ps_frames_dropped = C(EpicsSignalRO, 'PSFramesDropped_RBV') - ps_packet_size = C(EpicsSignalRO, 'PSPacketSize_RBV') - ps_packets_erroneous = C(EpicsSignalRO, 'PSPacketsErroneous_RBV') - ps_packets_missed = C(EpicsSignalRO, 'PSPacketsMissed_RBV') - ps_packets_received = C(EpicsSignalRO, 'PSPacketsReceived_RBV') - ps_packets_requested = C(EpicsSignalRO, 'PSPacketsRequested_RBV') - ps_packets_resent = C(EpicsSignalRO, 'PSPacketsResent_RBV') - ps_read_statistics = C(EpicsSignal, 'PSReadStatistics') - ps_reset_timer = C(EpicsSignal, 'PSResetTimer') - ps_timestamp_type = C(SignalWithRBV, 'PSTimestampType') - strobe1_ctl_duration = C(SignalWithRBV, 'Strobe1CtlDuration') - strobe1_delay = C(SignalWithRBV, 'Strobe1Delay') - strobe1_duration = C(SignalWithRBV, 'Strobe1Duration') - strobe1_mode = C(SignalWithRBV, 'Strobe1Mode') - sync_in1_level = C(EpicsSignalRO, 'SyncIn1Level_RBV') - sync_in2_level = C(EpicsSignalRO, 'SyncIn2Level_RBV') - sync_out1_invert = C(SignalWithRBV, 'SyncOut1Invert') - sync_out1_level = C(SignalWithRBV, 'SyncOut1Level') - sync_out1_mode = C(SignalWithRBV, 'SyncOut1Mode') - sync_out2_invert = C(SignalWithRBV, 'SyncOut2Invert') - sync_out2_level = C(SignalWithRBV, 'SyncOut2Level') - sync_out2_mode = C(SignalWithRBV, 'SyncOut2Mode') - sync_out3_invert = C(SignalWithRBV, 'SyncOut3Invert') - sync_out3_level = C(SignalWithRBV, 'SyncOut3Level') - sync_out3_mode = C(SignalWithRBV, 'SyncOut3Mode') - trigger_delay = C(SignalWithRBV, 'TriggerDelay') - trigger_event = C(SignalWithRBV, 'TriggerEvent') - trigger_overlap = C(SignalWithRBV, 'TriggerOverlap') - trigger_software = C(EpicsSignal, 'TriggerSoftware')
- - -
[docs]class PvcamDetectorCam(CamBase): - _html_docs = ['pvcamDoc.html'] - bit_depth = C(EpicsSignalRO, 'BitDepth_RBV') - camera_firmware_vers = C(EpicsSignalRO, 'CameraFirmwareVers_RBV') - chip_height = C(EpicsSignalRO, 'ChipHeight_RBV') - chip_name = C(EpicsSignalRO, 'ChipName_RBV') - chip_width = C(EpicsSignalRO, 'ChipWidth_RBV') - close_delay = C(SignalWithRBV, 'CloseDelay') - detector_mode = C(SignalWithRBV, 'DetectorMode') - detector_selected = C(SignalWithRBV, 'DetectorSelected') - dev_drv_vers = C(EpicsSignalRO, 'DevDrvVers_RBV') - frame_transfer_capable = C(EpicsSignalRO, 'FrameTransferCapable_RBV') - full_well_capacity = C(EpicsSignalRO, 'FullWellCapacity_RBV') - gain_index = C(SignalWithRBV, 'GainIndex') - head_ser_num = C(EpicsSignalRO, 'HeadSerNum_RBV') - initialize = C(SignalWithRBV, 'Initialize') - max_gain_index = C(EpicsSignalRO, 'MaxGainIndex_RBV') - max_set_temperature = C(EpicsSignal, 'MaxSetTemperature') - max_shutter_close_delay = C(EpicsSignalRO, 'MaxShutterCloseDelay_RBV') - max_shutter_open_delay = C(EpicsSignalRO, 'MaxShutterOpenDelay_RBV') - measured_temperature = C(EpicsSignalRO, 'MeasuredTemperature_RBV') - min_set_temperature = C(EpicsSignal, 'MinSetTemperature') - min_shutter_close_delay = C(EpicsSignalRO, 'MinShutterCloseDelay_RBV') - min_shutter_open_delay = C(EpicsSignalRO, 'MinShutterOpenDelay_RBV') - num_parallel_pixels = C(EpicsSignalRO, 'NumParallelPixels_RBV') - num_ports = C(EpicsSignalRO, 'NumPorts_RBV') - num_serial_pixels = C(EpicsSignalRO, 'NumSerialPixels_RBV') - num_speed_table_entries = C(EpicsSignalRO, 'NumSpeedTableEntries_RBV') - open_delay = C(SignalWithRBV, 'OpenDelay') - pcifw_vers = C(EpicsSignalRO, 'PCIFWVers_RBV') - pv_cam_vers = C(EpicsSignalRO, 'PVCamVers_RBV') - pixel_parallel_dist = C(EpicsSignalRO, 'PixelParallelDist_RBV') - pixel_parallel_size = C(EpicsSignalRO, 'PixelParallelSize_RBV') - pixel_serial_dist = C(EpicsSignalRO, 'PixelSerialDist_RBV') - pixel_serial_size = C(EpicsSignalRO, 'PixelSerialSize_RBV') - pixel_time = C(EpicsSignalRO, 'PixelTime_RBV') - post_mask = C(EpicsSignalRO, 'PostMask_RBV') - post_scan = C(EpicsSignalRO, 'PostScan_RBV') - pre_mask = C(EpicsSignalRO, 'PreMask_RBV') - pre_scan = C(EpicsSignalRO, 'PreScan_RBV') - serial_num = C(EpicsSignalRO, 'SerialNum_RBV') - set_temperature = C(SignalWithRBV, 'SetTemperature') - slot1_cam = C(EpicsSignalRO, 'Slot1Cam_RBV') - slot2_cam = C(EpicsSignalRO, 'Slot2Cam_RBV') - slot3_cam = C(EpicsSignalRO, 'Slot3Cam_RBV') - speed_table_index = C(SignalWithRBV, 'SpeedTableIndex') - trigger_edge = C(SignalWithRBV, 'TriggerEdge')
- - -
[docs]class RoperDetectorCam(CamBase): - _html_docs = ['RoperDoc.html'] - auto_data_type = C(SignalWithRBV, 'AutoDataType') - comment1 = C(SignalWithRBV, 'Comment1') - comment2 = C(SignalWithRBV, 'Comment2') - comment3 = C(SignalWithRBV, 'Comment3') - comment4 = C(SignalWithRBV, 'Comment4') - comment5 = C(SignalWithRBV, 'Comment5') - file_format = C(SignalWithRBV, 'FileFormat') - num_acquisitions = C(SignalWithRBV, 'NumAcquisitions') - num_acquisitions_counter = C(EpicsSignalRO, 'NumAcquisitionsCounter_RBV') - roper_shutter_mode = C(SignalWithRBV, 'RoperShutterMode')
- - -
[docs]class URLDetectorCam(CamBase): - _html_docs = ['URLDoc.html'] - urls = DDC(ad_group(EpicsSignal, - (('url_1', 'URL1'), - ('url_2', 'URL2'), - ('url_3', 'URL3'), - ('url_4', 'URL4'), - ('url_5', 'URL5'), - ('url_6', 'URL6'), - ('url_7', 'URL7'), - ('url_8', 'URL8'), - ('url_9', 'URL9'), - ('url_10', 'URL10'))), - doc='URLs') - - url_select = C(EpicsSignal, 'URLSelect') - url_seq = C(EpicsSignal, 'URLSeq') - url = C(EpicsSignalRO, 'URL_RBV')
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/areadetector/detectors.html b/ophyd/_modules/ophyd/areadetector/detectors.html deleted file mode 100644 index f83fea6a9c..0000000000 --- a/ophyd/_modules/ophyd/areadetector/detectors.html +++ /dev/null @@ -1,363 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.detectors — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
-
    -
  • Docs »
  • - -
  • Module code »
  • - -
  • ophyd.areadetector.detectors
  • -
  • - - - -
  • -
-
-
-
-
- -

Source code for ophyd.areadetector.detectors

-# vi: ts=4 sw=4
-'''
-:mod:`ophyd.control.areadetector` - areaDetector
-================================================
-
-.. module:: ophyd.areadetector.detectors
- :synopsis:  `areaDetector`_ detector abstractions
-
-.. _areaDetector: http://cars.uchicago.edu/software/epics/areaDetector.html
-'''
-
-from .base import (ADBase, ADComponent as C)
-from . import cam
-
-
-__all__ = ['DetectorBase',
-           'AreaDetector',
-           'AdscDetector',
-           'Andor3Detector',
-           'AndorDetector',
-           'BrukerDetector',
-           'FirewireLinDetector',
-           'FirewireWinDetector',
-           'LightFieldDetector',
-           'Mar345Detector',
-           'MarCCDDetector',
-           'PerkinElmerDetector',
-           'PilatusDetector',
-           'PixiradDetector',
-           'PointGreyDetector',
-           'ProsilicaDetector',
-           'PSLDetector',
-           'PvcamDetector',
-           'RoperDetector',
-           'SimDetector',
-           'URLDetector',
-           ]
-
-
-class DetectorBase(ADBase):
-    """
-    The base class for the hardware-specific classes that follow.
-
-    Note that Plugin also inherits from ADBase.
-    This adds some AD-specific methods that are not shared by the plugins.
-    """
-    def dispatch(self, key, timestamp):
-        """When a new acquisition is finished, this method is called with a
-        key which is a label like 'light', 'dark', or 'gain8'.
-
-        It in turn calls all of the file plugins and makes them insert a
-        datum into FileStore.
-        """
-        file_plugins = [s for s in self._signals.values() if
-                        hasattr(s, 'generate_datum')]
-        for p in file_plugins:
-            p.generate_datum(key, timestamp)
-
-    def make_data_key(self):
-        source = 'PV:{}'.format(self.prefix)
-        shape = tuple(self.cam.array_size.get())
-        return dict(shape=shape, source=source, dtype='array',
-                    external='FILESTORE:')
-
-
-
[docs]class AreaDetector(DetectorBase): - cam = C(cam.AreaDetectorCam, 'cam1:')
- - -
[docs]class SimDetector(DetectorBase): - _html_docs = ['simDetectorDoc.html'] - cam = C(cam.SimDetectorCam, 'cam1:')
- - -
[docs]class AdscDetector(DetectorBase): - _html_docs = ['adscDoc.html'] - cam = C(cam.AdscDetectorCam, 'cam1:')
- - -
[docs]class AndorDetector(DetectorBase): - _html_docs = ['andorDoc.html'] - cam = C(cam.AndorDetectorCam, 'cam1:')
- - -
[docs]class Andor3Detector(DetectorBase): - _html_docs = ['andor3Doc.html'] - cam = C(cam.Andor3DetectorCam, 'cam1:')
- - -
[docs]class BrukerDetector(DetectorBase): - _html_docs = ['BrukerDoc.html'] - cam = C(cam.Andor3DetectorCam, 'cam1:')
- - -
[docs]class FirewireLinDetector(DetectorBase): - _html_docs = ['FirewireWinDoc.html'] - cam = C(cam.FirewireLinDetectorCam, 'cam1:')
- - -
[docs]class FirewireWinDetector(DetectorBase): - _html_docs = ['FirewireWinDoc.html'] - cam = C(cam.FirewireWinDetectorCam, 'cam1:')
- - -
[docs]class LightFieldDetector(DetectorBase): - _html_docs = ['LightFieldDoc.html'] - cam = C(cam.LightFieldDetectorCam, 'cam1:')
- - -
[docs]class Mar345Detector(DetectorBase): - _html_docs = ['Mar345Doc.html'] - cam = C(cam.Mar345DetectorCam, 'cam1:')
- - -
[docs]class MarCCDDetector(DetectorBase): - _html_docs = ['MarCCDDoc.html'] - cam = C(cam.MarCCDDetectorCam, 'cam1:')
- - -
[docs]class PerkinElmerDetector(DetectorBase): - _html_docs = ['PerkinElmerDoc.html'] - cam = C(cam.LightFieldDetectorCam, 'cam1:')
- - -
[docs]class PSLDetector(DetectorBase): - _html_docs = ['PSLDoc.html'] - cam = C(cam.PSLDetectorCam, 'cam1:')
- - -
[docs]class PilatusDetector(DetectorBase): - _html_docs = ['pilatusDoc.html'] - cam = C(cam.PilatusDetectorCam, 'cam1:')
- - -
[docs]class PixiradDetector(DetectorBase): - _html_docs = ['PixiradDoc.html'] - cam = C(cam.PixiradDetectorCam, 'cam1:')
- - -
[docs]class PointGreyDetector(DetectorBase): - _html_docs = ['PointGreyDoc.html'] - cam = C(cam.PointGreyDetectorCam, 'cam1:')
- - -
[docs]class ProsilicaDetector(DetectorBase): - _html_docs = ['prosilicaDoc.html'] - cam = C(cam.ProsilicaDetectorCam, 'cam1:')
- - -
[docs]class PvcamDetector(DetectorBase): - _html_docs = ['pvcamDoc.html'] - cam = C(cam.PvcamDetectorCam, 'cam1:')
- - -
[docs]class RoperDetector(DetectorBase): - _html_docs = ['RoperDoc.html'] - cam = C(cam.RoperDetectorCam, 'cam1:')
- - -
[docs]class URLDetector(DetectorBase): - _html_docs = ['URLDoc.html'] - cam = C(cam.URLDetectorCam, 'cam1:')
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/areadetector/plugins.html b/ophyd/_modules/ophyd/areadetector/plugins.html deleted file mode 100644 index 514f4e3448..0000000000 --- a/ophyd/_modules/ophyd/areadetector/plugins.html +++ /dev/null @@ -1,979 +0,0 @@ - - - - - - - - - - - ophyd.areadetector.plugins — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.areadetector.plugins

-# vi: ts=4 sw=4
-'''
-:mod:`ophyd.control.areadetector.plugins` - areaDetector plugins
-======================================================
-
-.. module:: ophyd.control.areadetector.plugins
- :synopsis:  `areaDetector`_ plugin abstractions
-
-.. _areaDetector: http://cars.uchicago.edu/software/epics/areaDetector.html
-'''
-
-
-import re
-import time as ttime
-import logging
-from collections import OrderedDict
-import numpy as np
-
-import epics
-
-from .base import (ADBase, ADComponent as C, ad_group,
-                   EpicsSignalWithRBV as SignalWithRBV)
-from ..signal import (EpicsSignalRO, EpicsSignal)
-from ..device import DynamicDeviceComponent as DDC, GenerateDatumInterface
-from ..utils import enum, set_and_wait
-
-
-logger = logging.getLogger(__name__)
-__all__ = ['ColorConvPlugin',
-           'FilePlugin',
-           'HDF5Plugin',
-           'ImagePlugin',
-           'JPEGPlugin',
-           'MagickPlugin',
-           'NetCDFPlugin',
-           'NexusPlugin',
-           'OverlayPlugin',
-           'ProcessPlugin',
-           'ROIPlugin',
-           'StatsPlugin',
-           'TIFFPlugin',
-           'TransformPlugin',
-
-           'get_areadetector_plugin',
-           'plugin_from_pvname',
-           'register_plugin',
-           ]
-
-
-_plugin_class = {}
-
-
-def register_plugin(cls):
-    '''Register a plugin'''
-    global _plugin_class
-
-    _plugin_class[cls._plugin_type] = cls
-
-
-
[docs]class PluginBase(ADBase): - '''AreaDetector plugin base class''' - def __init__(self, *args, **kwargs): - # Turn array callbacks on during staging. - # Without this, no array data is sent to the plugins. - super().__init__(*args, **kwargs) - - if self.parent is not None and hasattr(self.parent, 'cam'): - self.stage_sigs.update([(self.parent.cam.array_callbacks, 1), - ]) - - _html_docs = ['pluginDoc.html'] - _plugin_type = None - _suffix_re = None - - array_counter = C(SignalWithRBV, 'ArrayCounter') - array_rate = C(EpicsSignalRO, 'ArrayRate_RBV') - asyn_io = C(EpicsSignal, 'AsynIO') - - nd_attributes_file = C(EpicsSignal, 'NDAttributesFile', string=True) - pool_alloc_buffers = C(EpicsSignalRO, 'PoolAllocBuffers') - pool_free_buffers = C(EpicsSignalRO, 'PoolFreeBuffers') - pool_max_buffers = C(EpicsSignalRO, 'PoolMaxBuffers') - pool_max_mem = C(EpicsSignalRO, 'PoolMaxMem') - pool_used_buffers = C(EpicsSignalRO, 'PoolUsedBuffers') - pool_used_mem = C(EpicsSignalRO, 'PoolUsedMem') - port_name = C(EpicsSignalRO, 'PortName_RBV', string=True) - - def stage(self): - # Ensure the plugin is enabled. We do not disable it on unstage. - set_and_wait(self.enable, 'Enable') - super().stage() - - @property - def array_pixels(self): - '''The total number of pixels, calculated from array_size''' - - array_size = self.array_size.get() - dimensions = self.ndimensions.get() - - if dimensions == 0: - return 0 - - pixels = array_size[0] - for dim in array_size[1:dimensions]: - pixels *= dim - - return pixels - - width = C(EpicsSignalRO, 'ArraySize0_RBV') - height = C(EpicsSignalRO, 'ArraySize1_RBV') - depth = C(EpicsSignalRO, 'ArraySize2_RBV') - array_size = DDC(ad_group(EpicsSignalRO, - (('height', 'ArraySize1_RBV'), - ('width', 'ArraySize0_RBV'), - ('depth', 'ArraySize2_RBV'))), - doc='The array size') - - bayer_pattern = C(EpicsSignalRO, 'BayerPattern_RBV') - blocking_callbacks = C(SignalWithRBV, 'BlockingCallbacks') - color_mode = C(EpicsSignalRO, 'ColorMode_RBV') - data_type = C(EpicsSignalRO, 'DataType_RBV') - - dim0_sa = C(EpicsSignal, 'Dim0SA') - dim1_sa = C(EpicsSignal, 'Dim1SA') - dim2_sa = C(EpicsSignal, 'Dim2SA') - dim_sa = DDC(ad_group(EpicsSignal, - (('dim0', 'Dim0SA'), - ('dim1', 'Dim1SA'), - ('dim2', 'Dim2SA'))), - doc='Dimension sub-arrays') - - dimensions = C(EpicsSignalRO, 'Dimensions_RBV') - dropped_arrays = C(SignalWithRBV, 'DroppedArrays') - enable = C(SignalWithRBV, 'EnableCallbacks') - min_callback_time = C(SignalWithRBV, 'MinCallbackTime') - nd_array_address = C(SignalWithRBV, 'NDArrayAddress') - nd_array_port = C(SignalWithRBV, 'NDArrayPort') - ndimensions = C(EpicsSignalRO, 'NDimensions_RBV') - plugin_type = C(EpicsSignalRO, 'PluginType_RBV') - - queue_free = C(EpicsSignal, 'QueueFree') - queue_free_low = C(EpicsSignal, 'QueueFreeLow') - queue_size = C(EpicsSignal, 'QueueSize') - queue_use = C(EpicsSignal, 'QueueUse') - queue_use_high = C(EpicsSignal, 'QueueUseHIGH') - queue_use_hihi = C(EpicsSignal, 'QueueUseHIHI') - time_stamp = C(EpicsSignalRO, 'TimeStamp_RBV') - unique_id = C(EpicsSignalRO, 'UniqueId_RBV')
- - -
[docs]class ImagePlugin(PluginBase): - _default_suffix = 'image1:' - _suffix_re = 'image\d:' - _html_docs = ['NDPluginStdArrays.html'] - _plugin_type = 'NDPluginStdArrays' - - array_data = C(EpicsSignal, 'ArrayData') - - @property - def image(self): - array_size = self.array_size.get() - if array_size == [0, 0, 0]: - raise RuntimeError('Invalid image; ensure array_callbacks are on') - - if array_size[-1] == 0: - array_size = array_size[:-1] - - pixel_count = self.array_pixels - image = self.array_data.get(count=pixel_count) - return np.array(image).reshape(array_size)
- - -
[docs]class StatsPlugin(PluginBase): - _default_suffix = 'Stats1:' - _suffix_re = 'Stats\d:' - _html_docs = ['NDPluginStats.html'] - _plugin_type = 'NDPluginStats' - - bgd_width = C(SignalWithRBV, 'BgdWidth') - centroid_threshold = C(SignalWithRBV, 'CentroidThreshold') - - centroid = DDC(ad_group(EpicsSignalRO, - (('x', 'CentroidX_RBV'), - ('y', 'CentroidY_RBV'))), - doc='The centroid XY') - - compute_centroid = C(SignalWithRBV, 'ComputeCentroid') - compute_histogram = C(SignalWithRBV, 'ComputeHistogram') - compute_profiles = C(SignalWithRBV, 'ComputeProfiles') - compute_statistics = C(SignalWithRBV, 'ComputeStatistics') - - cursor = DDC(ad_group(SignalWithRBV, - (('x', 'CursorX'), - ('y', 'CursorY'))), - doc='The cursor XY') - - hist_entropy = C(EpicsSignalRO, 'HistEntropy_RBV') - hist_max = C(SignalWithRBV, 'HistMax') - hist_min = C(SignalWithRBV, 'HistMin') - hist_size = C(SignalWithRBV, 'HistSize') - histogram = C(EpicsSignalRO, 'Histogram_RBV') - - max_size = DDC(ad_group(EpicsSignal, - (('x', 'MaxSizeX'), - ('y', 'MaxSizeY'))), - doc='The maximum size in XY') - - max_value = C(EpicsSignalRO, 'MaxValue_RBV') - max_xy = DDC(ad_group(EpicsSignalRO, - (('x', 'MaxX_RBV'), - ('y', 'MaxY_RBV'))), - doc='Maximum in XY') - - mean_value = C(EpicsSignalRO, 'MeanValue_RBV') - min_value = C(EpicsSignalRO, 'MinValue_RBV') - - min_xy = DDC(ad_group(EpicsSignalRO, - (('x', 'MinX_RBV'), - ('y', 'MinY_RBV'))), - doc='Minimum in XY') - - net = C(EpicsSignalRO, 'Net_RBV') - profile_average = DDC(ad_group(EpicsSignalRO, - (('x', 'ProfileAverageX_RBV'), - ('y', 'ProfileAverageY_RBV'))), - doc='Profile average in XY') - - profile_centroid = DDC(ad_group(EpicsSignalRO, - (('x', 'ProfileCentroidX_RBV'), - ('y', 'ProfileCentroidY_RBV'))), - doc='Profile centroid in XY') - - profile_cursor = DDC(ad_group(EpicsSignalRO, - (('x', 'ProfileCursorX_RBV'), - ('y', 'ProfileCursorY_RBV'))), - doc='Profile cursor in XY') - - profile_size = DDC(ad_group(EpicsSignalRO, - (('x', 'ProfileSizeX_RBV'), - ('y', 'ProfileSizeY_RBV'))), - doc='Profile size in XY') - - profile_threshold = DDC(ad_group(EpicsSignalRO, - (('x', 'ProfileThresholdX_RBV'), - ('y', 'ProfileThresholdY_RBV'))), - doc='Profile threshold in XY') - - set_xhopr = C(EpicsSignal, 'SetXHOPR') - set_yhopr = C(EpicsSignal, 'SetYHOPR') - sigma_xy = C(EpicsSignalRO, 'SigmaXY_RBV') - sigma_x = C(EpicsSignalRO, 'SigmaX_RBV') - sigma_y = C(EpicsSignalRO, 'SigmaY_RBV') - sigma = C(EpicsSignalRO, 'Sigma_RBV') - ts_acquiring = C(EpicsSignal, 'TSAcquiring') - - ts_centroid = DDC(ad_group(EpicsSignal, - (('x', 'TSCentroidX'), - ('y', 'TSCentroidY'))), - doc='Time series centroid in XY') - - ts_control = C(EpicsSignal, 'TSControl') - ts_current_point = C(EpicsSignal, 'TSCurrentPoint') - ts_max_value = C(EpicsSignal, 'TSMaxValue') - - ts_max = DDC(ad_group(EpicsSignal, - (('x', 'TSMaxX'), - ('y', 'TSMaxY'))), - doc='Time series maximum in XY') - - ts_mean_value = C(EpicsSignal, 'TSMeanValue') - ts_min_value = C(EpicsSignal, 'TSMinValue') - - ts_min = DDC(ad_group(EpicsSignal, - (('x', 'TSMinX'), - ('y', 'TSMinY'))), - doc='Time series minimum in XY') - - ts_net = C(EpicsSignal, 'TSNet') - ts_num_points = C(EpicsSignal, 'TSNumPoints') - ts_read = C(EpicsSignal, 'TSRead') - ts_sigma = C(EpicsSignal, 'TSSigma') - ts_sigma_x = C(EpicsSignal, 'TSSigmaX') - ts_sigma_xy = C(EpicsSignal, 'TSSigmaXY') - ts_sigma_y = C(EpicsSignal, 'TSSigmaY') - ts_total = C(EpicsSignal, 'TSTotal') - total = C(EpicsSignalRO, 'Total_RBV')
- - -
[docs]class ColorConvPlugin(PluginBase): - _default_suffix = 'CC1:' - _suffix_re = 'CC\d:' - _html_docs = ['NDPluginColorConvert.html'] - _plugin_type = 'NDPluginColorConvert' - - color_mode_out = C(SignalWithRBV, 'ColorModeOut') - false_color = C(SignalWithRBV, 'FalseColor')
- - -
[docs]class ProcessPlugin(PluginBase): - _default_suffix = 'Proc1:' - _suffix_re = 'Proc\d:' - _html_docs = ['NDPluginProcess.html'] - _plugin_type = 'NDPluginProcess' - - auto_offset_scale = C(EpicsSignal, 'AutoOffsetScale') - auto_reset_filter = C(SignalWithRBV, 'AutoResetFilter') - average_seq = C(EpicsSignal, 'AverageSeq') - copy_to_filter_seq = C(EpicsSignal, 'CopyToFilterSeq') - data_type_out = C(SignalWithRBV, 'DataTypeOut') - difference_seq = C(EpicsSignal, 'DifferenceSeq') - enable_background = C(SignalWithRBV, 'EnableBackground') - enable_filter = C(SignalWithRBV, 'EnableFilter') - enable_flat_field = C(SignalWithRBV, 'EnableFlatField') - enable_high_clip = C(SignalWithRBV, 'EnableHighClip') - enable_low_clip = C(SignalWithRBV, 'EnableLowClip') - enable_offset_scale = C(SignalWithRBV, 'EnableOffsetScale') - - fc = DDC(ad_group(SignalWithRBV, - (('fc1', 'FC1'), - ('fc2', 'FC2'), - ('fc3', 'FC3'), - ('fc4', 'FC4'))), - doc='Filter coefficients') - - foffset = C(SignalWithRBV, 'FOffset') - fscale = C(SignalWithRBV, 'FScale') - filter_callbacks = C(SignalWithRBV, 'FilterCallbacks') - filter_type = C(EpicsSignal, 'FilterType') - filter_type_seq = C(EpicsSignal, 'FilterTypeSeq') - high_clip = C(SignalWithRBV, 'HighClip') - low_clip = C(SignalWithRBV, 'LowClip') - num_filter = C(SignalWithRBV, 'NumFilter') - num_filter_recip = C(EpicsSignal, 'NumFilterRecip') - num_filtered = C(EpicsSignalRO, 'NumFiltered_RBV') - - oc = DDC(ad_group(SignalWithRBV, - (('oc1', 'OC1'), - ('oc2', 'OC2'), - ('oc3', 'OC3'), - ('oc4', 'OC4'))), - doc='Output coefficients') - - o_offset = C(SignalWithRBV, 'OOffset') - o_scale = C(SignalWithRBV, 'OScale') - offset = C(SignalWithRBV, 'Offset') - - rc = DDC(ad_group(SignalWithRBV, - (('rc1', 'RC1'), - ('rc2', 'RC2'))), - doc='Filter coefficients') - - roffset = C(SignalWithRBV, 'ROffset') - recursive_ave_diff_seq = C(EpicsSignal, 'RecursiveAveDiffSeq') - recursive_ave_seq = C(EpicsSignal, 'RecursiveAveSeq') - reset_filter = C(SignalWithRBV, 'ResetFilter') - save_background = C(SignalWithRBV, 'SaveBackground') - save_flat_field = C(SignalWithRBV, 'SaveFlatField') - scale = C(SignalWithRBV, 'Scale') - scale_flat_field = C(SignalWithRBV, 'ScaleFlatField') - sum_seq = C(EpicsSignal, 'SumSeq') - valid_background = C(EpicsSignalRO, 'ValidBackground_RBV') - valid_flat_field = C(EpicsSignalRO, 'ValidFlatField_RBV')
- - -class Overlay(ADBase): - _html_docs = ['NDPluginOverlay.html'] - - blue = C(SignalWithRBV, 'Blue') - draw_mode = C(SignalWithRBV, 'DrawMode') - green = C(SignalWithRBV, 'Green') - max_size_x = C(EpicsSignal, 'MaxSizeX') - max_size_y = C(EpicsSignal, 'MaxSizeY') - overlay_portname = C(SignalWithRBV, 'Name') - - position_x = C(SignalWithRBV, 'PositionX') - position_y = C(SignalWithRBV, 'PositionY') - - position_xlink = C(EpicsSignal, 'PositionXLink') - position_ylink = C(EpicsSignal, 'PositionYLink') - - red = C(SignalWithRBV, 'Red') - set_xhopr = C(EpicsSignal, 'SetXHOPR') - set_yhopr = C(EpicsSignal, 'SetYHOPR') - shape = C(SignalWithRBV, 'Shape') - - size_x = C(SignalWithRBV, 'SizeX') - size_y = C(SignalWithRBV, 'SizeY') - - size_xlink = C(EpicsSignal, 'SizeXLink') - size_ylink = C(EpicsSignal, 'SizeYLink') - use = C(SignalWithRBV, 'Use') - - -
[docs]class OverlayPlugin(PluginBase): - '''Plugin which adds graphics overlays to an NDArray image - - Keyword arguments are passed to the base class, PluginBase - - Parameters - ---------- - prefix : str - The areaDetector plugin prefix - ''' - _default_suffix = 'Over1:' - _suffix_re = 'Over\d:' - _html_docs = ['NDPluginOverlay.html'] - _plugin_type = 'NDPluginOverlay' - - max_size = DDC(ad_group(EpicsSignalRO, - (('x', 'MaxSizeX_RBV'), - ('y', 'MaxSizeY_RBV'))), - doc='The maximum size in XY') - - overlay_1 = C(Overlay, '1:') - overlay_2 = C(Overlay, '2:') - overlay_3 = C(Overlay, '3:') - overlay_4 = C(Overlay, '4:') - overlay_5 = C(Overlay, '5:') - overlay_6 = C(Overlay, '6:') - overlay_7 = C(Overlay, '7:') - overlay_8 = C(Overlay, '8:')
- - -
[docs]class ROIPlugin(PluginBase): - _default_suffix = 'ROI1:' - _suffix_re = 'ROI\d:' - _html_docs = ['NDPluginROI.html'] - _plugin_type = 'NDPluginROI' - - array_size = DDC(ad_group(EpicsSignalRO, - (('x', 'ArraySizeX_RBV'), - ('y', 'ArraySizeY_RBV'), - ('z', 'ArraySizeZ_RBV'))), - doc='Size of the ROI data in XYZ') - - auto_size = DDC(ad_group(SignalWithRBV, - (('x', 'AutoSizeX'), - ('y', 'AutoSizeY'), - ('z', 'AutoSizeZ'))), - doc=('Automatically set SizeXYZ to the input array size ' - 'minus MinXYZ')) - - bin_ = DDC(ad_group(SignalWithRBV, - (('x', 'BinX'), - ('y', 'BinY'), - ('z', 'BinZ'))), - doc='Binning in XYZ') - - data_type_out = C(SignalWithRBV, 'DataTypeOut') - enable_scale = C(SignalWithRBV, 'EnableScale') - - roi_enable = DDC(ad_group(SignalWithRBV, - (('x', 'EnableX'), - ('y', 'EnableY'), - ('z', 'EnableZ'))), - doc=('Enable ROI calculations in the X, Y, Z dimensions. ' - 'If not enabled then the start, size, binning, and ' - 'reverse operations are disabled in the X/Y/Z ' - 'dimension, and the values from the input array ' - 'are used.')) - - max_xy = DDC(ad_group(EpicsSignal, - (('x', 'MaxX'), - ('y', 'MaxY'))), - doc='Maximum in XY') - - max_size = DDC(ad_group(EpicsSignalRO, - (('x', 'MaxSizeX_RBV'), - ('y', 'MaxSizeY_RBV'), - ('z', 'MaxSizeZ_RBV'))), - doc='Maximum size of the ROI in XYZ') - - min_xyz = DDC(ad_group(SignalWithRBV, - (('min_x', 'MinX'), - ('min_y', 'MinY'), - ('min_z', 'MinZ'))), - doc='Minimum size of the ROI in XYZ') - - name_ = C(SignalWithRBV, 'Name', doc='ROI name') - reverse = DDC(ad_group(SignalWithRBV, - (('x', 'ReverseX'), - ('y', 'ReverseY'), - ('z', 'ReverseZ'))), - doc='Reverse ROI in the XYZ dimensions. (0=No, 1=Yes)') - - scale = C(SignalWithRBV, 'Scale') - set_xhopr = C(EpicsSignal, 'SetXHOPR') - set_yhopr = C(EpicsSignal, 'SetYHOPR') - - size = DDC(ad_group(SignalWithRBV, - (('x', 'SizeX'), - ('y', 'SizeY'), - ('z', 'SizeZ'))), - doc='Size of the ROI in XYZ') - - size_link = DDC(ad_group(EpicsSignal, - (('x', 'SizeXLink'), - ('y', 'SizeYLink'))), - doc='Size link in XY')
- - -
[docs]class TransformPlugin(PluginBase): - _default_suffix = 'Trans1:' - _suffix_re = 'Trans\d:' - _html_docs = ['NDPluginTransform.html'] - _plugin_type = 'NDPluginTransform' - - width = C(SignalWithRBV, 'ArraySize0') - height = C(SignalWithRBV, 'ArraySize1') - depth = C(SignalWithRBV, 'ArraySize2') - array_size = DDC(ad_group(SignalWithRBV, - (('height', 'ArraySize1'), - ('width', 'ArraySize0'), - ('depth', 'ArraySize2'))), - doc='Array size') - - name_ = C(EpicsSignal, 'Name') - origin_location = C(SignalWithRBV, 'OriginLocation') - t1_max_size = DDC(ad_group(EpicsSignal, - (('size0', 'T1MaxSize0'), - ('size1', 'T1MaxSize1'), - ('size2', 'T1MaxSize2'))), - doc='Transform 1 max size') - - t2_max_size = DDC(ad_group(EpicsSignal, - (('size0', 'T2MaxSize0'), - ('size1', 'T2MaxSize1'), - ('size2', 'T2MaxSize2'))), - doc='Transform 2 max size') - - t3_max_size = DDC(ad_group(EpicsSignal, - (('size0', 'T3MaxSize0'), - ('size1', 'T3MaxSize1'), - ('size2', 'T3MaxSize2'))), - doc='Transform 3 max size') - - t4_max_size = DDC(ad_group(EpicsSignal, - (('size0', 'T4MaxSize0'), - ('size1', 'T4MaxSize1'), - ('size2', 'T4MaxSize2'))), - doc='Transform 4 max size') - - types = DDC(ad_group(EpicsSignal, - (('type1', 'Type1'), - ('type2', 'Type2'), - ('type3', 'Type3'), - ('type4', 'Type4'))), - doc='Transform types')
- - -
[docs]class FilePlugin(PluginBase, GenerateDatumInterface): - _default_suffix = '' - _html_docs = ['NDPluginFile.html'] - _plugin_type = 'NDPluginFile' - - FileWriteMode = enum(SINGLE=0, CAPTURE=1, STREAM=2) - - auto_increment = C(SignalWithRBV, 'AutoIncrement') - auto_save = C(SignalWithRBV, 'AutoSave') - capture = C(SignalWithRBV, 'Capture') - delete_driver_file = C(SignalWithRBV, 'DeleteDriverFile') - file_format = C(SignalWithRBV, 'FileFormat') - file_name = C(SignalWithRBV, 'FileName', string=True) - file_number = C(SignalWithRBV, 'FileNumber') - file_number_sync = C(EpicsSignal, 'FileNumber_Sync') - file_number_write = C(EpicsSignal, 'FileNumber_write') - file_path = C(SignalWithRBV, 'FilePath', string=True) - file_path_exists = C(EpicsSignalRO, 'FilePathExists_RBV') - file_template = C(SignalWithRBV, 'FileTemplate', string=True) - file_write_mode = C(SignalWithRBV, 'FileWriteMode') - full_file_name = C(EpicsSignalRO, 'FullFileName_RBV', string=True) - num_capture = C(SignalWithRBV, 'NumCapture') - num_captured = C(EpicsSignalRO, 'NumCaptured_RBV') - read_file = C(SignalWithRBV, 'ReadFile') - write_file = C(SignalWithRBV, 'WriteFile') - write_message = C(EpicsSignal, 'WriteMessage', string=True) - write_status = C(EpicsSignal, 'WriteStatus')
- - -
[docs]class NetCDFPlugin(FilePlugin): - _default_suffix = 'netCDF1:' - _suffix_re = 'netCDF\d:' - _html_docs = ['NDFileNetCDF.html'] - _plugin_type = 'NDFileNetCDF'
- - -
[docs]class TIFFPlugin(FilePlugin): - _default_suffix = 'TIFF1:' - _suffix_re = 'TIFF\d:' - _html_docs = ['NDFileTIFF.html'] - _plugin_type = 'NDFileTIFF'
- - -
[docs]class JPEGPlugin(FilePlugin): - _default_suffix = 'JPEG1:' - _suffix_re = 'JPEG\d:' - _html_docs = ['NDFileJPEG.html'] - _plugin_type = 'NDFileJPEG' - - jpeg_quality = C(SignalWithRBV, 'JPEGQuality')
- - -
[docs]class NexusPlugin(FilePlugin): - _default_suffix = 'Nexus1:' - _suffix_re = 'Nexus\d:' - _html_docs = ['NDFileNexus.html'] - # _plugin_type = 'NDPluginFile' # TODO was this ever fixed? - _plugin_type = 'NDPluginNexus' - - file_template_valid = C(EpicsSignal, 'FileTemplateValid') - template_file_name = C(SignalWithRBV, 'TemplateFileName', string=True) - template_file_path = C(SignalWithRBV, 'TemplateFilePath', string=True)
- - -
[docs]class HDF5Plugin(FilePlugin): - _default_suffix = 'HDF1:' - _suffix_re = 'HDF\d:' - _html_docs = ['NDFileHDF5.html'] - _plugin_type = 'NDFileHDF5' - - boundary_align = C(SignalWithRBV, 'BoundaryAlign') - boundary_threshold = C(SignalWithRBV, 'BoundaryThreshold') - compression = C(SignalWithRBV, 'Compression') - data_bits_offset = C(SignalWithRBV, 'DataBitsOffset') - - extra_dim_name = DDC(ad_group(EpicsSignalRO, - (('name_x', 'ExtraDimNameX_RBV'), - ('name_y', 'ExtraDimNameY_RBV'), - ('name_n', 'ExtraDimNameN_RBV'))), - doc='Extra dimension names (XYN)') - extra_dim_size = DDC(ad_group(SignalWithRBV, - (('size_x', 'ExtraDimSizeX'), - ('size_y', 'ExtraDimSizeY'), - ('size_n', 'ExtraDimSizeN'))), - doc='Extra dimension sizes (XYN)') - - io_speed = C(EpicsSignal, 'IOSpeed') - num_col_chunks = C(SignalWithRBV, 'NumColChunks') - num_data_bits = C(SignalWithRBV, 'NumDataBits') - num_extra_dims = C(SignalWithRBV, 'NumExtraDims') - num_frames_chunks = C(SignalWithRBV, 'NumFramesChunks') - num_frames_flush = C(SignalWithRBV, 'NumFramesFlush') - num_row_chunks = C(SignalWithRBV, 'NumRowChunks') - run_time = C(EpicsSignal, 'RunTime') - szip_num_pixels = C(SignalWithRBV, 'SZipNumPixels') - store_attr = C(SignalWithRBV, 'StoreAttr') - store_perform = C(SignalWithRBV, 'StorePerform') - zlevel = C(SignalWithRBV, 'ZLevel') - -
[docs] def warmup(self): - """ - A convenience method for 'priming' the plugin. - - The plugin has to 'see' one acquisition before it is ready to capture. - This sets the array size, etc. - """ - set_and_wait(self.enable, 1) - sigs = OrderedDict([(self.parent.cam.array_callbacks, 1), - (self.parent.cam.image_mode, 'Single'), - (self.parent.cam.trigger_mode, 'Internal'), - # just in case tha acquisition time is set very long... - (self.parent.cam.acquire_time , 1), - (self.parent.cam.acquire_period, 1), - (self.parent.cam.acquire, 1)]) - - original_vals = {sig: sig.get() for sig in sigs} - - for sig, val in sigs.items(): - ttime.sleep(0.1) # abundance of caution - set_and_wait(sig, val) - - ttime.sleep(2) # wait for acquisition - - for sig, val in reversed(list(original_vals.items())): - ttime.sleep(0.1) - set_and_wait(sig, val)
- -
[docs]class MagickPlugin(FilePlugin): - _default_suffix = 'Magick1:' - _suffix_re = 'Magick\d:' - _html_docs = ['NDFileMagick'] # sic., no html extension - _plugin_type = 'NDFileMagick' - - bit_depth = C(SignalWithRBV, 'BitDepth') - compress_type = C(SignalWithRBV, 'CompressType') - quality = C(SignalWithRBV, 'Quality')
- - -# register_plugin(PluginBase) -register_plugin(ImagePlugin) -register_plugin(StatsPlugin) -register_plugin(ColorConvPlugin) -register_plugin(ProcessPlugin) -register_plugin(OverlayPlugin) -register_plugin(ROIPlugin) -register_plugin(TransformPlugin) -# register_plugin(FilePlugin) -register_plugin(NetCDFPlugin) -register_plugin(TIFFPlugin) -register_plugin(JPEGPlugin) -register_plugin(NexusPlugin) -register_plugin(HDF5Plugin) -register_plugin(MagickPlugin) - - -def plugin_from_pvname(pv): - '''Get the plugin class from a pvname, - using regular expressions defined in the classes (_suffix_re). - ''' - global _plugin_class - - for type_, cls in _plugin_class.items(): - m = re.search(cls._suffix_re, pv) - if m: - return cls - - return None - - -def get_areadetector_plugin_class(prefix, timeout=2.0): - '''Get an areadetector plugin class by supplying its PV prefix - - Uses `plugin_from_pvname` first, but falls back on using epics channel - access to determine the plugin type. - - Returns - ------- - plugin : Plugin - The plugin class - - Raises - ------ - ValueError - If the plugin type can't be determined - ''' - cls = plugin_from_pvname(prefix) - if cls is not None: - return cls - - type_rbv = prefix + 'PluginType_RBV' - type_ = epics.caget(type_rbv, timeout=timeout) - - if type_ is None: - raise ValueError('Unable to determine plugin type (caget timed out)') - - # HDF5 includes version number, remove it - type_ = type_.split(' ')[0] - - try: - return _plugin_class[type_] - except KeyError: - raise ValueError('Unable to determine plugin type (PluginType={})' - ''.format(type_)) - - -def get_areadetector_plugin(prefix, **kwargs): - '''Get an instance of an areadetector plugin by supplying its PV prefix - and any kwargs for the constructor. - - Uses `plugin_from_pvname` first, but falls back on using - epics channel access to determine the plugin type. - - Returns - ------- - plugin : Plugin - The plugin instance - - Raises - ------ - ValueError - If the plugin type can't be determined - ''' - - cls = get_areadetector_plugin_class(prefix) - if cls is None: - raise ValueError('Unable to determine plugin type') - - return cls(prefix, **kwargs) -
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/commands.html b/ophyd/_modules/ophyd/commands.html deleted file mode 100644 index 117ff49b6d..0000000000 --- a/ophyd/_modules/ophyd/commands.html +++ /dev/null @@ -1,968 +0,0 @@ - - - - - - - - - - - ophyd.commands — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.commands

-
-"""Command Line Interface to opyd objects"""
-
-
-import time
-import functools
-import sys
-import warnings
-from contextlib import contextmanager, closing
-from operator import attrgetter
-from io import StringIO
-import collections
-
-import IPython
-from IPython.utils.coloransi import TermColors as tc
-
-from epics import caget, caput
-
-from . import (EpicsMotor, PositionerBase, PVPositioner, Device)
-from .utils import DisconnectedError
-from .utils.startup import setup as setup_ophyd
-from prettytable import PrettyTable
-import numpy as np
-
-
-__all__ = ['mov',
-           'movr',
-           'set_pos',
-           'wh_pos',
-           'set_lm',
-           'log_pos',
-           'log_pos_diff',
-           'log_pos_mov',
-           'get_all_positioners',
-           'get_logbook',
-           'setup_ophyd',
-           ]
-
-# Global Defs of certain strings
-
-FMT_LEN = 18
-FMT_PREC = 6
-DISCONNECTED = 'disconnected'
-
-
-def scrape_namespace():
-    """
-    Get all public objects from the user namespace, sorted by name.
-
-    If we are not in an IPython session, warn and return an empty list.
-    """
-    ip = IPython.get_ipython()
-    if ip is None:
-        warnings.warn('Unable to inspect Python global namespace; '
-                      'use IPython to enable these features.')
-        return []
-    else:
-        return [val for var, val in sorted(ip.user_ns.items())
-                if not var.startswith('_')]
-
-
-def instances_from_namespace(classes):
-    '''Get all instances of `classes` from the user namespace
-
-    Parameters
-    ----------
-    classes : type, or sequence of types
-        Passed directly to isinstance(), only instances of these classes
-        will be returned.
-    '''
-    return [val for val in scrape_namespace() if isinstance(val, classes)]
-
-
-def ducks_from_namespace(attr):
-    '''Get all instances that have a given attribute.
-
-    "Ducks" is a reference to "duck-typing." If it looks like a duck....
-
-    Parameters
-    ----------
-    attr : str
-        name of attribute
-    '''
-    return [val for val in scrape_namespace() if hasattr(val, attr)]
-
-
-
[docs]def get_all_positioners(): - '''Get all positioners defined in the IPython namespace''' - devices = instances_from_namespace((Device, PositionerBase)) - positioners = [] - for device in devices: - positioners.extend(_recursive_positioner_search(device)) - return positioners
- - -def _recursive_positioner_search(device): - "Return a flat list the device and any subdevices that can be 'set'." - # TODO Refactor this as a method on Device. - res = [] - - try: - if hasattr(device, 'position'): # duck-typed as a Positioner - res.append(device) - except DisconnectedError: - res.append(device) - - if isinstance(device, Device): # only Devices have `_signals` - for d in device._signals.values(): - if isinstance(d, (Device, PositionerBase)): - res.extend(_recursive_positioner_search(d)) - return res - - -def _normalize_positioners(positioners): - "input normalization used by wh_pos, log_pos, log_pos_mov" - if positioners is None: - # Grab IPython namespace, recursively find Positioners. - res = get_all_positioners() - elif isinstance(positioners, (Device, PositionerBase)): - # Explore children in case this is a composite Device. - res = _recursive_positioner_search(positioners) - else: - # Assume this is a list of Devices. - res = [] - for device in positioners: - if not isinstance(device, (Device, PositionerBase)): - raise TypeError("Input is not a Device: %r" % device) - res.extend(_recursive_positioner_search(device)) - return list(sorted(set(res), key=attrgetter('name'))) - - -def var_from_namespace(var): - ip = IPython.get_ipython() - if ip is not None: - return ip.user_ns[var] - else: - raise RuntimeError('No IPython session') - - -
[docs]def get_logbook(): - '''Get the logbook instance from the user namespace''' - try: - return var_from_namespace('logbook') - except (KeyError, RuntimeError): - return None
- - -def ensure(*ensure_args): - def wrap(f): - @functools.wraps(f) - def wrapper(*args, **kwargs): - # First check if we have an iterable first on the first arg. - # If not, then make these all lists - if len(args) > 0: - if not hasattr(args[0], "__iter__"): - args = tuple([[a] for a in args]) - # Now do type checking ignoring None - for n, (arg, t) in enumerate(zip(args, ensure_args)): - if t is None: - # Ignore when type is specified as None - continue - - invalid = [x for x in arg - if not isinstance(x, t)] - - if invalid: - raise TypeError('Incorrect type in parameter list.\n' - 'Parameter at 0-based position {} must be' - 'an instance of {}'.format(n, t)) - - f(*args, **kwargs) - return wrapper - return wrap - - -@ensure(PositionerBase, None) -
[docs]def mov(positioner, position): - """Move positioners to given positions - - Move positioners using the move method of the Positioner class. - - Parameters - ---------- - positioner : Positioner or list - Positioners to move - position : float or list of float - Values to move positioners to. - - Examples - -------- - Move a single positioner `slt1_xc` to 10:: - - >>>mov(slt1_xc, 10) - - Move positioner `slt1_xg` and `slt1_yg` to 2 and 3 respectively:: - - >>>mov([slt1_xg, slt1_yg], [2, 3]) - """ - - print('\n ', end='') - print(tc.Green, end='') - for p in positioner: - print_string(p.name) - print("\n") - - # Start Moving all Positioners in context manager to catch - # Keyboard interrupts - - # TODO : This should be a utility function - - pos_prec = [] - for p in positioner: - if hasattr(p, 'precision'): - pos_prec.append(p.precision) - else: - pos_prec.append(FMT_PREC) - - with catch_keyboard_interrupt(positioner): - stat = [p.move(v, wait=False) for p, v in - zip(positioner, position)] - - # The loop below ensures that at least a couple prints - # will happen - flag = 0 - done = False - - while not all(s.done for s in stat) or (flag < 2): - print(tc.LightGreen, end='') - print(' ', end='') - for p, prec in zip(positioner, pos_prec): - print_value(p.position, egu=p.egu, prec=prec) - print('\n') - print('\033[2A', end='') - time.sleep(0.01) - done = all(s.done for s in stat) - if done: - flag += 1 - - print(tc.Normal + '\n') - for err in [s for s in stat if not s.success]: - device = err.pos - reason = "Unknown" - if isinstance(device, EpicsMotor): - if device.high_limit_switch.get(): - reason = "Motor reached the high limit switch." - elif device.low_limit_switch.get(): - reason = "Motor reached the low limit switch." - - print('Warning: {} failed to reach the target position. ' - 'Reason: {}'.format(device.name, reason))
- - -@ensure(PositionerBase, None) -
[docs]def movr(positioner, position): - """Move positioners relative to their current positon. - - See Also - -------- - mov : move positioners to an absolute position. - """ - - _start_val = [p.position for p in positioner] - for v in _start_val: - if v is None: - raise IOError("Unable to read motor position for relative move") - - _new_val = [a + b for a, b in zip(_start_val, position)] - mov(positioner, _new_val)
- - -@ensure(PositionerBase, None) -
[docs]def set_lm(positioner, limits): - """Set the limits of the positioner - - Sets the limits of the positioner or list of positioners. For EpicsMotors - the fields .HLM and .LLM are set to the high and low limits respectively. - For PVPositioners the .DRVH and .DRVL fields are set on the setopoint - record. If neither method works then an IOError is raised. - - Parameters - ---------- - positioner : positioner or list of positioners - limits : single or list of tuple of form (+ve, -ve) limits - - Raises - ------ - IOError - If the caput (EPICS put) fails then an IOError is raised. - - Examples - -------- - Set the limits of motor `m1` to (10, -10):: - - >>>set_lm(slt1_xc, (10, -10)) - - Set the limits of motors `m1` and `m2` to (2, -2) and (3, -3) - respectively:: - - >>>set_lm([m1, m2], [[2,-2], [3, -3]]) - """ - - print('') - msg = '' - - high_fields = [] - low_fields = [] - for p in positioner: - if isinstance(p, EpicsMotor): - high_fields.append(p.prefix + '.HLM') - low_fields.append(p.prefix + '.LLM') - elif isinstance(p, PVPositioner): - high_fields.append(p.setpoint_pvname[0] + '.DRVH') - low_fields.append(p.setpoint_pvname[0] + '.DRVL') - else: - raise TypeError("Positioners must be EpicsMotors or PVPositioners" - "to set the limits") - - for p, lim, high_field, low_field in zip(positioner, - limits, - high_fields, low_fields): - lim1 = max(lim) - lim2 = min(lim) - if not caput(high_field, lim1): - raise IOError("Unable to set high limit for {}" - " writing to PV {}.".format(p.name, high_field)) - msg += "Upper limit set to {:.{prec}g} for positioner {}\n".format( - lim1, p.name, prec=FMT_PREC) - - if not caput(low_field, lim2): - raise IOError("Unable to set low limit for {}" - " writing to PV {}.".format(p.name, low_field)) - msg += "Lower limit set to {:.{prec}g} for positioner {}\n".format( - lim2, p.name, prec=FMT_PREC) - - print(msg) - logbook = get_logbook() - if logbook: - logbook.log(msg)
- - -@ensure(PositionerBase, (float, int)) -
[docs]def set_pos(positioner, position): - """Set the position of a positioner - - Set the position of a positioner or positioners to the value position. - This function only works for EpicsMotors (Based on the EPICS Motor Record) - and uses the .OFF field to set the current position to the value passed to - the function. - - Parameters - ---------- - positioner : Positioner or list of positioners. - position : float or list of floats. - New position of positioners - - Raises - ------ - TypeError - If positioner is not an instance of an EpicsMotor. - - Examples - -------- - Set the position of motor m1 to 4:: - - >>>set_pos(m1, 4) - - Set the position of motors m1 and m2 to 1 and 2 respectively:: - - >>>set_pos([m1, m2], [1, 2]) - - Raises: - TypeError: If positioner is not an instance of an EpicsMotor. - """ - for p in positioner: - if not isinstance(p, EpicsMotor): - raise TypeError("Positioner {} must be an EpicsMotor" - "to set position.".format(p.name)) - - # Get the current offset - - offset_pvs = [p.prefix + ".OFF" for p in positioner] - dial_pvs = [p.prefix + ".DRBV" for p in positioner] - - old_offsets = [caget(p) for p in offset_pvs] - dial = [caget(p) for p in dial_pvs] - - for v in old_offsets + dial: - if v is None: - raise ValueError("Could not read or invalid value for current" - "position of positioners") - - new_offsets = [a - b for a, b in zip(position, dial)] - - msg = '' - for o, old_o, p in zip(new_offsets, old_offsets, positioner): - if caput(p.prefix + '.OFF', o): - msg += 'Motor {0} set to position {1} (Offset = {2} was {3})\n'\ - .format(p.name, p.position, o, old_o) - else: - print('Unable to set position of positioner {0}'.format(p.name)) - - print(msg) - logbook = get_logbook() - if logbook: - lmsg = logbook_add_objects(positioner, dial_pvs + offset_pvs) - logbook.log(msg + '\n' + lmsg)
- - -
[docs]def wh_pos(positioners=None): - """Get the current position of Positioners and print to screen. - - Print to the screen the position of the positioners in a formated table. - - Parameters - ---------- - positioners : Positioner, list of Positioners or None - - See Also - -------- - log_pos : Log positioner values to logbook - - Examples - -------- - List all positioners:: - - >>>wh_pos() - - List positioners `m1`, `m2` and `m3`:: - - >>>wh_pos([m1, m2, m3]) - """ - positioners = _normalize_positioners(positioners) - _print_pos(positioners, file=sys.stdout)
- - -
[docs]def log_pos(positioners=None, extra_msg=None): - """Get the current position of Positioners and make a logbook entry. - - Print to the screen the position of the positioners and make a logbook text - entry. This routine also creates session information in the logbook so - positions can be recovered. - - Parameters - ---------- - positioners : Positioner, list of Positioners or None - - Returns - ------- - int - The ID of the logbook entry returned by the logbook.log method. - """ - positioners = _normalize_positioners(positioners) - logbook = get_logbook() - if extra_msg: - msg = extra_msg + '\n' - else: - msg = '' - - with closing(StringIO()) as sio: - _print_pos(positioners, file=sio) - msg += sio.getvalue() - - # Add the text representation of the positioners - - # Create the property for storing motor posisions - pdict = {} - pdict['values'] = {} - - msg += logbook_add_objects(positioners) - - for p in positioners: - try: - pdict['values'][p.name] = p.position - except DisconnectedError: - pdict['values'][p.name] = DISCONNECTED - - pdict['objects'] = repr(positioners) - pdict['values'] = repr(pdict['values']) - - if logbook: - id_ = logbook.log(msg, properties={'OphydPositioners': pdict}, - ensure=True) - - print('Logbook positions added as Logbook ID {}'.format(id_)) - return id_
- - -
[docs]def log_pos_mov(id=None, dry_run=False, positioners=None, **kwargs): - """Move to positions located in logboook - - This function moves to positions recorded in the experimental logbook using - the :py:func:`log_pos` function. - - Parameters - ---------- - id : integer, optional - ID of logbook entry to search for and move positions to. - dry_run : bool, optional - If True, do not move motors, but execute a dry_run - positioners : list, optional - List of string names of positioners to compare and move. Other - positioners in the log entry will be ignored. - """ - positioners = _normalize_positioners(positioners) - logpos, objects = logbook_to_objects(id, **kwargs) - objects = collections.OrderedDict(sorted(objects.items())) - - keys = set(positioners).intersection(set(objects.keys())) - objects = {x: objects[x] for x in keys} - - print('') - stat = [] - for key, value in objects.items(): - newpos = logpos[key] - if newpos == DISCONNECTED: - print('{}[!!] Unable to move positioner {} {}: position was stored' - 'as disconnected'.format(tc.Red, key, tc.Normal)) - continue - - try: - oldpos = value.position - except DisconnectedError: - print('{}[!!] Unable to move positioner {} {}: disconnected' - ''.format(tc.Red, key, tc.Normal)) - continue - - try: - if not dry_run: - stat.append(value.move(newpos, wait=False)) - except Exception as ex: - print('{}[!!] Unable to move positioner {} {} ({}: {})' - ''.format(tc.Red, key, tc.Normal, ex.__class__.__name__, ex)) - else: - print('{}[**] Moving positioner {} to {}' - ' from current position of {}{}`' - ''.format(tc.Green, key, newpos, oldpos, tc.Normal)) - - print('\n{}Waiting for positioners to complete .....' - ''.format(tc.LightGreen), end='') - - sys.stdout.flush() - - if len(stat) > 0: - while all(s.done for s in stat): - time.sleep(0.01) - - print(' Done{}\n'.format(tc.Normal))
- - -
[docs]def log_pos_diff(id=None, positioners=None, **kwargs): - """Move to positions located in logboook - - This function compares positions recorded in the experimental logbook - using the :py:func:`log_pos` function. - - Parameters - ---------- - id : integer - ID of logbook entry to search for and move positions to. - positioners : list - List of string names of positioners to compare. Other positioners - in the log entry will be ignored. - """ - - positioners = _normalize_positioners(positioners) - logpos, objects = logbook_to_objects(id, **kwargs) - objects = collections.OrderedDict(sorted(objects.items())) - - # Cycle through positioners and compare position with old value - # If we have an error, print a warning - - diff = [] - pos = [] - values = [] - - keys = set(positioners).intersection(set(objects.keys())) - objects = {x: objects[x] for x in keys} - - print('') - for key, value in objects.items(): - oldpos = logpos[key] - if oldpos == DISCONNECTED: - print('{}[!!] Unable to compare position {} {}: position was stored' - 'as disconnected'.format(tc.Red, key, tc.Normal)) - continue - - try: - newpos = value.position - except DisconnectedError: - print('{}[!!] Unable to compare position {} {}: disconnected' - ''.format(tc.Red, key, tc.Normal)) - continue - - try: - diff.append(newpos - oldpos) - except Exception as ex: - print('{}[!!] Unable to compare position {}{}: ({}: {})' - .format(tc.Red, key, tc.Normal, ex.__class__.__name__, ex)) - else: - pos.append(value) - values.append(newpos) - - header_len = 3 * (FMT_LEN + 3) + 1 - print_header(len=header_len) - print_string('Positioner', pre='| ', post=' | ') - print_string('Value', post=' | ') - print_string('Difference', post=' |\n') - - print_header(len=header_len) - - for p, v, d in zip(pos, values, diff): - print_string(p.name, pre='| ', post=' | ') - print_value(v, egu=p.egu, post=' | ') - print_value(d, egu=p.egu, post=' |\n') - - print_header(len=header_len) - print('')
- - -def logbook_to_objects(id=None, **kwargs): - """Search the logbook and return positioners""" - - logbook = get_logbook() - if logbook is None: - raise RuntimeError("No logbook is available") - - entry = logbook.find(id=id, **kwargs) - if len(entry) != 1: - raise ValueError("Search of logbook was not unique, please refine" - "search") - try: - prop = entry[0]['properties']['OphydPositioners'] - except KeyError: - raise KeyError('No property in log entry with positioner information') - - try: - obj = eval(prop['objects']) - val = eval(prop['values']) - except Exception as ex: - raise RuntimeError('Unable to create objects from log entry ' - '(%s)' % ex) - - objects = {o.name: o for o in obj} - return val, objects - - -def logbook_add_objects(objects, extra_pvs=None): - """Add to the logbook aditional information on ophyd objects. - - This routine takes objects and possible extra pvs and adds to the log entry - information which is not printed to stdout/stderr. - - Parameters - ---------- - objects : Ophyd objects - Objects to add to log entry. - extra_pvs : List of strings - Extra PVs to include in report - """ - - msg = '' - msg += '{:^43}|{:^22}|{:^50}\n'.format('PV Name', 'Name', 'Value') - msg += '{:-^120}\n'.format('') - - # Make a list of all PVs and positioners - reports = [o.report for o in objects] - pvs = [report.get('pv', str(None)) for report in reports] - names = [o.name for o in objects] - values = [str(v) for report in reports - for k, v in report.items() if k != 'pv'] - - if extra_pvs is not None: - pvs += extra_pvs - names += ['None' for e in extra_pvs] - values += [caget(e) for e in extra_pvs] - - for a, b, c in zip(pvs, names, values): - msg += 'PV:{:<40} {:<22} {:<50}\n'.format(a, b, c) - - return msg - - -def print_header(title='', char='-', len=80, file=sys.stdout): - print('{:{char}^{len}}'.format(title, char=char, len=len), file=file) - - -def print_string(val, size=FMT_LEN, pre='', post=' ', file=sys.stdout): - print('{}{:<{size}}{}'.format(pre, val, post, size=size), end='', file=file) - - -def print_value(val, prec=FMT_PREC, egu='', **kwargs): - if val is not None: - print_string('{: .{fmt}f} {}'.format(val, egu, fmt=prec), **kwargs) - else: - print_string('', **kwargs) - - -def blink(on=True, file=sys.stdout): - if on: - print("\x1b[?25h", end='', file=file) - else: - print("\x1b[?25l", end='', file=file) - - -@contextmanager -def catch_keyboard_interrupt(positioners): - """Context manager to capture Keyboard Interrupt and stop motors - - This context manager should be used when moving positioners via the cli - to capture the keyboardInterrupt and ensure that motors are stopped and - clean up the output to the screen. - """ - - blink(False) - - try: - yield - except KeyboardInterrupt: - print(tc.Red + "[!!] ABORTED " - ": Commanding all positioners to stop.") - for p in positioners: - p.stop() - print("{}[--] Stopping {}{}".format(tc.Red, tc.LightRed, p.name)) - print(tc.Normal, end='') - blink(True) - raise - print(tc.Normal, end='') - blink(True) - - -def _print_pos(positioners, file=sys.stdout): - """Pretty Print the positioners to file""" - - print('', file=file) - pos = [] - for p in positioners: - try: - pos.append(p.position) - except (DisconnectedError, TypeError): - pos.append(None) - - # Print out header - pt = PrettyTable(['Positioner', 'Value', 'Low Limit', 'High Limit']) - pt.align = 'r' - pt.align['Positioner'] = 'l' - pt.float_format = '8.5' - - for p, v in zip(positioners, pos): - if pos is None: - continue - if v is not None: - try: - prec = p.precision - except (AttributeError, DisconnectedError): - prec = FMT_PREC - value = np.round(v, decimals=prec) - else: - value = DISCONNECTED - - try: - low_limit, high_limit = p.low_limit, p.high_limit - except DisconnectedError: - low_limit = high_limit = DISCONNECTED - - pt.add_row([p.name, value, low_limit, high_limit]) - - print(pt, file=file) -
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/device.html b/ophyd/_modules/ophyd/device.html deleted file mode 100644 index 214cc5116e..0000000000 --- a/ophyd/_modules/ophyd/device.html +++ /dev/null @@ -1,1059 +0,0 @@ - - - - - - - - - - - ophyd.device — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.device

-import time as ttime
-import logging
-import textwrap
-from enum import Enum
-from collections import (OrderedDict, namedtuple)
-
-from .ophydobj import OphydObject
-from .status import DeviceStatus
-from .utils import (ExceptionBundle, set_and_wait, RedundantStaging)
-
-logger = logging.getLogger(__name__)
-
-
-class Staged(Enum):
-    """Three-state switch"""
-    yes = 'yes'
-    no = 'no'
-    partially = 'partially'
-
-
-class Component:
-    '''A descriptor representing a device component (or signal)
-
-    Unrecognized keyword arguments will be passed directly to the component
-    class initializer.
-
-    Parameters
-    ----------
-    cls : class
-        Class of signal to create.  The required signature of
-        `cls.__init__` is (if `suffix` is given)::
-
-            def __init__(self, pv_name, parent=None, **kwargs):
-
-        or (if suffix is None) ::
-
-            def __init__(self, parent=None, **kwargs):
-
-        The class may have a `wait_for_connection()` which is called
-        during the component instance creation.
-
-    suffix : str, optional
-        The PV suffix, which gets appended onto the device prefix to
-        generate the final PV that the instance component will bind to.
-
-    lazy : bool, optional
-        Lazily instantiate the signal. If False, the signal will be
-        instantiated upon component instantiation
-    trigger_value : any, optional
-        Mark as a signal to be set on trigger. The value is sent to the signal
-        at trigger time.
-    add_prefix : sequence, optional
-        Keys in the kwargs to prefix with the Device PV prefix during
-        creation of the component instance.
-        Defaults to ('suffix', 'write_pv', )
-    doc : str, optional
-        string to attach to component DvcClass.component.__doc__
-    '''
-
-    def __init__(self, cls, suffix=None, *, lazy=False, trigger_value=None,
-                 add_prefix=None, doc=None, **kwargs):
-        self.attr = None  # attr is set later by the device when known
-        self.cls = cls
-        self.kwargs = kwargs
-        self.lazy = lazy
-        self.suffix = suffix
-        self.doc = doc
-        self.trigger_value = trigger_value  # TODO discuss
-
-        if add_prefix is None:
-            add_prefix = ('suffix', 'write_pv')
-
-        self.add_prefix = tuple(add_prefix)
-
-    def maybe_add_prefix(self, instance, kw, suffix):
-        """Add prefix to a suffix if kw is in self.add_prefix
-
-        Parameters
-        ----------
-        instance : Device
-            The instance to extract the prefix to maybe append to the
-            suffix from.
-
-        kw : str
-            The key of associated with the suffix.  If this key is
-            self.add_prefix than prepend the prefix to the suffix and
-            return, else just return the suffix.
-
-        suffix : str
-            The suffix to maybe have something prepended to.
-
-        Returns
-        -------
-        str
-        """
-        if kw in self.add_prefix:
-            return '{prefix}{suffix}'.format(prefix=instance.prefix,
-                                             suffix=suffix)
-        return suffix
-
-    def create_component(self, instance):
-        '''Create a component for the instance'''
-        kwargs = self.kwargs.copy()
-        kwargs['name'] = '{}_{}'.format(instance.name, self.attr)
-
-        for kw, val in list(kwargs.items()):
-            kwargs[kw] = self.maybe_add_prefix(instance, kw, val)
-
-        if self.suffix is not None:
-            pv_name = self.maybe_add_prefix(instance, 'suffix', self.suffix)
-            cpt_inst = self.cls(pv_name, parent=instance, **kwargs)
-        else:
-            cpt_inst = self.cls(parent=instance, **kwargs)
-
-        if self.lazy and hasattr(self.cls, 'wait_for_connection'):
-            cpt_inst.wait_for_connection()
-
-        return cpt_inst
-
-    def make_docstring(self, parent_class):
-        if self.doc is not None:
-            return self.doc
-
-        doc = ['{} attribute'.format(self.__class__.__name__),
-               '::',
-               '',
-               ]
-
-        doc.append(textwrap.indent(repr(self), prefix=' ' * 4))
-        doc.append('')
-        return '\n'.join(doc)
-
-    def __repr__(self):
-        kw_str = ', '.join('{}={!r}'.format(k, v)
-                           for k, v in self.kwargs.items())
-        if self.suffix is not None:
-            suffix_str = '{!r}'.format(self.suffix)
-            if self.kwargs:
-                suffix_str += ', '
-        else:
-            suffix_str = ''
-
-        if suffix_str or kw_str:
-            arg_str = ', {}{}'.format(suffix_str, kw_str)
-        else:
-            arg_str = ''
-
-        return ('{self.__class__.__name__}({self.cls.__name__}{arg_str})'
-                ''.format(self=self, arg_str=arg_str))
-
-    def __get__(self, instance, owner):
-        if instance is None:
-            return self
-
-        if self.attr not in instance._signals:
-            instance._signals[self.attr] = self.create_component(instance)
-
-        return instance._signals[self.attr]
-
-    def __set__(self, instance, owner):
-        raise RuntimeError('Use .put()')
-
-
-class FormattedComponent(Component):
-    '''A Component which takes a dynamic format string
-
-    This differs from Component in that the parent prefix is not automatically
-    added onto the Component suffix. Additionally, `str.format()` style strings
-    are accepted, allowing access to Device instance attributes:
-
-    >>> from ophyd import (Component as C, FormattedComponent as FC)
-    >>> class MyDevice(Device):
-    ...     # A normal component, where 'suffix' is added to prefix verbatim
-    ...     cpt = C(EpicsSignal, 'suffix')
-    ...     # A formatted component, where 'self' refers to the Device instance
-    ...     ch = FC(EpicsSignal, '{self.prefix}{self._ch_name}')
-    ...
-    ...     def __init__(self, prefix, ch_name=None, **kwargs):
-    ...         self._ch_name = ch_name
-    ...         super().__init__(prefix, **kwargs)
-
-    >>> dev = MyDevice('prefix:', ch_name='some_channel', name='dev')
-    >>> print(dev.cpt.pvname)
-    prefix:suffix
-    >>> print(dev.ch.pvname)
-    prefix:some_channel
-
-    For additional documentation, refer to Component.
-    '''
-
-    def maybe_add_prefix(self, instance, kw, suffix):
-        if kw not in self.add_prefix:
-            return suffix
-
-        return suffix.format(self=instance)
-
-
-class DynamicDeviceComponent:
-    '''An Device component that dynamically creates a OphyDevice
-
-    Parameters
-    ----------
-    defn : OrderedDict
-        The definition of all attributes to be created, in the form of:
-            defn['attribute_name'] = (SignalClass, pv_suffix, keyword_arg_dict)
-        This will create an attribute on the sub-device of type `SignalClass`,
-        with a suffix of pv_suffix, which looks something like this:
-            parent.attribute_name = SignalClass(pv_suffix, **keyword_arg_dict)
-        Keep in mind that this is actually done in the metaclass creation, and
-        not exactly as written above.
-    clsname : str, optional
-        The name of the class to be generated
-        This defaults to {parent_name}{this_attribute_name.capitalize()}
-    doc : str, optional
-        The docstring to put on the dynamically generated class
-    '''
-
-    def __init__(self, defn, *, clsname=None, doc=None):
-        self.defn = defn
-        self.clsname = clsname
-        self.attr = None  # attr is set later by the device when known
-        self.lazy = False
-        self.doc = doc
-
-        # TODO: component compatibility
-        self.trigger_value = None
-        self.attrs = list(defn.keys())
-
-    def make_docstring(self, parent_class):
-        if self.doc is not None:
-            return self.doc
-
-        doc = ['{} comprised of'.format(self.__class__.__name__),
-               '::',
-               '',
-               ]
-
-        doc.append(textwrap.indent(repr(self), prefix=' ' * 4))
-        doc.append('')
-        return '\n'.join(doc)
-
-    def __repr__(self):
-        doc = []
-        for attr, (cls, suffix, kwargs) in self.defn.items():
-            kw_str = ', '.join('{}={!r}'.format(k, v)
-                               for k, v in kwargs.items())
-            if suffix is not None:
-                suffix_str = '{!r}'.format(suffix)
-                if kwargs:
-                    suffix_str += ', '
-            else:
-                suffix_str = ''
-
-            if suffix_str or kw_str:
-                arg_str = ', {}{}'.format(suffix_str, kw_str)
-            else:
-                arg_str = ''
-
-            doc.append('{attr} = Component({cls.__name__}{arg_str})'
-                       ''.format(attr=attr, cls=cls, arg_str=arg_str))
-
-        return '\n'.join(doc)
-
-    def create_attr(self, attr_name):
-        cls, suffix, kwargs = self.defn[attr_name]
-        inst = Component(cls, suffix, **kwargs)
-        inst.attr = attr_name
-        return inst
-
-    def create_component(self, instance):
-        '''Create a component for the instance'''
-        clsname = self.clsname
-        if clsname is None:
-            # make up a class name based on the instance's class name
-            clsname = ''.join((instance.__class__.__name__,
-                               self.attr.capitalize()))
-
-            # TODO: and if the attribute has any underscores, convert that to
-            #       camelcase
-
-        docstring = self.doc
-        if docstring is None:
-            docstring = '{} sub-device'.format(clsname)
-
-        clsdict = OrderedDict(__doc__=docstring)
-
-        for attr in self.defn.keys():
-            clsdict[attr] = self.create_attr(attr)
-
-        attrs = set(self.defn.keys())
-        inst_read = set(instance.read_attrs)
-        if self.attr in inst_read:
-            # if the sub-device is in the read list, then add all attrs
-            read_attrs = attrs
-        else:
-            # otherwise, only add the attributes that exist in the sub-device
-            # to the read_attrs list
-            read_attrs = inst_read.intersection(attrs)
-
-        cls = type(clsname, (Device, ), clsdict)
-        return cls(instance.prefix, read_attrs=list(read_attrs),
-                   name='{}_{}'.format(instance.name, self.attr),
-                   parent=instance)
-
-    def __get__(self, instance, owner):
-        if instance is None:
-            return self
-
-        if self.attr not in instance._signals:
-            instance._signals[self.attr] = self.create_component(instance)
-
-        return instance._signals[self.attr]
-
-    def __set__(self, instance, owner):
-        raise RuntimeError('Use .put()')
-
-
-class ComponentMeta(type):
-    '''Creates attributes for Components by inspecting class definition'''
-
-    @classmethod
-    def __prepare__(self, name, bases):
-        '''Prepare allows the class attribute dictionary to be ordered as
-        defined by the user'''
-        return OrderedDict()
-
-    def __new__(cls, name, bases, clsdict):
-        clsobj = super().__new__(cls, name, bases, clsdict)
-
-        RESERVED_ATTRS = ['name', 'parent', 'signal_names', '_signals',
-                          'read_attrs', 'configuration_attrs', '_sig_attrs',
-                          '_sub_devices']
-        for attr in RESERVED_ATTRS:
-            if attr in clsdict:
-                raise TypeError("The attribute name %r is reserved for "
-                                "use by the Device class. Choose a different "
-                                "name." % attr)
-
-        clsobj._sig_attrs = OrderedDict()
-        for base in reversed(bases):
-            if not hasattr(base, '_sig_attrs'):
-                continue
-
-            for attr, cpt in base._sig_attrs.items():
-                clsobj._sig_attrs[attr] = cpt
-
-        # map component classes to their attribute names from this class
-        for attr, value in clsdict.items():
-            if isinstance(value, (Component, DynamicDeviceComponent)):
-                clsobj._sig_attrs[attr] = value
-
-        for cpt_attr, cpt in clsobj._sig_attrs.items():
-            # Notify the component of their attribute name
-            cpt.attr = cpt_attr
-
-        # List Signal attribute names.
-        clsobj.signal_names = list(clsobj._sig_attrs.keys())
-
-        # The namedtuple associated with the device
-        clsobj._device_tuple = namedtuple(name + 'Tuple', clsobj.signal_names,
-                                          rename=True)
-
-        # Finally, create all the component docstrings
-        for cpt in clsobj._sig_attrs.values():
-            cpt.__doc__ = cpt.make_docstring(clsobj)
-
-        # List the attributes that are Devices (not Signals).
-        # This list is used by stage/unstage. Only Devices need to be staged.
-        clsobj._sub_devices = []
-        for attr, cpt in clsobj._sig_attrs.items():
-            if isinstance(cpt, Component) and not issubclass(cpt.cls, Device):
-                continue
-            clsobj._sub_devices.append(attr)
-
-        return clsobj
-
-
-# These stub 'Interface' classes are the apex of the mro heirarchy for
-# their respective methods. They make multiple interitance more
-# forgiving, and let us define classes that customize these methods
-# but are not full Devices.
-
-
-class BlueskyInterface:
-    """Classes that inherit from this can safely customize the
-    these methods without breaking mro."""
-    def __init__(self, *args, **kwargs):
-        # Subclasses can populate this with (signal, value) pairs, to be
-        # set by stage() and restored back by unstage().
-        self.stage_sigs = OrderedDict()
-
-        self._staged = Staged.no
-        self._original_vals = OrderedDict()
-        super().__init__(*args, **kwargs)
-
-    def trigger(self):
-        pass
-
-    def read(self):
-        return OrderedDict()
-
-    def describe(self):
-        return OrderedDict()
-
-    def stage(self):
-        """
-        Prepare the device to be triggered.
-
-        Returns
-        -------
-        devices : list
-            list including self and all child devices staged
-        """
-        if self._staged == Staged.no:
-            pass  # to short-circuit checking individual cases
-        elif self._staged == Staged.yes:
-            raise RedundantStaging("Device {!r} is already staged. "
-                                   "Unstage it first.".format(self))
-        elif self._staged == Staged.partially:
-            raise RedundantStaging("Device {!r} has been partially staged. "
-                                   "Maybe the most recent unstaging "
-                                   "encountered an error before finishing. "
-                                   "Try unstaging again.".format(self))
-        logger.debug("Staging %s", self.name)
-        self._staged = Staged.partially
-
-        # Read current values, to be restored by unstage()
-        original_vals = {sig: sig.get() for sig, _ in self.stage_sigs.items()}
-
-        # We will add signals and values from original_vals to
-        # self._original_vals one at a time so that
-        # we can undo our partial work in the event of an error.
-
-        # Apply settings.
-        devices_staged = []
-        try:
-            for sig, val in self.stage_sigs.items():
-                logger.debug("Setting %s to %r (original value: %r)", self.name,
-                             val, original_vals[sig])
-                set_and_wait(sig, val)
-                # It worked -- now add it to this list of sigs to unstage.
-                self._original_vals[sig] = original_vals[sig]
-            devices_staged.append(self)
-
-            # Call stage() on child devices.
-            for attr in self._sub_devices:
-                device = getattr(self, attr)
-                if hasattr(device, 'stage'):
-                    device.stage()
-                    devices_staged.append(device)
-        except Exception:
-            logger.debug("An exception was raised while staging %s or "
-                         "one of its children. Attempting to restore "
-                         "original settings before re-raising the "
-                         "exception.", self.name)
-            self.unstage()
-            raise
-        else:
-            self._staged = Staged.yes
-        return devices_staged
-
-    def unstage(self):
-        """
-        Restore the device to 'standby'.
-
-        Multiple calls (without a new call to 'stage') have no effect.
-
-        Returns
-        -------
-        devices : list
-            list including self and all child devices unstaged
-        """
-        logger.debug("Unstaging %s", self.name)
-        self._staged = Staged.partially
-        devices_unstaged = []
-
-        # Call unstage() on child devices.
-        for attr in self._sub_devices[::-1]:
-            device = getattr(self, attr)
-            if hasattr(device, 'unstage'):
-                device.unstage()
-                devices_unstaged.append(device)
-
-        # Restore original values.
-        for sig, val in reversed(list(self._original_vals.items())):
-            logger.debug("Setting %s back to its original value: %r)", self.name,
-                         val)
-            set_and_wait(sig, val)
-            self._original_vals.pop(sig)
-        devices_unstaged.append(self)
-
-        self._staged = Staged.no
-        return devices_unstaged
-
-    def pause(self):
-        pass
-
-    def resume(self):
-        pass
-
-
-class GenerateDatumInterface:
-    """Classes that inherit from this can safely customize the
-    `generate_datum` method without breaking mro. If used along with the
-    BlueskyInterface, inherit from this second."""
-    def generate_datum(self, key, timestamp):
-        pass
-
-
-
[docs]class Device(BlueskyInterface, OphydObject, metaclass=ComponentMeta): - """Base class for device objects - - This class provides attribute access to one or more Signals, which can be - a mixture of read-only and writable. All must share the same base_name. - - Parameters - ---------- - prefix : str - The PV prefix for all components of the device - read_attrs : sequence of attribute names - the components to include in a normal reading (i.e., in ``read()``) - configuration_attrs : sequence of attribute names - the components to be read less often (i.e., in - ``read_configuration()``) and to adjust via ``configure()`` - name : str, optional - The name of the device - parent : instance or None - The instance of the parent device, if applicable - """ - - SUB_ACQ_DONE = 'acq_done' # requested acquire - - def __init__(self, prefix, *, read_attrs=None, configuration_attrs=None, - name=None, parent=None, **kwargs): - # Store EpicsSignal objects (only created once they are accessed) - self._signals = {} - - self.prefix = prefix - if self.signal_names and prefix is None: - raise ValueError('Must specify prefix if device signals are being ' - 'used') - - if name is None: - name = prefix - - super().__init__(name=name, parent=parent, **kwargs) - - if read_attrs is None: - read_attrs = self.signal_names - - if configuration_attrs is None: - configuration_attrs = [] - - self.read_attrs = list(read_attrs) - self.configuration_attrs = list(configuration_attrs) - - # Instantiate non-lazy signals - [getattr(self, attr) for attr, cpt in self._sig_attrs.items() - if not cpt.lazy] - -
[docs] def wait_for_connection(self, all_signals=False, timeout=2.0): - '''Wait for signals to connect - - Parameters - ---------- - all_signals : bool, optional - Wait for all signals to connect (including lazy ones) - timeout : float or None - Overall timeout - ''' - names = [attr for attr, cpt in self._sig_attrs.items() - if not cpt.lazy or all_signals] - - # Instantiate first to kickoff connection process - signals = [getattr(self, name) for name in names] - - t0 = ttime.time() - while timeout is None or (ttime.time() - t0) < timeout: - connected = [sig.connected for sig in signals] - if all(connected): - return - ttime.sleep(min((0.05, timeout / 10.0))) - - unconnected = ', '.join(self._get_unconnected()) - raise TimeoutError('Failed to connect to all signals: {}' - ''.format(unconnected))
- - def _get_unconnected(self): - '''Yields all of the signal pvnames or prefixes that are unconnected - - This recurses throughout the device hierarchy, only checking signals - that have already been instantiated. - ''' - for attr, sig in self.get_instantiated_signals(): - if sig.connected: - continue - - if hasattr(sig, 'pvname'): - prefix = sig.pvname - else: - prefix = sig.prefix - - yield '{} ({})'.format(attr, prefix) - - def get_instantiated_signals(self, *, attr_prefix=None): - '''Yields all of the instantiated signals in a device hierarchy - - Parameters - ---------- - attr_prefix : string, optional - The attribute prefix. If None, defaults to self.name - - Yields - ------ - (fully_qualified_attribute_name, signal_instance) - ''' - if attr_prefix is None: - attr_prefix = self.name - - for attr, sig in self._signals.items(): - # fully qualified attribute name from top-level device - full_attr = '{}.{}'.format(attr_prefix, attr) - if isinstance(sig, Device): - yield from sig.get_instantiated_signals(attr_prefix=full_attr) - else: - yield full_attr, sig - - @property - def connected(self): - return all(signal.connected for name, signal in self._signals.items()) - - def __getattr__(self, name): - '''Get a component from a fully-qualified name - - As a reminder, __getattr__ is only called if a real attribute doesn't - already exist, or a device component has yet to be instantiated. - ''' - if '.' not in name: - try: - # Initial access of signal - cpt = self._sig_attrs[name] - return cpt.__get__(self, None) - except KeyError: - raise AttributeError(name) - - attr_names = name.split('.') - try: - attr = getattr(self, attr_names[0]) - except AttributeError: - raise AttributeError('{} of {}'.format(attr_names[0], name)) - - if len(attr_names) > 1: - sub_attr_names = '.'.join(attr_names[1:]) - return getattr(attr, sub_attr_names) - - return attr - - def _read_attr_list(self, attr_list, *, config=False): - '''Get a 'read' dictionary containing attributes in attr_list''' - values = OrderedDict() - for attr in attr_list: - obj = getattr(self, attr) - if config: - values.update(obj.read_configuration()) - - values.update(obj.read()) - - return values - -
[docs] def read(self): - """returns dictionary mapping names to (value, timestamp) pairs - - To control which fields are included, adjust the ``read_attrs`` list. - """ - res = super().read() - res.update(self._read_attr_list(self.read_attrs)) - return res
- -
[docs] def read_configuration(self): - """ - returns dictionary mapping names to (value, timestamp) pairs - - To control which fields are included, adjust the - ``configuration_attrs`` list. - """ - return self._read_attr_list(self.configuration_attrs, config=True)
- - def _describe_attr_list(self, attr_list, *, config=False): - '''Get a 'describe' dictionary containing attributes in attr_list''' - desc = OrderedDict() - for attr in attr_list: - obj = getattr(self, attr) - if config: - desc.update(obj.describe_configuration()) - - desc.update(obj.describe()) - - return desc - -
[docs] def describe(self): - '''describe the read data keys' data types and other metadata''' - res = super().describe() - res.update(self._describe_attr_list(self.read_attrs)) - return res
- -
[docs] def describe_configuration(self): - '''describe the configuration data keys' data types/other metadata''' - return self._describe_attr_list(self.configuration_attrs, config=True)
- - @property - def trigger_signals(self): - names = [attr for attr, cpt in self._sig_attrs.items() - if cpt.trigger_value is not None] - - return [getattr(self, name) for name in names] - - def _done_acquiring(self, **kwargs): - '''Call when acquisition has completed.''' - self._run_subs(sub_type=self.SUB_ACQ_DONE, - success=True, **kwargs) - - self._reset_sub(self.SUB_ACQ_DONE) - -
[docs] def trigger(self): - """Start acquisition""" - signals = self.trigger_signals - if len(signals) > 1: - raise NotImplementedError('More than one trigger signal is not ' - 'currently supported') - status = DeviceStatus(self) - if not signals: - status._finished() - return status - - acq_signal, = signals - - self.subscribe(status._finished, - event_type=self.SUB_ACQ_DONE, run=False) - - def done_acquisition(**ignored_kwargs): - # Keyword arguments are ignored here from the EpicsSignal - # subscription, as the important part is that the put completion - # has finished - self._done_acquiring() - - acq_signal.put(1, wait=False, callback=done_acquisition) - return status
- - def stop(self): - '''Stop the Device and all (instantiated) subdevices''' - exc_list = [] - - for attr in self._sub_devices: - dev = getattr(self, attr) - - if not dev.connected: - logger.debug('stop: device %s (%s) is not connected; ' - 'skipping', attr, dev) - continue - - try: - dev.stop() - except ExceptionBundle as ex: - exc_list.extend([('{}.{}'.format(attr, sub_attr), ex) - for sub_attr, ex in ex.exceptions.items()]) - except Exception as ex: - exc_list.append((attr, ex)) - logger.error('Device %s (%s) stop failed', attr, dev, - exc_info=ex) - - if exc_list: - exc_info = '\n'.join('{} raised {!r}'.format(attr, ex) - for attr, ex in exc_list) - raise ExceptionBundle('{} exception(s) were raised during stop: \n' - '{}'.format(len(exc_list), exc_info), - exceptions=dict(exc_list)) - -
[docs] def get(self, **kwargs): - '''Get the value of all components in the device - - Keyword arguments are passed onto each signal.get() - ''' - values = {} - for attr in self.signal_names: - signal = getattr(self, attr) - values[attr] = signal.get(**kwargs) - - return self._device_tuple(**values)
- -
[docs] def put(self, dev_t, **kwargs): - '''Put a value to all components of the device - - Keyword arguments are passed onto each signal.put() - - Parameters - ---------- - dev_t : DeviceTuple or tuple - The device tuple with the value(s) to put (see get_device_tuple) - ''' - if not isinstance(dev_t, self._device_tuple): - try: - dev_t = self._device_tuple(dev_t) - except TypeError as ex: - raise ValueError('{}\n\tDevice tuple fields: {}' - ''.format(ex, self._device_tuple._fields)) - - for attr in self.signal_names: - value = getattr(dev_t, attr) - signal = getattr(self, attr) - signal.put(value, **kwargs)
- - @classmethod -
[docs] def get_device_tuple(cls): - '''The device tuple type associated with an Device class - - This is a tuple representing the full state of all components and - dynamic device sub-components. - ''' - return cls._device_tuple
- -
[docs] def configure(self, d): - '''Configure the device for something during a run - - This default implementation allows the user to change any of the - `configuration_attrs`. Subclasses might override this to perform - additional input validation, cleanup, etc. - - Parameters - ---------- - d : dict - The configuration dictionary. To specify the order that - the changes should be made, use an OrderedDict. - - Returns - ------- - (old, new) tuple of dictionaries - Where old and new are pre- and post-configure configuration states. - ''' - old = self.read_configuration() - for key, val in d.items(): - if key not in self.configuration_attrs: - # a little extra checking for a more specific error msg - if key not in self.signal_names: - raise ValueError("There is no signal named %s" % key) - else: - raise ValueError("%s is not one of the " - "configuration_fields, so it cannot be " - "changed using configure" % key) - set_and_wait(getattr(self, key), val) - new = self.read_configuration() - return old, new
- - def _repr_info(self): - yield ('prefix', self.prefix) - yield from super()._repr_info() - - yield ('read_attrs', self.read_attrs) - yield ('configuration_attrs', self.configuration_attrs)
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/epics_motor.html b/ophyd/_modules/ophyd/epics_motor.html deleted file mode 100644 index 192a9b3097..0000000000 --- a/ophyd/_modules/ophyd/epics_motor.html +++ /dev/null @@ -1,457 +0,0 @@ - - - - - - - - - - - ophyd.epics_motor — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.epics_motor

-import logging
-
-from epics.pv import fmt_time
-
-from .signal import (EpicsSignal, EpicsSignalRO)
-from .utils import DisconnectedError
-from .utils.epics_pvs import raise_if_disconnected
-from .positioner import PositionerBase
-from .device import (Device, Component as Cpt)
-from .status import wait as status_wait
-from enum import Enum
-
-
-logger = logging.getLogger(__name__)
-
-
-class HomeEnum(str, Enum):
-    forward = "forward"
-    reverse = "reverse"
-
-
-
[docs]class EpicsMotor(Device, PositionerBase): - '''An EPICS motor record, wrapped in a :class:`Positioner` - - Keyword arguments are passed through to the base class, Positioner - - Parameters - ---------- - prefix : str - The record to use - read_attrs : sequence of attribute names - The signals to be read during data acquisition (i.e., in read() and - describe() calls) - name : str, optional - The name of the device - parent : instance or None - The instance of the parent device, if applicable - settle_time : float, optional - The amount of time to wait after moves to report status completion - timeout : float, optional - The default timeout to use for motion requests, in seconds. - ''' - user_offset = Cpt(EpicsSignal, '.OFF') - user_readback = Cpt(EpicsSignalRO, '.RBV') - user_setpoint = Cpt(EpicsSignal, '.VAL', limits=True) - motor_egu = Cpt(EpicsSignal, '.EGU') - motor_is_moving = Cpt(EpicsSignalRO, '.MOVN') - motor_done_move = Cpt(EpicsSignalRO, '.DMOV') - motor_stop = Cpt(EpicsSignal, '.STOP') - offset_freeze_switch = Cpt(EpicsSignal, '.FOFF') - velocity = Cpt(EpicsSignal, '.VELO') - acceleration = Cpt(EpicsSignal, '.ACCL') - set_use_switch = Cpt(EpicsSignal, '.SET') - high_limit_switch = Cpt(EpicsSignal, '.HLS') - low_limit_switch = Cpt(EpicsSignal, '.LLS') - home_forward = Cpt(EpicsSignal, '.HOMF') - home_reverse = Cpt(EpicsSignal, '.HOMR') - direction_of_travel = Cpt(EpicsSignal, '.TDIR') - - def __init__(self, prefix, *, read_attrs=None, configuration_attrs=None, - name=None, parent=None, **kwargs): - if read_attrs is None: - read_attrs = ['user_readback', 'user_setpoint'] - - if configuration_attrs is None: - configuration_attrs = ['motor_egu', ] - - super().__init__(prefix, read_attrs=read_attrs, - configuration_attrs=configuration_attrs, - name=name, parent=parent, **kwargs) - - # Make the default alias for the user_readback the name of the - # motor itself. - self.user_readback.name = self.name - - self.motor_done_move.subscribe(self._move_changed) - self.user_readback.subscribe(self._pos_changed) - - @property - @raise_if_disconnected - def precision(self): - '''The precision of the readback PV, as reported by EPICS''' - return self.user_readback.precision - - @property - @raise_if_disconnected - def egu(self): - '''The engineering units (EGU) for a position''' - return self.motor_egu.get() - - @property - @raise_if_disconnected - def limits(self): - return self.user_setpoint.limits - - @property - @raise_if_disconnected - def moving(self): - '''Whether or not the motor is moving - - Returns - ------- - moving : bool - ''' - return bool(self.motor_is_moving.get(use_monitor=False)) - - @raise_if_disconnected - def stop(self): - self.motor_stop.put(1, wait=False) - super().stop() - - @raise_if_disconnected -
[docs] def move(self, position, wait=True, **kwargs): - '''Move to a specified position, optionally waiting for motion to - complete. - - Parameters - ---------- - position - Position to move to - moved_cb : callable - Call this callback when movement has finished. This callback must - accept one keyword argument: 'obj' which will be set to this - positioner instance. - timeout : float, optional - Maximum time to wait for the motion. If None, the default timeout - for this positioner is used. - - Returns - ------- - status : MoveStatus - - Raises - ------ - TimeoutError - When motion takes longer than `timeout` - ValueError - On invalid positions - RuntimeError - If motion fails other than timing out - ''' - self._started_moving = False - - status = super().move(position, **kwargs) - self.user_setpoint.put(position, wait=False) - - try: - if wait: - status_wait(status) - except KeyboardInterrupt: - self.stop() - raise - - return status
- - @property - @raise_if_disconnected - def position(self): - '''The current position of the motor in its engineering units - - Returns - ------- - position : float - ''' - return self._position - - @raise_if_disconnected -
[docs] def set_current_position(self, pos): - '''Configure the motor user position to the given value - - Parameters - ---------- - pos - Position to set. - - ''' - self.set_use_switch.put(1, wait=True) - self.user_setpoint.put(pos, wait=True) - self.set_use_switch.put(0, wait=True)
- - @raise_if_disconnected -
[docs] def home(self, direction, wait=True, **kwargs): - '''Perform the default homing function in the desired direction - - Parameters - ---------- - direction : HomeEnum - Direction in which to perform the home search. - ''' - direction = HomeEnum(direction) - - self._started_moving = False - position = (self.low_limit+self.high_limit)/2 - status = super().move(position, **kwargs) - - if direction == HomeEnum.forward: - self.home_forward.put(1, wait=False) - else: - self.home_reverse.put(1, wait=False) - - try: - if wait: - status_wait(status) - except KeyboardInterrupt: - self.stop() - raise - - return status
- -
[docs] def check_value(self, pos): - '''Check that the position is within the soft limits''' - self.user_setpoint.check_value(pos)
- - def _pos_changed(self, timestamp=None, value=None, **kwargs): - '''Callback from EPICS, indicating a change in position''' - self._set_position(value) - - def _move_changed(self, timestamp=None, value=None, sub_type=None, - **kwargs): - '''Callback from EPICS, indicating that movement status has changed''' - was_moving = self._moving - self._moving = (value != 1) - - started = False - if not self._started_moving: - started = self._started_moving = (not was_moving and self._moving) - - logger.debug('[ts=%s] %s moving: %s (value=%s)', fmt_time(timestamp), - self, self._moving, value) - - if started: - self._run_subs(sub_type=self.SUB_START, timestamp=timestamp, - value=value, **kwargs) - - if was_moving and not self._moving: - success = True - # Check if we are moving towards the low limit switch - if self.direction_of_travel.get() == 0: - if self.low_limit_switch.get() == 1: - success = False - # No, we are going to the high limit switch - else: - if self.high_limit_switch.get() == 1: - success = False - - self._done_moving(success=success, timestamp=timestamp, value=value) - - @property - def report(self): - try: - rep = super().report - except DisconnectedError: - # TODO there might be more in this that gets lost - rep = {'position': 'disconnected'} - rep['pv'] = self.user_readback.pvname - return rep
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/mca.html b/ophyd/_modules/ophyd/mca.html deleted file mode 100644 index 7c182d9666..0000000000 --- a/ophyd/_modules/ophyd/mca.html +++ /dev/null @@ -1,611 +0,0 @@ - - - - - - - - - - - ophyd.mca — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.mca

-
-import logging
-
-from collections import OrderedDict
-
-from .status import DeviceStatus
-from .signal import (Signal, EpicsSignal, EpicsSignalRO)
-from .device import (Device, Component as C, DynamicDeviceComponent as DDC,
-                     Staged, BlueskyInterface)
-from .areadetector import EpicsSignalWithRBV as SignalWithRBV
-
-
-logger = logging.getLogger(__name__)
-
-
-class ROI(Device):
-
-    # 'name' is not an allowed attribute
-    label = C(EpicsSignal, 'NM', lazy=True)
-    count = C(EpicsSignalRO, '', lazy=True)
-    net_count = C(EpicsSignalRO, 'N', lazy=True)
-    preset_count = C(EpicsSignal, 'P', lazy=True)
-    is_preset = C(EpicsSignal, 'IP', lazy=True)
-    bkgnd_chans = C(EpicsSignal, 'BG', lazy=True)
-    hi_chan = C(EpicsSignal, 'HI', lazy=True)
-    lo_chan = C(EpicsSignal, 'LO', lazy=True)
-
-    def __init__(self, prefix, *, read_attrs=None, configuration_attrs=None,
-                 name=None, parent=None, **kwargs):
-
-        super().__init__(prefix, read_attrs=read_attrs,
-                         configuration_attrs=configuration_attrs,
-                         name=name, parent=parent, **kwargs)
-
-
-def add_rois(range_, **kwargs):
-    '''Add one or more ROIs to an MCA instance
-
-       Parameters:
-       -----------
-       range_ : sequence of ints
-           Must be be in the set [0,31]
-
-       By default, an EpicsMCA is initialized with all 32 rois.
-       These provide the following Components as EpicsSignals (N=[0,31]):
-       EpicsMCA.rois.roiN.(label,count,net_count,preset_cnt, is_preset,
-       bkgnd_chans, hi_chan, lo_chan)
-       '''
-    defn = OrderedDict()
-
-    for roi in range_:
-        if not (0 <= roi < 32):
-            raise ValueError('roi must be in the set [0,31]')
-
-        attr = 'roi{}'.format(roi)
-        defn[attr] = (ROI, '.R{}'.format(roi), kwargs)
-
-    return defn
-
-
-
[docs]class EpicsMCARecord(Device): - '''SynApps MCA Record interface''' - stop_signal = C(EpicsSignal, '.STOP') - preset_real_time = C(EpicsSignal, '.PRTM') - preset_live_time = C(EpicsSignal, '.PLTM') - elapsed_real_time = C(EpicsSignalRO, '.ERTM') - elapsed_live_time = C(EpicsSignalRO, '.ELTM') - - spectrum = C(EpicsSignalRO, '.VAL') - background = C(EpicsSignalRO, '.BG') - mode = C(EpicsSignal, '.MODE', string=True) - - rois = DDC(add_rois(range(0, 32))) - - def __init__(self, prefix, *, read_attrs=None, configuration_attrs=None, - name=None, parent=None, **kwargs): - - if read_attrs is None: - read_attrs = ['spectrum', 'preset_real_time', 'elapsed_real_time'] - - if configuration_attrs is None: - configuration_attrs = ['preset_real_time'] - - super().__init__(prefix, read_attrs=read_attrs, - configuration_attrs=configuration_attrs, - name=name, parent=parent, **kwargs) - - # could arguably be made a configuration_attr instead... - self.stage_sigs[self.mode] = 'PHA' - - def stop(self): - self.stop_signal.put(1)
- - -class EpicsMCA(EpicsMCARecord): - '''mca records with extras from mca.db''' - start = C(EpicsSignal, 'Start') - stop_signal = C(EpicsSignal, 'Stop') - erase = C(EpicsSignal, 'Erase') - erase_start = C(EpicsSignal, 'EraseStart', trigger_value=1) - - check_acquiring = C(EpicsSignal, 'CheckACQG') - client_wait = C(EpicsSignal, 'ClientWait') - enable_wait = C(EpicsSignal, 'EnableWait') - read = C(EpicsSignal, 'Read') - set_client_wait = C(EpicsSignal, 'SetClientWait') - status = C(EpicsSignal, 'Status') - when_acq_stops = C(EpicsSignal, 'WhenAcqStops') - why1 = C(EpicsSignal, 'Why1') - why2 = C(EpicsSignal, 'Why2') - why3 = C(EpicsSignal, 'Why3') - why4 = C(EpicsSignal, 'Why4') - - -class EpicsMCAReadNotify(EpicsMCARecord): - '''mca record with extras from mcaReadNotify.db''' - start = C(EpicsSignal, 'Start') - stop_signal = C(EpicsSignal, 'Stop') - erase = C(EpicsSignal, 'Erase') - erase_start = C(EpicsSignal, 'EraseStart', trigger_value=1) - - check_acquiring = C(EpicsSignal, 'CheckACQG') - client_wait = C(EpicsSignal, 'ClientWait') - enable_wait = C(EpicsSignal, 'EnableWait') - read = C(EpicsSignal, 'Read') - set_client_wait = C(EpicsSignal, 'SetClientWait') - status = C(EpicsSignal, 'Status') - - -class EpicsMCACallback(Device): - '''Callback-related signals for MCA devices''' - read_callback = C(EpicsSignal, 'ReadCallback') - read_data_once = C(EpicsSignal, 'ReadDataOnce') - read_status_once = C(EpicsSignal, 'ReadStatusOnce') - collect_data = C(EpicsSignal, 'CollectData') - - -
[docs]class EpicsDXP(Device): - '''All high-level DXP parameters for each channel''' - preset_mode = C(EpicsSignal, 'PresetMode', string=True) - - live_time_output = C(SignalWithRBV, 'LiveTimeOutput', string=True) - elapsed_live_time = C(EpicsSignal, 'ElapsedLiveTime') - elapsed_real_time = C(EpicsSignal, 'ElapsedRealTime') - elapsed_trigger_live_time = C(EpicsSignal, 'ElapsedTriggerLiveTime') - - # Trigger Filter PVs - trigger_peaking_time = C(SignalWithRBV, 'TriggerPeakingTime') - trigger_threshold = C(SignalWithRBV, 'TriggerThreshold') - trigger_gap_time = C(SignalWithRBV, 'TriggerGapTime') - trigger_output = C(SignalWithRBV, 'TriggerOutput', string=True) - max_width = C(SignalWithRBV, 'MaxWidth') - - # Energy Filter PVs - peaking_time = C(SignalWithRBV, 'PeakingTime') - energy_threshold = C(SignalWithRBV, 'EnergyThreshold') - gap_time = C(SignalWithRBV, 'GapTime') - - # Baseline PVs - baseline_cut_percent = C(SignalWithRBV, 'BaselineCutPercent') - baseline_cut_enable = C(SignalWithRBV, 'BaselineCutEnable') - baseline_filter_length = C(SignalWithRBV, 'BaselineFilterLength') - baseline_threshold = C(SignalWithRBV, 'BaselineThreshold') - baseline_energy_array = C(EpicsSignal, 'BaselineEnergyArray') - baseline_histogram = C(EpicsSignal, 'BaselineHistogram') - baseline_threshold = C(SignalWithRBV, 'BaselineThreshold') - - # Misc PVs - preamp_gain = C(SignalWithRBV, 'PreampGain') - detector_polarity = C(SignalWithRBV, 'DetectorPolarity') - reset_delay = C(SignalWithRBV, 'ResetDelay') - decay_time = C(SignalWithRBV, 'DecayTime') - max_energy = C(SignalWithRBV, 'MaxEnergy') - adc_percent_rule = C(SignalWithRBV, 'ADCPercentRule') - max_width = C(SignalWithRBV, 'MaxWidth') - - # read-only diagnostics - triggers = C(EpicsSignalRO, 'Triggers', lazy=True) - events = C(EpicsSignalRO, 'Events', lazy=True) - overflows = C(EpicsSignalRO, 'Overflows', lazy=True) - underflows = C(EpicsSignalRO, 'Underflows', lazy=True) - input_count_rate = C(EpicsSignalRO, 'InputCountRate', lazy=True) - output_count_rate = C(EpicsSignalRO, 'OutputCountRate', lazy=True) - - mca_bin_width = C(EpicsSignalRO, 'MCABinWidth_RBV') - calibration_energy = C(EpicsSignalRO, 'CalibrationEnergy_RBV') - current_pixel = C(EpicsSignal, 'CurrentPixel') - dynamic_range = C(EpicsSignalRO, 'DynamicRange_RBV') - - # Preset options - preset_events = C(SignalWithRBV, 'PresetEvents') - preset_mode = C(SignalWithRBV, 'PresetMode', string=True) - preset_triggers = C(SignalWithRBV, 'PresetTriggers') - - # Trace options - trace_data = C(EpicsSignal, 'TraceData') - trace_mode = C(SignalWithRBV, 'TraceMode', string=True) - trace_time_array = C(EpicsSignal, 'TraceTimeArray') - trace_time = C(SignalWithRBV, 'TraceTime')
- - -class EpicsDXPLowLevelParameter(Device): - param_name = C(EpicsSignal, 'Name') - value = C(SignalWithRBV, 'Val') - - -class EpicsDXPLowLevel(Device): - num_low_level_params = C(EpicsSignal, 'NumLLParams') - read_low_level_params = C(EpicsSignal, 'ReadLLParams') - - parameter_prefix = 'LL{}' - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - self._parameter_cache = {} - - def get_low_level_parameter(self, index): - '''Get a DXP low level parameter - - Parameters - ---------- - index : int - In the range of [0, 229] - - Returns - ------- - param : EpicsDXPLowLevelParameter - ''' - try: - return self._parameter_cache[index] - except KeyError: - pass - - prefix = '{}{}'.format(self.prefix, self.parameter_prefix) - name = '{}_param{}'.format(self.name, index) - param = EpicsDXPLowLevelParameter(prefix, name=name) - self._parameter_cache[index] = param - return param - - -class EpicsDXPMapping(Device): - apply = C(EpicsSignal, 'Apply') - auto_apply = C(SignalWithRBV, 'AutoApply') - auto_pixels_per_buffer = C(SignalWithRBV, 'AutoPixelsPerBuffer') - buffer_size = C(EpicsSignalRO, 'BufferSize_RBV') - collect_mode = C(SignalWithRBV, 'CollectMode') - ignore_gate = C(SignalWithRBV, 'IgnoreGate') - input_logic_polarity = C(SignalWithRBV, 'InputLogicPolarity') - list_mode = C(SignalWithRBV, 'ListMode') - mbytes_read = C(EpicsSignalRO, 'MBytesRead_RBV') - next_pixel = C(EpicsSignal, 'NextPixel') - pixel_advance_mode = C(SignalWithRBV, 'PixelAdvanceMode') - pixels_per_buffer = C(SignalWithRBV, 'PixelsPerBuffer') - pixels_per_run = C(SignalWithRBV, 'PixelsPerRun') - read_rate = C(EpicsSignalRO, 'ReadRate_RBV') - sync_count = C(SignalWithRBV, 'SyncCount') - - -class EpicsDXPBaseSystem(Device): - channel_advance = C(EpicsSignal, 'ChannelAdvance') - client_wait = C(EpicsSignal, 'ClientWait') - dwell = C(EpicsSignal, 'Dwell') - max_scas = C(EpicsSignal, 'MaxSCAs') - num_scas = C(SignalWithRBV, 'NumSCAs') - poll_time = C(SignalWithRBV, 'PollTime') - prescale = C(EpicsSignal, 'Prescale') - save_system = C(SignalWithRBV, 'SaveSystem') - save_system_file = C(EpicsSignal, 'SaveSystemFile') - set_client_wait = C(EpicsSignal, 'SetClientWait') - - -class EpicsDXPMultiElementSystem(EpicsDXPBaseSystem): - # Preset info - preset_events = C(EpicsSignal, 'PresetEvents') - preset_live_time = C(EpicsSignal, 'PresetLive') - preset_real_time = C(EpicsSignal, 'PresetReal') - preset_mode = C(EpicsSignal, 'PresetMode', string=True) - preset_triggers = C(EpicsSignal, 'PresetTriggers') - - # Acquisition - erase_all = C(EpicsSignal, 'EraseAll') - erase_start = C(EpicsSignal, 'EraseStart', trigger_value=1) - start_all = C(EpicsSignal, 'StartAll') - stop_all = C(EpicsSignal, 'StopAll') - - # Status - set_acquire_busy = C(EpicsSignal, 'SetAcquireBusy') - acquire_busy = C(EpicsSignal, 'AcquireBusy') - status_all = C(EpicsSignal, 'StatusAll') - status_all_once = C(EpicsSignal, 'StatusAllOnce') - acquiring = C(EpicsSignal, 'Acquiring') - - # Reading - read_baseline_histograms = C(EpicsSignal, 'ReadBaselineHistograms') - read_all = C(EpicsSignal, 'ReadAll') - read_all_once = C(EpicsSignal, 'ReadAllOnce') - - # As a debugging note, if snl_connected is not '1', your IOC is - # misconfigured: - snl_connected = C(EpicsSignal, 'SNL_Connected') - - # Copying to individual elements - copy_adcp_ercent_rule = C(EpicsSignal, 'CopyADCPercentRule') - copy_baseline_cut_enable = C(EpicsSignal, 'CopyBaselineCutEnable') - copy_baseline_cut_percent = C(EpicsSignal, 'CopyBaselineCutPercent') - copy_baseline_filter_length = C(EpicsSignal, 'CopyBaselineFilterLength') - copy_baseline_threshold = C(EpicsSignal, 'CopyBaselineThreshold') - copy_decay_time = C(EpicsSignal, 'CopyDecayTime') - copy_detector_polarity = C(EpicsSignal, 'CopyDetectorPolarity') - copy_energy_threshold = C(EpicsSignal, 'CopyEnergyThreshold') - copy_gap_time = C(EpicsSignal, 'CopyGapTime') - copy_max_energy = C(EpicsSignal, 'CopyMaxEnergy') - copy_max_width = C(EpicsSignal, 'CopyMaxWidth') - copy_peaking_time = C(EpicsSignal, 'CopyPeakingTime') - copy_preamp_gain = C(EpicsSignal, 'CopyPreampGain') - copy_roic_hannel = C(EpicsSignal, 'CopyROIChannel') - copy_roie_nergy = C(EpicsSignal, 'CopyROIEnergy') - copy_roi_sca = C(EpicsSignal, 'CopyROI_SCA') - copy_reset_delay = C(EpicsSignal, 'CopyResetDelay') - copy_trigger_gap_time = C(EpicsSignal, 'CopyTriggerGapTime') - copy_trigger_peaking_time = C(EpicsSignal, 'CopyTriggerPeakingTime') - copy_trigger_threshold = C(EpicsSignal, 'CopyTriggerThreshold') - - # do_* executes the process: - do_read_all = C(EpicsSignal, 'DoReadAll') - do_read_baseline_histograms = C(EpicsSignal, 'DoReadBaselineHistograms') - do_read_traces = C(EpicsSignal, 'DoReadTraces') - do_status_all = C(EpicsSignal, 'DoStatusAll') - - # Time - dead_time = C(EpicsSignal, 'DeadTime') - elapsed_live = C(EpicsSignal, 'ElapsedLive') - elapsed_real = C(EpicsSignal, 'ElapsedReal') - idead_time = C(EpicsSignal, 'IDeadTime') - - # low-level - read_low_level_params = C(EpicsSignal, 'ReadLLParams') - - # Traces - read_traces = C(EpicsSignal, 'ReadTraces') - trace_modes = C(EpicsSignal, 'TraceModes', string=True) - trace_times = C(EpicsSignal, 'TraceTimes') - - -class SaturnMCA(EpicsMCA, EpicsMCACallback): - pass - - -class SaturnDXP(EpicsDXP, EpicsDXPLowLevel): - pass - - -class Saturn(EpicsDXPBaseSystem): - '''DXP Saturn with 1 channel example''' - dxp = C(SaturnDXP, 'dxp1:') - mca = C(SaturnMCA, 'mca1') - - -class MercuryDXP(EpicsDXP, EpicsDXPLowLevel): - pass - - -class Mercury1(EpicsDXPMultiElementSystem): - '''DXP Mercury with 1 channel example''' - dxp = C(MercuryDXP, 'dxp1:') - mca = C(EpicsMCARecord, 'mca1') - - -class SoftDXPTrigger(BlueskyInterface): - '''Simple soft trigger for DXP devices - - Parameters - ---------- - count_signal : str, optional - Signal to set acquisition time (default: 'preset_real_time') - preset_mode : str, optional - Default preset mode for the stage signals (default: 'Real time') - mode_signal : str, optional - Preset mode signal attribute (default 'preset_mode') - stop_signal : str, optional - Stop signal attribute (default 'stop_all') - ''' - - count_time = C(Signal, value=None, doc='bluesky count time') - - def __init__(self, *args, count_signal='preset_real_time', - stop_signal='stop_all', mode_signal='preset_mode', - preset_mode='Real time', - **kwargs): - super().__init__(*args, **kwargs) - self._status = None - self._count_signal = getattr(self, count_signal) - - stop_signal = getattr(self, stop_signal) - self.stage_sigs[stop_signal] = 1 - - mode_signal = getattr(self, mode_signal) - self.stage_sigs[mode_signal] = preset_mode - - def stage(self): - if self.count_time.get() is None: - # remove count_time from the stage signals if count_time unset - try: - del self.stage_sigs[self._count_signal] - except KeyError: - pass - else: - self.stage_sigs[self._count_signal] = self.count_time.get() - - super().stage() -
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/positioner.html b/ophyd/_modules/ophyd/positioner.html deleted file mode 100644 index cb148b081e..0000000000 --- a/ophyd/_modules/ophyd/positioner.html +++ /dev/null @@ -1,531 +0,0 @@ - - - - - - - - - - - ophyd.positioner — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.positioner

-import logging
-import time
-from functools import partial
-from collections import OrderedDict
-
-from .ophydobj import OphydObject
-from .status import (MoveStatus, wait as status_wait)
-from .utils.epics_pvs import (data_type, data_shape)
-
-logger = logging.getLogger(__name__)
-
-
-
[docs]class PositionerBase(OphydObject): - '''The positioner base class - - Subclass from this to implement your own positioners. - - Note: Subclasses should add an additional 'wait' keyword argument on the - move method. The MoveStatus object returned from PositionerBase can then be - waited on after the subclass finishes the motion configuration. - ''' - - SUB_START = 'start_moving' - SUB_DONE = 'done_moving' - SUB_READBACK = 'readback' - _SUB_REQ_DONE = '_req_done' # requested move finished subscription - _default_sub = SUB_READBACK - - def __init__(self, *, name=None, parent=None, settle_time=0.0, - timeout=None, **kwargs): - super().__init__(name=name, parent=parent, **kwargs) - - self._started_moving = False - self._moving = False - self._position = None - self._settle_time = settle_time - self._timeout = timeout - - @property - def report(self): - rep = super().report - rep['position'] = self.position - return rep - - @property - def settle_time(self): - '''Amount of time to wait after moves to report status completion''' - return self._settle_time - - @settle_time.setter - def settle_time(self, settle_time): - self._settle_time = settle_time - - @property - def timeout(self): - '''Amount of time to wait before to considering a motion as failed''' - return self._timeout - - @timeout.setter - def timeout(self, timeout): - if timeout is None: - self._timeout = None - else: - self._timeout = float(timeout) - - @property - def egu(self): - '''The engineering units (EGU) for positions''' - raise NotImplementedError('Subclass must implement egu') - - @property - def limits(self): - return (0, 0) - - @property - def low_limit(self): - return self.limits[0] - - @property - def high_limit(self): - return self.limits[1] - - def move(self, position, moved_cb=None, timeout=None): - '''Move to a specified position, optionally waiting for motion to - complete. - - Parameters - ---------- - position - Position to move to - moved_cb : callable - Call this callback when movement has finished. This callback - must accept one keyword argument: 'obj' which will be set to - this positioner instance. - timeout : float, optional - Maximum time to wait for the motion. If None, the default timeout - for this positioner is used. - - Returns - ------- - status : MoveStatus - - Raises - ------ - TimeoutError - When motion takes longer than `timeout` - ValueError - On invalid positions - RuntimeError - If motion fails other than timing out - ''' - if timeout is None: - timeout = self._timeout - - self.check_value(position) - - self._run_subs(sub_type=self._SUB_REQ_DONE, success=False) - self._reset_sub(self._SUB_REQ_DONE) - - status = MoveStatus(self, position, timeout=timeout, - settle_time=self._settle_time) - - if moved_cb is not None: - status.finished_cb = partial(moved_cb, obj=self) - # the status object will run this callback when finished - - self.subscribe(status._finished, event_type=self._SUB_REQ_DONE, - run=False) - - return status - - def _done_moving(self, success=True, timestamp=None, value=None, **kwargs): - '''Call when motion has completed. Runs SUB_DONE subscription.''' - if success: - self._run_subs(sub_type=self.SUB_DONE, timestamp=timestamp, - value=value) - - self._run_subs(sub_type=self._SUB_REQ_DONE, success=success, - timestamp=timestamp) - self._reset_sub(self._SUB_REQ_DONE) - - def stop(self): - '''Stops motion''' - self._done_moving(success=False) - - @property - def position(self): - '''The current position of the motor in its engineering units - - Returns - ------- - position : any - ''' - return self._position - - def _set_position(self, value, **kwargs): - '''Set the current internal position, run the readback subscription''' - self._position = value - - timestamp = kwargs.pop('timestamp', time.time()) - self._run_subs(sub_type=self.SUB_READBACK, timestamp=timestamp, - value=value, **kwargs) - - @property - def moving(self): - '''Whether or not the motor is moving - - Returns - ------- - moving : bool - ''' - return self._moving - - def set(self, new_position, *, wait=False, moved_cb=None, timeout=None): - """ - Bluesky-compatible API for controlling movers. - - Parameters - ---------- - new_position : dict - A dictionary of new positions keyed on axes name. This is - symmetric with read such that `mot.set(mot.read())` works as - as expected. - """ - return self.move(new_position, wait=wait, moved_cb=moved_cb, - timeout=timeout) - - def _repr_info(self): - yield from super()._repr_info() - yield ('settle_time', self._settle_time) - yield ('timeout', self._timeout)
- - -
[docs]class SoftPositioner(PositionerBase): - '''A positioner which does not communicate with any hardware - - SoftPositioner 'moves' immediately to the target position when commanded to - do so. - - Parameters - ---------- - limits : (low_limit, high_limit) - Soft limits to use - egu : str, optional - Engineering units (EGU) for a position - source : str, optional - Metadata indicating the source of this positioner's position. Defaults - to 'computed' - ''' - - def __init__(self, *, egu='', limits=None, source='computed', **kwargs): - super().__init__(**kwargs) - - self._egu = egu - if limits is None: - limits = (0, 0) - - self._limits = tuple(limits) - self.source = source - - @property - def limits(self): - return self._limits - - @property - def egu(self): - '''The engineering units (EGU) for positions''' - return self._egu - - def _setup_move(self, position, status): - '''Move requested to position - - This is a SoftPositioner method which allows customization of what - happens when a motion request happens without re-implementing - all of `move`. - - Parameters - ---------- - position : any - Position to move to (already verified by `check_value`) - status : MoveStatus - Status object created by PositionerBase.move() - ''' - # A soft positioner immediately 'moves' to the target position when - # requested. - self._run_subs(sub_type=self.SUB_START, timestamp=time.time()) - - self._started_moving = True - self._moving = False - - self._set_position(position) - self._done_moving() - - def move(self, position, wait=True, timeout=None, moved_cb=None): - '''Move to a specified position, optionally waiting for motion to - complete. - - Parameters - ---------- - position - Position to move to - moved_cb : callable - Call this callback when movement has finished. This callback - must accept one keyword argument: 'obj' which will be set to - this positioner instance. - wait : bool, optional - Wait until motion has completed - timeout : float, optional - Maximum time to wait for a motion - - Returns - ------- - status : MoveStatus - - Raises - ------ - TimeoutError - When motion takes longer than `timeout` - ValueError - On invalid positions - RuntimeError - If motion fails other than timing out - ''' - status = super().move(position, moved_cb=moved_cb, timeout=timeout) - - self._setup_move(position, status) - - if wait: - try: - status_wait(status) - except RuntimeError: - raise RuntimeError('Motion did not complete successfully') - - return status - - def _repr_info(self): - yield from super()._repr_info() - yield ('egu', self._egu) - yield ('limits', self._limits) - yield ('source', self.source) - - def read(self): - d = OrderedDict() - d[self.name] = {'value': self.position, - 'timestamp': time.time()} - return d - - def describe(self): - """Return the description as a dictionary - - Returns - ------- - dict - Dictionary of name and formatted description string - """ - desc = OrderedDict() - desc[self.name] = {'source': str(self.source), - 'dtype': data_type(self.position), - 'shape': data_shape(self.position), - 'units': self.egu, - 'lower_ctrl_limit': self.low_limit, - 'upper_ctrl_limit': self.high_limit, - } - return desc - - def read_configuration(self): - return OrderedDict() - - def describe_configuration(self): - return OrderedDict()
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/pseudopos.html b/ophyd/_modules/ophyd/pseudopos.html deleted file mode 100644 index db0462b704..0000000000 --- a/ophyd/_modules/ophyd/pseudopos.html +++ /dev/null @@ -1,1017 +0,0 @@ - - - - - - - - - - - ophyd.pseudopos — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.pseudopos

-# vi: ts=4 sw=4
-'''
-:mod:`ophyd.control.pseudopos` - Pseudo positioners
-===================================================
-
-.. module:: ophyd.control.pseudopos
-   :synopsis: Pseudo positioner support
-'''
-
-
-import logging
-import time
-import threading
-import functools
-
-from collections import (OrderedDict, namedtuple, Sequence)
-
-from .utils import DisconnectedError
-from .positioner import (PositionerBase, SoftPositioner)
-from .device import Device
-from .status import (wait as status_wait)
-
-logger = logging.getLogger(__name__)
-
-
-
[docs]class PseudoSingle(SoftPositioner): - '''A single axis of a PseudoPositioner - - This should not be instantiated on its own, but rather used as a Component - in a PseudoPositioner subclass. - - Parameters - ---------- - prefix : str, optional - The PV prefix, for compatibility with the Device hierarchy - limits : (low_limit, high_limit) - User-defined limits for this pseudo axis. - egu : str, optional - The engineering units (EGU) for the position - parent : PseudoPositioner instance - The instance of the parent PseudoPositioner - name : str, optional - The name of the positioner - source : str, optional - Metadata indicating the source of this positioner's position. Defaults - to 'computed' - settle_time : float, optional - The amount of time to wait after moves to report status completion - timeout : float, optional - The default timeout to use for motion requests, in seconds. - ''' - - def __init__(self, prefix=None, *, limits=None, egu='', parent=None, - name=None, source='computed', **kwargs): - super().__init__(name=name, parent=parent, limits=limits, - egu=egu, source=source, **kwargs) - - self._target = None - - # The index of this PseudoSingle in the parent PseudoPositioner tuple - # will be set post-instantiation: - self._idx = None - - self._parent.subscribe(self._sub_proxy, event_type=self.SUB_START) - self._parent.subscribe(self._sub_proxy, event_type=self.SUB_DONE) - self._parent.subscribe(self._sub_proxy_idx, - event_type=self.SUB_READBACK) - - def _repr_info(self): - yield from super()._repr_info() - - yield ('idx', self._idx) - - def _sub_proxy(self, obj=None, **kwargs): - '''Parent callbacks such as start of motion, motion finished, etc. will - be simply passed through. - ''' - return self._run_subs(obj=self, **kwargs) - - def _sub_proxy_idx(self, obj=None, value=None, **kwargs): - '''Parent callbacks including a position value will be filtered through - this function and re-broadcast using only the relevant position to this - pseudo axis. - ''' - if hasattr(value, '__getitem__'): - value = value[self._idx] - - return self._run_subs(obj=self, value=value, **kwargs) - - @property - def target(self): - '''Last commanded target position''' - if self._target is None: - return self.position - else: - return self._target - - def sync(self): - '''Synchronize target position with current readback position''' - self._target = None - - def check_value(self, pos): - self._parent.check_single(self, pos) - - @property - def moving(self): - return self._parent.moving - - @property - def position(self): - '''The current position of the motor in its engineering units - - Returns - ------- - position - ''' - return self._parent.position[self._idx] - - def stop(self): - '''Stop motion on the PseudoPositioner''' - return self._parent.stop() - - @property - def _started_moving(self): - '''Has motion started since the motion request? - - This is a property on PseudoSingle, which overrides the default - behavior of Positioner. It reflects the motion status of the - PseudoPositioner as a whole. - ''' - return self._parent._started_moving - - @_started_moving.setter - def _started_moving(self, value): - # Don't allow the base class to specify whether it has started moving - pass - - def _setup_move(self, position, status): - '''PseudoSingle.move overrides SoftPositioner move implementation, so - this method is not called. - ''' - pass - - def move(self, pos, **kwargs): - '''Move this pseudo axis to a specific position. - - See `PseudoPositioner.move_single` for more information. - - Parameters - ---------- - pos : float - Position to move to - kwargs : dict - Passed onto parent.move_single() - ''' - self._target = pos - return self._parent.move_single(self, pos, **kwargs)
- - -def position_argument_wrapper(type_): - '''Wrapper to convert positional arguments to a PositionTuple''' - if type_ not in ('pseudo', 'real'): - raise ValueError("position_type should be either 'pseudo' or 'real'") - - def wrapper(method): - @functools.wraps(method) - def wrapped(self, *args, **kwargs): - if type_ == 'pseudo': - pos, new_kwargs = self.to_pseudo_tuple(*args, **kwargs) - else: - pos, new_kwargs = self.to_real_tuple(*args, **kwargs) - - return method(self, pos, **new_kwargs) - - return wrapped - - return wrapper - - -real_position_argument = position_argument_wrapper('real') -pseudo_position_argument = position_argument_wrapper('pseudo') - -_to_position_tuple_usage_info = '''Positions can be passed in a number of ways. - -As positional arguments: - pseudo.method(px, py, pz, **kwargs) -As a sequence or PseudoPosition/RealPosition: - pseudo.method((px, py, pz), **kwargs) -As kwargs: - pseudo.method(px=1, py=2, pz=3, **kwargs) - -''' - - -def to_position_tuple(cls, *args, **kwargs): - '''Convert user-specified arguments to a Position namedtuple and kwargs - - Example: - Tuple = namedtuple('Tuple', 'px py pz') - - All of the following will return the same thing: - t, kwargs = to_position_tuple(Tuple, px, py, pz, a=4) - t, kwargs = to_position_tuple(Tuple, (px, py, pz), a=4) - t, kwargs = to_position_tuple(Tuple, Tuple(px, py, pz), a=4) - t, kwargs = to_position_tuple(Tuple, px=1, py=2, pz=3, a=4) - - t will be Tuple(px, py, pz), and kwargs will be {'a': 4}. - - Parameters - ---------- - cls : namedtuple - The position class to use. This is likely a RealPosition or a - PseudoPosition from a PseudoPositioner. - args : - User-specified positional arguments - kwargs : dict - User-specified keyword arguments - - Returns - ------- - position_tuple : cls - The position tuple - kwargs : dict - Keyword arguments not related to the position tuple - - Raises - ------ - TypeError - On an empty or invalid namedtuple - ValueError - On a mismatch of parameters - ''' - try: - fields = cls._fields - except AttributeError: - raise TypeError('Invalid position tuple') - - if not fields: - raise TypeError('Invalid position tuple') - - if args and isinstance(args[0], (cls, Sequence)): - # Position is in the first positional argument - if len(args) > 1: - raise ValueError(_to_position_tuple_usage_info + - 'Cannot specify more than one positional ' - 'argument if the first one is a {} ' - ''.format(cls.__name__)) - - position = args[0] - if not isinstance(position, cls): - # Ensure a position tuple is passed back - position = cls(*position) - - return position, kwargs - - elif len(args) == len(fields): - # Position is in positional arguments - return cls(*args), kwargs - - elif len(args) > 0: - # Position is in positional arguments - raise ValueError(_to_position_tuple_usage_info + - 'Wrong number of arguments for {}. ' - 'Got {}, expected {}' - ''.format(cls.__name__, len(args), len(fields))) - - if not kwargs: - # no positional arguments or kwargs, just show usage information - raise ValueError(_to_position_tuple_usage_info) - - # No positional arguments, position described in terms of kwargs - missing_fields = [field for field in fields - if field not in kwargs] - - if missing_fields: - raise ValueError(_to_position_tuple_usage_info + - 'Missing keyword arguments for field names of {}:' - ' {}'.format(cls.__name__, - ', '.join(missing_fields))) - - # separate position tuple kwargs from other kwargs - position_kw = {field: kwargs[field] for field in fields} - other_kw = {key: value for key, value in kwargs.items() - if key not in fields} - position = cls(**position_kw) - return position, other_kw - - -
[docs]class PseudoPositioner(Device, SoftPositioner): - '''A pseudo positioner which can be comprised of multiple positioners - - Parameters - ---------- - prefix : str - The PV prefix for all components of the device - concurrent : bool, optional - If set, all real motors will be moved concurrently. If not, they will - be moved in order of how they were defined initially - read_attrs : sequence of attribute names - the components to include in a normal reading (i.e., in ``read()``) - configuration_attrs : sequence of attribute names - the components to be read less often (i.e., in - ``read_configuration()``) and to adjust via ``configure()`` - name : str, optional - The name of the device - parent : instance or None - The instance of the parent device, if applicable - settle_time : float, optional - The amount of time to wait after moves to report status completion - timeout : float, optional - The default timeout to use for motion requests, in seconds. - ''' - def __init__(self, prefix, *, concurrent=True, read_attrs=None, - configuration_attrs=None, name=None, egu='', **kwargs): - - self._finished_lock = threading.RLock() - self._concurrent = bool(concurrent) - self._finish_thread = None - self._real_waiting = [] - self._move_queue = [] - - if self.__class__ is PseudoPositioner: - raise TypeError('PseudoPositioner must be subclassed with the ' - 'correct signals set in the class definition.') - - super().__init__(prefix, read_attrs=read_attrs, - configuration_attrs=configuration_attrs, - name=name, egu=egu, **kwargs) - - self._real = [getattr(self, attr) - for attr, cpt in self._get_real_positioners()] - self._pseudo = [getattr(self, attr) - for attr, cpt in self._get_pseudo_positioners()] - - if not self._pseudo or not self._real: - raise ValueError('Must have at least 1 positioner and ' - 'pseudo-positioner') - - if not self._egu: - # Make the PseudoPositioner units based on the PseudoSingle - # units - self._egu = self.composite_egu - - self.RealPosition = self._real_position_tuple() - self.PseudoPosition = self._pseudo_position_tuple() - - logger.debug('Real positioners: %s', self._real) - logger.debug('Pseudo positioners: %s', self._pseudo) - - for idx, pseudo in enumerate(self._pseudo): - pseudo._idx = idx - - self._real_cur_pos = OrderedDict((real, None) for real in self._real) - - for real in self._real: - # Subscribe to events from all the real motors and update the - # internal state of their position - real.subscribe(self._real_pos_update, event_type=real.SUB_READBACK, - run=True) - - @property - def composite_egu(self): - '''The composite engineering units (EGU) from all PseudoSingles''' - return ', '.join(pseudo.egu for pseudo in self._pseudo - if pseudo.egu) - - @property - def pseudo_positioners(self): - '''Pseudo positioners instances in a namedtuple - - Returns - ------- - positioner_instances : PseudoPosition - ''' - return self.PseudoPosition(*self._pseudo) - - @property - def real_positioners(self): - '''Real positioners instances in a namedtuple - - Returns - ------- - positioner_instances : RealPosition - ''' - return self.RealPosition(*self._real) - - @classmethod - def _real_position_tuple(cls): - '''A namedtuple for a real motor position - - This is automatically generated at the class-level for all - non-PseudoSingle-based positioners. - ''' - name = cls.__name__ + 'RealPos' - return namedtuple(name, [name for name, cpt in - cls._get_real_positioners()]) - - @classmethod - def _pseudo_position_tuple(cls): - '''A namedtuple for a pseudo motor position - - This is automatically generated at the class-level for all - PseudoSingle-based positioners. - ''' - name = cls.__name__ + 'PseudoPos' - return namedtuple(name, [name for name, cpt in - cls._get_pseudo_positioners()]) - - @classmethod - def _get_pseudo_positioners(cls): - '''Inspect the components and find the pseudo positioners - - All `PseudoSingle` (and subclassed) components will be returned, by - default. - - The built-in mechanism to override the list of pseudo positioners on a - PseudoPositioner is to define '_pseudo' on the class-level. It should - be a list of attribute names. - - Yields - ------ - (attr, component) - ''' - if hasattr(cls, '_pseudo'): - for pseudo in cls._pseudo: - yield pseudo, getattr(cls, pseudo) - else: - for attr, cpt in cls._sig_attrs.items(): - if issubclass(cpt.cls, PseudoSingle): - yield attr, cpt - - @classmethod - def _get_real_positioners(cls): - '''Inspect the components and find the real positioners - - All `Positioner` components which are not `PseudoSingle`s will be - returned, by default. - - The built-in mechanism to override the list of real positioners on a - PseudoPositioner is to define '_real' on the class-level. It should be - a list of attribute names. This allows you to group real motors - logically on the device but not have them included in motions or - calculations. - - Yields - ------ - (attr, component) - ''' - if hasattr(cls, '_real'): - for real in cls._real: - yield real, getattr(cls, real) - else: - for attr, cpt in cls._sig_attrs.items(): - is_pseudo = issubclass(cpt.cls, PseudoSingle) - is_positioner = issubclass(cpt.cls, PositionerBase) - if is_positioner and not is_pseudo: - yield attr, cpt - - def _repr_info(self): - yield from super()._repr_info() - yield ('concurrent', self._concurrent) - - @property - def connected(self): - return all(mtr.connected for mtr in self._real) - - def stop(self): - del self._move_queue[:] - - for pos in self._real: - try: - pos.stop() - except Exception as ex: - logger.error('%s failed to stop positioner: %s', self.name, - pos.name, exc_info=ex) - - super().stop() - - def check_single(self, pseudo_single, single_pos): - '''Check if a new position for a single pseudo positioner is valid''' - idx = pseudo_single._idx - target = list(self.target) - target[idx] = single_pos - return self.check_value(self.PseudoPosition(*target)) - - def to_pseudo_tuple(self, *args, **kwargs): - '''Convert arguments to a PseudoPosition namedtuple and kwargs''' - return to_position_tuple(self.PseudoPosition, *args, **kwargs) - - def to_real_tuple(self, *args, **kwargs): - '''Convert arguments to a RealPosition namedtuple and kwargs''' - return to_position_tuple(self.RealPosition, *args, **kwargs) - - def check_value(self, pseudo_pos): - '''Check if a new position for all pseudo positioners is valid - - First checks limits against those set for individual pseudo axes. - Second, calculates forward(pseudo_pos) => real_pos and checks it - against the real positioners. - - NOTE: If you have limits that are coupled together or are somehow more - complicated than the above procedure, you should redefine this method - in your subclass. - ''' - try: - pseudo_pos = self.PseudoPosition(*pseudo_pos) - except TypeError as ex: - raise ValueError('Not all required values for a PseudoPosition: {}' - '({})'.format(self.PseudoPosition._fields, ex)) - - for pseudo, pos in zip(self._pseudo, pseudo_pos): - low, high = pseudo.limits - if (high > low) and not (low <= pos <= high): - raise ValueError('Position is outside of pseudo single limits:' - ' {}, {} < {} < {}'.format(pseudo.name, low, - pos, high)) - - real_pos = self.forward(pseudo_pos) - for real, pos in zip(self._real, real_pos): - real.check_value(pos) - - @property - def limits(self): - '''All PseudoSingle limits as a namedtuple''' - # NOTE: overrides SoftPositioner implementation - return self.PseudoPosition(*(pseudo.limits for pseudo in self._pseudo)) - - @property - def low_limit(self): - '''All PseudoSingle low limits as a namedtuple''' - # NOTE: overrides SoftPositioner implementation - return self.PseudoPosition(*(pseudo.low_limit - for pseudo in self._pseudo)) - - @property - def high_limit(self): - '''All PseudoSingle high limits as a namedtuple''' - # NOTE: overrides SoftPositioner implementation - return self.PseudoPosition(*(pseudo.high_limit - for pseudo in self._pseudo)) - - @property - def moving(self): - return any(pos.moving for pos in self._real) - - @property - def sequential(self): - '''If sequential is set, motors will move in the sequence they were - defined in (i.e., in series) - ''' - return not self._concurrent - - @property - def concurrent(self): - '''If concurrent is set, motors will move concurrently (in parallel)''' - return self._concurrent - - @property - def _started_moving(self): - return any(pos._started_moving for pos in self._real) - - @_started_moving.setter - def _started_moving(self, value): - # Don't allow the base class to specify whether it has started moving - pass - - @property - def position(self): - '''Pseudo motor position namedtuple''' - return self.inverse(self.real_position) - - @property - def real_position(self): - '''Real motor position namedtuple''' - return self.RealPosition(*self._real_cur_pos.values()) - - def _update_position(self): - '''Update the internal position based on all of the real positioners''' - real_cur_pos = self.real_position - if None in real_cur_pos: - raise DisconnectedError('Not all positioners connected') - - calc_pseudo_pos = self.inverse(real_cur_pos) - self._set_position(calc_pseudo_pos) - return calc_pseudo_pos - - def _real_pos_update(self, obj=None, value=None, **kwargs): - '''Callback: A single real positioner has moved''' - real = obj - self._real_cur_pos[real] = value - # Only update the position if all real motors are connected - try: - self._update_position() - except DisconnectedError: - pass - - def _done_moving(self, success=True): - '''Call this when motion has completed. Runs SUB_DONE subscription.''' - del self._real_waiting[:] - super()._done_moving(success=success) - - def _real_finished(self, obj=None): - '''Callback: A single real positioner has finished moving. - - Used for asynchronous motion, if all have finished moving then fire a - callback (via `Positioner._done_moving`) - ''' - with self._finished_lock: - real = obj - logger.debug('Real motor %s finished moving', real.name) - - if real in self._real_waiting: - self._real_waiting.remove(real) - - if not self._real_waiting: - self._done_moving() - - def move_single(self, pseudo, position, **kwargs): - '''Move one PseudoSingle axis to a position - - All other positioners will use their current setpoint/target value, if - available. Failing that, their current readback value will be used (see - `PseudoSingle.sync` and `PseudoSingle.target`). - - Parameters - ---------- - pseudo : PseudoSingle - PseudoSingle positioner to move - position : float - Position only for the PseudoSingle - kwargs : dict - Passed onto move - ''' - idx = pseudo._idx - target = list(self.target) - target[idx] = position - return self.move(self.PseudoPosition(*target), **kwargs) - - @property - def target(self): - '''Last commanded target positions''' - return self.PseudoPosition(*(pos.target for pos in self._pseudo)) - - def _sequential_move(self, real_pos, timeout=None, **kwargs): - '''Move all real positioners to a certain position, in series''' - self._move_queue[:] = zip(self._real, real_pos) - pending_status = [] - t0 = time.time() - - def move_next(obj=None): - # last motion complete message came from 'obj' - logger.debug('[%s:sequential] move_next called', self.name) - with self._finished_lock: - if pending_status: - last_status = pending_status[-1] - if not last_status.success: - logger.error('Failing due to last motion') - self._done_moving(success=False) - return - - try: - real, position = self._move_queue.pop(0) - except IndexError: - self._done_moving(success=True) - return - - logger.debug('[%s:sequential] Moving next motor: %s', - self.name, real.name) - - elapsed = time.time() - t0 - if timeout is None: - sub_timeout = None - else: - sub_timeout = timeout - elapsed - - logger.debug('[%s:sequential] Moving %s to %s (timeout=%s)', - self.name, real.name, position, sub_timeout) - - if sub_timeout is not None and sub_timeout < 0: - logger.error('Motion timeout') - self._done_moving(success=False) - else: - status = real.move(position, wait=False, - timeout=sub_timeout, - moved_cb=move_next, - **kwargs) - pending_status.append(status) - logger.debug('[%s:sequential] waiting on %s', - self.name, real.name) - - logger.debug('[%s:sequential] started', self.name) - move_next() - - def _concurrent_move(self, real_pos, **kwargs): - '''Move all real positioners to a certain position, in parallel''' - self._real_waiting.extend(self._real) - - for real, value in zip(self._real, real_pos): - logger.debug('[concurrent] Moving %s to %s', real.name, value) - real.move(value, wait=False, moved_cb=self._real_finished, - **kwargs) - - @pseudo_position_argument - def move(self, position, wait=True, timeout=None, moved_cb=None): - '''Move to a specified position, optionally waiting for motion to - complete. - - Parameters - ---------- - position - Pseudo position to move to - moved_cb : callable - Call this callback when movement has finished. This callback must - accept one keyword argument: 'obj' which will be set to this - positioner instance. - timeout : float, optional - Maximum time to wait for the motion. If None, the default timeout - for this positioner is used. - - Returns - ------- - status : MoveStatus - - Raises - ------ - TimeoutError - When motion takes longer than `timeout` - ValueError - On invalid positions - RuntimeError - If motion fails other than timing out - ''' - return super().move(position, wait=wait, timeout=timeout, - moved_cb=moved_cb) - - move.__doc__ = SoftPositioner.move.__doc__ - - def _setup_move(self, position, status): - '''Move requested to position - - This is a customization of SoftPositioner's _setup_move method which - is what gets called when a motion request happens. - - Parameters - ---------- - position : PseudoPosition - Position to move to (already verified by `check_value`) - status : MoveStatus - Status object created by PositionerBase.move() - ''' - # Clear all old statuses for not yet completed real motions - del self._real_waiting[:] - - timeout = status.timeout - real_pos = self.forward(position) - - with self._finished_lock: - # ensure we don't get any motion complete messages before motion - # setup is finished - if self.sequential: - self._sequential_move(real_pos, timeout=timeout) - else: - self._concurrent_move(real_pos, timeout=timeout) - - @pseudo_position_argument - def forward(self, pseudo_pos): - '''Calculate a RealPosition from a given PseudoPosition - - Must be defined on the subclass. - - Parameters - ---------- - pseudo_pos : PseudoPosition - The pseudo position input - - Returns - ------- - real_position : RealPosition - The real position output - ''' - # return self.RealPosition() - raise NotImplementedError() - - @real_position_argument - def inverse(self, real_pos): - '''Calculate a PseudoPosition from a given RealPosition - - Must be defined on the subclass. - - Parameters - ---------- - real_position : RealPosition - The real position input - - Returns - ------- - pseudo_pos : PseudoPosition - The pseudo position output - ''' - # return self.PseudoPosition() - raise NotImplementedError() - - @pseudo_position_argument - def set(self, position, **kwargs): - '''Move to a new position asynchronously - - Parameters - ---------- - position : PseudoPosition - Position for the all of the pseudo axes - - Returns - ------- - status : MoveStatus - ''' - return super().set(position, **kwargs)
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/pv_positioner.html b/ophyd/_modules/ophyd/pv_positioner.html deleted file mode 100644 index 58b082acd3..0000000000 --- a/ophyd/_modules/ophyd/pv_positioner.html +++ /dev/null @@ -1,497 +0,0 @@ - - - - - - - - - - - ophyd.pv_positioner — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.pv_positioner

-# vi: ts=4 sw=4
-'''
-:mod:`ophyd.control.pvpositioner` - Ophyd PV positioners
-========================================================
-
-.. module:: ophyd.control.pvpositioner
-   :synopsis:
-'''
-
-import logging
-
-from epics.pv import fmt_time
-
-from .device import Device
-from .positioner import PositionerBase
-from .status import wait as status_wait
-
-logger = logging.getLogger(__name__)
-
-
-
[docs]class PVPositioner(Device, PositionerBase): - '''A Positioner which is controlled using multiple user-defined signals - - Keyword arguments are passed through to the base class, Positioner - - Parameters - ---------- - prefix : str, optional - The device prefix used for all sub-positioners. This is optional as it - may be desirable to specify full PV names for PVPositioners. - limits : 2-element sequence, optional - (low_limit, high_limit) - name : str - The device name - egu : str, optional - The engineering units (EGU) for the position - settle_time : float, optional - The amount of time to wait after moves to report status completion - timeout : float, optional - The default timeout to use for motion requests, in seconds. - - Attributes - ---------- - setpoint : Signal - The setpoint (request) signal - readback : Signal or None - The readback PV (e.g., encoder position PV) - actuate : Signal or None - The actuation PV to set when movement is requested - actuate_value : any, optional - The actuation value, sent to the actuate signal when motion is - requested - stop_signal : Signal or None - The stop PV to set when motion should be stopped - stop_value : any, optional - The value sent to stop_signal when a stop is requested - egu : str, optional - The engineering units (EGU) for a position - done : Signal - A readback value indicating whether motion is finished - done_val : any, optional - The value that the done pv should be when motion has completed - put_complete : bool, optional - If set, the specified PV should allow for asynchronous put completion - to indicate motion has finished. If `actuate` is specified, it will be - used for put completion. Otherwise, the `setpoint` will be used. See - the `-c` option from `caput` for more information. - ''' - - setpoint = None # TODO: should add limits=True - readback = None - actuate = None - actuate_value = 1 - - stop_signal = None - stop_value = 1 - - done = None - done_value = 1 - put_complete = False - - def __init__(self, prefix='', *, limits=None, name=None, read_attrs=None, - configuration_attrs=None, parent=None, egu='', **kwargs): - super().__init__(prefix=prefix, read_attrs=read_attrs, - configuration_attrs=configuration_attrs, - name=name, parent=parent, **kwargs) - - if self.__class__ is PVPositioner: - raise TypeError('PVPositioner must be subclassed with the correct ' - 'signals set in the class definition.') - - self._egu = egu - - if limits is not None: - self._limits = tuple(limits) - else: - self._limits = None - - if self.readback is not None: - self.readback.subscribe(self._pos_changed) - elif self.setpoint is not None: - self.setpoint.subscribe(self._pos_changed) - else: - raise ValueError('A setpoint or a readback must be specified') - - if self.done is None and not self.put_complete: - msg = ('PVPositioner {} is mis-configured. A "done" Signal must be' - ' provided or use PVPositionerPC (which uses put completion' - ' to determine when motion has completed).' - ''.format(self.name)) - raise ValueError(msg) - - if self.done is not None: - self.done.subscribe(self._move_changed) - - @property - def egu(self): - '''The engineering units (EGU) for a position''' - return self._egu - - @property - def put_complete(self): - return isinstance(self, PVPositionerPC) - - def check_value(self, pos): - '''Check that the position is within the soft limits''' - if self.limits is not None: - low, high = self.limits - if low != high and not (low <= pos <= high): - raise ValueError('{} outside of user-specified limits' - ''.format(pos)) - else: - self.setpoint.check_value(pos) - - @property - def moving(self): - '''Whether or not the motor is moving - - If a `done` PV is specified, it will be read directly to get the motion - status. If not, it determined from the internal state of PVPositioner. - - Returns - ------- - bool - ''' - if self.done is not None: - dval = self.done.get(use_monitor=False) - return (dval != self.done_value) - else: - return self._moving - - def _setup_move(self, position): - '''Move and do not wait until motion is complete (asynchronous)''' - logger.debug('%s.setpoint = %s', self.name, position) - self.setpoint.put(position, wait=True) - if self.actuate is not None: - logger.debug('%s.actuate = %s', self.name, self.actuate_value) - self.actuate.put(self.actuate_value, wait=False) - - def move(self, position, wait=True, timeout=None, moved_cb=None): - '''Move to a specified position, optionally waiting for motion to - complete. - - Parameters - ---------- - position - Position to move to - moved_cb : callable - Call this callback when movement has finished. This callback must - accept one keyword argument: 'obj' which will be set to this - positioner instance. - timeout : float, optional - Maximum time to wait for the motion. If None, the default timeout - for this positioner is used. - - Returns - ------- - status : MoveStatus - - Raises - ------ - TimeoutError - When motion takes longer than `timeout` - ValueError - On invalid positions - RuntimeError - If motion fails other than timing out - ''' - status = super().move(position, timeout=timeout, moved_cb=moved_cb) - - has_done = self.done is not None - if not has_done: - moving_val = 1 - self.done_value - self._move_changed(value=self.done_value) - self._move_changed(value=moving_val) - - try: - self._setup_move(position) - if wait: - status_wait(status) - except KeyboardInterrupt: - self.stop() - raise - - return status - - def _move_changed(self, timestamp=None, value=None, sub_type=None, - **kwargs): - was_moving = self._moving - self._moving = (value != self.done_value) - - started = False - if not self._started_moving: - started = self._started_moving = (not was_moving and self._moving) - logger.debug('[ts=%s] %s started moving: %s', fmt_time(timestamp), - self.name, started) - - logger.debug('[ts=%s] %s moving: %s (value=%s)', fmt_time(timestamp), - self.name, self._moving, value) - - if started: - self._run_subs(sub_type=self.SUB_START, timestamp=timestamp, - value=value, **kwargs) - - if not self.put_complete: - # In the case of put completion, motion complete - if was_moving and not self._moving: - self._done_moving(success=True, timestamp=timestamp, - value=value) - - def _pos_changed(self, timestamp=None, value=None, **kwargs): - '''Callback from EPICS, indicating a change in position''' - self._set_position(value) - - def stop(self): - if self.stop_signal is not None: - self.stop_signal.put(self.stop_value, wait=False) - super().stop() - - @property - def report(self): - rep = super().report - rep['pv'] = self.readback.pvname - return rep - - @property - def limits(self): - if self._limits is not None: - return tuple(self._limits) - else: - return self.setpoint.limits - - def _repr_info(self): - yield from super()._repr_info() - - yield ('limits', self._limits) - yield ('egu', self._egu) - - def _done_moving(self, **kwargs): - has_done = self.done is not None - if not has_done: - self._move_changed(value=self.done_value) - - super()._done_moving(**kwargs)
- - -class PVPositionerPC(PVPositioner): - def __init__(self, *args, **kwargs): - if self.__class__ is PVPositionerPC: - raise TypeError('PVPositionerPC must be subclassed with the ' - 'correct signals set in the class definition.') - - super().__init__(*args, **kwargs) - - def _setup_move(self, position): - '''Move and do not wait until motion is complete (asynchronous)''' - def done_moving(**kwargs): - logger.debug('%s async motion done', self.name) - self._done_moving(success=True) - - if self.done is None: - # No done signal, so we rely on put completion - moving_val = 1 - self.done_value - self._move_changed(value=moving_val) - - logger.debug('%s.setpoint = %s', self.name, position) - - if self.actuate is not None: - self.setpoint.put(position, wait=True) - - logger.debug('%s.actuate = %s', self.name, self.actuate_value) - self.actuate.put(self.actuate_value, wait=False, - callback=done_moving) - else: - self.setpoint.put(position, wait=False, - callback=done_moving) -
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/scaler.html b/ophyd/_modules/ophyd/scaler.html deleted file mode 100644 index ab83d6039b..0000000000 --- a/ophyd/_modules/ophyd/scaler.html +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - - - ophyd.scaler — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.scaler

-
-import logging
-
-from collections import OrderedDict
-
-from .signal import (EpicsSignal, EpicsSignalRO)
-from .device import Device
-from .device import (Component as C, DynamicDeviceComponent as DDC)
-
-logger = logging.getLogger(__name__)
-
-
-def _scaler_fields(attr_base, field_base, range_, **kwargs):
-    defn = OrderedDict()
-    for i in range_:
-        attr = '{attr}{i}'.format(attr=attr_base, i=i)
-        suffix = '{field}{i}'.format(field=field_base, i=i)
-        defn[attr] = (EpicsSignalRO, suffix, kwargs)
-
-    return defn
-
-
-
[docs]class EpicsScaler(Device): - '''SynApps Scaler Record interface''' - - count = C(EpicsSignal, '.CNT', trigger_value=1) - count_mode = C(EpicsSignal, '.CONT', string=True) - time = C(EpicsSignal, '.T') - preset_time = C(EpicsSignal, '.TP') - auto_count_time = C(EpicsSignal, '.TP1') - channels = DDC(_scaler_fields('chan', '.S', range(1, 33))) - presets = DDC(_scaler_fields('preset', '.PR', range(1, 33))) - gates = DDC(_scaler_fields('gate', '.G', range(1, 33))) - - def __init__(self, prefix, *, read_attrs=None, configuration_attrs=None, - name=None, parent=None, **kwargs): - if read_attrs is None: - read_attrs = ['channels', 'time'] - - if configuration_attrs is None: - configuration_attrs = ['preset_time', 'presets', 'gates'] - - super().__init__(prefix, read_attrs=read_attrs, - configuration_attrs=configuration_attrs, - name=name, parent=parent, **kwargs) - - self.stage_sigs.update([(self.count_mode, 0)])
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_modules/ophyd/signal.html b/ophyd/_modules/ophyd/signal.html deleted file mode 100644 index f163467042..0000000000 --- a/ophyd/_modules/ophyd/signal.html +++ /dev/null @@ -1,1120 +0,0 @@ - - - - - - - - - - - ophyd.signal — ophyd documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - -
-
- - - - - - -
- -
-
-
-
- -

Source code for ophyd.signal

-# vi: ts=4 sw=4
-import logging
-import time
-
-import numpy as np
-import epics
-
-from .utils import (ReadOnlyError, LimitError)
-from .utils.epics_pvs import (pv_form, waveform_to_string,
-                              raise_if_disconnected, data_type, data_shape)
-from .ophydobj import OphydObject
-from .status import Status
-from .utils import set_and_wait
-
-
-logger = logging.getLogger(__name__)
-
-
-
[docs]class Signal(OphydObject): - '''A signal, which can have a read-write or read-only value. - - - Parameters - ---------- - value : any, optional - The initial value - timestamp : float, optional - The timestamp associated with the initial value. Defaults to the - current local time. - tolerance : any, optional - The absolute tolerance associated with the value - rtolerance : any, optional - The relative tolerance associated with the value, used in - set_and_wait as follows: - absolute(setpoint - readback) <= (tolerance + rtolerance * - absolute(readback)) - - Attributes - ---------- - rtolerance : any, optional - The relative tolerance associated with the value - ''' - SUB_VALUE = 'value' - _default_sub = SUB_VALUE - - def __init__(self, *, value=None, timestamp=None, name=None, parent=None, - tolerance=None, rtolerance=None): - super().__init__(name=name, parent=parent) - - self._readback = value - - if timestamp is None: - timestamp = time.time() - - self._timestamp = timestamp - self._set_thread = None - self._tolerance = tolerance - # self.tolerance is a property - self.rtolerance = rtolerance - -
[docs] def trigger(self): - '''Call that is used by bluesky prior to read()''' - # NOTE: this is a no-op that exists here for bluesky purposes - # it may need to be moved in the future - d = Status(self) - d._finished() - return d
- -
[docs] def wait_for_connection(self, timeout=0.0): - '''Wait for the underlying signals to initialize or connect''' - pass
- - @property - def timestamp(self): - '''Timestamp of the readback value''' - return self._timestamp - - @property - def tolerance(self): - '''The absolute tolerance associated with the value.''' - return self._tolerance - - @tolerance.setter - def tolerance(self, tolerance): - self._tolerance = tolerance - - def _repr_info(self): - yield from super()._repr_info() - value = self.value - if value is not None: - yield ('value', value) - if self.timestamp is not None: - yield ('timestamp', self.timestamp) - if self.tolerance is not None: - yield ('tolerance', self.tolerance) - if self.rtolerance is not None: - yield ('rtolerance', self.rtolerance) - -
[docs] def get(self, **kwargs): - '''The readback value''' - return self._readback
- -
[docs] def put(self, value, *, timestamp=None, force=False, **kwargs): - '''Put updates the internal readback value - - The value is optionally checked first, depending on the value of force. - In addition, VALUE subscriptions are run. - - Extra kwargs are ignored (for API compatibility with EpicsSignal kwargs - pass through). - - Parameters - ---------- - value : any - Value to set - timestamp : float, optional - The timestamp associated with the value, defaults to time.time() - force : bool, optional - Check the value prior to setting it, defaults to False - - ''' - - # TODO: consider adding set_and_wait here as a kwarg - if not force: - self.check_value(value) - - old_value = self._readback - self._readback = value - - if timestamp is None: - timestamp = time.time() - - self._timestamp = timestamp - self._run_subs(sub_type=self.SUB_VALUE, old_value=old_value, - value=value, timestamp=self._timestamp)
- -
[docs] def set(self, value, *, timeout=None, settle_time=None): - '''Set is like `put`, but is here for bluesky compatibility - - Returns - ------- - st : Status - This status object will be finished upon return in the - case of basic soft Signals - ''' - def set_thread(): - nonlocal timeout - - if timeout is None: - timeout = 10 - # TODO set_and_wait does not support a timeout of None - # and 10 is its default timeout - - try: - set_and_wait(self, value, timeout=timeout, atol=self.tolerance, - rtol=self.rtolerance) - except TimeoutError: - logger.debug('set_and_wait(%r, %s) timed out', self.name, - value) - success = False - except Exception as ex: - logger.debug('set_and_wait(%r, %s) failed', self.name, value, - exc_info=ex) - success = False - else: - logger.debug('set_and_wait(%r, %s) succeeded => %s', self.name, - value, self.value) - success = True - if settle_time is not None: - time.sleep(settle_time) - finally: - st._finished(success=success) - self._set_thread = None - - if self._set_thread is not None: - raise RuntimeError('Another set() call is still in progress') - - st = Status(self) - self._status = st - self._set_thread = epics.ca.CAThread(target=set_thread) - self._set_thread.daemon = True - self._set_thread.start() - return self._status
- - @property - def value(self): - '''The signal's value''' - return self.get() - - @value.setter - def value(self, value): - self.put(value) - -
[docs] def read(self): - '''Put the status of the signal into a simple dictionary format - for data acquisition - - Returns - ------- - dict - ''' - return {self.name: {'value': self.get(), - 'timestamp': self.timestamp}}
- -
[docs] def describe(self): - """Return the description as a dictionary""" - return {self.name: {'source': 'SIM:{}'.format(self.name), - 'dtype': 'number', - 'shape': []}}
- -
[docs] def read_configuration(self): - "Subclasses may customize this." - return self.read()
- -
[docs] def describe_configuration(self): - "Subclasses may customize this." - return self.describe()
- - @property - def limits(self): - # Always override, never extend this - return (0, 0) - - @property - def low_limit(self): - return self.limits[0] - - @property - def high_limit(self): - return self.limits[1]
- - -class DerivedSignal(Signal): - def __init__(self, derived_from, *, name=None, parent=None, **kwargs): - '''A signal which is derived from another one - - Parameters - ---------- - derived_from : Signal - The signal from which this one is derived - name : str, optional - The signal name - parent : Device, optional - The parent device - ''' - super().__init__(name=name, parent=parent, **kwargs) - - self._derived_from = derived_from - if self._derived_from.connected: - # set up the initial timestamp reporting, if connected - self._timestamp = self._derived_from.timestamp - - @property - def derived_from(self): - '''Signal that this one is derived from''' - return self._derived_from - - def describe(self): - '''Description based on the original signal description''' - desc = self._derived_from.describe()[self._derived_from.name] - desc['derived_from'] = self._derived_from.name - return {self.name: desc} - - def get(self, **kwargs): - '''Get the value from the original signal''' - value = self._derived_from.get(**kwargs) - self._timestamp = self._derived_from.timestamp - return value - - def put(self, value, **kwargs): - '''Put the value to the original signal''' - res = self._derived_from.put(value, **kwargs) - self._timestamp = self._derived_from.timestamp - return res - - def wait_for_connection(self, timeout=0.0): - '''Wait for the original signal to connect''' - return self._derived_from.wait_for_connection(timeout=timeout) - - @property - def connected(self): - '''Mirrors the connection state of the original signal''' - return self._derived_from.connected - - @property - def limits(self): - '''Limits from the original signal''' - return self._derived_from.limits - - def _repr_info(self): - yield from super()._repr_info() - yield ('derived_from', self._derived_from) - - -
[docs]class EpicsSignalBase(Signal): - '''A read-only EpicsSignal -- that is, one with no `write_pv` - - Keyword arguments are passed on to the base class (Signal) initializer - - Parameters - ---------- - read_pv : str - The PV to read from - pv_kw : dict, optional - Keyword arguments for epics.PV(**pv_kw) - auto_monitor : bool, optional - Use automonitor with epics.PV - name : str, optional - Name of signal. If not given defaults to read_pv - string : bool, optional - Attempt to cast the EPICS PV value to a string by default - ''' - def __init__(self, read_pv, *, - pv_kw=None, - string=False, - auto_monitor=False, - name=None, - **kwargs): - - if 'rw' in kwargs: - if kwargs['rw']: - new_class = EpicsSignal - else: - new_class = EpicsSignalRO - - raise RuntimeError('rw is no longer an option for EpicsSignal. ' - 'Based on your setting of `rw`, you should be ' - 'using this class: {}' - ''.format(new_class.__name__)) - - if pv_kw is None: - pv_kw = dict() - - self._read_pv = None - self._string = bool(string) - self._pv_kw = pv_kw - self._auto_monitor = auto_monitor - - if name is None: - name = read_pv - - super().__init__(name=name, **kwargs) - - self._read_pv = epics.PV(read_pv, form=pv_form, - auto_monitor=auto_monitor, - **pv_kw) - - self._read_pv.add_callback(self._read_changed, - run_now=self._read_pv.connected) - - @property - def as_string(self): - '''Attempt to cast the EPICS PV value to a string by default''' - return self._string - - @property - @raise_if_disconnected - def precision(self): - '''The precision of the read PV, as reported by EPICS''' - return self._read_pv.precision - - @property - @raise_if_disconnected - def enum_strs(self): - """List of strings if PV is an enum type""" - return self._read_pv.enum_strs - - def _reinitialize_pv(self, old_instance, **pv_kw): - '''Reinitialize a PV instance - - Takes care of clearing callbacks, setting PV form, and ensuring - connectivity status remains the same - - Parameters - ---------- - old_instance : epics.PV - The old PV instance - pv_kw : kwargs - The parameters to pass to the initializer - ''' - - old_instance.clear_callbacks() - was_connected = old_instance.connected - - new_instance = epics.PV(old_instance.pvname, form=old_instance.form, - **pv_kw) - if was_connected: - new_instance.wait_for_connection() - - return new_instance - - def subscribe(self, callback, event_type=None, run=True): - if event_type is None: - event_type = self._default_sub - - # check if this is a setpoint subscription, and we are not explicitly - # auto monitoring - obj_mon = (event_type == self.SUB_VALUE and - self._auto_monitor is not True) - - # but if the epics.PV has already connected and determined that it - # should automonitor (based on the maximum automonitor length), then we - # don't need to reinitialize it - if obj_mon and not self._read_pv.auto_monitor: - self._read_pv = self._reinitialize_pv(self._read_pv, - auto_monitor=True, - **self._pv_kw) - self._read_pv.add_callback(self._read_changed, - run_now=self._read_pv.connected) - - return super().subscribe(callback, event_type=event_type, run=run) - - def wait_for_connection(self, timeout=1.0): - if not self._read_pv.connected: - if not self._read_pv.wait_for_connection(timeout=timeout): - raise TimeoutError('Failed to connect to %s' % - self._read_pv.pvname) - - @property - @raise_if_disconnected - def timestamp(self): - '''Timestamp of readback PV, according to EPICS''' - if not self._read_pv.auto_monitor: - # force updating the timestamp when not using auto monitoring - self._read_pv.get_timevars() - return self._read_pv.timestamp - - @property - def pvname(self): - '''The readback PV name''' - return self._read_pv.pvname - - def _repr_info(self): - yield ('read_pv', self._read_pv.pvname) - yield from super()._repr_info() - yield ('pv_kw', self._pv_kw) - yield ('auto_monitor', self._auto_monitor) - yield ('string', self._string) - - @property - def connected(self): - return self._read_pv.connected - - @property - @raise_if_disconnected - def limits(self): - '''The read PV limits''' - - # This overrides the base limits - pv = self._read_pv - pv.get_ctrlvars() - return (pv.lower_ctrl_limit, pv.upper_ctrl_limit) - -
[docs] def get(self, *, as_string=None, **kwargs): - '''Get the readback value through an explicit call to EPICS - - Parameters - ---------- - count : int, optional - Explicitly limit count for array data - as_string : bool, optional - Get a string representation of the value, defaults to as_string - from this signal, optional - as_numpy : bool - Use numpy array as the return type for array data. - timeout : float, optional - maximum time to wait for value to be received. - (default = 0.5 + log10(count) seconds) - use_monitor : bool, optional - to use value from latest monitor callback or to make an - explicit CA call for the value. (default: True) - ''' - # NOTE: in the future this should be improved to grab self._readback - # instead, when all of the kwargs match up - if as_string is None: - as_string = self._string - - if not self._read_pv.connected: - if not self._read_pv.wait_for_connection(): - raise TimeoutError('Failed to connect to %s' % - self._read_pv.pvname) - - ret = self._read_pv.get(as_string=as_string, **kwargs) - - if as_string: - return waveform_to_string(ret) - - return ret
- - def _fix_type(self, value): - if self._string: - value = waveform_to_string(value) - - return value - - def _read_changed(self, value=None, timestamp=None, **kwargs): - '''A callback indicating that the read value has changed''' - if timestamp is None: - timestamp = time.time() - - value = self._fix_type(value) - super().put(value, timestamp=timestamp, force=True) - -
[docs] def describe(self): - """Return the description as a dictionary - - Returns - ------- - dict - Dictionary of name and formatted description string - """ - desc = {'source': 'PV:{}'.format(self._read_pv.pvname), } - - val = self.value - desc['dtype'] = data_type(val) - desc['shape'] = data_shape(val) - - try: - desc['precision'] = int(self.precision) - except (ValueError, TypeError): - pass - desc['units'] = self._read_pv.units - - if hasattr(self, '_write_pv'): - desc['lower_ctrl_limit'] = self._write_pv.lower_ctrl_limit - desc['upper_ctrl_limit'] = self._write_pv.upper_ctrl_limit - - if self.enum_strs: - desc['enum_strs'] = list(self.enum_strs) - - return {self.name: desc}
- - @raise_if_disconnected -
[docs] def read(self): - """Read the signal and format for data collection - - Returns - ------- - dict - Dictionary of value timestamp pairs - """ - - return {self.name: {'value': self.value, - 'timestamp': self.timestamp}}
- - -
[docs]class EpicsSignalRO(EpicsSignalBase): - '''A read-only EpicsSignal -- that is, one with no `write_pv` - - Keyword arguments are passed on to the base class (Signal) initializer - - Parameters - ---------- - read_pv : str - The PV to read from - pv_kw : dict, optional - Keyword arguments for epics.PV(**pv_kw) - limits : bool, optional - Check limits prior to writing value - auto_monitor : bool, optional - Use automonitor with epics.PV - name : str, optional - Name of signal. If not given defaults to read_pv - ''' - def put(self, *args, **kwargs): - raise ReadOnlyError('Read-only signals cannot be put to') - - def set(self, *args, **kwargs): - raise ReadOnlyError('Read-only signals cannot be set')
- - -
[docs]class EpicsSignal(EpicsSignalBase): - '''An EPICS signal, comprised of either one or two EPICS PVs - - Keyword arguments are passed on to the base class (Signal) initializer - - Parameters - ---------- - read_pv : str - The PV to read from - write_pv : str, optional - The PV to write to if different from the read PV - pv_kw : dict, optional - Keyword arguments for epics.PV(**pv_kw) - limits : bool, optional - Check limits prior to writing value - auto_monitor : bool, optional - Use automonitor with epics.PV - name : str, optional - Name of signal. If not given defaults to read_pv - put_complete : bool, optional - Use put completion when writing the value - tolerance : any, optional - The absolute tolerance associated with the value. - If specified, this overrides any precision information calculated from - the write PV - rtolerance : any, optional - The relative tolerance associated with the value - ''' - SUB_SETPOINT = 'setpoint' - - def __init__(self, read_pv, write_pv=None, *, pv_kw=None, - put_complete=False, string=False, limits=False, - auto_monitor=False, name=None, **kwargs): - - self._write_pv = None - self._use_limits = bool(limits) - self._put_complete = put_complete - - self._setpoint = None - self._setpoint_ts = None - - if write_pv == read_pv: - write_pv = None - - super().__init__(read_pv, pv_kw=pv_kw, string=string, - auto_monitor=auto_monitor, name=name, **kwargs) - - if write_pv is not None: - self._write_pv = epics.PV(write_pv, form=pv_form, - auto_monitor=self._auto_monitor, - **self._pv_kw) - self._write_pv.add_callback(self._write_changed, - run_now=self._write_pv.connected) - else: - self._write_pv = self._read_pv - - def subscribe(self, callback, event_type=None, run=True): - if event_type is None: - event_type = self._default_sub - - # check if this is a setpoint subscription, and we are not explicitly - # auto monitoring - obj_mon = (event_type == self.SUB_SETPOINT and - self._auto_monitor is not True) - - # but if the epics.PV has already connected and determined that it - # should automonitor (based on the maximum automonitor length), then we - # don't need to reinitialize it - if obj_mon and not self._write_pv.auto_monitor: - self._write_pv = self._reinitialize_pv(self._write_pv, - auto_monitor=True, - **self._pv_kw) - self._write_pv.add_callback(self._write_changed, - run_now=self._write_pv.connected) - - return super().subscribe(callback, event_type=event_type, run=run) - - def wait_for_connection(self, timeout=1.0): - super().wait_for_connection(timeout=timeout) - - if self._write_pv is not None and not self._write_pv.connected: - if not self._write_pv.wait_for_connection(timeout=timeout): - raise TimeoutError('Failed to connect to %s' % - self._write_pv.pvname) - - @property - @raise_if_disconnected - def tolerance(self): - '''The tolerance of the write PV, as reported by EPICS - - Can be overidden by the user at the EpicsSignal level. - - Returns - ------- - tolerance : float or None - Using the write PV's precision: - If precision == 0, tolerance will be None - If precision > 0, calculated to be 10**(-precision) - ''' - # NOTE: overrides Signal.tolerance property - if self._tolerance is not None: - return self._tolerance - - precision = self.precision - if precision == 0 or precision is None: - return None - - return 10. ** (-precision) - - @tolerance.setter - def tolerance(self, tolerance): - self._tolerance = tolerance - - @property - @raise_if_disconnected - def setpoint_ts(self): - '''Timestamp of setpoint PV, according to EPICS''' - if not self._write_pv.auto_monitor: - # force updating the timestamp when not using auto monitoring - self._write_pv.get_timevars() - return self._write_pv.timestamp - - @property - def setpoint_pvname(self): - '''The setpoint PV name''' - return self._write_pv.pvname - - def _repr_info(self): - yield from super()._repr_info() - if self._write_pv is not None: - yield ('write_pv', self._write_pv.pvname) - - yield ('limits', self._use_limits) - yield ('put_complete', self._put_complete) - - @property - def connected(self): - return self._read_pv.connected and self._write_pv.connected - - @property - @raise_if_disconnected - def limits(self): - '''The write PV limits''' - # read_pv_limits = super().limits - pv = self._write_pv - pv.get_ctrlvars() - return (pv.lower_ctrl_limit, pv.upper_ctrl_limit) - -
[docs] def check_value(self, value): - '''Check if the value is within the setpoint PV's control limits - - Raises - ------ - ValueError - ''' - super().check_value(value) - - if value is None: - raise ValueError('Cannot write None to epics PVs') - if not self._use_limits: - return - - low_limit, high_limit = self.limits - if low_limit >= high_limit: - return - - if not (low_limit <= value <= high_limit): - raise LimitError('Value {} outside of range: [{}, {}]' - .format(value, low_limit, high_limit))
- - @raise_if_disconnected -
[docs] def get_setpoint(self, **kwargs): - '''Get the setpoint value (use only if the setpoint PV and the readback - PV differ) - - Keyword arguments are passed on to epics.PV.get() - ''' - setpoint = self._write_pv.get(**kwargs) - return self._fix_type(setpoint)
- - def _write_changed(self, value=None, timestamp=None, **kwargs): - '''A callback indicating that the write value has changed''' - if timestamp is None: - timestamp = time.time() - - value = self._fix_type(value) - - old_value = self._setpoint - self._setpoint = value - self._setpoint_ts = timestamp - - if self._read_pv is not self._write_pv: - self._run_subs(sub_type=self.SUB_SETPOINT, - old_value=old_value, value=value, - timestamp=self._setpoint_ts, **kwargs) - -
[docs] def put(self, value, force=False, **kwargs): - '''Using channel access, set the write PV to `value`. - - Keyword arguments are passed on to callbacks - - Parameters - ---------- - value : any - The value to set - force : bool, optional - Skip checking the value in Python first - ''' - if not force: - self.check_value(value) - - if not self._write_pv.connected: - if not self._write_pv.wait_for_connection(): - raise TimeoutError('Failed to connect to %s' % - self._write_pv.pvname) - - use_complete = kwargs.pop('use_complete', self._put_complete) - - self._write_pv.put(value, use_complete=use_complete, - **kwargs) - - old_value = self._setpoint - self._setpoint = value - - if self._read_pv is self._write_pv: - # readback and setpoint PV are one in the same, so update the - # readback as well - super().put(value, timestamp=time.time(), force=True) - self._run_subs(sub_type=self.SUB_SETPOINT, - old_value=old_value, value=value, - timestamp=self.timestamp, **kwargs)
- -
[docs] def set(self, value, *, timeout=None, settle_time=None): - '''Set is like `EpicsSignal.put`, but is here for bluesky compatibility - - If put completion is used for this EpicsSignal, the status object will - complete once EPICS reports the put has completed. - - Otherwise, set_and_wait will be used (as in `Signal.set`) - - Parameters - ---------- - value : any - timeout : float, optional - Maximum time to wait. Note that set_and_wait does not support - an infinite timeout. - settle_time: float, optional - Delay after the set() has completed to indicate completion - to the caller - - Returns - ------- - st : Status - - See Also - -------- - `Signal.set` - ''' - if not self._put_complete: - return super().set(value, timeout=timeout, settle_time=settle_time) - - # using put completion: - # timeout and settle time is handled by the status object. - st = Status(self, timeout=timeout, settle_time=settle_time) - - def put_callback(**kwargs): - st._finished(success=True) - - self.put(value, use_complete=True, callback=put_callback) - return st
- - @property - def setpoint(self): - '''The setpoint PV value''' - return self.get_setpoint() - - @setpoint.setter - def setpoint(self, value): - self.put(value)
- - -
[docs]class AttributeSignal(Signal): - '''Signal derived from a Python object instance's attribute - - Parameters - ---------- - attr : str - The dotted attribute name, relative to this signal's parent. - name : str, optional - The signal name - parent : Device, optional - The parent device instance - ''' - def __init__(self, attr, *, name=None, parent=None, **kwargs): - super().__init__(name=name, parent=parent, **kwargs) - - if '.' in attr: - self.attr_base, self.attr = attr.rsplit('.', 1) - else: - self.attr_base, self.attr = None, attr - - @property - def full_attr(self): - '''The full attribute name''' - if not self.attr_base: - return self.attr - else: - return '.'.join((self.attr_base, self.attr)) - - @property - def base(self): - '''The parent instance which has the final attribute''' - if self.attr_base is None: - return self.parent - - obj = self.parent - for i, part in enumerate(self.attr_base.split('.')): - try: - obj = getattr(obj, part) - except AttributeError as ex: - attr = '.'.join(self.parent_attr[:i + 1]) - raise AttributeError('{} ({})'.format(attr, ex)) - - return obj - - def get(self, **kwargs): - return getattr(self.base, self.attr) - - def put(self, value, **kwargs): - return setattr(self.base, self.attr, value) - - def describe(self): - value = self.value - desc = {'source': 'PY:{}.{}'.format(self.parent.name, self.full_attr), - 'dtype': data_type(value), - 'shape': data_shape(value), - } - return {self.name: desc}
- - -
[docs]class ArrayAttributeSignal(AttributeSignal): - '''An AttributeSignal which is cast to an ndarray on get - - This is used where data_type and data_shape may otherwise fail to determine - how to store the data into metadatastore. - ''' - def get(self, **kwargs): - return np.asarray(super().get(**kwargs))
-
- -
-
-
- - -
- -
-

- © Copyright 2014, Brookhaven National Lab. - -

-
- Built with Sphinx using a theme provided by Read the Docs. - -
- -
-
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/OEP/OEP_001.rst.txt b/ophyd/_sources/OEP/OEP_001.rst.txt deleted file mode 100644 index a4d7032ec9..0000000000 --- a/ophyd/_sources/OEP/OEP_001.rst.txt +++ /dev/null @@ -1,52 +0,0 @@ -=============================== -OEP 1 : AD refactor/unification -=============================== - - -.. contents:: - :local: - -Status -====== - -**Discussion** - -Branches and Pull requests -========================== - - - https://gist.github.com/danielballan/61fd3448f50027423a54 - -Abstract -======== - -Merge the two AreaDetector implementations. - -Detailed description -==================== - -Requirements ------------- - - - support full BlueSky API - - interact with filestore (may be super-ceded by FS integration at c-level) - - provide access to all PVs and plugins on the EPICS layer area - detector - - set up AD pipelines - - frame squashing - - be able to change at run-time what is inserted into the result of - ``read`` (ex, just return ROI values without saving full data) - - deal with dark-frames - - 'frequency' attribute to set acquire time - -Implementation -============== - -Backward compatibility -====================== - -None, break all the things - -Alternatives -============ - -Status quo diff --git a/ophyd/_sources/OEP/OEP_001.txt b/ophyd/_sources/OEP/OEP_001.txt deleted file mode 100644 index a4d7032ec9..0000000000 --- a/ophyd/_sources/OEP/OEP_001.txt +++ /dev/null @@ -1,52 +0,0 @@ -=============================== -OEP 1 : AD refactor/unification -=============================== - - -.. contents:: - :local: - -Status -====== - -**Discussion** - -Branches and Pull requests -========================== - - - https://gist.github.com/danielballan/61fd3448f50027423a54 - -Abstract -======== - -Merge the two AreaDetector implementations. - -Detailed description -==================== - -Requirements ------------- - - - support full BlueSky API - - interact with filestore (may be super-ceded by FS integration at c-level) - - provide access to all PVs and plugins on the EPICS layer area - detector - - set up AD pipelines - - frame squashing - - be able to change at run-time what is inserted into the result of - ``read`` (ex, just return ROI values without saving full data) - - deal with dark-frames - - 'frequency' attribute to set acquire time - -Implementation -============== - -Backward compatibility -====================== - -None, break all the things - -Alternatives -============ - -Status quo diff --git a/ophyd/_sources/OEP/index.rst.txt b/ophyd/_sources/OEP/index.rst.txt deleted file mode 100644 index 7e2593642b..0000000000 --- a/ophyd/_sources/OEP/index.rst.txt +++ /dev/null @@ -1,8 +0,0 @@ -Ophyd Enhancement Proposals -=========================== - -.. toctree:: - :glob: - :maxdepth: 1 - - OEP* diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt deleted file mode 100644 index 49b1446924..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.get\_asyn\_digraph -===================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.get_asyn_digraph \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt deleted file mode 100644 index 4e05314094..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.get\_asyn\_port\_dictionary -============================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.get_asyn_port_dictionary \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt deleted file mode 100644 index 14640d712b..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.get\_plugin\_by\_asyn\_port -============================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.get_plugin_by_asyn_port \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt deleted file mode 100644 index 5c1179aa92..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.missing\_plugins -=================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.missing_plugins \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.rst.txt deleted file mode 100644 index 104d997fe9..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.base\.ADBase -================================= - -.. currentmodule:: ophyd.areadetector.base - -.. autoclass:: ADBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ADBase.__init__ - ~ADBase.check_value - ~ADBase.clear_sub - ~ADBase.configure - ~ADBase.describe - ~ADBase.describe_configuration - ~ADBase.find_signal - ~ADBase.get - ~ADBase.get_asyn_digraph - ~ADBase.get_asyn_port_dictionary - ~ADBase.get_device_tuple - ~ADBase.get_instantiated_signals - ~ADBase.get_plugin_by_asyn_port - ~ADBase.missing_plugins - ~ADBase.pause - ~ADBase.put - ~ADBase.read - ~ADBase.read_configuration - ~ADBase.resume - ~ADBase.stage - ~ADBase.stop - ~ADBase.subscribe - ~ADBase.summary - ~ADBase.trigger - ~ADBase.unstage - ~ADBase.unsubscribe - ~ADBase.validate_asyn_ports - ~ADBase.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt deleted file mode 100644 index 704ed4180a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.validate\_asyn\_ports -======================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.validate_asyn_ports \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADComponent.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADComponent.rst.txt deleted file mode 100644 index 076b0baf28..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ADComponent.rst.txt +++ /dev/null @@ -1,26 +0,0 @@ -ophyd\.areadetector\.base\.ADComponent -====================================== - -.. currentmodule:: ophyd.areadetector.base - -.. autoclass:: ADComponent - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ADComponent.__init__ - ~ADComponent.create_component - ~ADComponent.find_docs - ~ADComponent.make_docstring - ~ADComponent.maybe_add_prefix - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt deleted file mode 100644 index 75a465565c..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt +++ /dev/null @@ -1,36 +0,0 @@ -ophyd\.areadetector\.base\.EpicsSignalWithRBV -============================================= - -.. currentmodule:: ophyd.areadetector.base - -.. autoclass:: EpicsSignalWithRBV - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~EpicsSignalWithRBV.__init__ - ~EpicsSignalWithRBV.check_value - ~EpicsSignalWithRBV.clear_sub - ~EpicsSignalWithRBV.describe - ~EpicsSignalWithRBV.describe_configuration - ~EpicsSignalWithRBV.get - ~EpicsSignalWithRBV.get_setpoint - ~EpicsSignalWithRBV.put - ~EpicsSignalWithRBV.read - ~EpicsSignalWithRBV.read_configuration - ~EpicsSignalWithRBV.set - ~EpicsSignalWithRBV.subscribe - ~EpicsSignalWithRBV.trigger - ~EpicsSignalWithRBV.unsubscribe - ~EpicsSignalWithRBV.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ad_group.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.ad_group.rst.txt deleted file mode 100644 index 4d6d3c197d..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.ad_group.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ad\_group -==================================== - -.. currentmodule:: ophyd.areadetector.base - -.. autofunction:: ad_group \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.base.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.base.rst.txt deleted file mode 100644 index 45d5d7e065..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.base.rst.txt +++ /dev/null @@ -1,30 +0,0 @@ -ophyd\.areadetector\.base -========================= - -.. automodule:: ophyd.areadetector.base - - - - .. rubric:: Functions - - .. autosummary:: - - ad_group - - - - - - .. rubric:: Classes - - .. autosummary:: - - ADBase - ADComponent - EpicsSignalWithRBV - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.rst.txt deleted file mode 100644 index e657599e2c..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.AdscDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.AdscDetectorCam -========================================= - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: AdscDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AdscDetectorCam.__init__ - ~AdscDetectorCam.check_value - ~AdscDetectorCam.clear_sub - ~AdscDetectorCam.configure - ~AdscDetectorCam.describe - ~AdscDetectorCam.describe_configuration - ~AdscDetectorCam.find_signal - ~AdscDetectorCam.get - ~AdscDetectorCam.get_asyn_digraph - ~AdscDetectorCam.get_asyn_port_dictionary - ~AdscDetectorCam.get_device_tuple - ~AdscDetectorCam.get_instantiated_signals - ~AdscDetectorCam.get_plugin_by_asyn_port - ~AdscDetectorCam.missing_plugins - ~AdscDetectorCam.pause - ~AdscDetectorCam.put - ~AdscDetectorCam.read - ~AdscDetectorCam.read_configuration - ~AdscDetectorCam.resume - ~AdscDetectorCam.stage - ~AdscDetectorCam.stop - ~AdscDetectorCam.subscribe - ~AdscDetectorCam.summary - ~AdscDetectorCam.trigger - ~AdscDetectorCam.unstage - ~AdscDetectorCam.unsubscribe - ~AdscDetectorCam.validate_asyn_ports - ~AdscDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt deleted file mode 100644 index 9a1051f283..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.Andor3DetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: Andor3DetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Andor3DetectorCam.__init__ - ~Andor3DetectorCam.check_value - ~Andor3DetectorCam.clear_sub - ~Andor3DetectorCam.configure - ~Andor3DetectorCam.describe - ~Andor3DetectorCam.describe_configuration - ~Andor3DetectorCam.find_signal - ~Andor3DetectorCam.get - ~Andor3DetectorCam.get_asyn_digraph - ~Andor3DetectorCam.get_asyn_port_dictionary - ~Andor3DetectorCam.get_device_tuple - ~Andor3DetectorCam.get_instantiated_signals - ~Andor3DetectorCam.get_plugin_by_asyn_port - ~Andor3DetectorCam.missing_plugins - ~Andor3DetectorCam.pause - ~Andor3DetectorCam.put - ~Andor3DetectorCam.read - ~Andor3DetectorCam.read_configuration - ~Andor3DetectorCam.resume - ~Andor3DetectorCam.stage - ~Andor3DetectorCam.stop - ~Andor3DetectorCam.subscribe - ~Andor3DetectorCam.summary - ~Andor3DetectorCam.trigger - ~Andor3DetectorCam.unstage - ~Andor3DetectorCam.unsubscribe - ~Andor3DetectorCam.validate_asyn_ports - ~Andor3DetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.rst.txt deleted file mode 100644 index 389b15ec37..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.AndorDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.AndorDetectorCam -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: AndorDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AndorDetectorCam.__init__ - ~AndorDetectorCam.check_value - ~AndorDetectorCam.clear_sub - ~AndorDetectorCam.configure - ~AndorDetectorCam.describe - ~AndorDetectorCam.describe_configuration - ~AndorDetectorCam.find_signal - ~AndorDetectorCam.get - ~AndorDetectorCam.get_asyn_digraph - ~AndorDetectorCam.get_asyn_port_dictionary - ~AndorDetectorCam.get_device_tuple - ~AndorDetectorCam.get_instantiated_signals - ~AndorDetectorCam.get_plugin_by_asyn_port - ~AndorDetectorCam.missing_plugins - ~AndorDetectorCam.pause - ~AndorDetectorCam.put - ~AndorDetectorCam.read - ~AndorDetectorCam.read_configuration - ~AndorDetectorCam.resume - ~AndorDetectorCam.stage - ~AndorDetectorCam.stop - ~AndorDetectorCam.subscribe - ~AndorDetectorCam.summary - ~AndorDetectorCam.trigger - ~AndorDetectorCam.unstage - ~AndorDetectorCam.unsubscribe - ~AndorDetectorCam.validate_asyn_ports - ~AndorDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt deleted file mode 100644 index a14e6d36b3..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.BrukerDetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: BrukerDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~BrukerDetectorCam.__init__ - ~BrukerDetectorCam.check_value - ~BrukerDetectorCam.clear_sub - ~BrukerDetectorCam.configure - ~BrukerDetectorCam.describe - ~BrukerDetectorCam.describe_configuration - ~BrukerDetectorCam.find_signal - ~BrukerDetectorCam.get - ~BrukerDetectorCam.get_asyn_digraph - ~BrukerDetectorCam.get_asyn_port_dictionary - ~BrukerDetectorCam.get_device_tuple - ~BrukerDetectorCam.get_instantiated_signals - ~BrukerDetectorCam.get_plugin_by_asyn_port - ~BrukerDetectorCam.missing_plugins - ~BrukerDetectorCam.pause - ~BrukerDetectorCam.put - ~BrukerDetectorCam.read - ~BrukerDetectorCam.read_configuration - ~BrukerDetectorCam.resume - ~BrukerDetectorCam.stage - ~BrukerDetectorCam.stop - ~BrukerDetectorCam.subscribe - ~BrukerDetectorCam.summary - ~BrukerDetectorCam.trigger - ~BrukerDetectorCam.unstage - ~BrukerDetectorCam.unsubscribe - ~BrukerDetectorCam.validate_asyn_ports - ~BrukerDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.CamBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.CamBase.rst.txt deleted file mode 100644 index 2929bcba38..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.CamBase.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.CamBase -================================= - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: CamBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~CamBase.__init__ - ~CamBase.check_value - ~CamBase.clear_sub - ~CamBase.configure - ~CamBase.describe - ~CamBase.describe_configuration - ~CamBase.find_signal - ~CamBase.get - ~CamBase.get_asyn_digraph - ~CamBase.get_asyn_port_dictionary - ~CamBase.get_device_tuple - ~CamBase.get_instantiated_signals - ~CamBase.get_plugin_by_asyn_port - ~CamBase.missing_plugins - ~CamBase.pause - ~CamBase.put - ~CamBase.read - ~CamBase.read_configuration - ~CamBase.resume - ~CamBase.stage - ~CamBase.stop - ~CamBase.subscribe - ~CamBase.summary - ~CamBase.trigger - ~CamBase.unstage - ~CamBase.unsubscribe - ~CamBase.validate_asyn_ports - ~CamBase.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt deleted file mode 100644 index 3183d9ac7a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.FirewireLinDetectorCam -================================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: FirewireLinDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireLinDetectorCam.__init__ - ~FirewireLinDetectorCam.check_value - ~FirewireLinDetectorCam.clear_sub - ~FirewireLinDetectorCam.configure - ~FirewireLinDetectorCam.describe - ~FirewireLinDetectorCam.describe_configuration - ~FirewireLinDetectorCam.find_signal - ~FirewireLinDetectorCam.get - ~FirewireLinDetectorCam.get_asyn_digraph - ~FirewireLinDetectorCam.get_asyn_port_dictionary - ~FirewireLinDetectorCam.get_device_tuple - ~FirewireLinDetectorCam.get_instantiated_signals - ~FirewireLinDetectorCam.get_plugin_by_asyn_port - ~FirewireLinDetectorCam.missing_plugins - ~FirewireLinDetectorCam.pause - ~FirewireLinDetectorCam.put - ~FirewireLinDetectorCam.read - ~FirewireLinDetectorCam.read_configuration - ~FirewireLinDetectorCam.resume - ~FirewireLinDetectorCam.stage - ~FirewireLinDetectorCam.stop - ~FirewireLinDetectorCam.subscribe - ~FirewireLinDetectorCam.summary - ~FirewireLinDetectorCam.trigger - ~FirewireLinDetectorCam.unstage - ~FirewireLinDetectorCam.unsubscribe - ~FirewireLinDetectorCam.validate_asyn_ports - ~FirewireLinDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt deleted file mode 100644 index 4f4f0bfffd..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.FirewireWinDetectorCam -================================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: FirewireWinDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireWinDetectorCam.__init__ - ~FirewireWinDetectorCam.check_value - ~FirewireWinDetectorCam.clear_sub - ~FirewireWinDetectorCam.configure - ~FirewireWinDetectorCam.describe - ~FirewireWinDetectorCam.describe_configuration - ~FirewireWinDetectorCam.find_signal - ~FirewireWinDetectorCam.get - ~FirewireWinDetectorCam.get_asyn_digraph - ~FirewireWinDetectorCam.get_asyn_port_dictionary - ~FirewireWinDetectorCam.get_device_tuple - ~FirewireWinDetectorCam.get_instantiated_signals - ~FirewireWinDetectorCam.get_plugin_by_asyn_port - ~FirewireWinDetectorCam.missing_plugins - ~FirewireWinDetectorCam.pause - ~FirewireWinDetectorCam.put - ~FirewireWinDetectorCam.read - ~FirewireWinDetectorCam.read_configuration - ~FirewireWinDetectorCam.resume - ~FirewireWinDetectorCam.stage - ~FirewireWinDetectorCam.stop - ~FirewireWinDetectorCam.subscribe - ~FirewireWinDetectorCam.summary - ~FirewireWinDetectorCam.trigger - ~FirewireWinDetectorCam.unstage - ~FirewireWinDetectorCam.unsubscribe - ~FirewireWinDetectorCam.validate_asyn_ports - ~FirewireWinDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt deleted file mode 100644 index bfb4d943d3..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.LightFieldDetectorCam -=============================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: LightFieldDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~LightFieldDetectorCam.__init__ - ~LightFieldDetectorCam.check_value - ~LightFieldDetectorCam.clear_sub - ~LightFieldDetectorCam.configure - ~LightFieldDetectorCam.describe - ~LightFieldDetectorCam.describe_configuration - ~LightFieldDetectorCam.find_signal - ~LightFieldDetectorCam.get - ~LightFieldDetectorCam.get_asyn_digraph - ~LightFieldDetectorCam.get_asyn_port_dictionary - ~LightFieldDetectorCam.get_device_tuple - ~LightFieldDetectorCam.get_instantiated_signals - ~LightFieldDetectorCam.get_plugin_by_asyn_port - ~LightFieldDetectorCam.missing_plugins - ~LightFieldDetectorCam.pause - ~LightFieldDetectorCam.put - ~LightFieldDetectorCam.read - ~LightFieldDetectorCam.read_configuration - ~LightFieldDetectorCam.resume - ~LightFieldDetectorCam.stage - ~LightFieldDetectorCam.stop - ~LightFieldDetectorCam.subscribe - ~LightFieldDetectorCam.summary - ~LightFieldDetectorCam.trigger - ~LightFieldDetectorCam.unstage - ~LightFieldDetectorCam.unsubscribe - ~LightFieldDetectorCam.validate_asyn_ports - ~LightFieldDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt deleted file mode 100644 index dc4871ffad..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.Mar345DetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: Mar345DetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Mar345DetectorCam.__init__ - ~Mar345DetectorCam.check_value - ~Mar345DetectorCam.clear_sub - ~Mar345DetectorCam.configure - ~Mar345DetectorCam.describe - ~Mar345DetectorCam.describe_configuration - ~Mar345DetectorCam.find_signal - ~Mar345DetectorCam.get - ~Mar345DetectorCam.get_asyn_digraph - ~Mar345DetectorCam.get_asyn_port_dictionary - ~Mar345DetectorCam.get_device_tuple - ~Mar345DetectorCam.get_instantiated_signals - ~Mar345DetectorCam.get_plugin_by_asyn_port - ~Mar345DetectorCam.missing_plugins - ~Mar345DetectorCam.pause - ~Mar345DetectorCam.put - ~Mar345DetectorCam.read - ~Mar345DetectorCam.read_configuration - ~Mar345DetectorCam.resume - ~Mar345DetectorCam.stage - ~Mar345DetectorCam.stop - ~Mar345DetectorCam.subscribe - ~Mar345DetectorCam.summary - ~Mar345DetectorCam.trigger - ~Mar345DetectorCam.unstage - ~Mar345DetectorCam.unsubscribe - ~Mar345DetectorCam.validate_asyn_ports - ~Mar345DetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt deleted file mode 100644 index 2256d8cce8..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.MarCCDDetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: MarCCDDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MarCCDDetectorCam.__init__ - ~MarCCDDetectorCam.check_value - ~MarCCDDetectorCam.clear_sub - ~MarCCDDetectorCam.configure - ~MarCCDDetectorCam.describe - ~MarCCDDetectorCam.describe_configuration - ~MarCCDDetectorCam.find_signal - ~MarCCDDetectorCam.get - ~MarCCDDetectorCam.get_asyn_digraph - ~MarCCDDetectorCam.get_asyn_port_dictionary - ~MarCCDDetectorCam.get_device_tuple - ~MarCCDDetectorCam.get_instantiated_signals - ~MarCCDDetectorCam.get_plugin_by_asyn_port - ~MarCCDDetectorCam.missing_plugins - ~MarCCDDetectorCam.pause - ~MarCCDDetectorCam.put - ~MarCCDDetectorCam.read - ~MarCCDDetectorCam.read_configuration - ~MarCCDDetectorCam.resume - ~MarCCDDetectorCam.stage - ~MarCCDDetectorCam.stop - ~MarCCDDetectorCam.subscribe - ~MarCCDDetectorCam.summary - ~MarCCDDetectorCam.trigger - ~MarCCDDetectorCam.unstage - ~MarCCDDetectorCam.unsubscribe - ~MarCCDDetectorCam.validate_asyn_ports - ~MarCCDDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.rst.txt deleted file mode 100644 index 3c03fbc904..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PSLDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PSLDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PSLDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PSLDetectorCam.__init__ - ~PSLDetectorCam.check_value - ~PSLDetectorCam.clear_sub - ~PSLDetectorCam.configure - ~PSLDetectorCam.describe - ~PSLDetectorCam.describe_configuration - ~PSLDetectorCam.find_signal - ~PSLDetectorCam.get - ~PSLDetectorCam.get_asyn_digraph - ~PSLDetectorCam.get_asyn_port_dictionary - ~PSLDetectorCam.get_device_tuple - ~PSLDetectorCam.get_instantiated_signals - ~PSLDetectorCam.get_plugin_by_asyn_port - ~PSLDetectorCam.missing_plugins - ~PSLDetectorCam.pause - ~PSLDetectorCam.put - ~PSLDetectorCam.read - ~PSLDetectorCam.read_configuration - ~PSLDetectorCam.resume - ~PSLDetectorCam.stage - ~PSLDetectorCam.stop - ~PSLDetectorCam.subscribe - ~PSLDetectorCam.summary - ~PSLDetectorCam.trigger - ~PSLDetectorCam.unstage - ~PSLDetectorCam.unsubscribe - ~PSLDetectorCam.validate_asyn_ports - ~PSLDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.rst.txt deleted file mode 100644 index 44a34dff72..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PcoDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PcoDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PcoDetectorCam.__init__ - ~PcoDetectorCam.check_value - ~PcoDetectorCam.clear_sub - ~PcoDetectorCam.configure - ~PcoDetectorCam.describe - ~PcoDetectorCam.describe_configuration - ~PcoDetectorCam.find_signal - ~PcoDetectorCam.get - ~PcoDetectorCam.get_asyn_digraph - ~PcoDetectorCam.get_asyn_port_dictionary - ~PcoDetectorCam.get_device_tuple - ~PcoDetectorCam.get_instantiated_signals - ~PcoDetectorCam.get_plugin_by_asyn_port - ~PcoDetectorCam.missing_plugins - ~PcoDetectorCam.pause - ~PcoDetectorCam.put - ~PcoDetectorCam.read - ~PcoDetectorCam.read_configuration - ~PcoDetectorCam.resume - ~PcoDetectorCam.stage - ~PcoDetectorCam.stop - ~PcoDetectorCam.subscribe - ~PcoDetectorCam.summary - ~PcoDetectorCam.trigger - ~PcoDetectorCam.unstage - ~PcoDetectorCam.unsubscribe - ~PcoDetectorCam.validate_asyn_ports - ~PcoDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.rst.txt deleted file mode 100644 index dbcc986573..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorIO.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PcoDetectorIO -======================================= - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PcoDetectorIO - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PcoDetectorIO.__init__ - ~PcoDetectorIO.check_value - ~PcoDetectorIO.clear_sub - ~PcoDetectorIO.configure - ~PcoDetectorIO.describe - ~PcoDetectorIO.describe_configuration - ~PcoDetectorIO.find_signal - ~PcoDetectorIO.get - ~PcoDetectorIO.get_asyn_digraph - ~PcoDetectorIO.get_asyn_port_dictionary - ~PcoDetectorIO.get_device_tuple - ~PcoDetectorIO.get_instantiated_signals - ~PcoDetectorIO.get_plugin_by_asyn_port - ~PcoDetectorIO.missing_plugins - ~PcoDetectorIO.pause - ~PcoDetectorIO.put - ~PcoDetectorIO.read - ~PcoDetectorIO.read_configuration - ~PcoDetectorIO.resume - ~PcoDetectorIO.stage - ~PcoDetectorIO.stop - ~PcoDetectorIO.subscribe - ~PcoDetectorIO.summary - ~PcoDetectorIO.trigger - ~PcoDetectorIO.unstage - ~PcoDetectorIO.unsubscribe - ~PcoDetectorIO.validate_asyn_ports - ~PcoDetectorIO.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt deleted file mode 100644 index b79c88c33d..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PcoDetectorSimIO -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PcoDetectorSimIO - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PcoDetectorSimIO.__init__ - ~PcoDetectorSimIO.check_value - ~PcoDetectorSimIO.clear_sub - ~PcoDetectorSimIO.configure - ~PcoDetectorSimIO.describe - ~PcoDetectorSimIO.describe_configuration - ~PcoDetectorSimIO.find_signal - ~PcoDetectorSimIO.get - ~PcoDetectorSimIO.get_asyn_digraph - ~PcoDetectorSimIO.get_asyn_port_dictionary - ~PcoDetectorSimIO.get_device_tuple - ~PcoDetectorSimIO.get_instantiated_signals - ~PcoDetectorSimIO.get_plugin_by_asyn_port - ~PcoDetectorSimIO.missing_plugins - ~PcoDetectorSimIO.pause - ~PcoDetectorSimIO.put - ~PcoDetectorSimIO.read - ~PcoDetectorSimIO.read_configuration - ~PcoDetectorSimIO.resume - ~PcoDetectorSimIO.stage - ~PcoDetectorSimIO.stop - ~PcoDetectorSimIO.subscribe - ~PcoDetectorSimIO.summary - ~PcoDetectorSimIO.trigger - ~PcoDetectorSimIO.unstage - ~PcoDetectorSimIO.unsubscribe - ~PcoDetectorSimIO.validate_asyn_ports - ~PcoDetectorSimIO.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt deleted file mode 100644 index 7b729290bf..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PerkinElmerDetectorCam -================================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PerkinElmerDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PerkinElmerDetectorCam.__init__ - ~PerkinElmerDetectorCam.check_value - ~PerkinElmerDetectorCam.clear_sub - ~PerkinElmerDetectorCam.configure - ~PerkinElmerDetectorCam.describe - ~PerkinElmerDetectorCam.describe_configuration - ~PerkinElmerDetectorCam.find_signal - ~PerkinElmerDetectorCam.get - ~PerkinElmerDetectorCam.get_asyn_digraph - ~PerkinElmerDetectorCam.get_asyn_port_dictionary - ~PerkinElmerDetectorCam.get_device_tuple - ~PerkinElmerDetectorCam.get_instantiated_signals - ~PerkinElmerDetectorCam.get_plugin_by_asyn_port - ~PerkinElmerDetectorCam.missing_plugins - ~PerkinElmerDetectorCam.pause - ~PerkinElmerDetectorCam.put - ~PerkinElmerDetectorCam.read - ~PerkinElmerDetectorCam.read_configuration - ~PerkinElmerDetectorCam.resume - ~PerkinElmerDetectorCam.stage - ~PerkinElmerDetectorCam.stop - ~PerkinElmerDetectorCam.subscribe - ~PerkinElmerDetectorCam.summary - ~PerkinElmerDetectorCam.trigger - ~PerkinElmerDetectorCam.unstage - ~PerkinElmerDetectorCam.unsubscribe - ~PerkinElmerDetectorCam.validate_asyn_ports - ~PerkinElmerDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt deleted file mode 100644 index 6a997e1d77..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PilatusDetectorCam -============================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PilatusDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PilatusDetectorCam.__init__ - ~PilatusDetectorCam.check_value - ~PilatusDetectorCam.clear_sub - ~PilatusDetectorCam.configure - ~PilatusDetectorCam.describe - ~PilatusDetectorCam.describe_configuration - ~PilatusDetectorCam.find_signal - ~PilatusDetectorCam.get - ~PilatusDetectorCam.get_asyn_digraph - ~PilatusDetectorCam.get_asyn_port_dictionary - ~PilatusDetectorCam.get_device_tuple - ~PilatusDetectorCam.get_instantiated_signals - ~PilatusDetectorCam.get_plugin_by_asyn_port - ~PilatusDetectorCam.missing_plugins - ~PilatusDetectorCam.pause - ~PilatusDetectorCam.put - ~PilatusDetectorCam.read - ~PilatusDetectorCam.read_configuration - ~PilatusDetectorCam.resume - ~PilatusDetectorCam.stage - ~PilatusDetectorCam.stop - ~PilatusDetectorCam.subscribe - ~PilatusDetectorCam.summary - ~PilatusDetectorCam.trigger - ~PilatusDetectorCam.unstage - ~PilatusDetectorCam.unsubscribe - ~PilatusDetectorCam.validate_asyn_ports - ~PilatusDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt deleted file mode 100644 index 2a8a55f643..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PixiradDetectorCam -============================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PixiradDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PixiradDetectorCam.__init__ - ~PixiradDetectorCam.check_value - ~PixiradDetectorCam.clear_sub - ~PixiradDetectorCam.configure - ~PixiradDetectorCam.describe - ~PixiradDetectorCam.describe_configuration - ~PixiradDetectorCam.find_signal - ~PixiradDetectorCam.get - ~PixiradDetectorCam.get_asyn_digraph - ~PixiradDetectorCam.get_asyn_port_dictionary - ~PixiradDetectorCam.get_device_tuple - ~PixiradDetectorCam.get_instantiated_signals - ~PixiradDetectorCam.get_plugin_by_asyn_port - ~PixiradDetectorCam.missing_plugins - ~PixiradDetectorCam.pause - ~PixiradDetectorCam.put - ~PixiradDetectorCam.read - ~PixiradDetectorCam.read_configuration - ~PixiradDetectorCam.resume - ~PixiradDetectorCam.stage - ~PixiradDetectorCam.stop - ~PixiradDetectorCam.subscribe - ~PixiradDetectorCam.summary - ~PixiradDetectorCam.trigger - ~PixiradDetectorCam.unstage - ~PixiradDetectorCam.unsubscribe - ~PixiradDetectorCam.validate_asyn_ports - ~PixiradDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt deleted file mode 100644 index 9aacc7a135..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PointGreyDetectorCam -============================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PointGreyDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PointGreyDetectorCam.__init__ - ~PointGreyDetectorCam.check_value - ~PointGreyDetectorCam.clear_sub - ~PointGreyDetectorCam.configure - ~PointGreyDetectorCam.describe - ~PointGreyDetectorCam.describe_configuration - ~PointGreyDetectorCam.find_signal - ~PointGreyDetectorCam.get - ~PointGreyDetectorCam.get_asyn_digraph - ~PointGreyDetectorCam.get_asyn_port_dictionary - ~PointGreyDetectorCam.get_device_tuple - ~PointGreyDetectorCam.get_instantiated_signals - ~PointGreyDetectorCam.get_plugin_by_asyn_port - ~PointGreyDetectorCam.missing_plugins - ~PointGreyDetectorCam.pause - ~PointGreyDetectorCam.put - ~PointGreyDetectorCam.read - ~PointGreyDetectorCam.read_configuration - ~PointGreyDetectorCam.resume - ~PointGreyDetectorCam.stage - ~PointGreyDetectorCam.stop - ~PointGreyDetectorCam.subscribe - ~PointGreyDetectorCam.summary - ~PointGreyDetectorCam.trigger - ~PointGreyDetectorCam.unstage - ~PointGreyDetectorCam.unsubscribe - ~PointGreyDetectorCam.validate_asyn_ports - ~PointGreyDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt deleted file mode 100644 index ae3e736d2c..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.ProsilicaDetectorCam -============================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: ProsilicaDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ProsilicaDetectorCam.__init__ - ~ProsilicaDetectorCam.check_value - ~ProsilicaDetectorCam.clear_sub - ~ProsilicaDetectorCam.configure - ~ProsilicaDetectorCam.describe - ~ProsilicaDetectorCam.describe_configuration - ~ProsilicaDetectorCam.find_signal - ~ProsilicaDetectorCam.get - ~ProsilicaDetectorCam.get_asyn_digraph - ~ProsilicaDetectorCam.get_asyn_port_dictionary - ~ProsilicaDetectorCam.get_device_tuple - ~ProsilicaDetectorCam.get_instantiated_signals - ~ProsilicaDetectorCam.get_plugin_by_asyn_port - ~ProsilicaDetectorCam.missing_plugins - ~ProsilicaDetectorCam.pause - ~ProsilicaDetectorCam.put - ~ProsilicaDetectorCam.read - ~ProsilicaDetectorCam.read_configuration - ~ProsilicaDetectorCam.resume - ~ProsilicaDetectorCam.stage - ~ProsilicaDetectorCam.stop - ~ProsilicaDetectorCam.subscribe - ~ProsilicaDetectorCam.summary - ~ProsilicaDetectorCam.trigger - ~ProsilicaDetectorCam.unstage - ~ProsilicaDetectorCam.unsubscribe - ~ProsilicaDetectorCam.validate_asyn_ports - ~ProsilicaDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt deleted file mode 100644 index 16a7484fd1..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.PvcamDetectorCam -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PvcamDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PvcamDetectorCam.__init__ - ~PvcamDetectorCam.check_value - ~PvcamDetectorCam.clear_sub - ~PvcamDetectorCam.configure - ~PvcamDetectorCam.describe - ~PvcamDetectorCam.describe_configuration - ~PvcamDetectorCam.find_signal - ~PvcamDetectorCam.get - ~PvcamDetectorCam.get_asyn_digraph - ~PvcamDetectorCam.get_asyn_port_dictionary - ~PvcamDetectorCam.get_device_tuple - ~PvcamDetectorCam.get_instantiated_signals - ~PvcamDetectorCam.get_plugin_by_asyn_port - ~PvcamDetectorCam.missing_plugins - ~PvcamDetectorCam.pause - ~PvcamDetectorCam.put - ~PvcamDetectorCam.read - ~PvcamDetectorCam.read_configuration - ~PvcamDetectorCam.resume - ~PvcamDetectorCam.stage - ~PvcamDetectorCam.stop - ~PvcamDetectorCam.subscribe - ~PvcamDetectorCam.summary - ~PvcamDetectorCam.trigger - ~PvcamDetectorCam.unstage - ~PvcamDetectorCam.unsubscribe - ~PvcamDetectorCam.validate_asyn_ports - ~PvcamDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.rst.txt deleted file mode 100644 index 95ed5e7aef..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.RoperDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.RoperDetectorCam -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: RoperDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~RoperDetectorCam.__init__ - ~RoperDetectorCam.check_value - ~RoperDetectorCam.clear_sub - ~RoperDetectorCam.configure - ~RoperDetectorCam.describe - ~RoperDetectorCam.describe_configuration - ~RoperDetectorCam.find_signal - ~RoperDetectorCam.get - ~RoperDetectorCam.get_asyn_digraph - ~RoperDetectorCam.get_asyn_port_dictionary - ~RoperDetectorCam.get_device_tuple - ~RoperDetectorCam.get_instantiated_signals - ~RoperDetectorCam.get_plugin_by_asyn_port - ~RoperDetectorCam.missing_plugins - ~RoperDetectorCam.pause - ~RoperDetectorCam.put - ~RoperDetectorCam.read - ~RoperDetectorCam.read_configuration - ~RoperDetectorCam.resume - ~RoperDetectorCam.stage - ~RoperDetectorCam.stop - ~RoperDetectorCam.subscribe - ~RoperDetectorCam.summary - ~RoperDetectorCam.trigger - ~RoperDetectorCam.unstage - ~RoperDetectorCam.unsubscribe - ~RoperDetectorCam.validate_asyn_ports - ~RoperDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.SimDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.SimDetectorCam.rst.txt deleted file mode 100644 index cf74c373a2..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.SimDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.SimDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: SimDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~SimDetectorCam.__init__ - ~SimDetectorCam.check_value - ~SimDetectorCam.clear_sub - ~SimDetectorCam.configure - ~SimDetectorCam.describe - ~SimDetectorCam.describe_configuration - ~SimDetectorCam.find_signal - ~SimDetectorCam.get - ~SimDetectorCam.get_asyn_digraph - ~SimDetectorCam.get_asyn_port_dictionary - ~SimDetectorCam.get_device_tuple - ~SimDetectorCam.get_instantiated_signals - ~SimDetectorCam.get_plugin_by_asyn_port - ~SimDetectorCam.missing_plugins - ~SimDetectorCam.pause - ~SimDetectorCam.put - ~SimDetectorCam.read - ~SimDetectorCam.read_configuration - ~SimDetectorCam.resume - ~SimDetectorCam.stage - ~SimDetectorCam.stop - ~SimDetectorCam.subscribe - ~SimDetectorCam.summary - ~SimDetectorCam.trigger - ~SimDetectorCam.unstage - ~SimDetectorCam.unsubscribe - ~SimDetectorCam.validate_asyn_ports - ~SimDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.URLDetectorCam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.URLDetectorCam.rst.txt deleted file mode 100644 index 0d486e7c90..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.URLDetectorCam.rst.txt +++ /dev/null @@ -1,49 +0,0 @@ -ophyd\.areadetector\.cam\.URLDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: URLDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~URLDetectorCam.__init__ - ~URLDetectorCam.check_value - ~URLDetectorCam.clear_sub - ~URLDetectorCam.configure - ~URLDetectorCam.describe - ~URLDetectorCam.describe_configuration - ~URLDetectorCam.find_signal - ~URLDetectorCam.get - ~URLDetectorCam.get_asyn_digraph - ~URLDetectorCam.get_asyn_port_dictionary - ~URLDetectorCam.get_device_tuple - ~URLDetectorCam.get_instantiated_signals - ~URLDetectorCam.get_plugin_by_asyn_port - ~URLDetectorCam.missing_plugins - ~URLDetectorCam.pause - ~URLDetectorCam.put - ~URLDetectorCam.read - ~URLDetectorCam.read_configuration - ~URLDetectorCam.resume - ~URLDetectorCam.stage - ~URLDetectorCam.stop - ~URLDetectorCam.subscribe - ~URLDetectorCam.summary - ~URLDetectorCam.trigger - ~URLDetectorCam.unstage - ~URLDetectorCam.unsubscribe - ~URLDetectorCam.validate_asyn_ports - ~URLDetectorCam.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.cam.rst.txt deleted file mode 100644 index 87601a3f63..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.cam.rst.txt +++ /dev/null @@ -1,45 +0,0 @@ -ophyd\.areadetector\.cam -======================== - -.. automodule:: ophyd.areadetector.cam - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - AdscDetectorCam - Andor3DetectorCam - AndorDetectorCam - AreaDetectorCam - BrukerDetectorCam - CamBase - FirewireLinDetectorCam - FirewireWinDetectorCam - LightFieldDetectorCam - Mar345DetectorCam - MarCCDDetectorCam - PSLDetectorCam - PcoDetectorCam - PcoDetectorIO - PcoDetectorSimIO - PerkinElmerDetectorCam - PilatusDetectorCam - PixiradDetectorCam - PointGreyDetectorCam - ProsilicaDetectorCam - PvcamDetectorCam - RoperDetectorCam - SimDetectorCam - URLDetectorCam - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AdscDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AdscDetector.rst.txt deleted file mode 100644 index 9e629ee4b2..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AdscDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.AdscDetector -============================================ - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: AdscDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AdscDetector.__init__ - ~AdscDetector.check_value - ~AdscDetector.clear_sub - ~AdscDetector.configure - ~AdscDetector.describe - ~AdscDetector.describe_configuration - ~AdscDetector.dispatch - ~AdscDetector.find_signal - ~AdscDetector.get - ~AdscDetector.get_asyn_digraph - ~AdscDetector.get_asyn_port_dictionary - ~AdscDetector.get_device_tuple - ~AdscDetector.get_instantiated_signals - ~AdscDetector.get_plugin_by_asyn_port - ~AdscDetector.make_data_key - ~AdscDetector.missing_plugins - ~AdscDetector.pause - ~AdscDetector.put - ~AdscDetector.read - ~AdscDetector.read_configuration - ~AdscDetector.resume - ~AdscDetector.stage - ~AdscDetector.stop - ~AdscDetector.subscribe - ~AdscDetector.summary - ~AdscDetector.trigger - ~AdscDetector.unstage - ~AdscDetector.unsubscribe - ~AdscDetector.validate_asyn_ports - ~AdscDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Andor3Detector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Andor3Detector.rst.txt deleted file mode 100644 index a686690e37..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Andor3Detector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.Andor3Detector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: Andor3Detector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Andor3Detector.__init__ - ~Andor3Detector.check_value - ~Andor3Detector.clear_sub - ~Andor3Detector.configure - ~Andor3Detector.describe - ~Andor3Detector.describe_configuration - ~Andor3Detector.dispatch - ~Andor3Detector.find_signal - ~Andor3Detector.get - ~Andor3Detector.get_asyn_digraph - ~Andor3Detector.get_asyn_port_dictionary - ~Andor3Detector.get_device_tuple - ~Andor3Detector.get_instantiated_signals - ~Andor3Detector.get_plugin_by_asyn_port - ~Andor3Detector.make_data_key - ~Andor3Detector.missing_plugins - ~Andor3Detector.pause - ~Andor3Detector.put - ~Andor3Detector.read - ~Andor3Detector.read_configuration - ~Andor3Detector.resume - ~Andor3Detector.stage - ~Andor3Detector.stop - ~Andor3Detector.subscribe - ~Andor3Detector.summary - ~Andor3Detector.trigger - ~Andor3Detector.unstage - ~Andor3Detector.unsubscribe - ~Andor3Detector.validate_asyn_ports - ~Andor3Detector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AndorDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AndorDetector.rst.txt deleted file mode 100644 index 5e019cbb51..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AndorDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.AndorDetector -============================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: AndorDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AndorDetector.__init__ - ~AndorDetector.check_value - ~AndorDetector.clear_sub - ~AndorDetector.configure - ~AndorDetector.describe - ~AndorDetector.describe_configuration - ~AndorDetector.dispatch - ~AndorDetector.find_signal - ~AndorDetector.get - ~AndorDetector.get_asyn_digraph - ~AndorDetector.get_asyn_port_dictionary - ~AndorDetector.get_device_tuple - ~AndorDetector.get_instantiated_signals - ~AndorDetector.get_plugin_by_asyn_port - ~AndorDetector.make_data_key - ~AndorDetector.missing_plugins - ~AndorDetector.pause - ~AndorDetector.put - ~AndorDetector.read - ~AndorDetector.read_configuration - ~AndorDetector.resume - ~AndorDetector.stage - ~AndorDetector.stop - ~AndorDetector.subscribe - ~AndorDetector.summary - ~AndorDetector.trigger - ~AndorDetector.unstage - ~AndorDetector.unsubscribe - ~AndorDetector.validate_asyn_ports - ~AndorDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AreaDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AreaDetector.rst.txt deleted file mode 100644 index cacdfa0888..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.AreaDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.AreaDetector -============================================ - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: AreaDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AreaDetector.__init__ - ~AreaDetector.check_value - ~AreaDetector.clear_sub - ~AreaDetector.configure - ~AreaDetector.describe - ~AreaDetector.describe_configuration - ~AreaDetector.dispatch - ~AreaDetector.find_signal - ~AreaDetector.get - ~AreaDetector.get_asyn_digraph - ~AreaDetector.get_asyn_port_dictionary - ~AreaDetector.get_device_tuple - ~AreaDetector.get_instantiated_signals - ~AreaDetector.get_plugin_by_asyn_port - ~AreaDetector.make_data_key - ~AreaDetector.missing_plugins - ~AreaDetector.pause - ~AreaDetector.put - ~AreaDetector.read - ~AreaDetector.read_configuration - ~AreaDetector.resume - ~AreaDetector.stage - ~AreaDetector.stop - ~AreaDetector.subscribe - ~AreaDetector.summary - ~AreaDetector.trigger - ~AreaDetector.unstage - ~AreaDetector.unsubscribe - ~AreaDetector.validate_asyn_ports - ~AreaDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.BrukerDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.BrukerDetector.rst.txt deleted file mode 100644 index f914512796..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.BrukerDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.BrukerDetector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: BrukerDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~BrukerDetector.__init__ - ~BrukerDetector.check_value - ~BrukerDetector.clear_sub - ~BrukerDetector.configure - ~BrukerDetector.describe - ~BrukerDetector.describe_configuration - ~BrukerDetector.dispatch - ~BrukerDetector.find_signal - ~BrukerDetector.get - ~BrukerDetector.get_asyn_digraph - ~BrukerDetector.get_asyn_port_dictionary - ~BrukerDetector.get_device_tuple - ~BrukerDetector.get_instantiated_signals - ~BrukerDetector.get_plugin_by_asyn_port - ~BrukerDetector.make_data_key - ~BrukerDetector.missing_plugins - ~BrukerDetector.pause - ~BrukerDetector.put - ~BrukerDetector.read - ~BrukerDetector.read_configuration - ~BrukerDetector.resume - ~BrukerDetector.stage - ~BrukerDetector.stop - ~BrukerDetector.subscribe - ~BrukerDetector.summary - ~BrukerDetector.trigger - ~BrukerDetector.unstage - ~BrukerDetector.unsubscribe - ~BrukerDetector.validate_asyn_ports - ~BrukerDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt deleted file mode 100644 index 94d5fbc971..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.detectors\.DetectorBase\.dispatch -====================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. automethod:: DetectorBase.dispatch \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt deleted file mode 100644 index e50c93f42a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.detectors\.DetectorBase\.make\_data\_key -============================================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. automethod:: DetectorBase.make_data_key \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.rst.txt deleted file mode 100644 index 2b55b81477..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.DetectorBase.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.DetectorBase -============================================ - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: DetectorBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~DetectorBase.__init__ - ~DetectorBase.check_value - ~DetectorBase.clear_sub - ~DetectorBase.configure - ~DetectorBase.describe - ~DetectorBase.describe_configuration - ~DetectorBase.dispatch - ~DetectorBase.find_signal - ~DetectorBase.get - ~DetectorBase.get_asyn_digraph - ~DetectorBase.get_asyn_port_dictionary - ~DetectorBase.get_device_tuple - ~DetectorBase.get_instantiated_signals - ~DetectorBase.get_plugin_by_asyn_port - ~DetectorBase.make_data_key - ~DetectorBase.missing_plugins - ~DetectorBase.pause - ~DetectorBase.put - ~DetectorBase.read - ~DetectorBase.read_configuration - ~DetectorBase.resume - ~DetectorBase.stage - ~DetectorBase.stop - ~DetectorBase.subscribe - ~DetectorBase.summary - ~DetectorBase.trigger - ~DetectorBase.unstage - ~DetectorBase.unsubscribe - ~DetectorBase.validate_asyn_ports - ~DetectorBase.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt deleted file mode 100644 index a8d0fd4b33..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.FirewireLinDetector -=================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: FirewireLinDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireLinDetector.__init__ - ~FirewireLinDetector.check_value - ~FirewireLinDetector.clear_sub - ~FirewireLinDetector.configure - ~FirewireLinDetector.describe - ~FirewireLinDetector.describe_configuration - ~FirewireLinDetector.dispatch - ~FirewireLinDetector.find_signal - ~FirewireLinDetector.get - ~FirewireLinDetector.get_asyn_digraph - ~FirewireLinDetector.get_asyn_port_dictionary - ~FirewireLinDetector.get_device_tuple - ~FirewireLinDetector.get_instantiated_signals - ~FirewireLinDetector.get_plugin_by_asyn_port - ~FirewireLinDetector.make_data_key - ~FirewireLinDetector.missing_plugins - ~FirewireLinDetector.pause - ~FirewireLinDetector.put - ~FirewireLinDetector.read - ~FirewireLinDetector.read_configuration - ~FirewireLinDetector.resume - ~FirewireLinDetector.stage - ~FirewireLinDetector.stop - ~FirewireLinDetector.subscribe - ~FirewireLinDetector.summary - ~FirewireLinDetector.trigger - ~FirewireLinDetector.unstage - ~FirewireLinDetector.unsubscribe - ~FirewireLinDetector.validate_asyn_ports - ~FirewireLinDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt deleted file mode 100644 index a0253adc00..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.FirewireWinDetector -=================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: FirewireWinDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireWinDetector.__init__ - ~FirewireWinDetector.check_value - ~FirewireWinDetector.clear_sub - ~FirewireWinDetector.configure - ~FirewireWinDetector.describe - ~FirewireWinDetector.describe_configuration - ~FirewireWinDetector.dispatch - ~FirewireWinDetector.find_signal - ~FirewireWinDetector.get - ~FirewireWinDetector.get_asyn_digraph - ~FirewireWinDetector.get_asyn_port_dictionary - ~FirewireWinDetector.get_device_tuple - ~FirewireWinDetector.get_instantiated_signals - ~FirewireWinDetector.get_plugin_by_asyn_port - ~FirewireWinDetector.make_data_key - ~FirewireWinDetector.missing_plugins - ~FirewireWinDetector.pause - ~FirewireWinDetector.put - ~FirewireWinDetector.read - ~FirewireWinDetector.read_configuration - ~FirewireWinDetector.resume - ~FirewireWinDetector.stage - ~FirewireWinDetector.stop - ~FirewireWinDetector.subscribe - ~FirewireWinDetector.summary - ~FirewireWinDetector.trigger - ~FirewireWinDetector.unstage - ~FirewireWinDetector.unsubscribe - ~FirewireWinDetector.validate_asyn_ports - ~FirewireWinDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.rst.txt deleted file mode 100644 index 51b2f33974..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.LightFieldDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.LightFieldDetector -================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: LightFieldDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~LightFieldDetector.__init__ - ~LightFieldDetector.check_value - ~LightFieldDetector.clear_sub - ~LightFieldDetector.configure - ~LightFieldDetector.describe - ~LightFieldDetector.describe_configuration - ~LightFieldDetector.dispatch - ~LightFieldDetector.find_signal - ~LightFieldDetector.get - ~LightFieldDetector.get_asyn_digraph - ~LightFieldDetector.get_asyn_port_dictionary - ~LightFieldDetector.get_device_tuple - ~LightFieldDetector.get_instantiated_signals - ~LightFieldDetector.get_plugin_by_asyn_port - ~LightFieldDetector.make_data_key - ~LightFieldDetector.missing_plugins - ~LightFieldDetector.pause - ~LightFieldDetector.put - ~LightFieldDetector.read - ~LightFieldDetector.read_configuration - ~LightFieldDetector.resume - ~LightFieldDetector.stage - ~LightFieldDetector.stop - ~LightFieldDetector.subscribe - ~LightFieldDetector.summary - ~LightFieldDetector.trigger - ~LightFieldDetector.unstage - ~LightFieldDetector.unsubscribe - ~LightFieldDetector.validate_asyn_ports - ~LightFieldDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Mar345Detector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Mar345Detector.rst.txt deleted file mode 100644 index b242a256e6..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.Mar345Detector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.Mar345Detector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: Mar345Detector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Mar345Detector.__init__ - ~Mar345Detector.check_value - ~Mar345Detector.clear_sub - ~Mar345Detector.configure - ~Mar345Detector.describe - ~Mar345Detector.describe_configuration - ~Mar345Detector.dispatch - ~Mar345Detector.find_signal - ~Mar345Detector.get - ~Mar345Detector.get_asyn_digraph - ~Mar345Detector.get_asyn_port_dictionary - ~Mar345Detector.get_device_tuple - ~Mar345Detector.get_instantiated_signals - ~Mar345Detector.get_plugin_by_asyn_port - ~Mar345Detector.make_data_key - ~Mar345Detector.missing_plugins - ~Mar345Detector.pause - ~Mar345Detector.put - ~Mar345Detector.read - ~Mar345Detector.read_configuration - ~Mar345Detector.resume - ~Mar345Detector.stage - ~Mar345Detector.stop - ~Mar345Detector.subscribe - ~Mar345Detector.summary - ~Mar345Detector.trigger - ~Mar345Detector.unstage - ~Mar345Detector.unsubscribe - ~Mar345Detector.validate_asyn_ports - ~Mar345Detector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.rst.txt deleted file mode 100644 index 7d451cf880..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.MarCCDDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.MarCCDDetector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: MarCCDDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MarCCDDetector.__init__ - ~MarCCDDetector.check_value - ~MarCCDDetector.clear_sub - ~MarCCDDetector.configure - ~MarCCDDetector.describe - ~MarCCDDetector.describe_configuration - ~MarCCDDetector.dispatch - ~MarCCDDetector.find_signal - ~MarCCDDetector.get - ~MarCCDDetector.get_asyn_digraph - ~MarCCDDetector.get_asyn_port_dictionary - ~MarCCDDetector.get_device_tuple - ~MarCCDDetector.get_instantiated_signals - ~MarCCDDetector.get_plugin_by_asyn_port - ~MarCCDDetector.make_data_key - ~MarCCDDetector.missing_plugins - ~MarCCDDetector.pause - ~MarCCDDetector.put - ~MarCCDDetector.read - ~MarCCDDetector.read_configuration - ~MarCCDDetector.resume - ~MarCCDDetector.stage - ~MarCCDDetector.stop - ~MarCCDDetector.subscribe - ~MarCCDDetector.summary - ~MarCCDDetector.trigger - ~MarCCDDetector.unstage - ~MarCCDDetector.unsubscribe - ~MarCCDDetector.validate_asyn_ports - ~MarCCDDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PSLDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PSLDetector.rst.txt deleted file mode 100644 index 14f35c43dd..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PSLDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.PSLDetector -=========================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PSLDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PSLDetector.__init__ - ~PSLDetector.check_value - ~PSLDetector.clear_sub - ~PSLDetector.configure - ~PSLDetector.describe - ~PSLDetector.describe_configuration - ~PSLDetector.dispatch - ~PSLDetector.find_signal - ~PSLDetector.get - ~PSLDetector.get_asyn_digraph - ~PSLDetector.get_asyn_port_dictionary - ~PSLDetector.get_device_tuple - ~PSLDetector.get_instantiated_signals - ~PSLDetector.get_plugin_by_asyn_port - ~PSLDetector.make_data_key - ~PSLDetector.missing_plugins - ~PSLDetector.pause - ~PSLDetector.put - ~PSLDetector.read - ~PSLDetector.read_configuration - ~PSLDetector.resume - ~PSLDetector.stage - ~PSLDetector.stop - ~PSLDetector.subscribe - ~PSLDetector.summary - ~PSLDetector.trigger - ~PSLDetector.unstage - ~PSLDetector.unsubscribe - ~PSLDetector.validate_asyn_ports - ~PSLDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt deleted file mode 100644 index b1a86eae24..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.PerkinElmerDetector -=================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PerkinElmerDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PerkinElmerDetector.__init__ - ~PerkinElmerDetector.check_value - ~PerkinElmerDetector.clear_sub - ~PerkinElmerDetector.configure - ~PerkinElmerDetector.describe - ~PerkinElmerDetector.describe_configuration - ~PerkinElmerDetector.dispatch - ~PerkinElmerDetector.find_signal - ~PerkinElmerDetector.get - ~PerkinElmerDetector.get_asyn_digraph - ~PerkinElmerDetector.get_asyn_port_dictionary - ~PerkinElmerDetector.get_device_tuple - ~PerkinElmerDetector.get_instantiated_signals - ~PerkinElmerDetector.get_plugin_by_asyn_port - ~PerkinElmerDetector.make_data_key - ~PerkinElmerDetector.missing_plugins - ~PerkinElmerDetector.pause - ~PerkinElmerDetector.put - ~PerkinElmerDetector.read - ~PerkinElmerDetector.read_configuration - ~PerkinElmerDetector.resume - ~PerkinElmerDetector.stage - ~PerkinElmerDetector.stop - ~PerkinElmerDetector.subscribe - ~PerkinElmerDetector.summary - ~PerkinElmerDetector.trigger - ~PerkinElmerDetector.unstage - ~PerkinElmerDetector.unsubscribe - ~PerkinElmerDetector.validate_asyn_ports - ~PerkinElmerDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PilatusDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PilatusDetector.rst.txt deleted file mode 100644 index 80c7282715..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PilatusDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.PilatusDetector -=============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PilatusDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PilatusDetector.__init__ - ~PilatusDetector.check_value - ~PilatusDetector.clear_sub - ~PilatusDetector.configure - ~PilatusDetector.describe - ~PilatusDetector.describe_configuration - ~PilatusDetector.dispatch - ~PilatusDetector.find_signal - ~PilatusDetector.get - ~PilatusDetector.get_asyn_digraph - ~PilatusDetector.get_asyn_port_dictionary - ~PilatusDetector.get_device_tuple - ~PilatusDetector.get_instantiated_signals - ~PilatusDetector.get_plugin_by_asyn_port - ~PilatusDetector.make_data_key - ~PilatusDetector.missing_plugins - ~PilatusDetector.pause - ~PilatusDetector.put - ~PilatusDetector.read - ~PilatusDetector.read_configuration - ~PilatusDetector.resume - ~PilatusDetector.stage - ~PilatusDetector.stop - ~PilatusDetector.subscribe - ~PilatusDetector.summary - ~PilatusDetector.trigger - ~PilatusDetector.unstage - ~PilatusDetector.unsubscribe - ~PilatusDetector.validate_asyn_ports - ~PilatusDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PixiradDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PixiradDetector.rst.txt deleted file mode 100644 index 06128593a3..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PixiradDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.PixiradDetector -=============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PixiradDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PixiradDetector.__init__ - ~PixiradDetector.check_value - ~PixiradDetector.clear_sub - ~PixiradDetector.configure - ~PixiradDetector.describe - ~PixiradDetector.describe_configuration - ~PixiradDetector.dispatch - ~PixiradDetector.find_signal - ~PixiradDetector.get - ~PixiradDetector.get_asyn_digraph - ~PixiradDetector.get_asyn_port_dictionary - ~PixiradDetector.get_device_tuple - ~PixiradDetector.get_instantiated_signals - ~PixiradDetector.get_plugin_by_asyn_port - ~PixiradDetector.make_data_key - ~PixiradDetector.missing_plugins - ~PixiradDetector.pause - ~PixiradDetector.put - ~PixiradDetector.read - ~PixiradDetector.read_configuration - ~PixiradDetector.resume - ~PixiradDetector.stage - ~PixiradDetector.stop - ~PixiradDetector.subscribe - ~PixiradDetector.summary - ~PixiradDetector.trigger - ~PixiradDetector.unstage - ~PixiradDetector.unsubscribe - ~PixiradDetector.validate_asyn_ports - ~PixiradDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.rst.txt deleted file mode 100644 index 99745911d5..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PointGreyDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.PointGreyDetector -================================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PointGreyDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PointGreyDetector.__init__ - ~PointGreyDetector.check_value - ~PointGreyDetector.clear_sub - ~PointGreyDetector.configure - ~PointGreyDetector.describe - ~PointGreyDetector.describe_configuration - ~PointGreyDetector.dispatch - ~PointGreyDetector.find_signal - ~PointGreyDetector.get - ~PointGreyDetector.get_asyn_digraph - ~PointGreyDetector.get_asyn_port_dictionary - ~PointGreyDetector.get_device_tuple - ~PointGreyDetector.get_instantiated_signals - ~PointGreyDetector.get_plugin_by_asyn_port - ~PointGreyDetector.make_data_key - ~PointGreyDetector.missing_plugins - ~PointGreyDetector.pause - ~PointGreyDetector.put - ~PointGreyDetector.read - ~PointGreyDetector.read_configuration - ~PointGreyDetector.resume - ~PointGreyDetector.stage - ~PointGreyDetector.stop - ~PointGreyDetector.subscribe - ~PointGreyDetector.summary - ~PointGreyDetector.trigger - ~PointGreyDetector.unstage - ~PointGreyDetector.unsubscribe - ~PointGreyDetector.validate_asyn_ports - ~PointGreyDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt deleted file mode 100644 index 23fc649011..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.ProsilicaDetector -================================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: ProsilicaDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ProsilicaDetector.__init__ - ~ProsilicaDetector.check_value - ~ProsilicaDetector.clear_sub - ~ProsilicaDetector.configure - ~ProsilicaDetector.describe - ~ProsilicaDetector.describe_configuration - ~ProsilicaDetector.dispatch - ~ProsilicaDetector.find_signal - ~ProsilicaDetector.get - ~ProsilicaDetector.get_asyn_digraph - ~ProsilicaDetector.get_asyn_port_dictionary - ~ProsilicaDetector.get_device_tuple - ~ProsilicaDetector.get_instantiated_signals - ~ProsilicaDetector.get_plugin_by_asyn_port - ~ProsilicaDetector.make_data_key - ~ProsilicaDetector.missing_plugins - ~ProsilicaDetector.pause - ~ProsilicaDetector.put - ~ProsilicaDetector.read - ~ProsilicaDetector.read_configuration - ~ProsilicaDetector.resume - ~ProsilicaDetector.stage - ~ProsilicaDetector.stop - ~ProsilicaDetector.subscribe - ~ProsilicaDetector.summary - ~ProsilicaDetector.trigger - ~ProsilicaDetector.unstage - ~ProsilicaDetector.unsubscribe - ~ProsilicaDetector.validate_asyn_ports - ~ProsilicaDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PvcamDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PvcamDetector.rst.txt deleted file mode 100644 index a050fa31cf..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.PvcamDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.PvcamDetector -============================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PvcamDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PvcamDetector.__init__ - ~PvcamDetector.check_value - ~PvcamDetector.clear_sub - ~PvcamDetector.configure - ~PvcamDetector.describe - ~PvcamDetector.describe_configuration - ~PvcamDetector.dispatch - ~PvcamDetector.find_signal - ~PvcamDetector.get - ~PvcamDetector.get_asyn_digraph - ~PvcamDetector.get_asyn_port_dictionary - ~PvcamDetector.get_device_tuple - ~PvcamDetector.get_instantiated_signals - ~PvcamDetector.get_plugin_by_asyn_port - ~PvcamDetector.make_data_key - ~PvcamDetector.missing_plugins - ~PvcamDetector.pause - ~PvcamDetector.put - ~PvcamDetector.read - ~PvcamDetector.read_configuration - ~PvcamDetector.resume - ~PvcamDetector.stage - ~PvcamDetector.stop - ~PvcamDetector.subscribe - ~PvcamDetector.summary - ~PvcamDetector.trigger - ~PvcamDetector.unstage - ~PvcamDetector.unsubscribe - ~PvcamDetector.validate_asyn_ports - ~PvcamDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.RoperDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.RoperDetector.rst.txt deleted file mode 100644 index 8a75040fda..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.RoperDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.RoperDetector -============================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: RoperDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~RoperDetector.__init__ - ~RoperDetector.check_value - ~RoperDetector.clear_sub - ~RoperDetector.configure - ~RoperDetector.describe - ~RoperDetector.describe_configuration - ~RoperDetector.dispatch - ~RoperDetector.find_signal - ~RoperDetector.get - ~RoperDetector.get_asyn_digraph - ~RoperDetector.get_asyn_port_dictionary - ~RoperDetector.get_device_tuple - ~RoperDetector.get_instantiated_signals - ~RoperDetector.get_plugin_by_asyn_port - ~RoperDetector.make_data_key - ~RoperDetector.missing_plugins - ~RoperDetector.pause - ~RoperDetector.put - ~RoperDetector.read - ~RoperDetector.read_configuration - ~RoperDetector.resume - ~RoperDetector.stage - ~RoperDetector.stop - ~RoperDetector.subscribe - ~RoperDetector.summary - ~RoperDetector.trigger - ~RoperDetector.unstage - ~RoperDetector.unsubscribe - ~RoperDetector.validate_asyn_ports - ~RoperDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.SimDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.SimDetector.rst.txt deleted file mode 100644 index 1020050f80..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.SimDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.SimDetector -=========================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: SimDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~SimDetector.__init__ - ~SimDetector.check_value - ~SimDetector.clear_sub - ~SimDetector.configure - ~SimDetector.describe - ~SimDetector.describe_configuration - ~SimDetector.dispatch - ~SimDetector.find_signal - ~SimDetector.get - ~SimDetector.get_asyn_digraph - ~SimDetector.get_asyn_port_dictionary - ~SimDetector.get_device_tuple - ~SimDetector.get_instantiated_signals - ~SimDetector.get_plugin_by_asyn_port - ~SimDetector.make_data_key - ~SimDetector.missing_plugins - ~SimDetector.pause - ~SimDetector.put - ~SimDetector.read - ~SimDetector.read_configuration - ~SimDetector.resume - ~SimDetector.stage - ~SimDetector.stop - ~SimDetector.subscribe - ~SimDetector.summary - ~SimDetector.trigger - ~SimDetector.unstage - ~SimDetector.unsubscribe - ~SimDetector.validate_asyn_ports - ~SimDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.URLDetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.URLDetector.rst.txt deleted file mode 100644 index 96e511bad1..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.URLDetector.rst.txt +++ /dev/null @@ -1,51 +0,0 @@ -ophyd\.areadetector\.detectors\.URLDetector -=========================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: URLDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~URLDetector.__init__ - ~URLDetector.check_value - ~URLDetector.clear_sub - ~URLDetector.configure - ~URLDetector.describe - ~URLDetector.describe_configuration - ~URLDetector.dispatch - ~URLDetector.find_signal - ~URLDetector.get - ~URLDetector.get_asyn_digraph - ~URLDetector.get_asyn_port_dictionary - ~URLDetector.get_device_tuple - ~URLDetector.get_instantiated_signals - ~URLDetector.get_plugin_by_asyn_port - ~URLDetector.make_data_key - ~URLDetector.missing_plugins - ~URLDetector.pause - ~URLDetector.put - ~URLDetector.read - ~URLDetector.read_configuration - ~URLDetector.resume - ~URLDetector.stage - ~URLDetector.stop - ~URLDetector.subscribe - ~URLDetector.summary - ~URLDetector.trigger - ~URLDetector.unstage - ~URLDetector.unsubscribe - ~URLDetector.validate_asyn_ports - ~URLDetector.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.rst.txt deleted file mode 100644 index 36e7cf3087..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.detectors.rst.txt +++ /dev/null @@ -1,42 +0,0 @@ -ophyd\.areadetector\.detectors -============================== - -.. automodule:: ophyd.areadetector.detectors - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - AdscDetector - Andor3Detector - AndorDetector - AreaDetector - BrukerDetector - DetectorBase - FirewireLinDetector - FirewireWinDetector - LightFieldDetector - Mar345Detector - MarCCDDetector - PSLDetector - PerkinElmerDetector - PilatusDetector - PixiradDetector - PointGreyDetector - ProsilicaDetector - PvcamDetector - RoperDetector - SimDetector - URLDetector - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.docs.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.docs.rst.txt deleted file mode 100644 index fe390abc34..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.docs.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd\.areadetector\.docs -========================= - -.. automodule:: ophyd.areadetector.docs - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt deleted file mode 100644 index 904dae3636..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.fs\_root -=============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.fs_root \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt deleted file mode 100644 index e9f2f94056..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.generate\_datum -====================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. automethod:: FileStoreBase.generate_datum \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt deleted file mode 100644 index 10e25a5918..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.read\_path\_template -=========================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.read_path_template \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt deleted file mode 100644 index 0f6f6742c5..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.reg\_root -================================================================ - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.reg_root \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.rst.txt deleted file mode 100644 index b2e646a88a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.root.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.root -=========================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.root \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt deleted file mode 100644 index 2578611c45..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt +++ /dev/null @@ -1,30 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase -===================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreBase.__init__ - ~FileStoreBase.describe - ~FileStoreBase.generate_datum - ~FileStoreBase.pause - ~FileStoreBase.read - ~FileStoreBase.resume - ~FileStoreBase.stage - ~FileStoreBase.trigger - ~FileStoreBase.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt deleted file mode 100644 index 40809dd42a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.write\_path\_template -============================================================================ - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.write_path_template \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.rst.txt deleted file mode 100644 index e47c19082e..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreBulkWrite.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBulkWrite -========================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreBulkWrite - - - .. automethod:: __init__ - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt deleted file mode 100644 index e125836555..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt +++ /dev/null @@ -1,32 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreHDF5 -===================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreHDF5 - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreHDF5.__init__ - ~FileStoreHDF5.describe - ~FileStoreHDF5.generate_datum - ~FileStoreHDF5.get_frames_per_point - ~FileStoreHDF5.make_filename - ~FileStoreHDF5.pause - ~FileStoreHDF5.read - ~FileStoreHDF5.resume - ~FileStoreHDF5.stage - ~FileStoreHDF5.trigger - ~FileStoreHDF5.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.rst.txt deleted file mode 100644 index 42cf4a3af6..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5BulkWrite.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreHDF5BulkWrite -============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreHDF5BulkWrite - - - .. automethod:: __init__ - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt deleted file mode 100644 index a822feded0..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt +++ /dev/null @@ -1,32 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreHDF5IterativeWrite -=================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreHDF5IterativeWrite - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreHDF5IterativeWrite.__init__ - ~FileStoreHDF5IterativeWrite.describe - ~FileStoreHDF5IterativeWrite.generate_datum - ~FileStoreHDF5IterativeWrite.get_frames_per_point - ~FileStoreHDF5IterativeWrite.make_filename - ~FileStoreHDF5IterativeWrite.pause - ~FileStoreHDF5IterativeWrite.read - ~FileStoreHDF5IterativeWrite.resume - ~FileStoreHDF5IterativeWrite.stage - ~FileStoreHDF5IterativeWrite.trigger - ~FileStoreHDF5IterativeWrite.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt deleted file mode 100644 index 0c6235d564..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt +++ /dev/null @@ -1,30 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreIterativeWrite -=============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreIterativeWrite - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreIterativeWrite.__init__ - ~FileStoreIterativeWrite.describe - ~FileStoreIterativeWrite.generate_datum - ~FileStoreIterativeWrite.pause - ~FileStoreIterativeWrite.read - ~FileStoreIterativeWrite.resume - ~FileStoreIterativeWrite.stage - ~FileStoreIterativeWrite.trigger - ~FileStoreIterativeWrite.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt deleted file mode 100644 index b57e08df54..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStorePluginBase\.make\_filename -=========================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. automethod:: FileStorePluginBase.make_filename \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt deleted file mode 100644 index 397b501b5d..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt +++ /dev/null @@ -1,31 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStorePluginBase -=========================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStorePluginBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStorePluginBase.__init__ - ~FileStorePluginBase.describe - ~FileStorePluginBase.generate_datum - ~FileStorePluginBase.make_filename - ~FileStorePluginBase.pause - ~FileStorePluginBase.read - ~FileStorePluginBase.resume - ~FileStorePluginBase.stage - ~FileStorePluginBase.trigger - ~FileStorePluginBase.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt deleted file mode 100644 index 239eb07a91..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt +++ /dev/null @@ -1,32 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreTIFF -===================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreTIFF - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreTIFF.__init__ - ~FileStoreTIFF.describe - ~FileStoreTIFF.generate_datum - ~FileStoreTIFF.get_frames_per_point - ~FileStoreTIFF.make_filename - ~FileStoreTIFF.pause - ~FileStoreTIFF.read - ~FileStoreTIFF.resume - ~FileStoreTIFF.stage - ~FileStoreTIFF.trigger - ~FileStoreTIFF.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.rst.txt deleted file mode 100644 index 8eb8301859..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFBulkWrite.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreTIFFBulkWrite -============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreTIFFBulkWrite - - - .. automethod:: __init__ - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt deleted file mode 100644 index 471fa1c92c..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt +++ /dev/null @@ -1,32 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreTIFFIterativeWrite -=================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreTIFFIterativeWrite - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreTIFFIterativeWrite.__init__ - ~FileStoreTIFFIterativeWrite.describe - ~FileStoreTIFFIterativeWrite.generate_datum - ~FileStoreTIFFIterativeWrite.get_frames_per_point - ~FileStoreTIFFIterativeWrite.make_filename - ~FileStoreTIFFIterativeWrite.pause - ~FileStoreTIFFIterativeWrite.read - ~FileStoreTIFFIterativeWrite.resume - ~FileStoreTIFFIterativeWrite.stage - ~FileStoreTIFFIterativeWrite.trigger - ~FileStoreTIFFIterativeWrite.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt deleted file mode 100644 index d5a8743099..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt +++ /dev/null @@ -1,32 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreTIFFSquashing -============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreTIFFSquashing - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreTIFFSquashing.__init__ - ~FileStoreTIFFSquashing.describe - ~FileStoreTIFFSquashing.generate_datum - ~FileStoreTIFFSquashing.get_frames_per_point - ~FileStoreTIFFSquashing.make_filename - ~FileStoreTIFFSquashing.pause - ~FileStoreTIFFSquashing.read - ~FileStoreTIFFSquashing.resume - ~FileStoreTIFFSquashing.stage - ~FileStoreTIFFSquashing.trigger - ~FileStoreTIFFSquashing.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.rst.txt deleted file mode 100644 index 2fc68b85e5..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.filestore_mixins.rst.txt +++ /dev/null @@ -1,36 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins -====================================== - -.. automodule:: ophyd.areadetector.filestore_mixins - - - - .. rubric:: Functions - - .. autosummary:: - - new_short_uid - new_uid - - - - - - .. rubric:: Classes - - .. autosummary:: - - FileStoreBase - FileStoreHDF5 - FileStoreHDF5IterativeWrite - FileStoreIterativeWrite - FileStorePluginBase - FileStoreTIFF - FileStoreTIFFIterativeWrite - FileStoreTIFFSquashing - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt deleted file mode 100644 index 50cefbf359..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.ColorConvPlugin -============================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ColorConvPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ColorConvPlugin.__init__ - ~ColorConvPlugin.check_value - ~ColorConvPlugin.clear_sub - ~ColorConvPlugin.configure - ~ColorConvPlugin.describe - ~ColorConvPlugin.describe_configuration - ~ColorConvPlugin.disable_on_stage - ~ColorConvPlugin.enable_on_stage - ~ColorConvPlugin.ensure_blocking - ~ColorConvPlugin.ensure_nonblocking - ~ColorConvPlugin.find_signal - ~ColorConvPlugin.get - ~ColorConvPlugin.get_asyn_digraph - ~ColorConvPlugin.get_asyn_port_dictionary - ~ColorConvPlugin.get_device_tuple - ~ColorConvPlugin.get_instantiated_signals - ~ColorConvPlugin.get_plugin_by_asyn_port - ~ColorConvPlugin.missing_plugins - ~ColorConvPlugin.pause - ~ColorConvPlugin.put - ~ColorConvPlugin.read - ~ColorConvPlugin.read_configuration - ~ColorConvPlugin.resume - ~ColorConvPlugin.stage - ~ColorConvPlugin.stop - ~ColorConvPlugin.subscribe - ~ColorConvPlugin.summary - ~ColorConvPlugin.trigger - ~ColorConvPlugin.unstage - ~ColorConvPlugin.unsubscribe - ~ColorConvPlugin.validate_asyn_ports - ~ColorConvPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.FilePlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.FilePlugin.rst.txt deleted file mode 100644 index e6046c7d3d..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.FilePlugin.rst.txt +++ /dev/null @@ -1,54 +0,0 @@ -ophyd\.areadetector\.plugins\.FilePlugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: FilePlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FilePlugin.__init__ - ~FilePlugin.check_value - ~FilePlugin.clear_sub - ~FilePlugin.configure - ~FilePlugin.describe - ~FilePlugin.describe_configuration - ~FilePlugin.disable_on_stage - ~FilePlugin.enable_on_stage - ~FilePlugin.ensure_blocking - ~FilePlugin.ensure_nonblocking - ~FilePlugin.find_signal - ~FilePlugin.generate_datum - ~FilePlugin.get - ~FilePlugin.get_asyn_digraph - ~FilePlugin.get_asyn_port_dictionary - ~FilePlugin.get_device_tuple - ~FilePlugin.get_instantiated_signals - ~FilePlugin.get_plugin_by_asyn_port - ~FilePlugin.missing_plugins - ~FilePlugin.pause - ~FilePlugin.put - ~FilePlugin.read - ~FilePlugin.read_configuration - ~FilePlugin.resume - ~FilePlugin.stage - ~FilePlugin.stop - ~FilePlugin.subscribe - ~FilePlugin.summary - ~FilePlugin.trigger - ~FilePlugin.unstage - ~FilePlugin.unsubscribe - ~FilePlugin.validate_asyn_ports - ~FilePlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.rst.txt deleted file mode 100644 index 41e585527b..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.HDF5Plugin.rst.txt +++ /dev/null @@ -1,55 +0,0 @@ -ophyd\.areadetector\.plugins\.HDF5Plugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: HDF5Plugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~HDF5Plugin.__init__ - ~HDF5Plugin.check_value - ~HDF5Plugin.clear_sub - ~HDF5Plugin.configure - ~HDF5Plugin.describe - ~HDF5Plugin.describe_configuration - ~HDF5Plugin.disable_on_stage - ~HDF5Plugin.enable_on_stage - ~HDF5Plugin.ensure_blocking - ~HDF5Plugin.ensure_nonblocking - ~HDF5Plugin.find_signal - ~HDF5Plugin.generate_datum - ~HDF5Plugin.get - ~HDF5Plugin.get_asyn_digraph - ~HDF5Plugin.get_asyn_port_dictionary - ~HDF5Plugin.get_device_tuple - ~HDF5Plugin.get_instantiated_signals - ~HDF5Plugin.get_plugin_by_asyn_port - ~HDF5Plugin.missing_plugins - ~HDF5Plugin.pause - ~HDF5Plugin.put - ~HDF5Plugin.read - ~HDF5Plugin.read_configuration - ~HDF5Plugin.resume - ~HDF5Plugin.stage - ~HDF5Plugin.stop - ~HDF5Plugin.subscribe - ~HDF5Plugin.summary - ~HDF5Plugin.trigger - ~HDF5Plugin.unstage - ~HDF5Plugin.unsubscribe - ~HDF5Plugin.validate_asyn_ports - ~HDF5Plugin.wait_for_connection - ~HDF5Plugin.warmup - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ImagePlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ImagePlugin.rst.txt deleted file mode 100644 index 8de2877807..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ImagePlugin.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.ImagePlugin -========================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ImagePlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ImagePlugin.__init__ - ~ImagePlugin.check_value - ~ImagePlugin.clear_sub - ~ImagePlugin.configure - ~ImagePlugin.describe - ~ImagePlugin.describe_configuration - ~ImagePlugin.disable_on_stage - ~ImagePlugin.enable_on_stage - ~ImagePlugin.ensure_blocking - ~ImagePlugin.ensure_nonblocking - ~ImagePlugin.find_signal - ~ImagePlugin.get - ~ImagePlugin.get_asyn_digraph - ~ImagePlugin.get_asyn_port_dictionary - ~ImagePlugin.get_device_tuple - ~ImagePlugin.get_instantiated_signals - ~ImagePlugin.get_plugin_by_asyn_port - ~ImagePlugin.missing_plugins - ~ImagePlugin.pause - ~ImagePlugin.put - ~ImagePlugin.read - ~ImagePlugin.read_configuration - ~ImagePlugin.resume - ~ImagePlugin.stage - ~ImagePlugin.stop - ~ImagePlugin.subscribe - ~ImagePlugin.summary - ~ImagePlugin.trigger - ~ImagePlugin.unstage - ~ImagePlugin.unsubscribe - ~ImagePlugin.validate_asyn_ports - ~ImagePlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.rst.txt deleted file mode 100644 index e576072a1f..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.JPEGPlugin.rst.txt +++ /dev/null @@ -1,54 +0,0 @@ -ophyd\.areadetector\.plugins\.JPEGPlugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: JPEGPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~JPEGPlugin.__init__ - ~JPEGPlugin.check_value - ~JPEGPlugin.clear_sub - ~JPEGPlugin.configure - ~JPEGPlugin.describe - ~JPEGPlugin.describe_configuration - ~JPEGPlugin.disable_on_stage - ~JPEGPlugin.enable_on_stage - ~JPEGPlugin.ensure_blocking - ~JPEGPlugin.ensure_nonblocking - ~JPEGPlugin.find_signal - ~JPEGPlugin.generate_datum - ~JPEGPlugin.get - ~JPEGPlugin.get_asyn_digraph - ~JPEGPlugin.get_asyn_port_dictionary - ~JPEGPlugin.get_device_tuple - ~JPEGPlugin.get_instantiated_signals - ~JPEGPlugin.get_plugin_by_asyn_port - ~JPEGPlugin.missing_plugins - ~JPEGPlugin.pause - ~JPEGPlugin.put - ~JPEGPlugin.read - ~JPEGPlugin.read_configuration - ~JPEGPlugin.resume - ~JPEGPlugin.stage - ~JPEGPlugin.stop - ~JPEGPlugin.subscribe - ~JPEGPlugin.summary - ~JPEGPlugin.trigger - ~JPEGPlugin.unstage - ~JPEGPlugin.unsubscribe - ~JPEGPlugin.validate_asyn_ports - ~JPEGPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.MagickPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.MagickPlugin.rst.txt deleted file mode 100644 index 6ebd434534..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.MagickPlugin.rst.txt +++ /dev/null @@ -1,54 +0,0 @@ -ophyd\.areadetector\.plugins\.MagickPlugin -========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: MagickPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MagickPlugin.__init__ - ~MagickPlugin.check_value - ~MagickPlugin.clear_sub - ~MagickPlugin.configure - ~MagickPlugin.describe - ~MagickPlugin.describe_configuration - ~MagickPlugin.disable_on_stage - ~MagickPlugin.enable_on_stage - ~MagickPlugin.ensure_blocking - ~MagickPlugin.ensure_nonblocking - ~MagickPlugin.find_signal - ~MagickPlugin.generate_datum - ~MagickPlugin.get - ~MagickPlugin.get_asyn_digraph - ~MagickPlugin.get_asyn_port_dictionary - ~MagickPlugin.get_device_tuple - ~MagickPlugin.get_instantiated_signals - ~MagickPlugin.get_plugin_by_asyn_port - ~MagickPlugin.missing_plugins - ~MagickPlugin.pause - ~MagickPlugin.put - ~MagickPlugin.read - ~MagickPlugin.read_configuration - ~MagickPlugin.resume - ~MagickPlugin.stage - ~MagickPlugin.stop - ~MagickPlugin.subscribe - ~MagickPlugin.summary - ~MagickPlugin.trigger - ~MagickPlugin.unstage - ~MagickPlugin.unsubscribe - ~MagickPlugin.validate_asyn_ports - ~MagickPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt deleted file mode 100644 index cab43e913f..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt +++ /dev/null @@ -1,54 +0,0 @@ -ophyd\.areadetector\.plugins\.NetCDFPlugin -========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: NetCDFPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~NetCDFPlugin.__init__ - ~NetCDFPlugin.check_value - ~NetCDFPlugin.clear_sub - ~NetCDFPlugin.configure - ~NetCDFPlugin.describe - ~NetCDFPlugin.describe_configuration - ~NetCDFPlugin.disable_on_stage - ~NetCDFPlugin.enable_on_stage - ~NetCDFPlugin.ensure_blocking - ~NetCDFPlugin.ensure_nonblocking - ~NetCDFPlugin.find_signal - ~NetCDFPlugin.generate_datum - ~NetCDFPlugin.get - ~NetCDFPlugin.get_asyn_digraph - ~NetCDFPlugin.get_asyn_port_dictionary - ~NetCDFPlugin.get_device_tuple - ~NetCDFPlugin.get_instantiated_signals - ~NetCDFPlugin.get_plugin_by_asyn_port - ~NetCDFPlugin.missing_plugins - ~NetCDFPlugin.pause - ~NetCDFPlugin.put - ~NetCDFPlugin.read - ~NetCDFPlugin.read_configuration - ~NetCDFPlugin.resume - ~NetCDFPlugin.stage - ~NetCDFPlugin.stop - ~NetCDFPlugin.subscribe - ~NetCDFPlugin.summary - ~NetCDFPlugin.trigger - ~NetCDFPlugin.unstage - ~NetCDFPlugin.unsubscribe - ~NetCDFPlugin.validate_asyn_ports - ~NetCDFPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NexusPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NexusPlugin.rst.txt deleted file mode 100644 index dcd153acca..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.NexusPlugin.rst.txt +++ /dev/null @@ -1,54 +0,0 @@ -ophyd\.areadetector\.plugins\.NexusPlugin -========================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: NexusPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~NexusPlugin.__init__ - ~NexusPlugin.check_value - ~NexusPlugin.clear_sub - ~NexusPlugin.configure - ~NexusPlugin.describe - ~NexusPlugin.describe_configuration - ~NexusPlugin.disable_on_stage - ~NexusPlugin.enable_on_stage - ~NexusPlugin.ensure_blocking - ~NexusPlugin.ensure_nonblocking - ~NexusPlugin.find_signal - ~NexusPlugin.generate_datum - ~NexusPlugin.get - ~NexusPlugin.get_asyn_digraph - ~NexusPlugin.get_asyn_port_dictionary - ~NexusPlugin.get_device_tuple - ~NexusPlugin.get_instantiated_signals - ~NexusPlugin.get_plugin_by_asyn_port - ~NexusPlugin.missing_plugins - ~NexusPlugin.pause - ~NexusPlugin.put - ~NexusPlugin.read - ~NexusPlugin.read_configuration - ~NexusPlugin.resume - ~NexusPlugin.stage - ~NexusPlugin.stop - ~NexusPlugin.subscribe - ~NexusPlugin.summary - ~NexusPlugin.trigger - ~NexusPlugin.unstage - ~NexusPlugin.unsubscribe - ~NexusPlugin.validate_asyn_ports - ~NexusPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.rst.txt deleted file mode 100644 index 25d4efd8ed..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.OverlayPlugin.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.OverlayPlugin -=========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: OverlayPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~OverlayPlugin.__init__ - ~OverlayPlugin.check_value - ~OverlayPlugin.clear_sub - ~OverlayPlugin.configure - ~OverlayPlugin.describe - ~OverlayPlugin.describe_configuration - ~OverlayPlugin.disable_on_stage - ~OverlayPlugin.enable_on_stage - ~OverlayPlugin.ensure_blocking - ~OverlayPlugin.ensure_nonblocking - ~OverlayPlugin.find_signal - ~OverlayPlugin.get - ~OverlayPlugin.get_asyn_digraph - ~OverlayPlugin.get_asyn_port_dictionary - ~OverlayPlugin.get_device_tuple - ~OverlayPlugin.get_instantiated_signals - ~OverlayPlugin.get_plugin_by_asyn_port - ~OverlayPlugin.missing_plugins - ~OverlayPlugin.pause - ~OverlayPlugin.put - ~OverlayPlugin.read - ~OverlayPlugin.read_configuration - ~OverlayPlugin.resume - ~OverlayPlugin.stage - ~OverlayPlugin.stop - ~OverlayPlugin.subscribe - ~OverlayPlugin.summary - ~OverlayPlugin.trigger - ~OverlayPlugin.unstage - ~OverlayPlugin.unsubscribe - ~OverlayPlugin.validate_asyn_ports - ~OverlayPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.PluginBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.PluginBase.rst.txt deleted file mode 100644 index 91cab8f30f..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.PluginBase.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.PluginBase -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: PluginBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PluginBase.__init__ - ~PluginBase.check_value - ~PluginBase.clear_sub - ~PluginBase.configure - ~PluginBase.describe - ~PluginBase.describe_configuration - ~PluginBase.disable_on_stage - ~PluginBase.enable_on_stage - ~PluginBase.ensure_blocking - ~PluginBase.ensure_nonblocking - ~PluginBase.find_signal - ~PluginBase.get - ~PluginBase.get_asyn_digraph - ~PluginBase.get_asyn_port_dictionary - ~PluginBase.get_device_tuple - ~PluginBase.get_instantiated_signals - ~PluginBase.get_plugin_by_asyn_port - ~PluginBase.missing_plugins - ~PluginBase.pause - ~PluginBase.put - ~PluginBase.read - ~PluginBase.read_configuration - ~PluginBase.resume - ~PluginBase.stage - ~PluginBase.stop - ~PluginBase.subscribe - ~PluginBase.summary - ~PluginBase.trigger - ~PluginBase.unstage - ~PluginBase.unsubscribe - ~PluginBase.validate_asyn_ports - ~PluginBase.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.rst.txt deleted file mode 100644 index 1b891b3b8f..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ProcessPlugin.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.ProcessPlugin -=========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ProcessPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ProcessPlugin.__init__ - ~ProcessPlugin.check_value - ~ProcessPlugin.clear_sub - ~ProcessPlugin.configure - ~ProcessPlugin.describe - ~ProcessPlugin.describe_configuration - ~ProcessPlugin.disable_on_stage - ~ProcessPlugin.enable_on_stage - ~ProcessPlugin.ensure_blocking - ~ProcessPlugin.ensure_nonblocking - ~ProcessPlugin.find_signal - ~ProcessPlugin.get - ~ProcessPlugin.get_asyn_digraph - ~ProcessPlugin.get_asyn_port_dictionary - ~ProcessPlugin.get_device_tuple - ~ProcessPlugin.get_instantiated_signals - ~ProcessPlugin.get_plugin_by_asyn_port - ~ProcessPlugin.missing_plugins - ~ProcessPlugin.pause - ~ProcessPlugin.put - ~ProcessPlugin.read - ~ProcessPlugin.read_configuration - ~ProcessPlugin.resume - ~ProcessPlugin.stage - ~ProcessPlugin.stop - ~ProcessPlugin.subscribe - ~ProcessPlugin.summary - ~ProcessPlugin.trigger - ~ProcessPlugin.unstage - ~ProcessPlugin.unsubscribe - ~ProcessPlugin.validate_asyn_ports - ~ProcessPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ROIPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ROIPlugin.rst.txt deleted file mode 100644 index a854991c62..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.ROIPlugin.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.ROIPlugin -======================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ROIPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ROIPlugin.__init__ - ~ROIPlugin.check_value - ~ROIPlugin.clear_sub - ~ROIPlugin.configure - ~ROIPlugin.describe - ~ROIPlugin.describe_configuration - ~ROIPlugin.disable_on_stage - ~ROIPlugin.enable_on_stage - ~ROIPlugin.ensure_blocking - ~ROIPlugin.ensure_nonblocking - ~ROIPlugin.find_signal - ~ROIPlugin.get - ~ROIPlugin.get_asyn_digraph - ~ROIPlugin.get_asyn_port_dictionary - ~ROIPlugin.get_device_tuple - ~ROIPlugin.get_instantiated_signals - ~ROIPlugin.get_plugin_by_asyn_port - ~ROIPlugin.missing_plugins - ~ROIPlugin.pause - ~ROIPlugin.put - ~ROIPlugin.read - ~ROIPlugin.read_configuration - ~ROIPlugin.resume - ~ROIPlugin.stage - ~ROIPlugin.stop - ~ROIPlugin.subscribe - ~ROIPlugin.summary - ~ROIPlugin.trigger - ~ROIPlugin.unstage - ~ROIPlugin.unsubscribe - ~ROIPlugin.validate_asyn_ports - ~ROIPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.StatsPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.StatsPlugin.rst.txt deleted file mode 100644 index 9eeb45ea86..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.StatsPlugin.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.StatsPlugin -========================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: StatsPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~StatsPlugin.__init__ - ~StatsPlugin.check_value - ~StatsPlugin.clear_sub - ~StatsPlugin.configure - ~StatsPlugin.describe - ~StatsPlugin.describe_configuration - ~StatsPlugin.disable_on_stage - ~StatsPlugin.enable_on_stage - ~StatsPlugin.ensure_blocking - ~StatsPlugin.ensure_nonblocking - ~StatsPlugin.find_signal - ~StatsPlugin.get - ~StatsPlugin.get_asyn_digraph - ~StatsPlugin.get_asyn_port_dictionary - ~StatsPlugin.get_device_tuple - ~StatsPlugin.get_instantiated_signals - ~StatsPlugin.get_plugin_by_asyn_port - ~StatsPlugin.missing_plugins - ~StatsPlugin.pause - ~StatsPlugin.put - ~StatsPlugin.read - ~StatsPlugin.read_configuration - ~StatsPlugin.resume - ~StatsPlugin.stage - ~StatsPlugin.stop - ~StatsPlugin.subscribe - ~StatsPlugin.summary - ~StatsPlugin.trigger - ~StatsPlugin.unstage - ~StatsPlugin.unsubscribe - ~StatsPlugin.validate_asyn_ports - ~StatsPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.rst.txt deleted file mode 100644 index e0991cdf8b..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TIFFPlugin.rst.txt +++ /dev/null @@ -1,54 +0,0 @@ -ophyd\.areadetector\.plugins\.TIFFPlugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: TIFFPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~TIFFPlugin.__init__ - ~TIFFPlugin.check_value - ~TIFFPlugin.clear_sub - ~TIFFPlugin.configure - ~TIFFPlugin.describe - ~TIFFPlugin.describe_configuration - ~TIFFPlugin.disable_on_stage - ~TIFFPlugin.enable_on_stage - ~TIFFPlugin.ensure_blocking - ~TIFFPlugin.ensure_nonblocking - ~TIFFPlugin.find_signal - ~TIFFPlugin.generate_datum - ~TIFFPlugin.get - ~TIFFPlugin.get_asyn_digraph - ~TIFFPlugin.get_asyn_port_dictionary - ~TIFFPlugin.get_device_tuple - ~TIFFPlugin.get_instantiated_signals - ~TIFFPlugin.get_plugin_by_asyn_port - ~TIFFPlugin.missing_plugins - ~TIFFPlugin.pause - ~TIFFPlugin.put - ~TIFFPlugin.read - ~TIFFPlugin.read_configuration - ~TIFFPlugin.resume - ~TIFFPlugin.stage - ~TIFFPlugin.stop - ~TIFFPlugin.subscribe - ~TIFFPlugin.summary - ~TIFFPlugin.trigger - ~TIFFPlugin.unstage - ~TIFFPlugin.unsubscribe - ~TIFFPlugin.validate_asyn_ports - ~TIFFPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TransformPlugin.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TransformPlugin.rst.txt deleted file mode 100644 index cef1d94fa6..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.TransformPlugin.rst.txt +++ /dev/null @@ -1,53 +0,0 @@ -ophyd\.areadetector\.plugins\.TransformPlugin -============================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: TransformPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~TransformPlugin.__init__ - ~TransformPlugin.check_value - ~TransformPlugin.clear_sub - ~TransformPlugin.configure - ~TransformPlugin.describe - ~TransformPlugin.describe_configuration - ~TransformPlugin.disable_on_stage - ~TransformPlugin.enable_on_stage - ~TransformPlugin.ensure_blocking - ~TransformPlugin.ensure_nonblocking - ~TransformPlugin.find_signal - ~TransformPlugin.get - ~TransformPlugin.get_asyn_digraph - ~TransformPlugin.get_asyn_port_dictionary - ~TransformPlugin.get_device_tuple - ~TransformPlugin.get_instantiated_signals - ~TransformPlugin.get_plugin_by_asyn_port - ~TransformPlugin.missing_plugins - ~TransformPlugin.pause - ~TransformPlugin.put - ~TransformPlugin.read - ~TransformPlugin.read_configuration - ~TransformPlugin.resume - ~TransformPlugin.stage - ~TransformPlugin.stop - ~TransformPlugin.subscribe - ~TransformPlugin.summary - ~TransformPlugin.trigger - ~TransformPlugin.unstage - ~TransformPlugin.unsubscribe - ~TransformPlugin.validate_asyn_ports - ~TransformPlugin.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.rst.txt deleted file mode 100644 index fd828a13b1..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.plugins.rst.txt +++ /dev/null @@ -1,46 +0,0 @@ -ophyd\.areadetector\.plugins -============================ - -.. automodule:: ophyd.areadetector.plugins - - - - .. rubric:: Functions - - .. autosummary:: - - get_areadetector_plugin - get_areadetector_plugin_class - plugin_from_pvname - register_plugin - - - - - - .. rubric:: Classes - - .. autosummary:: - - ColorConvPlugin - FilePlugin - HDF5Plugin - ImagePlugin - JPEGPlugin - MagickPlugin - NetCDFPlugin - NexusPlugin - Overlay - OverlayPlugin - PluginBase - ProcessPlugin - ROIPlugin - StatsPlugin - TIFFPlugin - TransformPlugin - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.rst.txt deleted file mode 100644 index da097ef50e..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd\.areadetector -=================== - -.. automodule:: ophyd.areadetector - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt deleted file mode 100644 index 2d55b421b8..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins\.MultiTrigger -================================================== - -.. currentmodule:: ophyd.areadetector.trigger_mixins - -.. autoclass:: MultiTrigger - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MultiTrigger.__init__ - ~MultiTrigger.describe - ~MultiTrigger.pause - ~MultiTrigger.read - ~MultiTrigger.resume - ~MultiTrigger.stage - ~MultiTrigger.trigger - ~MultiTrigger.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt deleted file mode 100644 index 1ef26c6fca..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins\.SingleTrigger -=================================================== - -.. currentmodule:: ophyd.areadetector.trigger_mixins - -.. autoclass:: SingleTrigger - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~SingleTrigger.__init__ - ~SingleTrigger.describe - ~SingleTrigger.pause - ~SingleTrigger.read - ~SingleTrigger.resume - ~SingleTrigger.stage - ~SingleTrigger.trigger - ~SingleTrigger.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt deleted file mode 100644 index ad45104a5b..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins\.TriggerBase -================================================= - -.. currentmodule:: ophyd.areadetector.trigger_mixins - -.. autoclass:: TriggerBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~TriggerBase.__init__ - ~TriggerBase.describe - ~TriggerBase.pause - ~TriggerBase.read - ~TriggerBase.resume - ~TriggerBase.stage - ~TriggerBase.trigger - ~TriggerBase.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.rst.txt deleted file mode 100644 index edce5232e9..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.trigger_mixins.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins -==================================== - -.. automodule:: ophyd.areadetector.trigger_mixins - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - ADTriggerStatus - MultiTrigger - SingleTrigger - TriggerBase - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.areadetector.util.rst.txt b/ophyd/_sources/_as_gen/ophyd.areadetector.util.rst.txt deleted file mode 100644 index 3009114c2f..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.areadetector.util.rst.txt +++ /dev/null @@ -1,31 +0,0 @@ -ophyd\.areadetector\.util -========================= - -.. automodule:: ophyd.areadetector.util - - - - .. rubric:: Functions - - .. autosummary:: - - create_detector_stub - get_prop_name - get_stub_info - stub_templates - - - - - - .. rubric:: Classes - - .. autosummary:: - - StubInfo - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.callbacks.rst.txt b/ophyd/_sources/_as_gen/ophyd.callbacks.rst.txt deleted file mode 100644 index 08faa9b427..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.callbacks.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.callbacks -================ - -.. automodule:: ophyd.callbacks - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - LastUidPublish - UidPublish - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.commands.get_all_positioners.rst.txt b/ophyd/_sources/_as_gen/ophyd.commands.get_all_positioners.rst.txt deleted file mode 100644 index 21164fc1c3..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.commands.get_all_positioners.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.commands\.get\_all\_positioners -====================================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: get_all_positioners \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.commands.log_pos.rst.txt b/ophyd/_sources/_as_gen/ophyd.commands.log_pos.rst.txt deleted file mode 100644 index 8efa085fe6..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.commands.log_pos.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.commands\.log\_pos -========================= - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.commands.log_pos_diff.rst.txt b/ophyd/_sources/_as_gen/ophyd.commands.log_pos_diff.rst.txt deleted file mode 100644 index aeb093ba5c..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.commands.log_pos_diff.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.commands\.log\_pos\_diff -=============================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos_diff \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.commands.log_pos_mov.rst.txt b/ophyd/_sources/_as_gen/ophyd.commands.log_pos_mov.rst.txt deleted file mode 100644 index f1f3d376a2..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.commands.log_pos_mov.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.commands\.log\_pos\_mov -============================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos_mov \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.commands.rst.txt b/ophyd/_sources/_as_gen/ophyd.commands.rst.txt deleted file mode 100644 index 70dd04c168..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.commands.rst.txt +++ /dev/null @@ -1,43 +0,0 @@ -ophyd\.commands -=============== - -.. automodule:: ophyd.commands - - - - .. rubric:: Functions - - .. autosummary:: - - blink - catch_keyboard_interrupt - ducks_from_namespace - ensure - get_all_positioners - get_logbook - instances_from_namespace - log_pos - log_pos_diff - log_pos_mov - logbook_add_objects - logbook_to_objects - mov - movr - print_header - print_string - print_value - scrape_namespace - set_lm - set_pos - var_from_namespace - wh_pos - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.commands.wh_pos.rst.txt b/ophyd/_sources/_as_gen/ophyd.commands.wh_pos.rst.txt deleted file mode 100644 index af57feec4a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.commands.wh_pos.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.commands\.wh\_pos -======================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: wh_pos \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.describe.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.describe.rst.txt deleted file mode 100644 index 7fa40f90ba..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.describe.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.describe -========================================= - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.describe \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.pause.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.pause.rst.txt deleted file mode 100644 index 080a91dbbe..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.pause.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.pause -====================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.pause \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.read.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.read.rst.txt deleted file mode 100644 index 111739b74e..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.read.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.read -===================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.read \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.resume.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.resume.rst.txt deleted file mode 100644 index 3493a0f105..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.resume.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.resume -======================================= - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.resume \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.stage.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.stage.rst.txt deleted file mode 100644 index ca86cc2cdb..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.stage.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.stage -====================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.stage \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.trigger.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.trigger.rst.txt deleted file mode 100644 index 9fbb0658e3..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.trigger.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.trigger -======================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.trigger \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.unstage.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.unstage.rst.txt deleted file mode 100644 index e0b05b2818..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.BlueskyInterface.unstage.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.unstage -======================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.unstage \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Component.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Component.rst.txt deleted file mode 100644 index 3943d2b473..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Component.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.device\.Component -======================== - -.. currentmodule:: ophyd.device - -.. autoclass:: Component - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Component.__init__ - ~Component.create_component - ~Component.make_docstring - ~Component.maybe_add_prefix - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__new__.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__new__.rst.txt deleted file mode 100644 index 3d29fd55c3..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__new__.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.ComponentMeta\.\_\_new\_\_ -========================================= - -.. currentmodule:: ophyd.device - -.. automethod:: ComponentMeta.__new__ \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__prepare__.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__prepare__.rst.txt deleted file mode 100644 index fded076273..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.__prepare__.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.ComponentMeta\.\_\_prepare\_\_ -============================================= - -.. currentmodule:: ophyd.device - -.. automethod:: ComponentMeta.__prepare__ \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.rst.txt deleted file mode 100644 index 5c1c274f27..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.ComponentMeta.rst.txt +++ /dev/null @@ -1,22 +0,0 @@ -ophyd\.device\.ComponentMeta -============================ - -.. currentmodule:: ophyd.device - -.. autoclass:: ComponentMeta - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ComponentMeta.mro - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.configure.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.configure.rst.txt deleted file mode 100644 index b0ba0cee0a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.configure.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.configure -================================ - -.. currentmodule:: ophyd.device - -.. automethod:: Device.configure \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.connected.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.connected.rst.txt deleted file mode 100644 index ec490c28ea..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.connected.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.connected -================================ - -.. currentmodule:: ophyd.device - -.. autoattribute:: Device.connected \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.describe_configuration.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.describe_configuration.rst.txt deleted file mode 100644 index 8756224724..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.describe_configuration.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.describe\_configuration -============================================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.describe_configuration \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.get.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.get.rst.txt deleted file mode 100644 index d5715b1c5d..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.get.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.get -========================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.get \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.get_device_tuple.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.get_device_tuple.rst.txt deleted file mode 100644 index 99f426235d..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.get_device_tuple.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.get\_device\_tuple -========================================= - -.. currentmodule:: ophyd.device - -.. automethod:: Device.get_device_tuple \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.get_instantiated_signals.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.get_instantiated_signals.rst.txt deleted file mode 100644 index 0a3bc41252..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.get_instantiated_signals.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.get\_instantiated\_signals -================================================= - -.. currentmodule:: ophyd.device - -.. automethod:: Device.get_instantiated_signals \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.put.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.put.rst.txt deleted file mode 100644 index 2540341a43..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.put.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.put -========================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.put \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.read_configuration.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.read_configuration.rst.txt deleted file mode 100644 index f476dcfb02..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.read_configuration.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.read\_configuration -========================================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.read_configuration \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.rst.txt deleted file mode 100644 index 34f9000306..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.rst.txt +++ /dev/null @@ -1,43 +0,0 @@ -ophyd\.device\.Device -===================== - -.. currentmodule:: ophyd.device - -.. autoclass:: Device - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Device.__init__ - ~Device.check_value - ~Device.clear_sub - ~Device.configure - ~Device.describe - ~Device.describe_configuration - ~Device.get - ~Device.get_device_tuple - ~Device.get_instantiated_signals - ~Device.pause - ~Device.put - ~Device.read - ~Device.read_configuration - ~Device.resume - ~Device.stage - ~Device.stop - ~Device.subscribe - ~Device.summary - ~Device.trigger - ~Device.unstage - ~Device.unsubscribe - ~Device.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.Device.wait_for_connection.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.Device.wait_for_connection.rst.txt deleted file mode 100644 index ed71c55383..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.Device.wait_for_connection.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.wait\_for\_connection -============================================ - -.. currentmodule:: ophyd.device - -.. automethod:: Device.wait_for_connection \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.DynamicDeviceComponent.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.DynamicDeviceComponent.rst.txt deleted file mode 100644 index 5ab3d3b779..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.DynamicDeviceComponent.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.device\.DynamicDeviceComponent -===================================== - -.. currentmodule:: ophyd.device - -.. autoclass:: DynamicDeviceComponent - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~DynamicDeviceComponent.__init__ - ~DynamicDeviceComponent.create_attr - ~DynamicDeviceComponent.create_component - ~DynamicDeviceComponent.make_docstring - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.FormattedComponent.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.FormattedComponent.rst.txt deleted file mode 100644 index 711d7d1ecf..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.FormattedComponent.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.device\.FormattedComponent -================================= - -.. currentmodule:: ophyd.device - -.. autoclass:: FormattedComponent - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FormattedComponent.__init__ - ~FormattedComponent.create_component - ~FormattedComponent.make_docstring - ~FormattedComponent.maybe_add_prefix - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.device.rst.txt b/ophyd/_sources/_as_gen/ophyd.device.rst.txt deleted file mode 100644 index f49ed988d8..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.device.rst.txt +++ /dev/null @@ -1,30 +0,0 @@ -ophyd\.device -============= - -.. automodule:: ophyd.device - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - BlueskyInterface - Component - ComponentMeta - Device - DynamicDeviceComponent - FormattedComponent - GenerateDatumInterface - OrderedDictType - Staged - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.epics_motor.rst.txt b/ophyd/_sources/_as_gen/ophyd.epics_motor.rst.txt deleted file mode 100644 index 93cb90d1c8..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.epics_motor.rst.txt +++ /dev/null @@ -1,24 +0,0 @@ -ophyd\.epics\_motor -=================== - -.. automodule:: ophyd.epics_motor - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsMotor - HomeEnum - MotorBundle - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.collect.rst.txt b/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.collect.rst.txt deleted file mode 100644 index 2cbcf87806..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.collect.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.collect -====================================== - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.collect \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.complete.rst.txt b/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.complete.rst.txt deleted file mode 100644 index 155f40014c..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.complete.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.complete -======================================= - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.complete \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.rst.txt b/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.rst.txt deleted file mode 100644 index ac453de038..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.describe_collect.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.describe\_collect -================================================ - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.describe_collect \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.kickoff.rst.txt b/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.kickoff.rst.txt deleted file mode 100644 index e9dfcbedea..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.flyers.FlyerInterface.kickoff.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.kickoff -====================================== - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.kickoff \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.flyers.rst.txt b/ophyd/_sources/_as_gen/ophyd.flyers.rst.txt deleted file mode 100644 index f61e1e4b2f..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.flyers.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.flyers -============= - -.. automodule:: ophyd.flyers - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - AreaDetectorTimeseriesCollector - FlyerInterface - MonitorFlyerMixin - WaveformCollector - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.mca.rst.txt b/ophyd/_sources/_as_gen/ophyd.mca.rst.txt deleted file mode 100644 index ebd2e74ce8..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.mca.rst.txt +++ /dev/null @@ -1,44 +0,0 @@ -ophyd\.mca -========== - -.. automodule:: ophyd.mca - - - - .. rubric:: Functions - - .. autosummary:: - - add_rois - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsDXP - EpicsDXPBaseSystem - EpicsDXPLowLevel - EpicsDXPLowLevelParameter - EpicsDXPMapping - EpicsDXPMultiElementSystem - EpicsMCA - EpicsMCACallback - EpicsMCAReadNotify - EpicsMCARecord - Mercury1 - MercuryDXP - ROI - Saturn - SaturnDXP - SaturnMCA - SoftDXPTrigger - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.mixins.rst.txt b/ophyd/_sources/_as_gen/ophyd.mixins.rst.txt deleted file mode 100644 index 321aa17d78..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.mixins.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.mixins -============= - -.. automodule:: ophyd.mixins - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsSignalPositioner - SignalPositionerMixin - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.rst.txt deleted file mode 100644 index d8842e85bb..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._reset_sub.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.\_reset\_sub -========================================== - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject._reset_sub \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._run_subs.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._run_subs.rst.txt deleted file mode 100644 index 00369ee6d6..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject._run_subs.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.\_run\_subs -========================================= - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject._run_subs \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.rst.txt deleted file mode 100644 index a87ae0e1e1..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.clear_sub.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.clear\_sub -======================================== - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject.clear_sub \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.connected.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.connected.rst.txt deleted file mode 100644 index 7c61a55b73..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.connected.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.ophydobj.OphydObject.connected -==================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.connected \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.event_types.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.event_types.rst.txt deleted file mode 100644 index 51eb5c44d6..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.event_types.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.event\_types -========================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.event_types \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.name.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.name.rst.txt deleted file mode 100644 index 4d05c3e77b..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.name.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.name -================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.name \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.parent.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.parent.rst.txt deleted file mode 100644 index 1c6129ef7a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.parent.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.parent -==================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.parent \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.root.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.root.rst.txt deleted file mode 100644 index ac1981d7df..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.root.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.root -================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.root \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.rst.txt deleted file mode 100644 index 6825335eda..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.rst.txt +++ /dev/null @@ -1,26 +0,0 @@ -ophyd\.ophydobj\.OphydObject -============================ - -.. currentmodule:: ophyd.ophydobj - -.. autoclass:: OphydObject - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~OphydObject.__init__ - ~OphydObject.check_value - ~OphydObject.clear_sub - ~OphydObject.subscribe - ~OphydObject.unsubscribe - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.subscribe.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.subscribe.rst.txt deleted file mode 100644 index 562db4e4fc..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.subscribe.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.subscribe -======================================= - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject.subscribe \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt deleted file mode 100644 index 1d4329ec67..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.unsubscribe -========================================= - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject.unsubscribe \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.ophydobj.rst.txt b/ophyd/_sources/_as_gen/ophyd.ophydobj.rst.txt deleted file mode 100644 index 2704d5fce2..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.ophydobj.rst.txt +++ /dev/null @@ -1,28 +0,0 @@ -ophyd\.ophydobj -=============== - -.. automodule:: ophyd.ophydobj - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - OphydObject - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - UnknownSubscription - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.set.rst.txt b/ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.set.rst.txt deleted file mode 100644 index 39facc6164..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.set.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.positioner\.PositionerBase\.set -====================================== - -.. currentmodule:: ophyd.positioner - -.. automethod:: PositionerBase.set \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.stop.rst.txt b/ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.stop.rst.txt deleted file mode 100644 index 5629983535..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.positioner.PositionerBase.stop.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.positioner\.PositionerBase\.stop -======================================= - -.. currentmodule:: ophyd.positioner - -.. automethod:: PositionerBase.stop \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.positioner.rst.txt b/ophyd/_sources/_as_gen/ophyd.positioner.rst.txt deleted file mode 100644 index 3cf8fda3e1..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.positioner.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.positioner -================= - -.. automodule:: ophyd.positioner - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - PositionerBase - SoftPositioner - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.pseudopos.rst.txt b/ophyd/_sources/_as_gen/ophyd.pseudopos.rst.txt deleted file mode 100644 index 40760582a2..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.pseudopos.rst.txt +++ /dev/null @@ -1,30 +0,0 @@ -ophyd\.pseudopos -================ - -.. automodule:: ophyd.pseudopos - - - - .. rubric:: Functions - - .. autosummary:: - - pseudo_position_argument - real_position_argument - - - - - - .. rubric:: Classes - - .. autosummary:: - - PseudoPositioner - PseudoSingle - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.pv_positioner.rst.txt b/ophyd/_sources/_as_gen/ophyd.pv_positioner.rst.txt deleted file mode 100644 index fa6adc56f9..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.pv_positioner.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.pv\_positioner -===================== - -.. automodule:: ophyd.pv_positioner - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - PVPositioner - PVPositionerPC - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.quadem.rst.txt b/ophyd/_sources/_as_gen/ophyd.quadem.rst.txt deleted file mode 100644 index e238f53088..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.quadem.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.quadem -============= - -.. automodule:: ophyd.quadem - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - APS_EM - NSLS_EM - QuadEM - TetrAMM - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.rst.txt b/ophyd/_sources/_as_gen/ophyd.rst.txt deleted file mode 100644 index 5b6f833d46..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd -===== - -.. automodule:: ophyd - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.scaler.rst.txt b/ophyd/_sources/_as_gen/ophyd.scaler.rst.txt deleted file mode 100644 index 89ea86b7e8..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.scaler.rst.txt +++ /dev/null @@ -1,24 +0,0 @@ -ophyd\.scaler -============= - -.. automodule:: ophyd.scaler - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsScaler - ScalerCH - ScalerChannel - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.signal.rst.txt b/ophyd/_sources/_as_gen/ophyd.signal.rst.txt deleted file mode 100644 index debcebbb7a..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.signal.rst.txt +++ /dev/null @@ -1,28 +0,0 @@ -ophyd\.signal -============= - -.. automodule:: ophyd.signal - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - ArrayAttributeSignal - AttributeSignal - DerivedSignal - EpicsSignal - EpicsSignalBase - EpicsSignalRO - Signal - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.status.DeviceStatus.rst.txt b/ophyd/_sources/_as_gen/ophyd.status.DeviceStatus.rst.txt deleted file mode 100644 index 0e49b7c973..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.status.DeviceStatus.rst.txt +++ /dev/null @@ -1,24 +0,0 @@ -ophyd\.status\.DeviceStatus -=========================== - -.. currentmodule:: ophyd.status - -.. autoclass:: DeviceStatus - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~DeviceStatus.__init__ - ~DeviceStatus.add_callback - ~DeviceStatus.watch - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.status.MoveStatus.rst.txt b/ophyd/_sources/_as_gen/ophyd.status.MoveStatus.rst.txt deleted file mode 100644 index 65f6dbb228..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.status.MoveStatus.rst.txt +++ /dev/null @@ -1,24 +0,0 @@ -ophyd\.status\.MoveStatus -========================= - -.. currentmodule:: ophyd.status - -.. autoclass:: MoveStatus - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MoveStatus.__init__ - ~MoveStatus.add_callback - ~MoveStatus.watch - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.status.Status.rst.txt b/ophyd/_sources/_as_gen/ophyd.status.Status.rst.txt deleted file mode 100644 index 4dfe240960..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.status.Status.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.status\.Status -===================== - -.. currentmodule:: ophyd.status - -.. autoclass:: Status - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Status.__init__ - ~Status.add_callback - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.status.StatusBase._finished.rst.txt b/ophyd/_sources/_as_gen/ophyd.status.StatusBase._finished.rst.txt deleted file mode 100644 index 63548d41bd..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.status.StatusBase._finished.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.status\.StatusBase\.\_finished -===================================== - -.. currentmodule:: ophyd.status - -.. automethod:: StatusBase._finished \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.status.StatusBase.finished_cb.rst.txt b/ophyd/_sources/_as_gen/ophyd.status.StatusBase.finished_cb.rst.txt deleted file mode 100644 index 6f2dfe8353..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.status.StatusBase.finished_cb.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.status\.StatusBase\.finished\_cb -======================================= - -.. currentmodule:: ophyd.status - -.. autoattribute:: StatusBase.finished_cb \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.status.StatusBase.rst.txt b/ophyd/_sources/_as_gen/ophyd.status.StatusBase.rst.txt deleted file mode 100644 index da19220b32..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.status.StatusBase.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.status\.StatusBase -========================= - -.. currentmodule:: ophyd.status - -.. autoclass:: StatusBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~StatusBase.__init__ - ~StatusBase.add_callback - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.status.rst.txt b/ophyd/_sources/_as_gen/ophyd.status.rst.txt deleted file mode 100644 index 19d69c1466..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.status.rst.txt +++ /dev/null @@ -1,39 +0,0 @@ -ophyd\.status -============= - -.. automodule:: ophyd.status - - - - .. rubric:: Functions - - .. autosummary:: - - wait - - - - - - .. rubric:: Classes - - .. autosummary:: - - AndStatus - DeviceStatus - MoveStatus - Status - StatusBase - SubscriptionStatus - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - UseNewProperty - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.utils.epics_pvs.rst.txt b/ophyd/_sources/_as_gen/ophyd.utils.epics_pvs.rst.txt deleted file mode 100644 index 60b1377bf9..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.utils.epics_pvs.rst.txt +++ /dev/null @@ -1,45 +0,0 @@ -ophyd\.utils\.epics\_pvs -======================== - -.. automodule:: ophyd.utils.epics_pvs - - - - .. rubric:: Functions - - .. autosummary:: - - data_shape - data_type - fmt_time - raise_if_disconnected - record_field - records_from_db - set_and_wait - split_record_field - strip_field - validate_pv_name - waveform_to_string - - - - - - .. rubric:: Classes - - .. autosummary:: - - AlarmSeverity - AlarmStatus - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - BadPVName - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.utils.errors.rst.txt b/ophyd/_sources/_as_gen/ophyd.utils.errors.rst.txt deleted file mode 100644 index a48f37c661..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.utils.errors.rst.txt +++ /dev/null @@ -1,27 +0,0 @@ -ophyd\.utils\.errors -==================== - -.. automodule:: ophyd.utils.errors - - - - - - - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - DisconnectedError - ExceptionBundle - LimitError - OpException - ReadOnlyError - RedundantStaging - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.utils.paths.rst.txt b/ophyd/_sources/_as_gen/ophyd.utils.paths.rst.txt deleted file mode 100644 index 0ef88dfddc..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.utils.paths.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.utils\.paths -=================== - -.. automodule:: ophyd.utils.paths - - - - .. rubric:: Functions - - .. autosummary:: - - make_dir_tree - makedirs - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.utils.rst.txt b/ophyd/_sources/_as_gen/ophyd.utils.rst.txt deleted file mode 100644 index 3163d852b3..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.utils.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.utils -============ - -.. automodule:: ophyd.utils - - - - .. rubric:: Functions - - .. autosummary:: - - doc_annotation_forwarder - enum - - - - - - .. rubric:: Classes - - .. autosummary:: - - OrderedDefaultDict - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/_as_gen/ophyd.utils.startup.rst.txt b/ophyd/_sources/_as_gen/ophyd.utils.startup.rst.txt deleted file mode 100644 index 2085e463b6..0000000000 --- a/ophyd/_sources/_as_gen/ophyd.utils.startup.rst.txt +++ /dev/null @@ -1,22 +0,0 @@ -ophyd\.utils\.startup -===================== - -.. automodule:: ophyd.utils.startup - - - - .. rubric:: Functions - - .. autosummary:: - - setup - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/api.rst.txt b/ophyd/_sources/api.rst.txt deleted file mode 100644 index 1243c128f1..0000000000 --- a/ophyd/_sources/api.rst.txt +++ /dev/null @@ -1,38 +0,0 @@ -API Reference -============= - - - -.. autosummary:: - :toctree: generated - - ophyd - ophyd.signal - ophyd.callbacks - ophyd.device - ophyd.epics_motor - ophyd.flyers - ophyd.mca - ophyd.mixins - ophyd.ophydobj - ophyd.positioner - ophyd.pseudopos - ophyd.pv_positioner - ophyd.quadem - ophyd.scaler - ophyd.signal - ophyd.status - ophyd.areadetector - ophyd.areadetector.base - ophyd.areadetector.cam - ophyd.areadetector.detectors - ophyd.areadetector.docs - ophyd.areadetector.filestore_mixins - ophyd.areadetector.plugins - ophyd.areadetector.trigger_mixins - ophyd.areadetector.util - ophyd.utils - ophyd.utils.epics_pvs - ophyd.utils.errors - ophyd.utils.paths - ophyd.utils.startup diff --git a/ophyd/_sources/architecture.rst.txt b/ophyd/_sources/architecture.rst.txt deleted file mode 100644 index 46de9bb66c..0000000000 --- a/ophyd/_sources/architecture.rst.txt +++ /dev/null @@ -1,243 +0,0 @@ -.. currentmodule:: ophyd - -============== - Architecture -============== - -Hardware abstraction -==================== - - -``Ophyd`` is the hardware abstraction layer that provides a consistent -interface between the underlying control communication protocol and -`bluesky `_. This is done by -bundling sets of the underlying process variables into hierarchical -devices and exposing a semantic API in terms of control system -primitives. Two terms that will be used throughout are - - - **Signal** - - Represents an atomic 'process variable'. This is nominally a - 'scalar' value and cannot be decomposed any further by layers - above :mod:`ophyd`. In this context an array (waveform) or string - would be a scalar because there is no ophyd API to read only part - of it. - - **Device** - - Hierarchy composed of Signals and other Devices. The components - of a Device can be introspected by layers above :mod:`ophyd` and - may be decomposed to, ultimately, the underlying Signals. - - -Put another way, if a hierarchical device is a tree, **Signals** are the leaves -and **Devices** are the nodes. - -Names ------ - -In ophyd, we can think of a Device as a tree of sub-devices and -eventually the 'leaf' nodes which are Signals (and map to 1 or 2 PVs). -At the bottom of the tree, each Signal (leaf-node) has 3 names -associated with it: - - 1. *The PV name it is going to talk to*. Typically, this name must - be globally unique within the control system you are using. This - can lead to them being both verbose and cryptic. From - ``ophyd``\'s point of view these strings are taken as given and - does not require any particular pattern, scheme, rhyme, or reason - in the names. - 2. *The Python attribute name*. These are the names of the - components of a device and allow attribute-style access to the sub - components as ``dev.cpt_name``. These names are set in the - `ophyd.Device` sub-class definitions. They need to be a valid - Python identifiers (which Python enforces) and should be chosen to - makes sense to the people directly working with the ophyd instances. - They need be unique within a `~ophyd.Device` and hence Python ensures that - the fully qualified name will be unique within a namespace. - 3. *The ``obj.name`` attribute*. This name is the one that will be - used in the data returned by `~ophyd.Device.read` and will - eventually end up in the flowing through `bluesky` and into - `databroker` to be eventually exposed to the users at analysis - times. By default, these names are derived from the Python - attribute name of the sub-device and the name of it's parent, but - can be set at runtime. These names should be picked to make - scientific sense at analysis time and must be unique among devices - that will be used simultaneously. - -.. _hl_api: - -Uniform High-level Interface -============================ - -All ophyd objects implemented a small set of methods which are used by -`bluesky`_ plans. It is the responsibility of the `ophyd` objects to -correctly implement these methods in terms of the underlying control -system. - - -Read-able Interface -------------------- - -The minimum set of methods an object must implement is - -.. autosummary:: - :toctree: generated - - ~device.BlueskyInterface.trigger - ~device.BlueskyInterface.read - ~device.BlueskyInterface.describe - -along with three properties: - -.. autosummary:: - :toctree: generated - - ~ophydobj.OphydObject.name - ~ophydobj.OphydObject.parent - ~ophydobj.OphydObject.root - - -There are two optional methods which plans may use to 'enable' or -'disable' a device for data collection. For example, a beam position -monitor maybe in continuous mode when not collecting data but be -stitched to a triggered mode for scanning. By convention ``unstage`` -'undoes' whatever ``stage`` did to the state of the underlying -hardware and should return it to the state it was before ``stage`` was -called. - - -.. autosummary:: - :toctree: generated - - ~device.BlueskyInterface.stage - ~device.BlueskyInterface.unstage - -Two additional optional methods are used to notify devices if, -during a scan, the run is suspended. The semantics of these methods -is coupled to :class:`~bluesky.run_engine.RunEngine`. - -.. autosummary:: - :toctree: generated - - ~device.BlueskyInterface.pause - ~device.BlueskyInterface.resume - -Set-able Interface ------------------- - -Of course, most interesting uses of hardware requires telling it to do -rather than just reading from it! To do that the high-level API has -the ``set`` method and a corresponding ``stop`` method to halt motion -before it is complete. - -The ``set`` method which returns `Status` that can be used to tell -when motion is done. It is the responsibility of the `ophyd` objects -to implement this functionality in terms of the underlying control -system. Thus, from the perspective of the `bluesky`_, a motor, a -temperature controller, a gate valve, and software pseudo-positioner -can all be treated the same. - - -.. autosummary:: - :toctree: generated - - ~positioner.PositionerBase.set - ~positioner.PositionerBase.stop - - -Configuration -------------- - -In addition to values we will want to read, as 'data', or set, as a -'position', there tend to be many values associated with the -configuration of hardware. This is things like the velocity of a -motor, the PID loop parameters of a feedback loop, or the chip -temperature of a detector. In general these are measurements that are -not directly related to the measurement of interest, but maybe needed for -understanding the measured data. - -.. autosummary:: - :toctree: generated - - ~device.Device.configure - ~device.Device.read_configuration - ~device.Device.describe_configuration - - - -Fly-able Interface ------------------- - -There is some hardware where instead of the fine-grained control -provided by ``set``, ``trigger``, and ``read`` we just want to tell it -"Go!" and check back later when it is done. This is typically done -when there needs to coordinated motion or triggering at rates beyond -what can reasonably done in via EPICS/Python and tend to be called 'fly scans'. - -The flyable interface provides four methods - -.. autosummary:: - :toctree: generated - - ~flyers.FlyerInterface.kickoff - ~flyers.FlyerInterface.complete - ~flyers.FlyerInterface.describe_collect - ~flyers.FlyerInterface.collect - -Asynchronous status -=================== - -Hardware control and data collection is an inherently asynchronous -activity. The many devices on a beamline are (in general) uncoupled -and can move / read independently. This is reflected in the API as -most of the methods in :obj:`BlueskyInterface` returning `Status` -objects and in the callback registry at the core of -:obj:`~ophydobj.OphydObject`. The :class:`StatusBase` objects are the -bridge between the asynchronous behavior of the underlying control -system and the asynchronous behavior of -:class:`~bluesky.run_engine.RunEngine`. - -The core API of the status objects is a property and a private method: - -.. autosummary:: - :nosignatures: - - status.StatusBase.finished_cb - status.StatusBase._finished - -The `bluesky`_ side assigns a callback to -:attr:`status.StatusBase.finished_cb` which is triggered when the -:meth:`status.StatusBase._finished` method is called. The status object -conveys both that the action it 'done' and if the action was -successful or not. - - - -Callbacks -========= - -The base class of almost all objects in ``ophyd`` is :obj:`~ophydobj.OphydObject` - a callback registry - -.. currentmodule:: ophyd.ophydobj - -.. autosummary:: - :toctree: generated - :nosignatures: - - OphydObject - OphydObject.event_types - OphydObject.subscribe - OphydObject.unsubscribe - OphydObject.clear_sub - - OphydObject._run_subs - - OphydObject._reset_sub - -This registry is used to connect to the underlying events from the -control system and propagate them up to bluesky, either via -`~status.StatusBase` objects or via direct subscription from the -:class:`~bluesky.run_engine.RunEngine`. diff --git a/ophyd/_sources/architecture.txt b/ophyd/_sources/architecture.txt deleted file mode 100644 index 3f4aa8b911..0000000000 --- a/ophyd/_sources/architecture.txt +++ /dev/null @@ -1,15 +0,0 @@ -Project Architecture -******************** - -This is the class inheritance diagram for the key pieces of ophyd. This is -a selection meant to give a readable and representative picture of the -package's organization. - -.. inheritance-diagram:: ophyd.Device ophyd.Component ophyd.EpicsSignal ophyd.EpicsSignalRO ophyd.Signal ophyd.EpicsMotor ophyd.EpicsScaler ophyd.EpicsMCA ophyd.AreaDetector ophyd.HDF5Plugin ophyd.DynamicDeviceComponent ophyd.PVPositioner ophyd.SingleTrigger - :parts: 2 - -Device classes use metaclass magic to inspect and lazily instantiate their -Components. The examples illustrate how easy it is to define new kinds of -devices, and this is largely because the "dirty work" of handling connections -is hidden in the ``Component`` and ``ComponentMeta``. To understand further, -read the source code of ``device.py`` or contact the developers. diff --git a/ophyd/_sources/area-detector.rst.txt b/ophyd/_sources/area-detector.rst.txt deleted file mode 100644 index b1770c31be..0000000000 --- a/ophyd/_sources/area-detector.rst.txt +++ /dev/null @@ -1,574 +0,0 @@ -.. currentmodule:: ophyd.areadetector - -================ - Area Detectors -================ - -Area Detector devices require some customization to use. Here is the simplest -possible configuration. - -.. code-block:: python - - from ophyd import AreaDetector, SingleTrigger - - class MyDetector(SingleTrigger, AreaDetector): - pass - - prefix = 'XF:23ID1-ES{Tst-Cam:1}' - det = MyDetector(prefix) - -The above should work correctly with any EPICS `Area Detector -`_. We test -on versions 1.9.1 and 2.2. For preliminary support for AD33 see the -``nslsii`` package. - -.. warning - - When making new detector classes the ``Trigger`` class must come first in the inheretance - or the default ``Device`` trigger method will be used instead of the trigger method from - the trigger mix in. - - -Callbacks -========= - -Internally, Area Detector provides a `flexible array processing -pipeline `_. -The pipeline is a chain of 'plugins' which can be re-configured at -runtime by setting the ``.nd_array_port`` on a downstream plugin to -the ``.port_name`` of the upstream plugin. Internally the plugins -pass data between each other by passing a pointer to an ``NDArray`` C++ -object (which is an array plus some meta-data). The arrays are -allocated out of a shared pool when they are created (typically by the -'cam' plugin which wraps the detector driver) and freed when the last -plugin is done with them. Each plugin can trigger its children in -two ways: - -- *blocking* : The next plugin is called syncronously, blocking the - parent plugin until all of the (blocking) children are finished. - This is single-threaded. -- *non-blocking* : The pointer is put on a queue that the child - consumes from. This allows multi-threaded processing with each - plugin running on its own thread. - -This behavior is controlled by the ``.blocking_callbacks`` signal on -the plugin. - -The :obj:`~ophyd.areadetector.trigger_mixins.SingleTrigger` sets the -acquire bit 'high' and then watches for it to go low (indicating that -acquisition is complete). If any of the down-stream plugins are in -non-blocking mode are likely to have the following sequence of events -when using, for example, the ``Stats`` plugin and taking one frame - -1. detector produces the frame -2. puts the frame on the queue for the stats plugin to consume -3. flips the acquire bit to 'low' -4. ophyd sees the acquire bit go low and marks the status object as done -5. bluesky continues with the plan and reads the Stats plugin (which still contains old data) -6. the Stats plugin processes the frame (updating the values for the just-collected frame) - -Because (6) happens after (5) bluesky reads 'stale' data from the -stats plugin and produces an event which associates other measurements -with the incorrect reading from the camera. This issue has resulted -in alignment scans systematically returning the values from the -previous point. To avoid this, we ensure in ``stage()`` that all -plugins are in 'blocking' mode. This has the downside of slowing the -detector down as we are only using a single thread but has the -advantage of giving correct measurements. - -Prior to AD3-3, AD did not track if a given frame had fully propagated -through the pipeline. We looked into tracking this from the outside -and using this to determine when the data acquisition was done. In -principle this could be done by watching a combination of queue size -and the ``.uniqueID`` signal, however this work was abandoned due to -the complexity of supporting this for all of the version of AD on the -floor. - -In `AD3-3 -`_, -the camera now tracks if all of the frames it produces have been -processed (added to support ophyd [#]_ ). There is now a -``.wait_for_plugins`` signal that controls the behavior of -put-complete on the ``.acquire`` signal. If ``.wait_for_plugins`` is -``True``, then the put-complete callback on the ``.acquire`` signal -will not process until all of the frames have been processed by all of -the plugins. - -This allows us to run with all of the plugins in non-blocking mode and -to simplify the trigger logic. Instead of waiting for the acquire bit to -change value, we use the a put-completion callback. - -To convert an existing area detector sub-class to support the new scheme you -must: - -1. Change the type of the came to sub-class :obj:`nslsii.ad33.CamV33Mixin` -2. Change the trigger mixin to be :obj:`nslsii.ad33.SingleTriggerV33` -3. Arrange for ``det.cam.ensure_nonblocking`` to be called after - initializing the ophyd object. - - - -Ports -===== - -Each plugin has a read-only out-put port name (``.port_name``) and a -settable in-put port name (``.nd_array_port``). To connect plugin -``downstream`` to plugin ``upstream`` set ``downstream.nd_array_port`` -to ``upstream.port_name``. - -The top-level `~base.ADBase` class has several helper methods for -walking and validating the plugin network. - -.. autosummary:: - :toctree: generated - - ~base.ADBase - ~base.ADBase.visualize_asyn_digraph - ~base.ADBase.get_plugin_by_asyn_port - ~base.ADBase.get_asyn_port_dictionary - ~base.ADBase.get_asyn_digraph - ~base.ADBase.validate_asyn_ports - ~base.ADBase.missing_plugins - - -Filestore Plugins -================= - -.. note:: - - The mixins in this section are to be mixed with the file plugin classes - and used as components on a larger device. The siblings of the resulting classes - are components representing the various plugins that make up an Area Detector. - -Integration of the file writing with filestore is done by mixing -sub-classes of :class:`FileStorePluginBase` into one of the file -plugin classes and using the resulting class as a component in your -detector. - - -The base classes (which may be merged in the future) - -.. autosummary:: - :toctree: generated - - ~filestore_mixins.FileStoreBase - ~filestore_mixins.FileStorePluginBase - - -provide the basic methods required for integrating AreaDetector file plugins with -:mod:`filestore` - -.. autosummary:: - :toctree: generated - - ~filestore_mixins.FileStoreBase.generate_datum - - ~filestore_mixins.FileStoreBase.write_path_template - ~filestore_mixins.FileStoreBase.reg_root - ~filestore_mixins.FileStoreBase.fs_root - ~filestore_mixins.FileStoreBase.read_path_template - - ~filestore_mixins.FileStorePluginBase.make_filename - -`~filestore_mixins.FileStorePluginBase` must be sub-classed to match -each file plugin and take care of inserting the correct meta-data into -`FileStore` and configuring the file plugin. - -.. autosummary:: - :toctree: generated - - ~filestore_mixins.FileStoreTIFF - ~filestore_mixins.FileStoreHDF5 - ~filestore_mixins.FileStoreTIFFSquashing - - -The :class:`~filestore_mixins.FileStoreTIFFSquashing` also makes use of the -processing plugin to 'squash' multiple frames together into a single -saved image. - -To create a functioning class you must also mixin - -.. autosummary:: - :toctree: generated - - ~filestore_mixins.FileStoreIterativeWrite - -which extends :meth:`~filestore_mixins.FileStoreBase.generate_datum` to -insert into the ``FileStore`` instance as data is taken. - -For convenience we provide - - -.. autosummary:: - :toctree: generated - - ~filestore_mixins.FileStoreHDF5IterativeWrite - ~filestore_mixins.FileStoreTIFFIterativeWrite - - -.. inheritance-diagram:: ophyd.areadetector.filestore_mixins.FileStoreBase ophyd.areadetector.filestore_mixins.FileStoreHDF5 ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite ophyd.areadetector.filestore_mixins.FileStorePluginBase ophyd.areadetector.filestore_mixins.FileStoreTIFF ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing ophyd.device.GenerateDatumInterface ophyd.device.BlueskyInterface - :parts: 1 - - -Area Detector Trigger dispatching -================================= -.. note:: - - The mixins in this section are to be mixed with :class:`~ophyd.device.Device` to - represent the 'top level' area detector. The components of the resulting class are - the various plugins that make up a full Area Detector. - - -.. autosummary:: - :toctree: generated - - ~detectors.DetectorBase - ~detectors.DetectorBase.dispatch - ~detectors.DetectorBase.make_data_key - -The translation between the :meth:`~ophyd.device.BlueskyInterface.trigger` and triggering -the underlying camera is mediated by the trigger mix-ins. - -.. autosummary:: - :toctree: generated - - ~trigger_mixins.TriggerBase - ~trigger_mixins.SingleTrigger - ~trigger_mixins.MultiTrigger - -.. inheritance-diagram:: ophyd.areadetector.trigger_mixins.TriggerBase ophyd.areadetector.trigger_mixins.SingleTrigger ophyd.areadetector.trigger_mixins.MultiTrigger - :parts: 1 - -Plugins -======= - - -.. autosummary:: - :toctree: generated - - ~plugins.PluginBase - ~plugins.ColorConvPlugin - ~plugins.ImagePlugin - ~plugins.OverlayPlugin - ~plugins.ProcessPlugin - ~plugins.ROIPlugin - ~plugins.StatsPlugin - ~plugins.TransformPlugin - -.. inheritance-diagram:: ophyd.areadetector.plugins.PluginBase ophyd.areadetector.plugins.ColorConvPlugin ophyd.areadetector.plugins.ImagePlugin ophyd.areadetector.plugins.OverlayPlugin ophyd.areadetector.plugins.ProcessPlugin ophyd.areadetector.plugins.ROIPlugin ophyd.areadetector.plugins.StatsPlugin ophyd.areadetector.plugins.TransformPlugin - :parts: 1 - -File Plugins -============ -.. autosummary:: - :toctree: generated - - ~plugins.FilePlugin - ~plugins.HDF5Plugin - ~plugins.JPEGPlugin - ~plugins.MagickPlugin - ~plugins.NetCDFPlugin - ~plugins.NexusPlugin - ~plugins.TIFFPlugin - - -.. inheritance-diagram:: ophyd.areadetector.plugins.FilePlugin ophyd.areadetector.plugins.HDF5Plugin ophyd.areadetector.plugins.JPEGPlugin ophyd.areadetector.plugins.MagickPlugin ophyd.areadetector.plugins.NetCDFPlugin ophyd.areadetector.plugins.NexusPlugin ophyd.areadetector.plugins.TIFFPlugin - :parts: 1 - - -Specific Hardware -================= - -While the above example should work with any Area Detector, ophyd provides -specialized classes for specific detectors supported by EPICS Area Detector. -These specialized classes generally add components representing fields -particular to a given detector, along with device-specific documentation -for components. - -To use these model-specific classes, swap out ``AreaDetector`` like so: - -.. code-block:: python - - # before - class MyDetector(SingleTrigger, AreaDetector): - pass - - # after - class MyDetector(SingleTrigger, AndorDetector): - pass - -.. autosummary:: - :toctree: generated - - ~detectors.AreaDetector - ~detectors.AdscDetector - ~detectors.Andor3Detector - ~detectors.AndorDetector - ~detectors.BrukerDetector - ~detectors.FirewireLinDetector - ~detectors.FirewireWinDetector - ~detectors.LightFieldDetector - ~detectors.Mar345Detector - ~detectors.MarCCDDetector - ~detectors.PSLDetector - ~detectors.PerkinElmerDetector - ~detectors.PilatusDetector - ~detectors.PixiradDetector - ~detectors.PointGreyDetector - ~detectors.ProsilicaDetector - ~detectors.PvcamDetector - ~detectors.RoperDetector - ~detectors.SimDetector - ~detectors.URLDetector - -.. inheritance-diagram:: ophyd.areadetector.detectors.AreaDetector ophyd.areadetector.detectors.AdscDetector ophyd.areadetector.detectors.Andor3Detector ophyd.areadetector.detectors.AndorDetector ophyd.areadetector.detectors.BrukerDetector ophyd.areadetector.detectors.FirewireLinDetector ophyd.areadetector.detectors.FirewireWinDetector ophyd.areadetector.detectors.LightFieldDetector ophyd.areadetector.detectors.Mar345Detector ophyd.areadetector.detectors.MarCCDDetector ophyd.areadetector.detectors.PSLDetector ophyd.areadetector.detectors.PerkinElmerDetector ophyd.areadetector.detectors.PilatusDetector ophyd.areadetector.detectors.PixiradDetector ophyd.areadetector.detectors.PointGreyDetector ophyd.areadetector.detectors.ProsilicaDetector ophyd.areadetector.detectors.PvcamDetector ophyd.areadetector.detectors.RoperDetector ophyd.areadetector.detectors.SimDetector ophyd.areadetector.detectors.URLDetector - :parts: 1 - - -Cams ----- - -The vendor specific details are embedded in the cams - -.. autosummary:: - :toctree: generated - - ~cam.CamBase - ~cam.AdscDetectorCam - ~cam.Andor3DetectorCam - ~cam.AndorDetectorCam - ~cam.BrukerDetectorCam - ~cam.FirewireLinDetectorCam - ~cam.FirewireWinDetectorCam - ~cam.LightFieldDetectorCam - ~cam.Mar345DetectorCam - ~cam.MarCCDDetectorCam - ~cam.PSLDetectorCam - ~cam.PcoDetectorCam - ~cam.PcoDetectorIO - ~cam.PcoDetectorSimIO - ~cam.PerkinElmerDetectorCam - ~cam.PilatusDetectorCam - ~cam.PixiradDetectorCam - ~cam.PointGreyDetectorCam - ~cam.ProsilicaDetectorCam - ~cam.PvcamDetectorCam - ~cam.RoperDetectorCam - ~cam.SimDetectorCam - ~cam.URLDetectorCam - -.. inheritance-diagram:: ophyd.areadetector.cam.CamBase ophyd.areadetector.cam.AdscDetectorCam ophyd.areadetector.cam.Andor3DetectorCam ophyd.areadetector.cam.AndorDetectorCam ophyd.areadetector.cam.BrukerDetectorCam ophyd.areadetector.cam.FirewireLinDetectorCam ophyd.areadetector.cam.FirewireWinDetectorCam ophyd.areadetector.cam.LightFieldDetectorCam ophyd.areadetector.cam.Mar345DetectorCam ophyd.areadetector.cam.MarCCDDetectorCam ophyd.areadetector.cam.PSLDetectorCam ophyd.areadetector.cam.PcoDetectorCam ophyd.areadetector.cam.PcoDetectorIO ophyd.areadetector.cam.PcoDetectorSimIO ophyd.areadetector.cam.PerkinElmerDetectorCam ophyd.areadetector.cam.PilatusDetectorCam ophyd.areadetector.cam.PixiradDetectorCam ophyd.areadetector.cam.PointGreyDetectorCam ophyd.areadetector.cam.ProsilicaDetectorCam ophyd.areadetector.cam.PvcamDetectorCam ophyd.areadetector.cam.RoperDetectorCam ophyd.areadetector.cam.SimDetectorCam ophyd.areadetector.cam.URLDetectorCam - :parts: 1 - -Custom Devices -============== -For custom hardware based on area-detector it may be necesary to add a custom -device class (for custom plugins see section below). The new class should -inherit from :class:`ophyd.areadetector.base.ADbase` and should have the following -PV structure: - -.. code-block:: python - - PV = 'Areadetector_device_PV_prefix:(Plugin_suffix or attribute_suffix)' - -As an example, for the builtin areadetector 'stats' class this looks like: - -.. code-block:: python - - PV = 'Areadetector_device_PV_prefix:Stats' - -And for the builtin areadetector 'color mode' attribute it looks like: - -.. code-block:: python - - PV = 'Areadetector_device_PV_prefix:cam1:ColorMode_RBV' - -where ``'Areadetector_device_PV_prefix'`` is the base PV name for the -Area detector device, ``plugin_suffix = 'Stats'`` is the 'stats' Plugin -suffix and ``attribute_suffix = 'ColorMode_RBV'`` is the 'color mode' -attribute suffix of the ``'cam1'`` plugin. - -In order to create the class then the following code is required -(where ``XXX`` is the name of the device): - -.. code-block:: python - - from ophyd.areadetector.base import ad_group, EpicsSignalWithRBV - from ophyd.signal import EpicsSignal, EpicsSignalRO - from ophyd.device import DynamicDeviceComponent as DDCpt, Component as Cpt - from ophyd.detectors import DetectorBase - from ophyd.areadetector.trigger_mixins import SingleTrigger - - class XXX(SingleTrigger, DetectorBase): - '''An areadetector device class for ...''' - - # ADD ATTRIBUTES AS COMPONENTS HERE USING THE SYNTAX - # where 'Type' is EpicsSignal, EpicsSignalRO, EpicsSignalWithRBV,.. - attribute_name = Cpt(Type, attribute_suffix) - - # ADD ATTRIBUTE GROUPS AS COMPONENTS USING THE SYNTAX - group_name = DDCpt(ad_group(Type, - (attribute_1_name, attribute_1_suffix), - (attribute_2_name, attribute_2_suffix), - ..., - (attribute_n_name, attribute_n_suffix)) - - # ADD ATTRIBUTE PLUGINS AS COMPONENTS USING THE SYNTAX - plugin_name = Cpt(PluginClass, suffix=Plugin_suffix+':') - - -.. note:: - - 1. :class:`ophyd.areadetector.detectors.DetectorBase` can be - swapped out for any other Areadetector Device class that inherits - from :class:`ophyd.areadetector.detectors.DetectorBase`. - - 2. :class:`ophyd.areadetector.triggermixins.SingleTrigger` is an - optional trigger_mixin class and can be swapped out for any other - class that inherits from - :class:`ophyd.areadetector.trigger_mixins.TriggerBase`. These - classes provide the logic to 'trigger' the detector and actually - acquire the images. - - 3. PluginClass can be - :class:`ophyd.areadetector.plugins.PluginBase`, - :class:`ophyd.areadetector.cam.CamBase` or any plugin/cam class - that inherits from either of these. - - 4. In the ophyd source code, you may see - :class:`.ophyd.areadetector.base.ADComponent` - used. Functionally, this is interchangeable with an ordinary - :class:`.ophyd.device.Component` (imported as ``Cpt`` above); it - just adds extra machinery for generating a docstring based on a - scrape of the HTML of the official AreaDetector documentation. For - custom extensions such as we are addressing here, it is not - generally applicable. - - -The Areadetector device should then be instantiated using: - -.. code-block:: python - - ADdevice_name = Some_Areadetector_Device_Class(Areadetector_device_PV_suffix, - name = 'ADdevice_name') - - -Custom Plugins or Cameras -========================= - -For custom hardware based on area-detector it may be necesary to add a -custom plugin or camera class, this section will cover what is -required. Both 'plugins' and 'cameras' act in the same way, but have -slightly different 'base' attributes, hence they have different 'base -classes'. New Plugin classes should inherit from -:class:`ophyd.areadetector.base.PluginBase` while new Camera classes -should inherit from :class:`ophyd.areadetector.cam.CamBase`. Both -should have the following PV structure (replace 'plugin' with 'cam' -for cameras): - -.. code-block:: python - - PV = 'Areadetector_device_PV_prefix:Plugin_suffix:attribute_suffix' - -As an example, for the 'max value' component of the built-in areadetector -'stats' class this looks like: - -.. code-block:: python - - PV = 'Areadetector_device_PV_prefix:Stats:max_value' - -where ``Areadetector_device_PV_prefix`` is the PV name for the Area -detector device, ``plugin_suffix = Stats`` is the 'stats' Plugin -suffix and ``attribute_suffix = max_value`` is the 'max value' -attribute suffix. - - -In order to create the class then the following code is required -(where ``XXX`` is the name of the plugin): - -.. code-block:: python - - from ophyd.areadetector.base import ad_group, EpicsSignalWithRBV - from ophyd.signal import EpicsSignal, EpicsSignalRO - from ophyd.device import DynamicDeviceComponent as DDCpt, Component as Cpt - from ophyd.areadetector.plugins import PluginBase, register_plugin - from ophyd.areadetector.filestore_mixins import FileStoreHDF5 - - - class XXXplugin(PluginBase, FileStoreHDF5): - '''An areadetector plugin class that does ......''' - _suffix_re = 'Plugin_suffix\d:' - - # ADD ATTRIBUTES AS COMPONENTS HERE USING THE SYNTAX - attribute_name = Cpt(Type, attribute_suffix) - # where 'Type' is EpicsSignal, EpicsSignalRO, EpicsSignalWithRBV,.. - - # ADD ATTRIBUTE GROUPS AS COMPONENTS USING THE SYNTAX - group_name = DDCpt(ad_group(Type, - (attribute_1_name, attribute_1_suffix), - (attribute_2_name, attribute_2_suffix), - ..., - (attribute_n_name, attribute_n_suffix)) - - # this allows searching for a plugin class via matching _suffix_re for - # classes in the registry against the a PV name and is optional. - register_plugin(XXXplugin) - - -.. note:: - - 1. :class:`ophyd.areadetector.plugins.PluginBase` can be swapped - out for :class:`ophyd.areadetector.cam.CamBase`, - :class:`ophyd.areadetector.plugins.FilePlugin` or any other - Areadetector Plugin, cam or FilePlugin class that inherits from - these. - - 2. For FilePlugin plugins the optional filestore_mixin - :class:`ophyd.areadetector.filestore_mixins.FileStoreHDF5` should - also be defined. This can be replaced with any class that inherits - from - :class:`ophyd.areadetector.filestore_mixins.FileStorePluginBase`. - These mix-in classes provide the logic for generating Asset - Registry documents. - - -Once the class is defined above then it should be added to the Area -detector device class as a component using the code: - -.. code-block:: python - - class Some_Areadetector_Device_Class(Some_Area_Detector_Base_Class): - 'The ophyd class for the device that has the custom plugin' - - ... - - xxx = Cpt(XXXplugin, suffix=Plugin_suffix+':') - - ... - -The Areadetector device should then be instantiated using: - -.. code-block:: python - - ADdevice_name = Some_Areadetector_Device_Class(Areadetector_device_PV_suffix, - name = 'ADdevice_name') - - -Helpers -======= - -.. autosummary:: - :toctree: generated - - ~base.EpicsSignalWithRBV - ~base.ADComponent - ~base.ad_group - - -Full Inheritance -================ - -.. inheritance-diagram:: ophyd.areadetector.plugins.FilePlugin ophyd.areadetector.plugins.HDF5Plugin ophyd.areadetector.plugins.JPEGPlugin ophyd.areadetector.plugins.MagickPlugin ophyd.areadetector.plugins.NetCDFPlugin ophyd.areadetector.plugins.NexusPlugin ophyd.areadetector.plugins.TIFFPlugin ophyd.areadetector.plugins.PluginBase ophyd.areadetector.plugins.ColorConvPlugin ophyd.areadetector.plugins.ImagePlugin ophyd.areadetector.plugins.OverlayPlugin ophyd.areadetector.plugins.ProcessPlugin ophyd.areadetector.plugins.ROIPlugin ophyd.areadetector.plugins.StatsPlugin ophyd.areadetector.plugins.TransformPlugin ophyd.areadetector.filestore_mixins.FileStoreBase ophyd.areadetector.filestore_mixins.FileStoreHDF5 ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite ophyd.areadetector.filestore_mixins.FileStorePluginBase ophyd.areadetector.filestore_mixins.FileStoreTIFF ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing ophyd.device.GenerateDatumInterface ophyd.device.BlueskyInterface ophyd.areadetector.trigger_mixins.TriggerBase ophyd.areadetector.trigger_mixins.SingleTrigger ophyd.areadetector.trigger_mixins.MultiTrigger ophyd.areadetector.cam.CamBase ophyd.areadetector.cam.AdscDetectorCam ophyd.areadetector.cam.Andor3DetectorCam ophyd.areadetector.cam.AndorDetectorCam ophyd.areadetector.cam.BrukerDetectorCam ophyd.areadetector.cam.FirewireLinDetectorCam ophyd.areadetector.cam.FirewireWinDetectorCam ophyd.areadetector.cam.LightFieldDetectorCam ophyd.areadetector.cam.Mar345DetectorCam ophyd.areadetector.cam.MarCCDDetectorCam ophyd.areadetector.cam.PSLDetectorCam ophyd.areadetector.cam.PcoDetectorCam ophyd.areadetector.cam.PcoDetectorIO ophyd.areadetector.cam.PcoDetectorSimIO ophyd.areadetector.cam.PerkinElmerDetectorCam ophyd.areadetector.cam.PilatusDetectorCam ophyd.areadetector.cam.PixiradDetectorCam ophyd.areadetector.cam.PointGreyDetectorCam ophyd.areadetector.cam.ProsilicaDetectorCam ophyd.areadetector.cam.PvcamDetectorCam ophyd.areadetector.cam.RoperDetectorCam ophyd.areadetector.cam.SimDetectorCam ophyd.areadetector.cam.URLDetectorCam ophyd.areadetector.detectors.AreaDetector ophyd.areadetector.detectors.AdscDetector ophyd.areadetector.detectors.Andor3Detector ophyd.areadetector.detectors.AndorDetector ophyd.areadetector.detectors.BrukerDetector ophyd.areadetector.detectors.FirewireLinDetector ophyd.areadetector.detectors.FirewireWinDetector ophyd.areadetector.detectors.LightFieldDetector ophyd.areadetector.detectors.Mar345Detector ophyd.areadetector.detectors.MarCCDDetector ophyd.areadetector.detectors.PSLDetector ophyd.areadetector.detectors.PerkinElmerDetector ophyd.areadetector.detectors.PilatusDetector ophyd.areadetector.detectors.PixiradDetector ophyd.areadetector.detectors.PointGreyDetector ophyd.areadetector.detectors.ProsilicaDetector ophyd.areadetector.detectors.PvcamDetector ophyd.areadetector.detectors.RoperDetector ophyd.areadetector.detectors.SimDetector ophyd.areadetector.detectors.URLDetector ophyd.areadetector.base.ADComponent ophyd.areadetector.base.EpicsSignalWithRBV - :parts: 1 - -.. [#] This came out of a conversation with Mark Rivers, Thomas Caswell, Stuart Campbell, and Stuart Wilkins and implemented by `Mark `_ diff --git a/ophyd/_sources/area-detector.txt b/ophyd/_sources/area-detector.txt deleted file mode 100644 index 754d10cdb3..0000000000 --- a/ophyd/_sources/area-detector.txt +++ /dev/null @@ -1,275 +0,0 @@ -Area Detectors -************** - -Area Detector devices require some customization to use. Here is the simplest -possible configuration. - -.. code-block:: python - - from ophyd import AreaDetector, SingleTrigger - - class MyDetector(SingleTrigger, AreaDetector): - pass - - prefix = 'XF:23ID1-ES{Tst-Cam:1}' - det = MyDetector(prefix) - -The above should work correctly with any EPICS `Area Detector `_. We test on -versions 1.9.1 and 2.2. - -Specific Hardware ------------------ - -While the above example should work with any Area Detector, ophyd provides -specialized classes for specific detectors supported by EPICS Area Detector. -These specialized classes generally add components representing fields -particular to a given detector, along with device-specific documentation -for components. - -To use these model-specific classes, swap out ``AreaDetector`` like so: - -.. code-block:: python - - # before - class MyDetector(SingleTrigger, AreaDetector): - pass - - # after - class MyDetector(SingleTrigger, AndorDetector): - pass - - -.. autoclass:: ophyd.areadetector.AreaDetector - :members: -.. autoclass:: ophyd.areadetector.CamBase - :members: - -ADSC -^^^^ - -.. autoclass:: ophyd.areadetector.AdscDetector -.. autoclass:: ophyd.areadetector.AdscDetectorCam - :members: - -Andor3 -^^^^^^ - -.. autoclass:: ophyd.areadetector.Andor3Detector -.. autoclass:: ophyd.areadetector.Andor3DetectorCam - :members: - -Andor -^^^^^ - -.. autoclass:: ophyd.areadetector.AndorDetector -.. autoclass:: ophyd.areadetector.AndorDetectorCam - :members: - - -Bruker -^^^^^^ - -.. autoclass:: ophyd.areadetector.BrukerDetector -.. autoclass:: ophyd.areadetector.BrukerDetectorCam - :members: - -Firewire on Linux -^^^^^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.FirewireLinDetector -.. autoclass:: ophyd.areadetector.FirewireLinDetectorCam - :members: - - -Firewire on Windows -^^^^^^^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.FirewireWinDetector -.. autoclass:: ophyd.areadetector.FirewireWinDetectorCam - :members: - -Lightfield -^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.LightFieldDetector -.. autoclass:: ophyd.areadetector.LightFieldDetectorCam - :members: - -Mar345 -^^^^^^ - -.. autoclass:: ophyd.areadetector.Mar345Detector -.. autoclass:: ophyd.areadetector.Mar345DetectorCam - :members: - -Mar CCD -^^^^^^^ - -.. autoclass:: ophyd.areadetector.MarCCDDetector -.. autoclass:: ophyd.areadetector.MarCCDDetectorCam - :members: - -PSL -^^^ - -.. autoclass:: ophyd.areadetector.PSLDetector -.. autoclass:: ophyd.areadetector.PSLDetectorCam - :members: - -Perkin-Elmer -^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.PerkinElmerDetector -.. autoclass:: ophyd.areadetector.PerkinElmerDetectorCam - :members: - - -Pilatus -^^^^^^^ - -.. autoclass:: ophyd.areadetector.PilatusDetector -.. autoclass:: ophyd.areadetector.PilatusDetectorCam - :members: - -Pixirad -^^^^^^^ - -.. autoclass:: ophyd.areadetector.PixiradDetector -.. autoclass:: ophyd.areadetector.PixiradDetectorCam - :members: - -Point Grey -^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.PointGreyDetector -.. autoclass:: ophyd.areadetector.PointGreyDetectorCam - :members: - -Prosilica -^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.ProsilicaDetector -.. autoclass:: ophyd.areadetector.ProsilicaDetectorCam - :members: - -PV Cam -^^^^^^ - -.. autoclass:: ophyd.areadetector.PvcamDetector -.. autoclass:: ophyd.areadetector.PvcamDetectorCam - :members: - -Roper -^^^^^ - -.. autoclass:: ophyd.areadetector.RoperDetector -.. autoclass:: ophyd.areadetector.RoperDetectorCam - :members: - -Simulated -^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.SimDetector -.. autoclass:: ophyd.areadetector.SimDetectorCam - :members: - - -URL -^^^ - -.. autoclass:: ophyd.areadetector.URLDetector -.. autoclass:: ophyd.areadetector.URLDetectorCam - :members: - - -Plugins -------- - - -.. autoclass:: ophyd.areadetector.plugins.PluginBase - :members: - -Color Converter Plugin -^^^^^^^^^^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.ColorConvPlugin - :members: - -Image Plugin -^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.ImagePlugin - :members: - -Overlay Plugin -^^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.OverlayPlugin - :members: - -Process Plugin -^^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.ProcessPlugin - :members: - -ROI Plugin -^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.ROIPlugin - :members: - -Stats Plugin -^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.StatsPlugin - :members: - -Transform Plugin -^^^^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.TransformPlugin - :members: - - -File Plugins ------------- - -.. autoclass:: ophyd.areadetector.plugins.FilePlugin - :members: - - -HDF5 Plugin -^^^^^^^^^^^ -.. autoclass:: ophyd.areadetector.plugins.HDF5Plugin - :members: - -JPEG Plugin -^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.JPEGPlugin - :members: - -ImageMagick Plugin -^^^^^^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.MagickPlugin - :members: - -NetCDF Plugin -^^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.NetCDFPlugin - :members: - -Nexus Plugin -^^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.NexusPlugin - :members: - -TIFF Plugin -^^^^^^^^^^^ - -.. autoclass:: ophyd.areadetector.plugins.TIFFPlugin - :members: diff --git a/ophyd/_sources/builtin-devices.rst.txt b/ophyd/_sources/builtin-devices.rst.txt deleted file mode 100644 index 02affc4aff..0000000000 --- a/ophyd/_sources/builtin-devices.rst.txt +++ /dev/null @@ -1,76 +0,0 @@ -Ready-to-Use Devices -******************** - -These devices are have ready-made classes in Python. To configure them, the -user need only provide a PV prefix and a name. - -EpicsMotor ----------- - -Create an ``EpicsMotor`` to communicate with a single `EPICS motor record -`_: - -.. code-block:: python - - from ophyd import EpicsMotor - - # the two-theta motor - tth = EpicsMotor('XF:28IDC-ES:1{Dif:1-Ax:2ThI}Mtr', name='tth') - -.. autoclass:: ophyd.epics_motor.EpicsMotor - :members: - - -EpicsScaler ------------ - -Create an ``EpicsScaler`` to control an EPICS `scaler record -`_: - -.. code-block:: python - - from ophyd import EpicsScaler - scaler = EpicsScaler('XF:28IDC-ES:1{Sclr:1}', name='tth') - -.. autoclass:: ophyd.scaler.EpicsScaler - :members: - - -EpicsMCA and EpicsDXP ---------------------- - -`MCA records `_ and -DXP-based devices are also supported, through the ``EpicsMCA`` and ``EpicsDXP`` -devices. - -.. autoclass:: ophyd.mca.EpicsMCARecord - :members: -.. autoclass:: ophyd.mca.EpicsDXP - :members: - -.. index:: read_attrs -.. index:: configuration_attrs -.. index:: hints - -MotorBundle ------------ - -Creating 'bundles' of motors is very common so we also have a helper -class that tweaks the default behavior of :attr:`read_attrs`, -:attr:`configuration_attrs`, and :attr:`hints` - -.. autoclass:: ophyd.epics_motor.MotorBundle - :members: - -This must be sub-classed (like :class:`~ophyd.device.Device`) to be useful. - -.. code-block:: python - - from ophyd import MotorBundle, EpicsMotor - from ophyd import Component as Cpt - - class StageXY(MotorBundle): - x = Cpt(EpicsMotor, ':X') - y = Cpt(EpicsMotor, ':Y') - - stage = StageXY('STAGE_PV', name='stage') diff --git a/ophyd/_sources/builtin-devices.txt b/ophyd/_sources/builtin-devices.txt deleted file mode 100644 index d5849fa0f4..0000000000 --- a/ophyd/_sources/builtin-devices.txt +++ /dev/null @@ -1,49 +0,0 @@ -Ready-to-Use Devices -******************** - -These devices are have ready-made classes in Python. To configure them, the -user need only provide a PV prefix and a name. - -EpicsMotor ----------- - -Create an ``EpicsMotor`` to communicate with a single `EPICS motor record -`_: - -.. code-block:: python - - from ophyd import EpicsMotor - - # the two-theta motor - tth = EpicsMotor('XF:28IDC-ES:1{Dif:1-Ax:2ThI}Mtr', name='tth') - -.. autoclass:: ophyd.epics_motor.EpicsMotor - :members: - - -EpicsScaler ------------ - -Create an ``EpicsScaler`` to control an EPICS `scaler record -`_: - -.. code-block:: python - - from ophyd import EpicsScaler - scaler = EpicsScaler('XF:28IDC-ES:1{Sclr:1}', name='tth') - -.. autoclass:: ophyd.scaler.EpicsScaler - :members: - - -EpicsMCA and EpicsDXP ---------------------- - -`MCA records `_ and -DXP-based devices are also supported, through the ``EpicsMCA`` and ``EpicsDXP`` -devices. - -.. autoclass:: ophyd.mca.EpicsMCARecord - :members: -.. autoclass:: ophyd.mca.EpicsDXP - :members: diff --git a/ophyd/_sources/commands.rst.txt b/ophyd/_sources/commands.rst.txt deleted file mode 100644 index d7e6096af4..0000000000 --- a/ophyd/_sources/commands.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -Interactive Command Interface -***************************** - -These functions are intended for getting a snapshot of the beamline. - - - -.. currentmodule:: ophyd.commands -.. autosummary:: - :toctree: _as_gen - - wh_pos - log_pos - log_pos_diff - log_pos_mov - get_all_positioners diff --git a/ophyd/_sources/commands.txt b/ophyd/_sources/commands.txt deleted file mode 100644 index f0db4a3d4d..0000000000 --- a/ophyd/_sources/commands.txt +++ /dev/null @@ -1,22 +0,0 @@ -Interactive Command Interface -***************************** - -These functions are intended for interactive use. Users coming from SPEC will -find many of these commands familiar. - -.. currentmodule:: ophyd.commands -.. autosummary:: - :toctree: generated/ - - mov - movr - set_pos - wh_pos - set_lm - log_pos - log_pos_diff - log_pos_mov - get_all_positioners - get_logbook - -Click any command name to view its full docstring with example usage. diff --git a/ophyd/_sources/custom-devices.rst.txt b/ophyd/_sources/custom-devices.rst.txt deleted file mode 100644 index 97ca2c2898..0000000000 --- a/ophyd/_sources/custom-devices.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -Custom Devices -************** - -A Device is made from Components, which encapsulate other Devices or Signals. -See examples. - - -.. code-block:: python - - from ophyd import Device, EpicsSignal, EpicsSignalRO - from ophyd import Component as Cpt - from ophyd.utils import set_and_wait - - class Robot(Device): - sample_number = Cpt(EpicsSignal, 'ID:Tgt-SP') - load_cmd = Cpt(EpicsSignal, 'Cmd:Load-Cmd.PROC') - unload_cmd = Cpt(EpicsSignal, 'Cmd:Unload-Cmd.PROC') - execute_cmd = Cpt(EpicsSignal, 'Cmd:Exec-Cmd') - status = Cpt(EpicsSignal, 'Sts-Sts') - - my_robot = Robot('pv_prefix:', name='my_robot') - - -In this case, ``my_robot.load_cmd`` would be an ``EpicsSignal`` that points to -the PV ``pv_prefix:Cmd:Load-Cmd.PROC``. Each of the components can be used as -``stage_sigs``, added to the list of ``read_attrs`` or ``configuration_attrs``, -or simply as ``EpicsSignals`` on their own. - - -Devices and bluesky count_time -============================== - -When a ``Device`` is used as a bluesky detector in a scan, a ``count_time`` -component will be checked for prior to staging. For example: - - -.. code-block:: python - - from ophyd import (Device, Signal, Component as Cpt, EpicsSignal) - - class DetectorWithCountTime(Device): - count_time = Cpt(Signal) - exposure_time = Cpt(EpicsSignal, 'ExposureTime-SP') - - def stage(self): - if self.count_time.get() is not None: - actual_exposure_time = (self.count_time.get() - 0.1) - self.stage_sigs[self.exposure_time] = actual_exposure_time - super().stage() - - det = DetectorWithCountTime('prefix:', name='det') - gs.DETS.append(det) - RE(dscan(mtr, 0, 1, 5, time=5.0)) - # count_time would be set to 5.0 here, prior to the scan starting - - -Using the approach of a soft Signal on detectors allows ``stage`` to process -the value that comes directly from the user. A slightly less flexible -alternative would be to define ``count_time`` just as the ``EpicsSignal`` -``exposure_time`` below it, if those values should always be the same. diff --git a/ophyd/_sources/custom-devices.txt b/ophyd/_sources/custom-devices.txt deleted file mode 100644 index 97ca2c2898..0000000000 --- a/ophyd/_sources/custom-devices.txt +++ /dev/null @@ -1,60 +0,0 @@ -Custom Devices -************** - -A Device is made from Components, which encapsulate other Devices or Signals. -See examples. - - -.. code-block:: python - - from ophyd import Device, EpicsSignal, EpicsSignalRO - from ophyd import Component as Cpt - from ophyd.utils import set_and_wait - - class Robot(Device): - sample_number = Cpt(EpicsSignal, 'ID:Tgt-SP') - load_cmd = Cpt(EpicsSignal, 'Cmd:Load-Cmd.PROC') - unload_cmd = Cpt(EpicsSignal, 'Cmd:Unload-Cmd.PROC') - execute_cmd = Cpt(EpicsSignal, 'Cmd:Exec-Cmd') - status = Cpt(EpicsSignal, 'Sts-Sts') - - my_robot = Robot('pv_prefix:', name='my_robot') - - -In this case, ``my_robot.load_cmd`` would be an ``EpicsSignal`` that points to -the PV ``pv_prefix:Cmd:Load-Cmd.PROC``. Each of the components can be used as -``stage_sigs``, added to the list of ``read_attrs`` or ``configuration_attrs``, -or simply as ``EpicsSignals`` on their own. - - -Devices and bluesky count_time -============================== - -When a ``Device`` is used as a bluesky detector in a scan, a ``count_time`` -component will be checked for prior to staging. For example: - - -.. code-block:: python - - from ophyd import (Device, Signal, Component as Cpt, EpicsSignal) - - class DetectorWithCountTime(Device): - count_time = Cpt(Signal) - exposure_time = Cpt(EpicsSignal, 'ExposureTime-SP') - - def stage(self): - if self.count_time.get() is not None: - actual_exposure_time = (self.count_time.get() - 0.1) - self.stage_sigs[self.exposure_time] = actual_exposure_time - super().stage() - - det = DetectorWithCountTime('prefix:', name='det') - gs.DETS.append(det) - RE(dscan(mtr, 0, 1, 5, time=5.0)) - # count_time would be set to 5.0 here, prior to the scan starting - - -Using the approach of a soft Signal on detectors allows ``stage`` to process -the value that comes directly from the user. A slightly less flexible -alternative would be to define ``count_time`` just as the ``EpicsSignal`` -``exposure_time`` below it, if those values should always be the same. diff --git a/ophyd/_sources/debugging.rst.txt b/ophyd/_sources/debugging.rst.txt deleted file mode 100644 index a384afed04..0000000000 --- a/ophyd/_sources/debugging.rst.txt +++ /dev/null @@ -1,173 +0,0 @@ -********************* -Debugging and Logging -********************* - -.. versionchanged:: 1.4.0 - - Ophyd's use of Python's logging framework has been completely reworked to - follow Python's documented best practices for libraries. - -Ophyd uses Python's logging framework, which enables sophisticated log -management. For common simple cases, including viewing logs in the terminal or -writing them to a file, the next section illustrates streamlined, -copy/paste-able examples. Users who are familiar with that framework or who -need to route logs to multiple destinations may wish to skip ahead to -:ref:`logger_api`. - -Useful Snippets -=============== - -Log warnings ------------- - -This is the recommended standard setup. - -.. code-block:: python - - from ophyd.log import config_ophyd_logging - config_ophyd_logging() - -It will display ``'ophyd'`` log records of ``WARNING`` level or higher in the -terminal (standard out) with a format tailored to ophyd. - -Maximum verbosity ------------------ - -If operations are "hanging," running slowly, or repeatedly encountering an -error, increasing the logging verbosity can help identify the underlying issue. - -.. code-block:: python - - from ophyd.log import config_ophyd_logging - config_ophyd_logging(level='DEBUG') - -Log to a file -------------- - -This will direct all log messages to a file instead of the terminal (standard -out). - -.. code-block:: python - - from ophyd.log import config_ophyd_logging - config_ophyd_logging(file='/tmp/ophyd.log', level='DEBUG') - -.. _logger_api: - -Ophyd's Logging-Related API -============================= - -Logger Names ------------- - -Here are the primary loggers used by ophyd. - -* ``'ophyd'`` --- the logger to which all ophyd log records propagate -* ``'ophyd.objects'`` --- logs records from all devices and signals - (that is, :class:`~ophyd.OphydObject` subclasses) -* ``'ophyd.control_layer'`` --- logs requests issued to the underlying control - layer (e.g. pyepics, caproto) -* ``'ophyd.event_dispatcher'`` --- issues regular summaries of the backlog of - updates from the control layer that are being processed on background threads - -There are also many module-level loggers for specific features. - -Formatter ---------- - -.. autoclass:: ophyd.log.LogFormatter - -Global Handler ---------------- - -Following Python's recommendation, ophyd does not install any handlers at -import time, but it provides a function to set up a basic useful configuration -in one line, similar to Python's :py:func:`logging.basicConfig` but with some -additional options---and scoped to the ``'ophyd'`` logger with ophyd's -:class:`ophyd.log.LogFormatter`. It streamlines common use cases without -interfering with more sophisticated use cases. - -We recommend that facilities using ophyd leave this function for users and -configure any standardized, facility-managed logging handlers separately, as -described in the next section. - -.. autofunction:: ophyd.log.config_ophyd_logging -.. autofunction:: ophyd.log.get_handler - -Advanced Example -================ - -The flow of log event information in loggers and handlers is illustrated in the -following diagram: - -.. image:: https://docs.python.org/3/_images/logging_flow.png - -For further reference, see the Python 3 logging howto: -https://docs.python.org/3/howto/logging.html#logging-flow - -As an illustrative example, we will set up two handlers using the Python -logging framework directly, ignoring ophyd's convenience function. - -Suppose we set up a handler aimed at a file: - -.. code-block:: python - - import logging - file_handler = logging.FileHandler('ophyd.log') - -And another aimed at `Logstash `_: - -.. code-block:: python - - import logstash # requires python-logstash package - logstash_handler = logstash.TCPLogstashHandler(, , version=1) - -We can attach the handlers to the ophyd logger, to which all log records -created by ophyd propagate: - -.. code-block:: python - - logger = logging.getLogger('ophyd') - logger.addHandler(logstash_handler) - logger.addHandler(file_filter) - -We can set the verbosity of each handler. Suppose want maximum verbosity in the -file but only medium verbosity in logstash. - -.. code-block:: python - - logstash_handler.setLevel('INFO') - file_handler.setLevel('DEBUG') - -Finally, ensure that "effective level" of ``logger`` is at least as verbose as -the most verbose handler---in this case, ``'DEBUG'``. By default, at import, -its level is not set - -.. ipython:: python - :verbatim: - - logging.getLevelName(logger.level) - 'NOTSET' - -and so it inherits the level of Python's default -"handler of last resort," :py:obj:`logging.lastResort`, which is ``'WARNING'``. - -.. ipython:: python - :verbatim: - - logging.getLevelName(logger.getEffectiveLevel()) - 'WARNING' - -In this case we should set it to ``'DEBUG'``, to match the most verbose level -of the handler we have added. - -.. code-block:: python - - logger.setLevel('DEBUG') - -This makes DEBUG-level records *available* to all handlers. Our logstash -handler, set to ``'INFO'``, will filter out DEBUG-level records. - -To globally disable the generation of any log records at or below a certain -verbosity, which may be helpful for optimizing performance, Python provides -:py:func:`logging.disable`. diff --git a/ophyd/_sources/device-overview.rst.txt b/ophyd/_sources/device-overview.rst.txt deleted file mode 100644 index adc70f1470..0000000000 --- a/ophyd/_sources/device-overview.rst.txt +++ /dev/null @@ -1,425 +0,0 @@ -====================== - Device and Component -====================== - -.. automodule:: ophyd.device - :noindex: - - -Usage -===== - -The core class of :mod:`ophyd` is :class:`~device.Device` which encodes the -nodes of the hierarchical structure of the device and provides much of -core API. - - -.. autosummary:: - :toctree: generated - - Device - -The base :class:`~device.Device` is not particularly useful on it's own, it -must be sub-classed to provide it with components to do something -with. - -Creating a custom device is as simple as - -.. code-block:: python - - from ophyd import Device, EpicsMotor - from ophyd import Component as Cpt - - class StageXY(Device): - x = Cpt(EpicsMotor, ':X') - y = Cpt(EpicsMotor, ':Y') - - stage = StageXY('STAGE_PV', name='stage') - -You can then use ``stage`` as an input to any plan as a detector and -``stage.x`` and ``stage.y`` as independent motors. - - -A Robot -------- - -A slightly more complex example is to control a simple sample loading -robot. - -.. code-block:: python - - from ophyd import Device, EpicsSignal, EpicsSignalRO - from ophyd import Component as Cpt - from ophyd.utils import set_and_wait - - class Robot(Device): - sample_number = Cpt(EpicsSignal, 'ID:Tgt-SP') - load_cmd = Cpt(EpicsSignal, 'Cmd:Load-Cmd.PROC') - unload_cmd = Cpt(EpicsSignal, 'Cmd:Unload-Cmd.PROC') - execute_cmd = Cpt(EpicsSignal, 'Cmd:Exec-Cmd') - - status = Cpt(EpicsSignalRO, 'Sts-Sts') - - my_robot = Robot('PV_PREFIX:', name='my_robot', - read_attrs=['sample_number', 'status']) - -Which creates an instance ``my_robot`` with 5 children - - ====================== =============================== ===================== - python attribute PV name in ``read()`` - ====================== =============================== ===================== - my_robot.sample_number 'PV_PREFIX:ID:Tgt-SP' Y - my_robot.load_cmd 'PV_PREFIX:CMD:Load-Cmd.PROC' N - my_robot.unload_cmd 'PV_PREFIX:CMD:Unload-Cmd.PROC' N - my_robot.execute_cmd 'PV_PREFIX:CMD:Exec-Cmd' N - my_robot.status 'PV_PREFIX:Sts-Sts' Y - ====================== =============================== ===================== - -only 2 of which will be included when reading from the robot. - -You could now use this device in a scan like - -.. code-block:: python - - import bluesky.plans as bp - - def load_sample(robot, sample): - yield from bp.mv(robot.sample_number, sample) - yield from bp.mv(robot.load_cmd, 1) - yield from bp.mv(robot.execute_cmd, 1) - - def unload_sample(robot): - yield from bp.mv(robot.unload_cmd, 1) - yield from bp.mv(robot.execute_cmd, 1) - - def robot_plan(list_of_samples): - for sample in list_of_samples: - # load the sample - yield from load_sample(my_robot, sample) - # take a measurement - yield from bp.count([det], md={'sample': sample}) - # unload the sample - yield from unload_sample(my_robot) - -and from the command line :: - - RE(robot_plan([1, 2. 6])) - - -These classes were co-developed with :mod:`bluesky` and are the -reference implementation of a hardware abstraction layer for -:mod:`bluesky`. However, these are closely tied to EPICS and make -some assumptions about the PV naming based on NSLS-II's naming scheme. -Despite attempting generality, it is likely that as :mod:`ophyd` and -:mod:`bluesky` are used at other facilities (and when :mod:`ophyd` is -adapted for a different control system) we will discover some latent -NSLS-II-isms that should be corrected (or at least acknowledged and -documented). - - -:class:`~device.Device` -======================= - -:class:`~device.Device` adds a number of additional attributes beyond the -required :mod:`bluesky` API and what is inherited from :class:`~ohpyd.ophydobj.OphydObj` -for run-time configuration - - =========================== ======================================================== - Attribute Description - =========================== ======================================================== - :attr:`read_attrs` Names of components for ``read()`` See :ref:`trd` - --------------------------- -------------------------------------------------------- - :attr:`configuration_attrs` Names of components for ``read_configuration()``. - See :ref:`cfg_and_f` - --------------------------- -------------------------------------------------------- - :attr:`stage_sigs` Signals to be set during `Stage and Unstage`_ - --------------------------- -------------------------------------------------------- - :attr:`hints` Names of components as suggestions for handling in bluesky callbacks. - =========================== ======================================================== - -and static information about the object - - =========================== ======================================================== - Attribute Description - =========================== ======================================================== - :attr:`prefix` 'base' of PV name, used when building components - --------------------------- -------------------------------------------------------- - :attr:`component_names` List of the names components on this device. - Direct children only - --------------------------- -------------------------------------------------------- - :attr:`trigger_signals` Signals for use in `Implicit Triggering`_ - (provisional) - =========================== ======================================================== - -:class:`~device.Device` also has two class-level attributes to control the default contents of -:attr:`read_attrs` and :attr:`configuration_attrs`. - - ==================================== ======================================================== - Attribute Description - ==================================== ======================================================== - :attr:`_default_read_attrs` The default contents of :attr:`read_attrs` if a subset - of all available children. - - An iterable or `None`. If `None` defaults to - all children - - A :class:`tuple` is recommended. - - ------------------------------------ -------------------------------------------------------- - :attr:`_default_configuration_attrs` The default contents of :attr:`configuration_attrs` - - An iterable or `None`. If `None` defaults to ``[]`` - - A :class:`tuple` is recommended. - - ==================================== ======================================================== - -.. index:: hints attribute -.. _hints: - -:attr:`hints` -------------- - -The :attr:`hints` attribute is a dictionary that provides information about an -:mod:`ophyd` device to :mod:`bluesky` callbacks that advise how that device -should be handled by the callback. While it could be used for many purposes, -its first use has been to direct the selection of the relevant axes and signals -to use when plotting data from an event stream. - -There are two different locations where the ``hints`` dictionary is created. - -1. During the specification of an ophyd :class:`~device.Device` -1. Configuration of the ``start`` document by a :mod:`bluesky` plan - -The ``hints`` dictionary has well-known keys. - -=================== ======================================================== -Key Description of value -=================== ======================================================== -``fields`` signal names to be used for a plot as dependent axes -------------------- -------------------------------------------------------- -``dimensions`` signal names to be used for a plot as independent axes -------------------- -------------------------------------------------------- -``gridding`` advises when to prefer ``LiveGrid`` instead of ``LivePlot`` -=================== ======================================================== - -The ``hints`` dictionary may also have custom keys used by the custom support. - -* example using the *ad hoc* ``vis`` key in the creation of an :mod:`ophyd` - detector Device:: - - self.hints = {'vis': 'placeholder'} - -* then look for this key in the custom :mod:`bluesky` callback:: - - assert doc['hints']['det'] == {'vis': 'placeholder'} - - -.. _hints_fields: - -``hints["fields"]`` -^^^^^^^^^^^^^^^^^^^ - -``fields`` is a list of ophyd object name(s) to be used as dependent axes for -visualization callbacks. The object name(s) must appear in the dictionary -returned by the device's ``read()`` method. - -Examples: - -.. code-block:: python - - quadem.hints == {'fields': ['quadem_current1_mean_value']} - sca.hints == {'fields': [sca.channels.name]} - -To ensure internal consistency, the ``hints`` attribute of any -:class:`~signal.Signal` or :class:`~device.Device` cannot be set directly. -[#use_kind_not_fit]_ Instead of: - -.. code-block:: python - - camera.hints = {'fields': [camera.stats1.total.name, - camera.stats2.total.name]} - -use the :attr:`kind` :index:`kind` attribute. - -.. code-block:: python - - from ophyd import Kind - - camera.stats1.total.kind = Kind.hinted - camera.stats2.total.kind = Kind.hinted - -or, as a convenient shortcut - -.. code-block:: python - - camera.stats1.total.kind = 'hinted' - camera.stats2.total.kind = 'hinted' - -.. [#use_kind_not_fit] starting with ophyd v1.2.0 - - -.. _hints_dimensions: - -``hints["dimensions"]`` -^^^^^^^^^^^^^^^^^^^^^^^ - -Defines the ophyd signal names to be used as independent axes for visualization. -The syntax is (list of field names, stream name) where the list of field -names is as above and the stream name is usually ``primary``. -All the signals must be available in the named stream. - -``hints["dimensions"]`` is used by a :mod:`bluesky` plan -to prepare a :attr:`dimensions` attribute that is placed -in the `start` document. It is this :attr:`dimensions` attribute -that identifies the independent axes for visualization callbacks. -The plan can use or override what it finds in ``hints["dimensions"]``. - -Examples: - -.. code-block:: python - - dimensions = [(motor.hints['fields'], 'primary')] - dimensions = [(('time'), 'primary')] - -.. paraphrased from bluesky/bluesky/callbacks/best_effort.py - -For now, :mod:`bluesky` can only handle when all the dimensions belong -to the same stream. To generalize, we would need to resample -and we are not going to handle that yet. - - -.. _hints_gridding: - -``hints["gridding"]`` -^^^^^^^^^^^^^^^^^^^^^ - -This key is used for mesh and grid scans. When present, it can take these values: -``rectilinear`` or ``rectilinear_nonsequential``. - -In the *Best Effort Callback* from :mod:`bluesky`, if ``hints["gridding"]`` exists and -is ``"rectilinear"``, then use LiveGrid, otherwise use LivePlot. - - -:class:`~device.Component` --------------------------------- - -The :class:`~device.Component` class is a python descriptor_ which overrides -the behavior on attribute access. This allows us to use a declarative style to -define the software representation of the hardware. The best way to -understand is through an example:: - - class Foo(Device): - bar = Component(EpicsSignal, ':bar', string=True) - -which means "When a ``Foo`` instance is created give it a ``bar`` attribute -which is an instance of :class:`EpicsSignal` and use the extra args -and kwargs when creating it". It is a declaration of what you want -and it is the responsibility of :mod:`ophyd` to make it happen. - -There are three classes - -.. autosummary:: - :toctree: generated - - Component - FormattedComponent - DynamicDeviceComponent - - -.. _trd: - -Trigger, Read and Describe --------------------------- - -The :meth:`~ophyd.device.BlueskyInterface.trigger()` method is responsible for -implementing 'trigger' or 'acquire' functionality of the Device. - -The :meth:`~ophyd.device.BlueskyInterface.read()` method is responsible for -for returning the data from the Device. - -The :meth:`~ophyd.device.BlueskyInterface.describe()` method is responsible for -providing schema and meta-data for the `read()` method. - -.. _cfg_and_f: - - -Configuration and Friends -------------------------- - - -Stage and Unstage ------------------ - -When a Device ``d`` is used in scan, it is "staged" and "unstaged." Think of -this as "setup" and "cleanup". That is, before a device is triggered, read, or -moved, the scan is expected to call ``d.stage()``. And, at the end of scan, -``d.unstage()`` is called. (Whenever possible, unstaging is performed even if -the scan is aborted or fails due to an error.) - -The staging process is a "hook" for preparing a device for use. To add -custom staging logic to a Device, subclass it and override ``stage`` and/or -``unstage`` like so. - -.. code-block:: python - - class MyMotor(EpicsMotor): - - def stage(self): - print('I am staging.') - super().stage() - - def unstage(self): - print('I am unstaging.') - super().unstage() - -It is crucial to call ``super()``, as above, so that any built-in staging -behavior is not overridden. - -A common use for staging is to set certain signals to certain values for -a scan and then set them back at the end. For example, a detector device -might turn on "capture mode" at the beginning of the scan and then flip it -back off (or back to its original setting, whatever that was) at the end. -For this, ophyd provides a convenience, ``stage_sigs`` --- a dictionary -mapping signals to desired values. The device reads the initial values -of these signals, stashes them, changes them to the desired value, and then -restore the initial value when the device is unstaged. It is best to -customize ``stage_sigs`` in the device's ``__init__`` method, like so: - -.. code-block:: python - - class MyMotor(EpicsMotor): - def __init__(*args, **kwargs): - super().__init__(*args, **kwargs) - self.stage_sigs[self.user_offset] = 5 - -When a ``MyMotor`` device is staged, its ``user_offset`` value will be set -to 5. When it is unstaged, it will be set back to whatever value it had -right before it was staged. - - -Implicit Triggering -------------------- - -Count Time ----------- - -Low level API -============= - - -.. autosummary:: - :toctree: generated - :nosignatures: - - Device.connected - Device.wait_for_connection - Device.get_instantiated_signals - Device.get - Device.put - Device.get_device_tuple - -.. _descriptor: https://docs.python.org/3/reference/datamodel.html#implementing-descriptors - - -.. todo ['trigger_signals', ] diff --git a/ophyd/_sources/device-overview.txt b/ophyd/_sources/device-overview.txt deleted file mode 100644 index 30c7c582f6..0000000000 --- a/ophyd/_sources/device-overview.txt +++ /dev/null @@ -1,97 +0,0 @@ -Overview of a Device -******************** - -Signals and Devices -=================== - -* A **Signal** represents a single value. In EPICS, it corresponds to either - a single read-only PV or a pair of read and write PVs, grouped together. -* A **Device** is composed of Signals or of other Devices. Devices can be - nested. Some devices map to single pieces of hardware (like a motor). - Others group together many different pieces of hardware (like a - diffractometer). -* In one process, the same PVs might appear in multiple different Devices, - so organized for different uses. - -Staging -======= - -When a Device ``d`` is used in scan, it is "staged" and "unstaged." Think of -this as "setup" and "cleanup". That is, before a device is triggered, read, or -moved, the scan is expected to call ``d.stage()``. And, at the end of scan, -``d.unstage()`` is called. (Whenever possible, unstaging is performed even if -the scan is aborted or fails due to an error.) - -The staging process is a "hook" for preparing a device for use. To add -custom staging logic to a Device, subclass it and override ``stage`` and/or -``unstage`` like so. - -.. code-block:: python - - class MyMotor(EpicsMotor): - - def stage(self): - print('I am staging.') - super().stage() - - def unstage(self): - print('I am unstaging.') - super().unstage() - -It is crucial to call ``super()``, as above, so that any built-in staging -behavior is not overridden. - -A common use for staging is to set certain signals to certain values for -a scan and then set them back at the end. For example, a detector device -might turn on "capture mode" at the beginning of the scan and then flip it -back off (or back to its original setting, whatever that was) at the end. -For this, ophyd provides a convenience, ``stage_sigs`` --- a dictionary -mapping signals to desired values. The device reads the initial values -of these signals, stashes them, changes them to the desired value, and then -restore the initial value when the device is unstaged. It is best to -customize ``stage_sigs`` in the device's ``__init__`` method, like so: - -.. code-block:: python - - class MyMotor(EpicsMotor): - def __init__(*args, **kwargs): - super().__init__(*args, **kwargs) - self.stage_sigs[self.user_offset] = 5 - -When a ``MyMotor`` device is staged, its ``user_offset`` value will be set -to 5. When it is unstaged, it will be set back to whatever value it had -right before it was staged. - - -Device API -========== - - -All Devices have certain methods and attributes in common. - -.. autoclass:: ophyd.Device - -High-level Interface (used by bluesky) -====================================== - -.. automethod:: ophyd.Device.read -.. automethod:: ophyd.Device.describe -.. automethod:: ophyd.Device.set -.. automethod:: ophyd.Device.trigger -.. automethod:: ophyd.Device.stage -.. automethod:: ophyd.Device.unstage -.. automethod:: ophyd.Device.configure -.. automethod:: ophyd.Device.read_configuration -.. automethod:: ophyd.Device.describe_configuration - -Low-level Interface (for exploration, debugging) -================================================ - -.. autoattribute:: ophyd.Device.connected - - ``True`` is all components are connected, ``False`` if any are not - -.. automethod:: ophyd.Device.wait_for_connection -.. automethod:: ophyd.Device.get -.. automethod:: ophyd.Device.put -.. automethod:: ophyd.Device.get_device_tuple diff --git a/ophyd/_sources/docker.rst.txt b/ophyd/_sources/docker.rst.txt deleted file mode 100644 index 2c15b1e7ae..0000000000 --- a/ophyd/_sources/docker.rst.txt +++ /dev/null @@ -1,50 +0,0 @@ -Docker setup -============ - -.. highlight:: bash - - -You can use Docker to run test IOCs that are convenient for testing without -having to locally build and install EPICS IOCs. Please use the following -Docker links to install and configure Docker: - - - `Installing Docker on Ubuntu `_ - - `Configuring Docker `_ - (allowing to run as non-root, running at startup, etc.) - -To communicate with the Docker you have set up some environmental variables: - -.. literalinclude:: ../../scripts/epics_exports.sh - -and to run docker with the correct images (assuming the preceding code block is -saved in :file:`epics_exports.sh`): - -.. literalinclude:: ../../scripts/epics_docker.sh - -Running this multiple times will lead to multiple instances of the -images running. - -For EPICS to know where to search for the IOCs you will need to do :: - - source epics_exports.sh - - -to setup the EPICS environmental variables. To check that it is setup -correctly :: - - $ env | grep -i epics - EPICS_CA_ADDR_LIST=172.17.255.255 - EPICS_CA_AUTO_ADDR_LIST=no - EPICS_CA_MAX_ARRAY_BYTES=10000000 - -To check if it is working, try :: - - $ caget XF:31IDA-OP{Tbl-Ax:X1}Mtr - -.. note:: - - You may need to install ``pyepics``, which installs ``epics-base`` - and the corresponding ``caget`` executable: :: - - conda install -c lightsource2-tag pyepics - diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt deleted file mode 100644 index 49b1446924..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_digraph.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.get\_asyn\_digraph -===================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.get_asyn_digraph \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt deleted file mode 100644 index 4e05314094..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_asyn_port_dictionary.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.get\_asyn\_port\_dictionary -============================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.get_asyn_port_dictionary \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt deleted file mode 100644 index 14640d712b..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.get_plugin_by_asyn_port.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.get\_plugin\_by\_asyn\_port -============================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.get_plugin_by_asyn_port \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt deleted file mode 100644 index 5c1179aa92..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.missing_plugins.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.missing\_plugins -=================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.missing_plugins \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.rst.txt deleted file mode 100644 index 654ca2b282..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.base\.ADBase -================================= - -.. currentmodule:: ophyd.areadetector.base - -.. autoclass:: ADBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ADBase.__init__ - ~ADBase.add_instantiation_callback - ~ADBase.check_value - ~ADBase.clear_sub - ~ADBase.configure - ~ADBase.describe - ~ADBase.describe_configuration - ~ADBase.destroy - ~ADBase.find_signal - ~ADBase.get - ~ADBase.get_asyn_digraph - ~ADBase.get_asyn_port_dictionary - ~ADBase.get_device_tuple - ~ADBase.get_instantiated_signals - ~ADBase.get_plugin_by_asyn_port - ~ADBase.missing_plugins - ~ADBase.pause - ~ADBase.put - ~ADBase.read - ~ADBase.read_configuration - ~ADBase.resume - ~ADBase.stage - ~ADBase.stop - ~ADBase.subscribe - ~ADBase.summary - ~ADBase.trigger - ~ADBase.unstage - ~ADBase.unsubscribe - ~ADBase.unsubscribe_all - ~ADBase.validate_asyn_ports - ~ADBase.visualize_asyn_digraph - ~ADBase.wait_for_connection - ~ADBase.walk_components - ~ADBase.walk_signals - ~ADBase.walk_subdevice_classes - ~ADBase.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt deleted file mode 100644 index 704ed4180a..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.validate_asyn_ports.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.validate\_asyn\_ports -======================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.validate_asyn_ports \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.visualize_asyn_digraph.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.visualize_asyn_digraph.rst.txt deleted file mode 100644 index 81df135643..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADBase.visualize_asyn_digraph.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ADBase\.visualize\_asyn\_digraph -=========================================================== - -.. currentmodule:: ophyd.areadetector.base - -.. automethod:: ADBase.visualize_asyn_digraph \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ADComponent.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ADComponent.rst.txt deleted file mode 100644 index bfac310e1e..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ADComponent.rst.txt +++ /dev/null @@ -1,30 +0,0 @@ -ophyd\.areadetector\.base\.ADComponent -====================================== - -.. currentmodule:: ophyd.areadetector.base - -.. autoclass:: ADComponent - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ADComponent.__init__ - ~ADComponent.create_component - ~ADComponent.find_docs - ~ADComponent.make_docstring - ~ADComponent.maybe_add_prefix - ~ADComponent.sub_default - ~ADComponent.sub_meta - ~ADComponent.sub_value - ~ADComponent.subscriptions - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt deleted file mode 100644 index a08e72ff48..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.EpicsSignalWithRBV.rst.txt +++ /dev/null @@ -1,41 +0,0 @@ -ophyd\.areadetector\.base\.EpicsSignalWithRBV -============================================= - -.. currentmodule:: ophyd.areadetector.base - -.. autoclass:: EpicsSignalWithRBV - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~EpicsSignalWithRBV.__init__ - ~EpicsSignalWithRBV.add_instantiation_callback - ~EpicsSignalWithRBV.check_value - ~EpicsSignalWithRBV.clear_sub - ~EpicsSignalWithRBV.describe - ~EpicsSignalWithRBV.describe_configuration - ~EpicsSignalWithRBV.destroy - ~EpicsSignalWithRBV.get - ~EpicsSignalWithRBV.get_setpoint - ~EpicsSignalWithRBV.put - ~EpicsSignalWithRBV.read - ~EpicsSignalWithRBV.read_configuration - ~EpicsSignalWithRBV.set - ~EpicsSignalWithRBV.set_default_timeout - ~EpicsSignalWithRBV.set_defaults - ~EpicsSignalWithRBV.subscribe - ~EpicsSignalWithRBV.trigger - ~EpicsSignalWithRBV.unsubscribe - ~EpicsSignalWithRBV.unsubscribe_all - ~EpicsSignalWithRBV.wait_for_connection - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.ad_group.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.ad_group.rst.txt deleted file mode 100644 index 4d6d3c197d..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.ad_group.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.base\.ad\_group -==================================== - -.. currentmodule:: ophyd.areadetector.base - -.. autofunction:: ad_group \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.base.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.base.rst.txt deleted file mode 100644 index f53b37ec7c..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.base.rst.txt +++ /dev/null @@ -1,31 +0,0 @@ -ophyd\.areadetector\.base -========================= - -.. automodule:: ophyd.areadetector.base - - - - .. rubric:: Functions - - .. autosummary:: - - ad_group - - - - - - .. rubric:: Classes - - .. autosummary:: - - ADBase - ADComponent - EpicsSignalWithRBV - NDDerivedSignal - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.AdscDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.AdscDetectorCam.rst.txt deleted file mode 100644 index d9ae12f821..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.AdscDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.AdscDetectorCam -========================================= - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: AdscDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AdscDetectorCam.__init__ - ~AdscDetectorCam.add_instantiation_callback - ~AdscDetectorCam.check_value - ~AdscDetectorCam.clear_sub - ~AdscDetectorCam.configure - ~AdscDetectorCam.describe - ~AdscDetectorCam.describe_configuration - ~AdscDetectorCam.destroy - ~AdscDetectorCam.find_signal - ~AdscDetectorCam.get - ~AdscDetectorCam.get_asyn_digraph - ~AdscDetectorCam.get_asyn_port_dictionary - ~AdscDetectorCam.get_device_tuple - ~AdscDetectorCam.get_instantiated_signals - ~AdscDetectorCam.get_plugin_by_asyn_port - ~AdscDetectorCam.missing_plugins - ~AdscDetectorCam.pause - ~AdscDetectorCam.put - ~AdscDetectorCam.read - ~AdscDetectorCam.read_configuration - ~AdscDetectorCam.resume - ~AdscDetectorCam.stage - ~AdscDetectorCam.stop - ~AdscDetectorCam.subscribe - ~AdscDetectorCam.summary - ~AdscDetectorCam.trigger - ~AdscDetectorCam.unstage - ~AdscDetectorCam.unsubscribe - ~AdscDetectorCam.unsubscribe_all - ~AdscDetectorCam.validate_asyn_ports - ~AdscDetectorCam.visualize_asyn_digraph - ~AdscDetectorCam.wait_for_connection - ~AdscDetectorCam.walk_components - ~AdscDetectorCam.walk_signals - ~AdscDetectorCam.walk_subdevice_classes - ~AdscDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt deleted file mode 100644 index efc693d257..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.Andor3DetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.Andor3DetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: Andor3DetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Andor3DetectorCam.__init__ - ~Andor3DetectorCam.add_instantiation_callback - ~Andor3DetectorCam.check_value - ~Andor3DetectorCam.clear_sub - ~Andor3DetectorCam.configure - ~Andor3DetectorCam.describe - ~Andor3DetectorCam.describe_configuration - ~Andor3DetectorCam.destroy - ~Andor3DetectorCam.find_signal - ~Andor3DetectorCam.get - ~Andor3DetectorCam.get_asyn_digraph - ~Andor3DetectorCam.get_asyn_port_dictionary - ~Andor3DetectorCam.get_device_tuple - ~Andor3DetectorCam.get_instantiated_signals - ~Andor3DetectorCam.get_plugin_by_asyn_port - ~Andor3DetectorCam.missing_plugins - ~Andor3DetectorCam.pause - ~Andor3DetectorCam.put - ~Andor3DetectorCam.read - ~Andor3DetectorCam.read_configuration - ~Andor3DetectorCam.resume - ~Andor3DetectorCam.stage - ~Andor3DetectorCam.stop - ~Andor3DetectorCam.subscribe - ~Andor3DetectorCam.summary - ~Andor3DetectorCam.trigger - ~Andor3DetectorCam.unstage - ~Andor3DetectorCam.unsubscribe - ~Andor3DetectorCam.unsubscribe_all - ~Andor3DetectorCam.validate_asyn_ports - ~Andor3DetectorCam.visualize_asyn_digraph - ~Andor3DetectorCam.wait_for_connection - ~Andor3DetectorCam.walk_components - ~Andor3DetectorCam.walk_signals - ~Andor3DetectorCam.walk_subdevice_classes - ~Andor3DetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.AndorDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.AndorDetectorCam.rst.txt deleted file mode 100644 index bd5ffdc387..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.AndorDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.AndorDetectorCam -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: AndorDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AndorDetectorCam.__init__ - ~AndorDetectorCam.add_instantiation_callback - ~AndorDetectorCam.check_value - ~AndorDetectorCam.clear_sub - ~AndorDetectorCam.configure - ~AndorDetectorCam.describe - ~AndorDetectorCam.describe_configuration - ~AndorDetectorCam.destroy - ~AndorDetectorCam.find_signal - ~AndorDetectorCam.get - ~AndorDetectorCam.get_asyn_digraph - ~AndorDetectorCam.get_asyn_port_dictionary - ~AndorDetectorCam.get_device_tuple - ~AndorDetectorCam.get_instantiated_signals - ~AndorDetectorCam.get_plugin_by_asyn_port - ~AndorDetectorCam.missing_plugins - ~AndorDetectorCam.pause - ~AndorDetectorCam.put - ~AndorDetectorCam.read - ~AndorDetectorCam.read_configuration - ~AndorDetectorCam.resume - ~AndorDetectorCam.stage - ~AndorDetectorCam.stop - ~AndorDetectorCam.subscribe - ~AndorDetectorCam.summary - ~AndorDetectorCam.trigger - ~AndorDetectorCam.unstage - ~AndorDetectorCam.unsubscribe - ~AndorDetectorCam.unsubscribe_all - ~AndorDetectorCam.validate_asyn_ports - ~AndorDetectorCam.visualize_asyn_digraph - ~AndorDetectorCam.wait_for_connection - ~AndorDetectorCam.walk_components - ~AndorDetectorCam.walk_signals - ~AndorDetectorCam.walk_subdevice_classes - ~AndorDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt deleted file mode 100644 index 9ef81211d8..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.BrukerDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.BrukerDetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: BrukerDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~BrukerDetectorCam.__init__ - ~BrukerDetectorCam.add_instantiation_callback - ~BrukerDetectorCam.check_value - ~BrukerDetectorCam.clear_sub - ~BrukerDetectorCam.configure - ~BrukerDetectorCam.describe - ~BrukerDetectorCam.describe_configuration - ~BrukerDetectorCam.destroy - ~BrukerDetectorCam.find_signal - ~BrukerDetectorCam.get - ~BrukerDetectorCam.get_asyn_digraph - ~BrukerDetectorCam.get_asyn_port_dictionary - ~BrukerDetectorCam.get_device_tuple - ~BrukerDetectorCam.get_instantiated_signals - ~BrukerDetectorCam.get_plugin_by_asyn_port - ~BrukerDetectorCam.missing_plugins - ~BrukerDetectorCam.pause - ~BrukerDetectorCam.put - ~BrukerDetectorCam.read - ~BrukerDetectorCam.read_configuration - ~BrukerDetectorCam.resume - ~BrukerDetectorCam.stage - ~BrukerDetectorCam.stop - ~BrukerDetectorCam.subscribe - ~BrukerDetectorCam.summary - ~BrukerDetectorCam.trigger - ~BrukerDetectorCam.unstage - ~BrukerDetectorCam.unsubscribe - ~BrukerDetectorCam.unsubscribe_all - ~BrukerDetectorCam.validate_asyn_ports - ~BrukerDetectorCam.visualize_asyn_digraph - ~BrukerDetectorCam.wait_for_connection - ~BrukerDetectorCam.walk_components - ~BrukerDetectorCam.walk_signals - ~BrukerDetectorCam.walk_subdevice_classes - ~BrukerDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.CamBase.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.CamBase.rst.txt deleted file mode 100644 index d01f4f108d..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.CamBase.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.CamBase -================================= - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: CamBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~CamBase.__init__ - ~CamBase.add_instantiation_callback - ~CamBase.check_value - ~CamBase.clear_sub - ~CamBase.configure - ~CamBase.describe - ~CamBase.describe_configuration - ~CamBase.destroy - ~CamBase.find_signal - ~CamBase.get - ~CamBase.get_asyn_digraph - ~CamBase.get_asyn_port_dictionary - ~CamBase.get_device_tuple - ~CamBase.get_instantiated_signals - ~CamBase.get_plugin_by_asyn_port - ~CamBase.missing_plugins - ~CamBase.pause - ~CamBase.put - ~CamBase.read - ~CamBase.read_configuration - ~CamBase.resume - ~CamBase.stage - ~CamBase.stop - ~CamBase.subscribe - ~CamBase.summary - ~CamBase.trigger - ~CamBase.unstage - ~CamBase.unsubscribe - ~CamBase.unsubscribe_all - ~CamBase.validate_asyn_ports - ~CamBase.visualize_asyn_digraph - ~CamBase.wait_for_connection - ~CamBase.walk_components - ~CamBase.walk_signals - ~CamBase.walk_subdevice_classes - ~CamBase.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt deleted file mode 100644 index 0527625e9a..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.FirewireLinDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.FirewireLinDetectorCam -================================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: FirewireLinDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireLinDetectorCam.__init__ - ~FirewireLinDetectorCam.add_instantiation_callback - ~FirewireLinDetectorCam.check_value - ~FirewireLinDetectorCam.clear_sub - ~FirewireLinDetectorCam.configure - ~FirewireLinDetectorCam.describe - ~FirewireLinDetectorCam.describe_configuration - ~FirewireLinDetectorCam.destroy - ~FirewireLinDetectorCam.find_signal - ~FirewireLinDetectorCam.get - ~FirewireLinDetectorCam.get_asyn_digraph - ~FirewireLinDetectorCam.get_asyn_port_dictionary - ~FirewireLinDetectorCam.get_device_tuple - ~FirewireLinDetectorCam.get_instantiated_signals - ~FirewireLinDetectorCam.get_plugin_by_asyn_port - ~FirewireLinDetectorCam.missing_plugins - ~FirewireLinDetectorCam.pause - ~FirewireLinDetectorCam.put - ~FirewireLinDetectorCam.read - ~FirewireLinDetectorCam.read_configuration - ~FirewireLinDetectorCam.resume - ~FirewireLinDetectorCam.stage - ~FirewireLinDetectorCam.stop - ~FirewireLinDetectorCam.subscribe - ~FirewireLinDetectorCam.summary - ~FirewireLinDetectorCam.trigger - ~FirewireLinDetectorCam.unstage - ~FirewireLinDetectorCam.unsubscribe - ~FirewireLinDetectorCam.unsubscribe_all - ~FirewireLinDetectorCam.validate_asyn_ports - ~FirewireLinDetectorCam.visualize_asyn_digraph - ~FirewireLinDetectorCam.wait_for_connection - ~FirewireLinDetectorCam.walk_components - ~FirewireLinDetectorCam.walk_signals - ~FirewireLinDetectorCam.walk_subdevice_classes - ~FirewireLinDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt deleted file mode 100644 index e945ee4367..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.FirewireWinDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.FirewireWinDetectorCam -================================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: FirewireWinDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireWinDetectorCam.__init__ - ~FirewireWinDetectorCam.add_instantiation_callback - ~FirewireWinDetectorCam.check_value - ~FirewireWinDetectorCam.clear_sub - ~FirewireWinDetectorCam.configure - ~FirewireWinDetectorCam.describe - ~FirewireWinDetectorCam.describe_configuration - ~FirewireWinDetectorCam.destroy - ~FirewireWinDetectorCam.find_signal - ~FirewireWinDetectorCam.get - ~FirewireWinDetectorCam.get_asyn_digraph - ~FirewireWinDetectorCam.get_asyn_port_dictionary - ~FirewireWinDetectorCam.get_device_tuple - ~FirewireWinDetectorCam.get_instantiated_signals - ~FirewireWinDetectorCam.get_plugin_by_asyn_port - ~FirewireWinDetectorCam.missing_plugins - ~FirewireWinDetectorCam.pause - ~FirewireWinDetectorCam.put - ~FirewireWinDetectorCam.read - ~FirewireWinDetectorCam.read_configuration - ~FirewireWinDetectorCam.resume - ~FirewireWinDetectorCam.stage - ~FirewireWinDetectorCam.stop - ~FirewireWinDetectorCam.subscribe - ~FirewireWinDetectorCam.summary - ~FirewireWinDetectorCam.trigger - ~FirewireWinDetectorCam.unstage - ~FirewireWinDetectorCam.unsubscribe - ~FirewireWinDetectorCam.unsubscribe_all - ~FirewireWinDetectorCam.validate_asyn_ports - ~FirewireWinDetectorCam.visualize_asyn_digraph - ~FirewireWinDetectorCam.wait_for_connection - ~FirewireWinDetectorCam.walk_components - ~FirewireWinDetectorCam.walk_signals - ~FirewireWinDetectorCam.walk_subdevice_classes - ~FirewireWinDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt deleted file mode 100644 index 8e5b08127f..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.LightFieldDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.LightFieldDetectorCam -=============================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: LightFieldDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~LightFieldDetectorCam.__init__ - ~LightFieldDetectorCam.add_instantiation_callback - ~LightFieldDetectorCam.check_value - ~LightFieldDetectorCam.clear_sub - ~LightFieldDetectorCam.configure - ~LightFieldDetectorCam.describe - ~LightFieldDetectorCam.describe_configuration - ~LightFieldDetectorCam.destroy - ~LightFieldDetectorCam.find_signal - ~LightFieldDetectorCam.get - ~LightFieldDetectorCam.get_asyn_digraph - ~LightFieldDetectorCam.get_asyn_port_dictionary - ~LightFieldDetectorCam.get_device_tuple - ~LightFieldDetectorCam.get_instantiated_signals - ~LightFieldDetectorCam.get_plugin_by_asyn_port - ~LightFieldDetectorCam.missing_plugins - ~LightFieldDetectorCam.pause - ~LightFieldDetectorCam.put - ~LightFieldDetectorCam.read - ~LightFieldDetectorCam.read_configuration - ~LightFieldDetectorCam.resume - ~LightFieldDetectorCam.stage - ~LightFieldDetectorCam.stop - ~LightFieldDetectorCam.subscribe - ~LightFieldDetectorCam.summary - ~LightFieldDetectorCam.trigger - ~LightFieldDetectorCam.unstage - ~LightFieldDetectorCam.unsubscribe - ~LightFieldDetectorCam.unsubscribe_all - ~LightFieldDetectorCam.validate_asyn_ports - ~LightFieldDetectorCam.visualize_asyn_digraph - ~LightFieldDetectorCam.wait_for_connection - ~LightFieldDetectorCam.walk_components - ~LightFieldDetectorCam.walk_signals - ~LightFieldDetectorCam.walk_subdevice_classes - ~LightFieldDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt deleted file mode 100644 index 5df93887ec..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.Mar345DetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.Mar345DetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: Mar345DetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Mar345DetectorCam.__init__ - ~Mar345DetectorCam.add_instantiation_callback - ~Mar345DetectorCam.check_value - ~Mar345DetectorCam.clear_sub - ~Mar345DetectorCam.configure - ~Mar345DetectorCam.describe - ~Mar345DetectorCam.describe_configuration - ~Mar345DetectorCam.destroy - ~Mar345DetectorCam.find_signal - ~Mar345DetectorCam.get - ~Mar345DetectorCam.get_asyn_digraph - ~Mar345DetectorCam.get_asyn_port_dictionary - ~Mar345DetectorCam.get_device_tuple - ~Mar345DetectorCam.get_instantiated_signals - ~Mar345DetectorCam.get_plugin_by_asyn_port - ~Mar345DetectorCam.missing_plugins - ~Mar345DetectorCam.pause - ~Mar345DetectorCam.put - ~Mar345DetectorCam.read - ~Mar345DetectorCam.read_configuration - ~Mar345DetectorCam.resume - ~Mar345DetectorCam.stage - ~Mar345DetectorCam.stop - ~Mar345DetectorCam.subscribe - ~Mar345DetectorCam.summary - ~Mar345DetectorCam.trigger - ~Mar345DetectorCam.unstage - ~Mar345DetectorCam.unsubscribe - ~Mar345DetectorCam.unsubscribe_all - ~Mar345DetectorCam.validate_asyn_ports - ~Mar345DetectorCam.visualize_asyn_digraph - ~Mar345DetectorCam.wait_for_connection - ~Mar345DetectorCam.walk_components - ~Mar345DetectorCam.walk_signals - ~Mar345DetectorCam.walk_subdevice_classes - ~Mar345DetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt deleted file mode 100644 index bc4f8204d3..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.MarCCDDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.MarCCDDetectorCam -=========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: MarCCDDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MarCCDDetectorCam.__init__ - ~MarCCDDetectorCam.add_instantiation_callback - ~MarCCDDetectorCam.check_value - ~MarCCDDetectorCam.clear_sub - ~MarCCDDetectorCam.configure - ~MarCCDDetectorCam.describe - ~MarCCDDetectorCam.describe_configuration - ~MarCCDDetectorCam.destroy - ~MarCCDDetectorCam.find_signal - ~MarCCDDetectorCam.get - ~MarCCDDetectorCam.get_asyn_digraph - ~MarCCDDetectorCam.get_asyn_port_dictionary - ~MarCCDDetectorCam.get_device_tuple - ~MarCCDDetectorCam.get_instantiated_signals - ~MarCCDDetectorCam.get_plugin_by_asyn_port - ~MarCCDDetectorCam.missing_plugins - ~MarCCDDetectorCam.pause - ~MarCCDDetectorCam.put - ~MarCCDDetectorCam.read - ~MarCCDDetectorCam.read_configuration - ~MarCCDDetectorCam.resume - ~MarCCDDetectorCam.stage - ~MarCCDDetectorCam.stop - ~MarCCDDetectorCam.subscribe - ~MarCCDDetectorCam.summary - ~MarCCDDetectorCam.trigger - ~MarCCDDetectorCam.unstage - ~MarCCDDetectorCam.unsubscribe - ~MarCCDDetectorCam.unsubscribe_all - ~MarCCDDetectorCam.validate_asyn_ports - ~MarCCDDetectorCam.visualize_asyn_digraph - ~MarCCDDetectorCam.wait_for_connection - ~MarCCDDetectorCam.walk_components - ~MarCCDDetectorCam.walk_signals - ~MarCCDDetectorCam.walk_subdevice_classes - ~MarCCDDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PSLDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PSLDetectorCam.rst.txt deleted file mode 100644 index 5dad9a1d96..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PSLDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PSLDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PSLDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PSLDetectorCam.__init__ - ~PSLDetectorCam.add_instantiation_callback - ~PSLDetectorCam.check_value - ~PSLDetectorCam.clear_sub - ~PSLDetectorCam.configure - ~PSLDetectorCam.describe - ~PSLDetectorCam.describe_configuration - ~PSLDetectorCam.destroy - ~PSLDetectorCam.find_signal - ~PSLDetectorCam.get - ~PSLDetectorCam.get_asyn_digraph - ~PSLDetectorCam.get_asyn_port_dictionary - ~PSLDetectorCam.get_device_tuple - ~PSLDetectorCam.get_instantiated_signals - ~PSLDetectorCam.get_plugin_by_asyn_port - ~PSLDetectorCam.missing_plugins - ~PSLDetectorCam.pause - ~PSLDetectorCam.put - ~PSLDetectorCam.read - ~PSLDetectorCam.read_configuration - ~PSLDetectorCam.resume - ~PSLDetectorCam.stage - ~PSLDetectorCam.stop - ~PSLDetectorCam.subscribe - ~PSLDetectorCam.summary - ~PSLDetectorCam.trigger - ~PSLDetectorCam.unstage - ~PSLDetectorCam.unsubscribe - ~PSLDetectorCam.unsubscribe_all - ~PSLDetectorCam.validate_asyn_ports - ~PSLDetectorCam.visualize_asyn_digraph - ~PSLDetectorCam.wait_for_connection - ~PSLDetectorCam.walk_components - ~PSLDetectorCam.walk_signals - ~PSLDetectorCam.walk_subdevice_classes - ~PSLDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorCam.rst.txt deleted file mode 100644 index 438d755862..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PcoDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PcoDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PcoDetectorCam.__init__ - ~PcoDetectorCam.add_instantiation_callback - ~PcoDetectorCam.check_value - ~PcoDetectorCam.clear_sub - ~PcoDetectorCam.configure - ~PcoDetectorCam.describe - ~PcoDetectorCam.describe_configuration - ~PcoDetectorCam.destroy - ~PcoDetectorCam.find_signal - ~PcoDetectorCam.get - ~PcoDetectorCam.get_asyn_digraph - ~PcoDetectorCam.get_asyn_port_dictionary - ~PcoDetectorCam.get_device_tuple - ~PcoDetectorCam.get_instantiated_signals - ~PcoDetectorCam.get_plugin_by_asyn_port - ~PcoDetectorCam.missing_plugins - ~PcoDetectorCam.pause - ~PcoDetectorCam.put - ~PcoDetectorCam.read - ~PcoDetectorCam.read_configuration - ~PcoDetectorCam.resume - ~PcoDetectorCam.stage - ~PcoDetectorCam.stop - ~PcoDetectorCam.subscribe - ~PcoDetectorCam.summary - ~PcoDetectorCam.trigger - ~PcoDetectorCam.unstage - ~PcoDetectorCam.unsubscribe - ~PcoDetectorCam.unsubscribe_all - ~PcoDetectorCam.validate_asyn_ports - ~PcoDetectorCam.visualize_asyn_digraph - ~PcoDetectorCam.wait_for_connection - ~PcoDetectorCam.walk_components - ~PcoDetectorCam.walk_signals - ~PcoDetectorCam.walk_subdevice_classes - ~PcoDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorIO.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorIO.rst.txt deleted file mode 100644 index c4845e1fd9..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorIO.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PcoDetectorIO -======================================= - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PcoDetectorIO - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PcoDetectorIO.__init__ - ~PcoDetectorIO.add_instantiation_callback - ~PcoDetectorIO.check_value - ~PcoDetectorIO.clear_sub - ~PcoDetectorIO.configure - ~PcoDetectorIO.describe - ~PcoDetectorIO.describe_configuration - ~PcoDetectorIO.destroy - ~PcoDetectorIO.find_signal - ~PcoDetectorIO.get - ~PcoDetectorIO.get_asyn_digraph - ~PcoDetectorIO.get_asyn_port_dictionary - ~PcoDetectorIO.get_device_tuple - ~PcoDetectorIO.get_instantiated_signals - ~PcoDetectorIO.get_plugin_by_asyn_port - ~PcoDetectorIO.missing_plugins - ~PcoDetectorIO.pause - ~PcoDetectorIO.put - ~PcoDetectorIO.read - ~PcoDetectorIO.read_configuration - ~PcoDetectorIO.resume - ~PcoDetectorIO.stage - ~PcoDetectorIO.stop - ~PcoDetectorIO.subscribe - ~PcoDetectorIO.summary - ~PcoDetectorIO.trigger - ~PcoDetectorIO.unstage - ~PcoDetectorIO.unsubscribe - ~PcoDetectorIO.unsubscribe_all - ~PcoDetectorIO.validate_asyn_ports - ~PcoDetectorIO.visualize_asyn_digraph - ~PcoDetectorIO.wait_for_connection - ~PcoDetectorIO.walk_components - ~PcoDetectorIO.walk_signals - ~PcoDetectorIO.walk_subdevice_classes - ~PcoDetectorIO.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt deleted file mode 100644 index 0394d02132..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PcoDetectorSimIO.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PcoDetectorSimIO -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PcoDetectorSimIO - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PcoDetectorSimIO.__init__ - ~PcoDetectorSimIO.add_instantiation_callback - ~PcoDetectorSimIO.check_value - ~PcoDetectorSimIO.clear_sub - ~PcoDetectorSimIO.configure - ~PcoDetectorSimIO.describe - ~PcoDetectorSimIO.describe_configuration - ~PcoDetectorSimIO.destroy - ~PcoDetectorSimIO.find_signal - ~PcoDetectorSimIO.get - ~PcoDetectorSimIO.get_asyn_digraph - ~PcoDetectorSimIO.get_asyn_port_dictionary - ~PcoDetectorSimIO.get_device_tuple - ~PcoDetectorSimIO.get_instantiated_signals - ~PcoDetectorSimIO.get_plugin_by_asyn_port - ~PcoDetectorSimIO.missing_plugins - ~PcoDetectorSimIO.pause - ~PcoDetectorSimIO.put - ~PcoDetectorSimIO.read - ~PcoDetectorSimIO.read_configuration - ~PcoDetectorSimIO.resume - ~PcoDetectorSimIO.stage - ~PcoDetectorSimIO.stop - ~PcoDetectorSimIO.subscribe - ~PcoDetectorSimIO.summary - ~PcoDetectorSimIO.trigger - ~PcoDetectorSimIO.unstage - ~PcoDetectorSimIO.unsubscribe - ~PcoDetectorSimIO.unsubscribe_all - ~PcoDetectorSimIO.validate_asyn_ports - ~PcoDetectorSimIO.visualize_asyn_digraph - ~PcoDetectorSimIO.wait_for_connection - ~PcoDetectorSimIO.walk_components - ~PcoDetectorSimIO.walk_signals - ~PcoDetectorSimIO.walk_subdevice_classes - ~PcoDetectorSimIO.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt deleted file mode 100644 index 96aabbafb9..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PerkinElmerDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PerkinElmerDetectorCam -================================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PerkinElmerDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PerkinElmerDetectorCam.__init__ - ~PerkinElmerDetectorCam.add_instantiation_callback - ~PerkinElmerDetectorCam.check_value - ~PerkinElmerDetectorCam.clear_sub - ~PerkinElmerDetectorCam.configure - ~PerkinElmerDetectorCam.describe - ~PerkinElmerDetectorCam.describe_configuration - ~PerkinElmerDetectorCam.destroy - ~PerkinElmerDetectorCam.find_signal - ~PerkinElmerDetectorCam.get - ~PerkinElmerDetectorCam.get_asyn_digraph - ~PerkinElmerDetectorCam.get_asyn_port_dictionary - ~PerkinElmerDetectorCam.get_device_tuple - ~PerkinElmerDetectorCam.get_instantiated_signals - ~PerkinElmerDetectorCam.get_plugin_by_asyn_port - ~PerkinElmerDetectorCam.missing_plugins - ~PerkinElmerDetectorCam.pause - ~PerkinElmerDetectorCam.put - ~PerkinElmerDetectorCam.read - ~PerkinElmerDetectorCam.read_configuration - ~PerkinElmerDetectorCam.resume - ~PerkinElmerDetectorCam.stage - ~PerkinElmerDetectorCam.stop - ~PerkinElmerDetectorCam.subscribe - ~PerkinElmerDetectorCam.summary - ~PerkinElmerDetectorCam.trigger - ~PerkinElmerDetectorCam.unstage - ~PerkinElmerDetectorCam.unsubscribe - ~PerkinElmerDetectorCam.unsubscribe_all - ~PerkinElmerDetectorCam.validate_asyn_ports - ~PerkinElmerDetectorCam.visualize_asyn_digraph - ~PerkinElmerDetectorCam.wait_for_connection - ~PerkinElmerDetectorCam.walk_components - ~PerkinElmerDetectorCam.walk_signals - ~PerkinElmerDetectorCam.walk_subdevice_classes - ~PerkinElmerDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt deleted file mode 100644 index 751d3d1c3b..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PilatusDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PilatusDetectorCam -============================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PilatusDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PilatusDetectorCam.__init__ - ~PilatusDetectorCam.add_instantiation_callback - ~PilatusDetectorCam.check_value - ~PilatusDetectorCam.clear_sub - ~PilatusDetectorCam.configure - ~PilatusDetectorCam.describe - ~PilatusDetectorCam.describe_configuration - ~PilatusDetectorCam.destroy - ~PilatusDetectorCam.find_signal - ~PilatusDetectorCam.get - ~PilatusDetectorCam.get_asyn_digraph - ~PilatusDetectorCam.get_asyn_port_dictionary - ~PilatusDetectorCam.get_device_tuple - ~PilatusDetectorCam.get_instantiated_signals - ~PilatusDetectorCam.get_plugin_by_asyn_port - ~PilatusDetectorCam.missing_plugins - ~PilatusDetectorCam.pause - ~PilatusDetectorCam.put - ~PilatusDetectorCam.read - ~PilatusDetectorCam.read_configuration - ~PilatusDetectorCam.resume - ~PilatusDetectorCam.stage - ~PilatusDetectorCam.stop - ~PilatusDetectorCam.subscribe - ~PilatusDetectorCam.summary - ~PilatusDetectorCam.trigger - ~PilatusDetectorCam.unstage - ~PilatusDetectorCam.unsubscribe - ~PilatusDetectorCam.unsubscribe_all - ~PilatusDetectorCam.validate_asyn_ports - ~PilatusDetectorCam.visualize_asyn_digraph - ~PilatusDetectorCam.wait_for_connection - ~PilatusDetectorCam.walk_components - ~PilatusDetectorCam.walk_signals - ~PilatusDetectorCam.walk_subdevice_classes - ~PilatusDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt deleted file mode 100644 index 9b2fa146ac..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PixiradDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PixiradDetectorCam -============================================ - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PixiradDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PixiradDetectorCam.__init__ - ~PixiradDetectorCam.add_instantiation_callback - ~PixiradDetectorCam.check_value - ~PixiradDetectorCam.clear_sub - ~PixiradDetectorCam.configure - ~PixiradDetectorCam.describe - ~PixiradDetectorCam.describe_configuration - ~PixiradDetectorCam.destroy - ~PixiradDetectorCam.find_signal - ~PixiradDetectorCam.get - ~PixiradDetectorCam.get_asyn_digraph - ~PixiradDetectorCam.get_asyn_port_dictionary - ~PixiradDetectorCam.get_device_tuple - ~PixiradDetectorCam.get_instantiated_signals - ~PixiradDetectorCam.get_plugin_by_asyn_port - ~PixiradDetectorCam.missing_plugins - ~PixiradDetectorCam.pause - ~PixiradDetectorCam.put - ~PixiradDetectorCam.read - ~PixiradDetectorCam.read_configuration - ~PixiradDetectorCam.resume - ~PixiradDetectorCam.stage - ~PixiradDetectorCam.stop - ~PixiradDetectorCam.subscribe - ~PixiradDetectorCam.summary - ~PixiradDetectorCam.trigger - ~PixiradDetectorCam.unstage - ~PixiradDetectorCam.unsubscribe - ~PixiradDetectorCam.unsubscribe_all - ~PixiradDetectorCam.validate_asyn_ports - ~PixiradDetectorCam.visualize_asyn_digraph - ~PixiradDetectorCam.wait_for_connection - ~PixiradDetectorCam.walk_components - ~PixiradDetectorCam.walk_signals - ~PixiradDetectorCam.walk_subdevice_classes - ~PixiradDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt deleted file mode 100644 index 1abb1d0515..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PointGreyDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PointGreyDetectorCam -============================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PointGreyDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PointGreyDetectorCam.__init__ - ~PointGreyDetectorCam.add_instantiation_callback - ~PointGreyDetectorCam.check_value - ~PointGreyDetectorCam.clear_sub - ~PointGreyDetectorCam.configure - ~PointGreyDetectorCam.describe - ~PointGreyDetectorCam.describe_configuration - ~PointGreyDetectorCam.destroy - ~PointGreyDetectorCam.find_signal - ~PointGreyDetectorCam.get - ~PointGreyDetectorCam.get_asyn_digraph - ~PointGreyDetectorCam.get_asyn_port_dictionary - ~PointGreyDetectorCam.get_device_tuple - ~PointGreyDetectorCam.get_instantiated_signals - ~PointGreyDetectorCam.get_plugin_by_asyn_port - ~PointGreyDetectorCam.missing_plugins - ~PointGreyDetectorCam.pause - ~PointGreyDetectorCam.put - ~PointGreyDetectorCam.read - ~PointGreyDetectorCam.read_configuration - ~PointGreyDetectorCam.resume - ~PointGreyDetectorCam.stage - ~PointGreyDetectorCam.stop - ~PointGreyDetectorCam.subscribe - ~PointGreyDetectorCam.summary - ~PointGreyDetectorCam.trigger - ~PointGreyDetectorCam.unstage - ~PointGreyDetectorCam.unsubscribe - ~PointGreyDetectorCam.unsubscribe_all - ~PointGreyDetectorCam.validate_asyn_ports - ~PointGreyDetectorCam.visualize_asyn_digraph - ~PointGreyDetectorCam.wait_for_connection - ~PointGreyDetectorCam.walk_components - ~PointGreyDetectorCam.walk_signals - ~PointGreyDetectorCam.walk_subdevice_classes - ~PointGreyDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt deleted file mode 100644 index 0e3396fe56..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.ProsilicaDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.ProsilicaDetectorCam -============================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: ProsilicaDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ProsilicaDetectorCam.__init__ - ~ProsilicaDetectorCam.add_instantiation_callback - ~ProsilicaDetectorCam.check_value - ~ProsilicaDetectorCam.clear_sub - ~ProsilicaDetectorCam.configure - ~ProsilicaDetectorCam.describe - ~ProsilicaDetectorCam.describe_configuration - ~ProsilicaDetectorCam.destroy - ~ProsilicaDetectorCam.find_signal - ~ProsilicaDetectorCam.get - ~ProsilicaDetectorCam.get_asyn_digraph - ~ProsilicaDetectorCam.get_asyn_port_dictionary - ~ProsilicaDetectorCam.get_device_tuple - ~ProsilicaDetectorCam.get_instantiated_signals - ~ProsilicaDetectorCam.get_plugin_by_asyn_port - ~ProsilicaDetectorCam.missing_plugins - ~ProsilicaDetectorCam.pause - ~ProsilicaDetectorCam.put - ~ProsilicaDetectorCam.read - ~ProsilicaDetectorCam.read_configuration - ~ProsilicaDetectorCam.resume - ~ProsilicaDetectorCam.stage - ~ProsilicaDetectorCam.stop - ~ProsilicaDetectorCam.subscribe - ~ProsilicaDetectorCam.summary - ~ProsilicaDetectorCam.trigger - ~ProsilicaDetectorCam.unstage - ~ProsilicaDetectorCam.unsubscribe - ~ProsilicaDetectorCam.unsubscribe_all - ~ProsilicaDetectorCam.validate_asyn_ports - ~ProsilicaDetectorCam.visualize_asyn_digraph - ~ProsilicaDetectorCam.wait_for_connection - ~ProsilicaDetectorCam.walk_components - ~ProsilicaDetectorCam.walk_signals - ~ProsilicaDetectorCam.walk_subdevice_classes - ~ProsilicaDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt deleted file mode 100644 index 9a52f527be..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.PvcamDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.PvcamDetectorCam -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: PvcamDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PvcamDetectorCam.__init__ - ~PvcamDetectorCam.add_instantiation_callback - ~PvcamDetectorCam.check_value - ~PvcamDetectorCam.clear_sub - ~PvcamDetectorCam.configure - ~PvcamDetectorCam.describe - ~PvcamDetectorCam.describe_configuration - ~PvcamDetectorCam.destroy - ~PvcamDetectorCam.find_signal - ~PvcamDetectorCam.get - ~PvcamDetectorCam.get_asyn_digraph - ~PvcamDetectorCam.get_asyn_port_dictionary - ~PvcamDetectorCam.get_device_tuple - ~PvcamDetectorCam.get_instantiated_signals - ~PvcamDetectorCam.get_plugin_by_asyn_port - ~PvcamDetectorCam.missing_plugins - ~PvcamDetectorCam.pause - ~PvcamDetectorCam.put - ~PvcamDetectorCam.read - ~PvcamDetectorCam.read_configuration - ~PvcamDetectorCam.resume - ~PvcamDetectorCam.stage - ~PvcamDetectorCam.stop - ~PvcamDetectorCam.subscribe - ~PvcamDetectorCam.summary - ~PvcamDetectorCam.trigger - ~PvcamDetectorCam.unstage - ~PvcamDetectorCam.unsubscribe - ~PvcamDetectorCam.unsubscribe_all - ~PvcamDetectorCam.validate_asyn_ports - ~PvcamDetectorCam.visualize_asyn_digraph - ~PvcamDetectorCam.wait_for_connection - ~PvcamDetectorCam.walk_components - ~PvcamDetectorCam.walk_signals - ~PvcamDetectorCam.walk_subdevice_classes - ~PvcamDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.RoperDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.RoperDetectorCam.rst.txt deleted file mode 100644 index 3c9fd7f280..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.RoperDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.RoperDetectorCam -========================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: RoperDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~RoperDetectorCam.__init__ - ~RoperDetectorCam.add_instantiation_callback - ~RoperDetectorCam.check_value - ~RoperDetectorCam.clear_sub - ~RoperDetectorCam.configure - ~RoperDetectorCam.describe - ~RoperDetectorCam.describe_configuration - ~RoperDetectorCam.destroy - ~RoperDetectorCam.find_signal - ~RoperDetectorCam.get - ~RoperDetectorCam.get_asyn_digraph - ~RoperDetectorCam.get_asyn_port_dictionary - ~RoperDetectorCam.get_device_tuple - ~RoperDetectorCam.get_instantiated_signals - ~RoperDetectorCam.get_plugin_by_asyn_port - ~RoperDetectorCam.missing_plugins - ~RoperDetectorCam.pause - ~RoperDetectorCam.put - ~RoperDetectorCam.read - ~RoperDetectorCam.read_configuration - ~RoperDetectorCam.resume - ~RoperDetectorCam.stage - ~RoperDetectorCam.stop - ~RoperDetectorCam.subscribe - ~RoperDetectorCam.summary - ~RoperDetectorCam.trigger - ~RoperDetectorCam.unstage - ~RoperDetectorCam.unsubscribe - ~RoperDetectorCam.unsubscribe_all - ~RoperDetectorCam.validate_asyn_ports - ~RoperDetectorCam.visualize_asyn_digraph - ~RoperDetectorCam.wait_for_connection - ~RoperDetectorCam.walk_components - ~RoperDetectorCam.walk_signals - ~RoperDetectorCam.walk_subdevice_classes - ~RoperDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.SimDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.SimDetectorCam.rst.txt deleted file mode 100644 index 0b11d08825..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.SimDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.SimDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: SimDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~SimDetectorCam.__init__ - ~SimDetectorCam.add_instantiation_callback - ~SimDetectorCam.check_value - ~SimDetectorCam.clear_sub - ~SimDetectorCam.configure - ~SimDetectorCam.describe - ~SimDetectorCam.describe_configuration - ~SimDetectorCam.destroy - ~SimDetectorCam.find_signal - ~SimDetectorCam.get - ~SimDetectorCam.get_asyn_digraph - ~SimDetectorCam.get_asyn_port_dictionary - ~SimDetectorCam.get_device_tuple - ~SimDetectorCam.get_instantiated_signals - ~SimDetectorCam.get_plugin_by_asyn_port - ~SimDetectorCam.missing_plugins - ~SimDetectorCam.pause - ~SimDetectorCam.put - ~SimDetectorCam.read - ~SimDetectorCam.read_configuration - ~SimDetectorCam.resume - ~SimDetectorCam.stage - ~SimDetectorCam.stop - ~SimDetectorCam.subscribe - ~SimDetectorCam.summary - ~SimDetectorCam.trigger - ~SimDetectorCam.unstage - ~SimDetectorCam.unsubscribe - ~SimDetectorCam.unsubscribe_all - ~SimDetectorCam.validate_asyn_ports - ~SimDetectorCam.visualize_asyn_digraph - ~SimDetectorCam.wait_for_connection - ~SimDetectorCam.walk_components - ~SimDetectorCam.walk_signals - ~SimDetectorCam.walk_subdevice_classes - ~SimDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.URLDetectorCam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.URLDetectorCam.rst.txt deleted file mode 100644 index c8ede6e734..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.URLDetectorCam.rst.txt +++ /dev/null @@ -1,57 +0,0 @@ -ophyd\.areadetector\.cam\.URLDetectorCam -======================================== - -.. currentmodule:: ophyd.areadetector.cam - -.. autoclass:: URLDetectorCam - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~URLDetectorCam.__init__ - ~URLDetectorCam.add_instantiation_callback - ~URLDetectorCam.check_value - ~URLDetectorCam.clear_sub - ~URLDetectorCam.configure - ~URLDetectorCam.describe - ~URLDetectorCam.describe_configuration - ~URLDetectorCam.destroy - ~URLDetectorCam.find_signal - ~URLDetectorCam.get - ~URLDetectorCam.get_asyn_digraph - ~URLDetectorCam.get_asyn_port_dictionary - ~URLDetectorCam.get_device_tuple - ~URLDetectorCam.get_instantiated_signals - ~URLDetectorCam.get_plugin_by_asyn_port - ~URLDetectorCam.missing_plugins - ~URLDetectorCam.pause - ~URLDetectorCam.put - ~URLDetectorCam.read - ~URLDetectorCam.read_configuration - ~URLDetectorCam.resume - ~URLDetectorCam.stage - ~URLDetectorCam.stop - ~URLDetectorCam.subscribe - ~URLDetectorCam.summary - ~URLDetectorCam.trigger - ~URLDetectorCam.unstage - ~URLDetectorCam.unsubscribe - ~URLDetectorCam.unsubscribe_all - ~URLDetectorCam.validate_asyn_ports - ~URLDetectorCam.visualize_asyn_digraph - ~URLDetectorCam.wait_for_connection - ~URLDetectorCam.walk_components - ~URLDetectorCam.walk_signals - ~URLDetectorCam.walk_subdevice_classes - ~URLDetectorCam.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.cam.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.cam.rst.txt deleted file mode 100644 index e33a8ee5c0..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.cam.rst.txt +++ /dev/null @@ -1,50 +0,0 @@ -ophyd\.areadetector\.cam -======================== - -.. automodule:: ophyd.areadetector.cam - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - AdscDetectorCam - Andor3DetectorCam - AndorDetectorCam - AreaDetectorCam - BrukerDetectorCam - CamBase - DexelaDetectorCam - EigerDetectorCam - EmergentVisionDetectorCam - FirewireLinDetectorCam - FirewireWinDetectorCam - GreatEyesDetectorCam - Lambda750kCam - LightFieldDetectorCam - Mar345DetectorCam - MarCCDDetectorCam - PSLDetectorCam - PcoDetectorCam - PcoDetectorIO - PcoDetectorSimIO - PerkinElmerDetectorCam - PilatusDetectorCam - PixiradDetectorCam - PointGreyDetectorCam - ProsilicaDetectorCam - PvcamDetectorCam - RoperDetectorCam - SimDetectorCam - URLDetectorCam - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.AdscDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.AdscDetector.rst.txt deleted file mode 100644 index 4988452e29..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.AdscDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.AdscDetector -============================================ - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: AdscDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AdscDetector.__init__ - ~AdscDetector.add_instantiation_callback - ~AdscDetector.check_value - ~AdscDetector.clear_sub - ~AdscDetector.collect_asset_docs - ~AdscDetector.configure - ~AdscDetector.describe - ~AdscDetector.describe_configuration - ~AdscDetector.destroy - ~AdscDetector.dispatch - ~AdscDetector.find_signal - ~AdscDetector.get - ~AdscDetector.get_asyn_digraph - ~AdscDetector.get_asyn_port_dictionary - ~AdscDetector.get_device_tuple - ~AdscDetector.get_instantiated_signals - ~AdscDetector.get_plugin_by_asyn_port - ~AdscDetector.make_data_key - ~AdscDetector.missing_plugins - ~AdscDetector.pause - ~AdscDetector.put - ~AdscDetector.read - ~AdscDetector.read_configuration - ~AdscDetector.resume - ~AdscDetector.stage - ~AdscDetector.stop - ~AdscDetector.subscribe - ~AdscDetector.summary - ~AdscDetector.trigger - ~AdscDetector.unstage - ~AdscDetector.unsubscribe - ~AdscDetector.unsubscribe_all - ~AdscDetector.validate_asyn_ports - ~AdscDetector.visualize_asyn_digraph - ~AdscDetector.wait_for_connection - ~AdscDetector.walk_components - ~AdscDetector.walk_signals - ~AdscDetector.walk_subdevice_classes - ~AdscDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.Andor3Detector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.Andor3Detector.rst.txt deleted file mode 100644 index 919eec2818..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.Andor3Detector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.Andor3Detector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: Andor3Detector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Andor3Detector.__init__ - ~Andor3Detector.add_instantiation_callback - ~Andor3Detector.check_value - ~Andor3Detector.clear_sub - ~Andor3Detector.collect_asset_docs - ~Andor3Detector.configure - ~Andor3Detector.describe - ~Andor3Detector.describe_configuration - ~Andor3Detector.destroy - ~Andor3Detector.dispatch - ~Andor3Detector.find_signal - ~Andor3Detector.get - ~Andor3Detector.get_asyn_digraph - ~Andor3Detector.get_asyn_port_dictionary - ~Andor3Detector.get_device_tuple - ~Andor3Detector.get_instantiated_signals - ~Andor3Detector.get_plugin_by_asyn_port - ~Andor3Detector.make_data_key - ~Andor3Detector.missing_plugins - ~Andor3Detector.pause - ~Andor3Detector.put - ~Andor3Detector.read - ~Andor3Detector.read_configuration - ~Andor3Detector.resume - ~Andor3Detector.stage - ~Andor3Detector.stop - ~Andor3Detector.subscribe - ~Andor3Detector.summary - ~Andor3Detector.trigger - ~Andor3Detector.unstage - ~Andor3Detector.unsubscribe - ~Andor3Detector.unsubscribe_all - ~Andor3Detector.validate_asyn_ports - ~Andor3Detector.visualize_asyn_digraph - ~Andor3Detector.wait_for_connection - ~Andor3Detector.walk_components - ~Andor3Detector.walk_signals - ~Andor3Detector.walk_subdevice_classes - ~Andor3Detector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.AndorDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.AndorDetector.rst.txt deleted file mode 100644 index 568ff781f4..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.AndorDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.AndorDetector -============================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: AndorDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AndorDetector.__init__ - ~AndorDetector.add_instantiation_callback - ~AndorDetector.check_value - ~AndorDetector.clear_sub - ~AndorDetector.collect_asset_docs - ~AndorDetector.configure - ~AndorDetector.describe - ~AndorDetector.describe_configuration - ~AndorDetector.destroy - ~AndorDetector.dispatch - ~AndorDetector.find_signal - ~AndorDetector.get - ~AndorDetector.get_asyn_digraph - ~AndorDetector.get_asyn_port_dictionary - ~AndorDetector.get_device_tuple - ~AndorDetector.get_instantiated_signals - ~AndorDetector.get_plugin_by_asyn_port - ~AndorDetector.make_data_key - ~AndorDetector.missing_plugins - ~AndorDetector.pause - ~AndorDetector.put - ~AndorDetector.read - ~AndorDetector.read_configuration - ~AndorDetector.resume - ~AndorDetector.stage - ~AndorDetector.stop - ~AndorDetector.subscribe - ~AndorDetector.summary - ~AndorDetector.trigger - ~AndorDetector.unstage - ~AndorDetector.unsubscribe - ~AndorDetector.unsubscribe_all - ~AndorDetector.validate_asyn_ports - ~AndorDetector.visualize_asyn_digraph - ~AndorDetector.wait_for_connection - ~AndorDetector.walk_components - ~AndorDetector.walk_signals - ~AndorDetector.walk_subdevice_classes - ~AndorDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.AreaDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.AreaDetector.rst.txt deleted file mode 100644 index 9469e02efb..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.AreaDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.AreaDetector -============================================ - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: AreaDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AreaDetector.__init__ - ~AreaDetector.add_instantiation_callback - ~AreaDetector.check_value - ~AreaDetector.clear_sub - ~AreaDetector.collect_asset_docs - ~AreaDetector.configure - ~AreaDetector.describe - ~AreaDetector.describe_configuration - ~AreaDetector.destroy - ~AreaDetector.dispatch - ~AreaDetector.find_signal - ~AreaDetector.get - ~AreaDetector.get_asyn_digraph - ~AreaDetector.get_asyn_port_dictionary - ~AreaDetector.get_device_tuple - ~AreaDetector.get_instantiated_signals - ~AreaDetector.get_plugin_by_asyn_port - ~AreaDetector.make_data_key - ~AreaDetector.missing_plugins - ~AreaDetector.pause - ~AreaDetector.put - ~AreaDetector.read - ~AreaDetector.read_configuration - ~AreaDetector.resume - ~AreaDetector.stage - ~AreaDetector.stop - ~AreaDetector.subscribe - ~AreaDetector.summary - ~AreaDetector.trigger - ~AreaDetector.unstage - ~AreaDetector.unsubscribe - ~AreaDetector.unsubscribe_all - ~AreaDetector.validate_asyn_ports - ~AreaDetector.visualize_asyn_digraph - ~AreaDetector.wait_for_connection - ~AreaDetector.walk_components - ~AreaDetector.walk_signals - ~AreaDetector.walk_subdevice_classes - ~AreaDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.BrukerDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.BrukerDetector.rst.txt deleted file mode 100644 index 3a765a6609..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.BrukerDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.BrukerDetector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: BrukerDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~BrukerDetector.__init__ - ~BrukerDetector.add_instantiation_callback - ~BrukerDetector.check_value - ~BrukerDetector.clear_sub - ~BrukerDetector.collect_asset_docs - ~BrukerDetector.configure - ~BrukerDetector.describe - ~BrukerDetector.describe_configuration - ~BrukerDetector.destroy - ~BrukerDetector.dispatch - ~BrukerDetector.find_signal - ~BrukerDetector.get - ~BrukerDetector.get_asyn_digraph - ~BrukerDetector.get_asyn_port_dictionary - ~BrukerDetector.get_device_tuple - ~BrukerDetector.get_instantiated_signals - ~BrukerDetector.get_plugin_by_asyn_port - ~BrukerDetector.make_data_key - ~BrukerDetector.missing_plugins - ~BrukerDetector.pause - ~BrukerDetector.put - ~BrukerDetector.read - ~BrukerDetector.read_configuration - ~BrukerDetector.resume - ~BrukerDetector.stage - ~BrukerDetector.stop - ~BrukerDetector.subscribe - ~BrukerDetector.summary - ~BrukerDetector.trigger - ~BrukerDetector.unstage - ~BrukerDetector.unsubscribe - ~BrukerDetector.unsubscribe_all - ~BrukerDetector.validate_asyn_ports - ~BrukerDetector.visualize_asyn_digraph - ~BrukerDetector.wait_for_connection - ~BrukerDetector.walk_components - ~BrukerDetector.walk_signals - ~BrukerDetector.walk_subdevice_classes - ~BrukerDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt deleted file mode 100644 index 94d5fbc971..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.dispatch.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.detectors\.DetectorBase\.dispatch -====================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. automethod:: DetectorBase.dispatch \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt deleted file mode 100644 index e50c93f42a..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.make_data_key.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.detectors\.DetectorBase\.make\_data\_key -============================================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. automethod:: DetectorBase.make_data_key \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.rst.txt deleted file mode 100644 index 2cc23e7f3b..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.DetectorBase.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.DetectorBase -============================================ - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: DetectorBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~DetectorBase.__init__ - ~DetectorBase.add_instantiation_callback - ~DetectorBase.check_value - ~DetectorBase.clear_sub - ~DetectorBase.collect_asset_docs - ~DetectorBase.configure - ~DetectorBase.describe - ~DetectorBase.describe_configuration - ~DetectorBase.destroy - ~DetectorBase.dispatch - ~DetectorBase.find_signal - ~DetectorBase.get - ~DetectorBase.get_asyn_digraph - ~DetectorBase.get_asyn_port_dictionary - ~DetectorBase.get_device_tuple - ~DetectorBase.get_instantiated_signals - ~DetectorBase.get_plugin_by_asyn_port - ~DetectorBase.make_data_key - ~DetectorBase.missing_plugins - ~DetectorBase.pause - ~DetectorBase.put - ~DetectorBase.read - ~DetectorBase.read_configuration - ~DetectorBase.resume - ~DetectorBase.stage - ~DetectorBase.stop - ~DetectorBase.subscribe - ~DetectorBase.summary - ~DetectorBase.trigger - ~DetectorBase.unstage - ~DetectorBase.unsubscribe - ~DetectorBase.unsubscribe_all - ~DetectorBase.validate_asyn_ports - ~DetectorBase.visualize_asyn_digraph - ~DetectorBase.wait_for_connection - ~DetectorBase.walk_components - ~DetectorBase.walk_signals - ~DetectorBase.walk_subdevice_classes - ~DetectorBase.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt deleted file mode 100644 index aa635fe088..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireLinDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.FirewireLinDetector -=================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: FirewireLinDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireLinDetector.__init__ - ~FirewireLinDetector.add_instantiation_callback - ~FirewireLinDetector.check_value - ~FirewireLinDetector.clear_sub - ~FirewireLinDetector.collect_asset_docs - ~FirewireLinDetector.configure - ~FirewireLinDetector.describe - ~FirewireLinDetector.describe_configuration - ~FirewireLinDetector.destroy - ~FirewireLinDetector.dispatch - ~FirewireLinDetector.find_signal - ~FirewireLinDetector.get - ~FirewireLinDetector.get_asyn_digraph - ~FirewireLinDetector.get_asyn_port_dictionary - ~FirewireLinDetector.get_device_tuple - ~FirewireLinDetector.get_instantiated_signals - ~FirewireLinDetector.get_plugin_by_asyn_port - ~FirewireLinDetector.make_data_key - ~FirewireLinDetector.missing_plugins - ~FirewireLinDetector.pause - ~FirewireLinDetector.put - ~FirewireLinDetector.read - ~FirewireLinDetector.read_configuration - ~FirewireLinDetector.resume - ~FirewireLinDetector.stage - ~FirewireLinDetector.stop - ~FirewireLinDetector.subscribe - ~FirewireLinDetector.summary - ~FirewireLinDetector.trigger - ~FirewireLinDetector.unstage - ~FirewireLinDetector.unsubscribe - ~FirewireLinDetector.unsubscribe_all - ~FirewireLinDetector.validate_asyn_ports - ~FirewireLinDetector.visualize_asyn_digraph - ~FirewireLinDetector.wait_for_connection - ~FirewireLinDetector.walk_components - ~FirewireLinDetector.walk_signals - ~FirewireLinDetector.walk_subdevice_classes - ~FirewireLinDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt deleted file mode 100644 index 96c108ba2c..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.FirewireWinDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.FirewireWinDetector -=================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: FirewireWinDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FirewireWinDetector.__init__ - ~FirewireWinDetector.add_instantiation_callback - ~FirewireWinDetector.check_value - ~FirewireWinDetector.clear_sub - ~FirewireWinDetector.collect_asset_docs - ~FirewireWinDetector.configure - ~FirewireWinDetector.describe - ~FirewireWinDetector.describe_configuration - ~FirewireWinDetector.destroy - ~FirewireWinDetector.dispatch - ~FirewireWinDetector.find_signal - ~FirewireWinDetector.get - ~FirewireWinDetector.get_asyn_digraph - ~FirewireWinDetector.get_asyn_port_dictionary - ~FirewireWinDetector.get_device_tuple - ~FirewireWinDetector.get_instantiated_signals - ~FirewireWinDetector.get_plugin_by_asyn_port - ~FirewireWinDetector.make_data_key - ~FirewireWinDetector.missing_plugins - ~FirewireWinDetector.pause - ~FirewireWinDetector.put - ~FirewireWinDetector.read - ~FirewireWinDetector.read_configuration - ~FirewireWinDetector.resume - ~FirewireWinDetector.stage - ~FirewireWinDetector.stop - ~FirewireWinDetector.subscribe - ~FirewireWinDetector.summary - ~FirewireWinDetector.trigger - ~FirewireWinDetector.unstage - ~FirewireWinDetector.unsubscribe - ~FirewireWinDetector.unsubscribe_all - ~FirewireWinDetector.validate_asyn_ports - ~FirewireWinDetector.visualize_asyn_digraph - ~FirewireWinDetector.wait_for_connection - ~FirewireWinDetector.walk_components - ~FirewireWinDetector.walk_signals - ~FirewireWinDetector.walk_subdevice_classes - ~FirewireWinDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.LightFieldDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.LightFieldDetector.rst.txt deleted file mode 100644 index 91dd73d541..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.LightFieldDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.LightFieldDetector -================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: LightFieldDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~LightFieldDetector.__init__ - ~LightFieldDetector.add_instantiation_callback - ~LightFieldDetector.check_value - ~LightFieldDetector.clear_sub - ~LightFieldDetector.collect_asset_docs - ~LightFieldDetector.configure - ~LightFieldDetector.describe - ~LightFieldDetector.describe_configuration - ~LightFieldDetector.destroy - ~LightFieldDetector.dispatch - ~LightFieldDetector.find_signal - ~LightFieldDetector.get - ~LightFieldDetector.get_asyn_digraph - ~LightFieldDetector.get_asyn_port_dictionary - ~LightFieldDetector.get_device_tuple - ~LightFieldDetector.get_instantiated_signals - ~LightFieldDetector.get_plugin_by_asyn_port - ~LightFieldDetector.make_data_key - ~LightFieldDetector.missing_plugins - ~LightFieldDetector.pause - ~LightFieldDetector.put - ~LightFieldDetector.read - ~LightFieldDetector.read_configuration - ~LightFieldDetector.resume - ~LightFieldDetector.stage - ~LightFieldDetector.stop - ~LightFieldDetector.subscribe - ~LightFieldDetector.summary - ~LightFieldDetector.trigger - ~LightFieldDetector.unstage - ~LightFieldDetector.unsubscribe - ~LightFieldDetector.unsubscribe_all - ~LightFieldDetector.validate_asyn_ports - ~LightFieldDetector.visualize_asyn_digraph - ~LightFieldDetector.wait_for_connection - ~LightFieldDetector.walk_components - ~LightFieldDetector.walk_signals - ~LightFieldDetector.walk_subdevice_classes - ~LightFieldDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.Mar345Detector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.Mar345Detector.rst.txt deleted file mode 100644 index 5034920e07..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.Mar345Detector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.Mar345Detector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: Mar345Detector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Mar345Detector.__init__ - ~Mar345Detector.add_instantiation_callback - ~Mar345Detector.check_value - ~Mar345Detector.clear_sub - ~Mar345Detector.collect_asset_docs - ~Mar345Detector.configure - ~Mar345Detector.describe - ~Mar345Detector.describe_configuration - ~Mar345Detector.destroy - ~Mar345Detector.dispatch - ~Mar345Detector.find_signal - ~Mar345Detector.get - ~Mar345Detector.get_asyn_digraph - ~Mar345Detector.get_asyn_port_dictionary - ~Mar345Detector.get_device_tuple - ~Mar345Detector.get_instantiated_signals - ~Mar345Detector.get_plugin_by_asyn_port - ~Mar345Detector.make_data_key - ~Mar345Detector.missing_plugins - ~Mar345Detector.pause - ~Mar345Detector.put - ~Mar345Detector.read - ~Mar345Detector.read_configuration - ~Mar345Detector.resume - ~Mar345Detector.stage - ~Mar345Detector.stop - ~Mar345Detector.subscribe - ~Mar345Detector.summary - ~Mar345Detector.trigger - ~Mar345Detector.unstage - ~Mar345Detector.unsubscribe - ~Mar345Detector.unsubscribe_all - ~Mar345Detector.validate_asyn_ports - ~Mar345Detector.visualize_asyn_digraph - ~Mar345Detector.wait_for_connection - ~Mar345Detector.walk_components - ~Mar345Detector.walk_signals - ~Mar345Detector.walk_subdevice_classes - ~Mar345Detector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.MarCCDDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.MarCCDDetector.rst.txt deleted file mode 100644 index 1cda05e5e5..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.MarCCDDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.MarCCDDetector -============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: MarCCDDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MarCCDDetector.__init__ - ~MarCCDDetector.add_instantiation_callback - ~MarCCDDetector.check_value - ~MarCCDDetector.clear_sub - ~MarCCDDetector.collect_asset_docs - ~MarCCDDetector.configure - ~MarCCDDetector.describe - ~MarCCDDetector.describe_configuration - ~MarCCDDetector.destroy - ~MarCCDDetector.dispatch - ~MarCCDDetector.find_signal - ~MarCCDDetector.get - ~MarCCDDetector.get_asyn_digraph - ~MarCCDDetector.get_asyn_port_dictionary - ~MarCCDDetector.get_device_tuple - ~MarCCDDetector.get_instantiated_signals - ~MarCCDDetector.get_plugin_by_asyn_port - ~MarCCDDetector.make_data_key - ~MarCCDDetector.missing_plugins - ~MarCCDDetector.pause - ~MarCCDDetector.put - ~MarCCDDetector.read - ~MarCCDDetector.read_configuration - ~MarCCDDetector.resume - ~MarCCDDetector.stage - ~MarCCDDetector.stop - ~MarCCDDetector.subscribe - ~MarCCDDetector.summary - ~MarCCDDetector.trigger - ~MarCCDDetector.unstage - ~MarCCDDetector.unsubscribe - ~MarCCDDetector.unsubscribe_all - ~MarCCDDetector.validate_asyn_ports - ~MarCCDDetector.visualize_asyn_digraph - ~MarCCDDetector.wait_for_connection - ~MarCCDDetector.walk_components - ~MarCCDDetector.walk_signals - ~MarCCDDetector.walk_subdevice_classes - ~MarCCDDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.PSLDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.PSLDetector.rst.txt deleted file mode 100644 index be5570b490..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.PSLDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.PSLDetector -=========================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PSLDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PSLDetector.__init__ - ~PSLDetector.add_instantiation_callback - ~PSLDetector.check_value - ~PSLDetector.clear_sub - ~PSLDetector.collect_asset_docs - ~PSLDetector.configure - ~PSLDetector.describe - ~PSLDetector.describe_configuration - ~PSLDetector.destroy - ~PSLDetector.dispatch - ~PSLDetector.find_signal - ~PSLDetector.get - ~PSLDetector.get_asyn_digraph - ~PSLDetector.get_asyn_port_dictionary - ~PSLDetector.get_device_tuple - ~PSLDetector.get_instantiated_signals - ~PSLDetector.get_plugin_by_asyn_port - ~PSLDetector.make_data_key - ~PSLDetector.missing_plugins - ~PSLDetector.pause - ~PSLDetector.put - ~PSLDetector.read - ~PSLDetector.read_configuration - ~PSLDetector.resume - ~PSLDetector.stage - ~PSLDetector.stop - ~PSLDetector.subscribe - ~PSLDetector.summary - ~PSLDetector.trigger - ~PSLDetector.unstage - ~PSLDetector.unsubscribe - ~PSLDetector.unsubscribe_all - ~PSLDetector.validate_asyn_ports - ~PSLDetector.visualize_asyn_digraph - ~PSLDetector.wait_for_connection - ~PSLDetector.walk_components - ~PSLDetector.walk_signals - ~PSLDetector.walk_subdevice_classes - ~PSLDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt deleted file mode 100644 index 73f1bb422c..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.PerkinElmerDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.PerkinElmerDetector -=================================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PerkinElmerDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PerkinElmerDetector.__init__ - ~PerkinElmerDetector.add_instantiation_callback - ~PerkinElmerDetector.check_value - ~PerkinElmerDetector.clear_sub - ~PerkinElmerDetector.collect_asset_docs - ~PerkinElmerDetector.configure - ~PerkinElmerDetector.describe - ~PerkinElmerDetector.describe_configuration - ~PerkinElmerDetector.destroy - ~PerkinElmerDetector.dispatch - ~PerkinElmerDetector.find_signal - ~PerkinElmerDetector.get - ~PerkinElmerDetector.get_asyn_digraph - ~PerkinElmerDetector.get_asyn_port_dictionary - ~PerkinElmerDetector.get_device_tuple - ~PerkinElmerDetector.get_instantiated_signals - ~PerkinElmerDetector.get_plugin_by_asyn_port - ~PerkinElmerDetector.make_data_key - ~PerkinElmerDetector.missing_plugins - ~PerkinElmerDetector.pause - ~PerkinElmerDetector.put - ~PerkinElmerDetector.read - ~PerkinElmerDetector.read_configuration - ~PerkinElmerDetector.resume - ~PerkinElmerDetector.stage - ~PerkinElmerDetector.stop - ~PerkinElmerDetector.subscribe - ~PerkinElmerDetector.summary - ~PerkinElmerDetector.trigger - ~PerkinElmerDetector.unstage - ~PerkinElmerDetector.unsubscribe - ~PerkinElmerDetector.unsubscribe_all - ~PerkinElmerDetector.validate_asyn_ports - ~PerkinElmerDetector.visualize_asyn_digraph - ~PerkinElmerDetector.wait_for_connection - ~PerkinElmerDetector.walk_components - ~PerkinElmerDetector.walk_signals - ~PerkinElmerDetector.walk_subdevice_classes - ~PerkinElmerDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.PilatusDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.PilatusDetector.rst.txt deleted file mode 100644 index 258167b5f5..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.PilatusDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.PilatusDetector -=============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PilatusDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PilatusDetector.__init__ - ~PilatusDetector.add_instantiation_callback - ~PilatusDetector.check_value - ~PilatusDetector.clear_sub - ~PilatusDetector.collect_asset_docs - ~PilatusDetector.configure - ~PilatusDetector.describe - ~PilatusDetector.describe_configuration - ~PilatusDetector.destroy - ~PilatusDetector.dispatch - ~PilatusDetector.find_signal - ~PilatusDetector.get - ~PilatusDetector.get_asyn_digraph - ~PilatusDetector.get_asyn_port_dictionary - ~PilatusDetector.get_device_tuple - ~PilatusDetector.get_instantiated_signals - ~PilatusDetector.get_plugin_by_asyn_port - ~PilatusDetector.make_data_key - ~PilatusDetector.missing_plugins - ~PilatusDetector.pause - ~PilatusDetector.put - ~PilatusDetector.read - ~PilatusDetector.read_configuration - ~PilatusDetector.resume - ~PilatusDetector.stage - ~PilatusDetector.stop - ~PilatusDetector.subscribe - ~PilatusDetector.summary - ~PilatusDetector.trigger - ~PilatusDetector.unstage - ~PilatusDetector.unsubscribe - ~PilatusDetector.unsubscribe_all - ~PilatusDetector.validate_asyn_ports - ~PilatusDetector.visualize_asyn_digraph - ~PilatusDetector.wait_for_connection - ~PilatusDetector.walk_components - ~PilatusDetector.walk_signals - ~PilatusDetector.walk_subdevice_classes - ~PilatusDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.PixiradDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.PixiradDetector.rst.txt deleted file mode 100644 index f713a5f3b3..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.PixiradDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.PixiradDetector -=============================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PixiradDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PixiradDetector.__init__ - ~PixiradDetector.add_instantiation_callback - ~PixiradDetector.check_value - ~PixiradDetector.clear_sub - ~PixiradDetector.collect_asset_docs - ~PixiradDetector.configure - ~PixiradDetector.describe - ~PixiradDetector.describe_configuration - ~PixiradDetector.destroy - ~PixiradDetector.dispatch - ~PixiradDetector.find_signal - ~PixiradDetector.get - ~PixiradDetector.get_asyn_digraph - ~PixiradDetector.get_asyn_port_dictionary - ~PixiradDetector.get_device_tuple - ~PixiradDetector.get_instantiated_signals - ~PixiradDetector.get_plugin_by_asyn_port - ~PixiradDetector.make_data_key - ~PixiradDetector.missing_plugins - ~PixiradDetector.pause - ~PixiradDetector.put - ~PixiradDetector.read - ~PixiradDetector.read_configuration - ~PixiradDetector.resume - ~PixiradDetector.stage - ~PixiradDetector.stop - ~PixiradDetector.subscribe - ~PixiradDetector.summary - ~PixiradDetector.trigger - ~PixiradDetector.unstage - ~PixiradDetector.unsubscribe - ~PixiradDetector.unsubscribe_all - ~PixiradDetector.validate_asyn_ports - ~PixiradDetector.visualize_asyn_digraph - ~PixiradDetector.wait_for_connection - ~PixiradDetector.walk_components - ~PixiradDetector.walk_signals - ~PixiradDetector.walk_subdevice_classes - ~PixiradDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.PointGreyDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.PointGreyDetector.rst.txt deleted file mode 100644 index 8a3a887c20..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.PointGreyDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.PointGreyDetector -================================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PointGreyDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PointGreyDetector.__init__ - ~PointGreyDetector.add_instantiation_callback - ~PointGreyDetector.check_value - ~PointGreyDetector.clear_sub - ~PointGreyDetector.collect_asset_docs - ~PointGreyDetector.configure - ~PointGreyDetector.describe - ~PointGreyDetector.describe_configuration - ~PointGreyDetector.destroy - ~PointGreyDetector.dispatch - ~PointGreyDetector.find_signal - ~PointGreyDetector.get - ~PointGreyDetector.get_asyn_digraph - ~PointGreyDetector.get_asyn_port_dictionary - ~PointGreyDetector.get_device_tuple - ~PointGreyDetector.get_instantiated_signals - ~PointGreyDetector.get_plugin_by_asyn_port - ~PointGreyDetector.make_data_key - ~PointGreyDetector.missing_plugins - ~PointGreyDetector.pause - ~PointGreyDetector.put - ~PointGreyDetector.read - ~PointGreyDetector.read_configuration - ~PointGreyDetector.resume - ~PointGreyDetector.stage - ~PointGreyDetector.stop - ~PointGreyDetector.subscribe - ~PointGreyDetector.summary - ~PointGreyDetector.trigger - ~PointGreyDetector.unstage - ~PointGreyDetector.unsubscribe - ~PointGreyDetector.unsubscribe_all - ~PointGreyDetector.validate_asyn_ports - ~PointGreyDetector.visualize_asyn_digraph - ~PointGreyDetector.wait_for_connection - ~PointGreyDetector.walk_components - ~PointGreyDetector.walk_signals - ~PointGreyDetector.walk_subdevice_classes - ~PointGreyDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt deleted file mode 100644 index 84fe847b8f..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.ProsilicaDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.ProsilicaDetector -================================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: ProsilicaDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ProsilicaDetector.__init__ - ~ProsilicaDetector.add_instantiation_callback - ~ProsilicaDetector.check_value - ~ProsilicaDetector.clear_sub - ~ProsilicaDetector.collect_asset_docs - ~ProsilicaDetector.configure - ~ProsilicaDetector.describe - ~ProsilicaDetector.describe_configuration - ~ProsilicaDetector.destroy - ~ProsilicaDetector.dispatch - ~ProsilicaDetector.find_signal - ~ProsilicaDetector.get - ~ProsilicaDetector.get_asyn_digraph - ~ProsilicaDetector.get_asyn_port_dictionary - ~ProsilicaDetector.get_device_tuple - ~ProsilicaDetector.get_instantiated_signals - ~ProsilicaDetector.get_plugin_by_asyn_port - ~ProsilicaDetector.make_data_key - ~ProsilicaDetector.missing_plugins - ~ProsilicaDetector.pause - ~ProsilicaDetector.put - ~ProsilicaDetector.read - ~ProsilicaDetector.read_configuration - ~ProsilicaDetector.resume - ~ProsilicaDetector.stage - ~ProsilicaDetector.stop - ~ProsilicaDetector.subscribe - ~ProsilicaDetector.summary - ~ProsilicaDetector.trigger - ~ProsilicaDetector.unstage - ~ProsilicaDetector.unsubscribe - ~ProsilicaDetector.unsubscribe_all - ~ProsilicaDetector.validate_asyn_ports - ~ProsilicaDetector.visualize_asyn_digraph - ~ProsilicaDetector.wait_for_connection - ~ProsilicaDetector.walk_components - ~ProsilicaDetector.walk_signals - ~ProsilicaDetector.walk_subdevice_classes - ~ProsilicaDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.PvcamDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.PvcamDetector.rst.txt deleted file mode 100644 index 1281af28b4..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.PvcamDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.PvcamDetector -============================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: PvcamDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PvcamDetector.__init__ - ~PvcamDetector.add_instantiation_callback - ~PvcamDetector.check_value - ~PvcamDetector.clear_sub - ~PvcamDetector.collect_asset_docs - ~PvcamDetector.configure - ~PvcamDetector.describe - ~PvcamDetector.describe_configuration - ~PvcamDetector.destroy - ~PvcamDetector.dispatch - ~PvcamDetector.find_signal - ~PvcamDetector.get - ~PvcamDetector.get_asyn_digraph - ~PvcamDetector.get_asyn_port_dictionary - ~PvcamDetector.get_device_tuple - ~PvcamDetector.get_instantiated_signals - ~PvcamDetector.get_plugin_by_asyn_port - ~PvcamDetector.make_data_key - ~PvcamDetector.missing_plugins - ~PvcamDetector.pause - ~PvcamDetector.put - ~PvcamDetector.read - ~PvcamDetector.read_configuration - ~PvcamDetector.resume - ~PvcamDetector.stage - ~PvcamDetector.stop - ~PvcamDetector.subscribe - ~PvcamDetector.summary - ~PvcamDetector.trigger - ~PvcamDetector.unstage - ~PvcamDetector.unsubscribe - ~PvcamDetector.unsubscribe_all - ~PvcamDetector.validate_asyn_ports - ~PvcamDetector.visualize_asyn_digraph - ~PvcamDetector.wait_for_connection - ~PvcamDetector.walk_components - ~PvcamDetector.walk_signals - ~PvcamDetector.walk_subdevice_classes - ~PvcamDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.RoperDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.RoperDetector.rst.txt deleted file mode 100644 index 26e2910e7b..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.RoperDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.RoperDetector -============================================= - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: RoperDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~RoperDetector.__init__ - ~RoperDetector.add_instantiation_callback - ~RoperDetector.check_value - ~RoperDetector.clear_sub - ~RoperDetector.collect_asset_docs - ~RoperDetector.configure - ~RoperDetector.describe - ~RoperDetector.describe_configuration - ~RoperDetector.destroy - ~RoperDetector.dispatch - ~RoperDetector.find_signal - ~RoperDetector.get - ~RoperDetector.get_asyn_digraph - ~RoperDetector.get_asyn_port_dictionary - ~RoperDetector.get_device_tuple - ~RoperDetector.get_instantiated_signals - ~RoperDetector.get_plugin_by_asyn_port - ~RoperDetector.make_data_key - ~RoperDetector.missing_plugins - ~RoperDetector.pause - ~RoperDetector.put - ~RoperDetector.read - ~RoperDetector.read_configuration - ~RoperDetector.resume - ~RoperDetector.stage - ~RoperDetector.stop - ~RoperDetector.subscribe - ~RoperDetector.summary - ~RoperDetector.trigger - ~RoperDetector.unstage - ~RoperDetector.unsubscribe - ~RoperDetector.unsubscribe_all - ~RoperDetector.validate_asyn_ports - ~RoperDetector.visualize_asyn_digraph - ~RoperDetector.wait_for_connection - ~RoperDetector.walk_components - ~RoperDetector.walk_signals - ~RoperDetector.walk_subdevice_classes - ~RoperDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.SimDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.SimDetector.rst.txt deleted file mode 100644 index bd52b720c0..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.SimDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.SimDetector -=========================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: SimDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~SimDetector.__init__ - ~SimDetector.add_instantiation_callback - ~SimDetector.check_value - ~SimDetector.clear_sub - ~SimDetector.collect_asset_docs - ~SimDetector.configure - ~SimDetector.describe - ~SimDetector.describe_configuration - ~SimDetector.destroy - ~SimDetector.dispatch - ~SimDetector.find_signal - ~SimDetector.get - ~SimDetector.get_asyn_digraph - ~SimDetector.get_asyn_port_dictionary - ~SimDetector.get_device_tuple - ~SimDetector.get_instantiated_signals - ~SimDetector.get_plugin_by_asyn_port - ~SimDetector.make_data_key - ~SimDetector.missing_plugins - ~SimDetector.pause - ~SimDetector.put - ~SimDetector.read - ~SimDetector.read_configuration - ~SimDetector.resume - ~SimDetector.stage - ~SimDetector.stop - ~SimDetector.subscribe - ~SimDetector.summary - ~SimDetector.trigger - ~SimDetector.unstage - ~SimDetector.unsubscribe - ~SimDetector.unsubscribe_all - ~SimDetector.validate_asyn_ports - ~SimDetector.visualize_asyn_digraph - ~SimDetector.wait_for_connection - ~SimDetector.walk_components - ~SimDetector.walk_signals - ~SimDetector.walk_subdevice_classes - ~SimDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.URLDetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.URLDetector.rst.txt deleted file mode 100644 index 9cbbfea8c7..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.URLDetector.rst.txt +++ /dev/null @@ -1,60 +0,0 @@ -ophyd\.areadetector\.detectors\.URLDetector -=========================================== - -.. currentmodule:: ophyd.areadetector.detectors - -.. autoclass:: URLDetector - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~URLDetector.__init__ - ~URLDetector.add_instantiation_callback - ~URLDetector.check_value - ~URLDetector.clear_sub - ~URLDetector.collect_asset_docs - ~URLDetector.configure - ~URLDetector.describe - ~URLDetector.describe_configuration - ~URLDetector.destroy - ~URLDetector.dispatch - ~URLDetector.find_signal - ~URLDetector.get - ~URLDetector.get_asyn_digraph - ~URLDetector.get_asyn_port_dictionary - ~URLDetector.get_device_tuple - ~URLDetector.get_instantiated_signals - ~URLDetector.get_plugin_by_asyn_port - ~URLDetector.make_data_key - ~URLDetector.missing_plugins - ~URLDetector.pause - ~URLDetector.put - ~URLDetector.read - ~URLDetector.read_configuration - ~URLDetector.resume - ~URLDetector.stage - ~URLDetector.stop - ~URLDetector.subscribe - ~URLDetector.summary - ~URLDetector.trigger - ~URLDetector.unstage - ~URLDetector.unsubscribe - ~URLDetector.unsubscribe_all - ~URLDetector.validate_asyn_ports - ~URLDetector.visualize_asyn_digraph - ~URLDetector.wait_for_connection - ~URLDetector.walk_components - ~URLDetector.walk_signals - ~URLDetector.walk_subdevice_classes - ~URLDetector.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.detectors.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.detectors.rst.txt deleted file mode 100644 index fc80d5ead2..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.detectors.rst.txt +++ /dev/null @@ -1,46 +0,0 @@ -ophyd\.areadetector\.detectors -============================== - -.. automodule:: ophyd.areadetector.detectors - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - AdscDetector - Andor3Detector - AndorDetector - AreaDetector - BrukerDetector - DetectorBase - DexelaDetector - EigerDetector - EmergentVisionDetector - FirewireLinDetector - FirewireWinDetector - GreatEyesDetector - LightFieldDetector - Mar345Detector - MarCCDDetector - PSLDetector - PerkinElmerDetector - PilatusDetector - PixiradDetector - PointGreyDetector - ProsilicaDetector - PvcamDetector - RoperDetector - SimDetector - URLDetector - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.docs.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.docs.rst.txt deleted file mode 100644 index fe390abc34..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.docs.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd\.areadetector\.docs -========================= - -.. automodule:: ophyd.areadetector.docs - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt deleted file mode 100644 index 904dae3636..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.fs_root.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.fs\_root -=============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.fs_root \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt deleted file mode 100644 index e9f2f94056..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.generate_datum.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.generate\_datum -====================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. automethod:: FileStoreBase.generate_datum \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt deleted file mode 100644 index 10e25a5918..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.read_path_template.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.read\_path\_template -=========================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.read_path_template \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt deleted file mode 100644 index 0f6f6742c5..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.reg_root.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.reg\_root -================================================================ - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.reg_root \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt deleted file mode 100644 index 12435c0313..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.rst.txt +++ /dev/null @@ -1,31 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase -===================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreBase.__init__ - ~FileStoreBase.collect_asset_docs - ~FileStoreBase.describe - ~FileStoreBase.generate_datum - ~FileStoreBase.pause - ~FileStoreBase.read - ~FileStoreBase.resume - ~FileStoreBase.stage - ~FileStoreBase.trigger - ~FileStoreBase.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt deleted file mode 100644 index 40809dd42a..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreBase.write_path_template.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreBase\.write\_path\_template -============================================================================ - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoattribute:: FileStoreBase.write_path_template \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt deleted file mode 100644 index 2ecb61dbf6..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5.rst.txt +++ /dev/null @@ -1,33 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreHDF5 -===================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreHDF5 - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreHDF5.__init__ - ~FileStoreHDF5.collect_asset_docs - ~FileStoreHDF5.describe - ~FileStoreHDF5.generate_datum - ~FileStoreHDF5.get_frames_per_point - ~FileStoreHDF5.make_filename - ~FileStoreHDF5.pause - ~FileStoreHDF5.read - ~FileStoreHDF5.resume - ~FileStoreHDF5.stage - ~FileStoreHDF5.trigger - ~FileStoreHDF5.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt deleted file mode 100644 index 4090d88b75..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreHDF5IterativeWrite.rst.txt +++ /dev/null @@ -1,33 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreHDF5IterativeWrite -=================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreHDF5IterativeWrite - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreHDF5IterativeWrite.__init__ - ~FileStoreHDF5IterativeWrite.collect_asset_docs - ~FileStoreHDF5IterativeWrite.describe - ~FileStoreHDF5IterativeWrite.generate_datum - ~FileStoreHDF5IterativeWrite.get_frames_per_point - ~FileStoreHDF5IterativeWrite.make_filename - ~FileStoreHDF5IterativeWrite.pause - ~FileStoreHDF5IterativeWrite.read - ~FileStoreHDF5IterativeWrite.resume - ~FileStoreHDF5IterativeWrite.stage - ~FileStoreHDF5IterativeWrite.trigger - ~FileStoreHDF5IterativeWrite.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt deleted file mode 100644 index 927ca12b6f..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreIterativeWrite.rst.txt +++ /dev/null @@ -1,31 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreIterativeWrite -=============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreIterativeWrite - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreIterativeWrite.__init__ - ~FileStoreIterativeWrite.collect_asset_docs - ~FileStoreIterativeWrite.describe - ~FileStoreIterativeWrite.generate_datum - ~FileStoreIterativeWrite.pause - ~FileStoreIterativeWrite.read - ~FileStoreIterativeWrite.resume - ~FileStoreIterativeWrite.stage - ~FileStoreIterativeWrite.trigger - ~FileStoreIterativeWrite.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt deleted file mode 100644 index b57e08df54..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.make_filename.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStorePluginBase\.make\_filename -=========================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. automethod:: FileStorePluginBase.make_filename \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt deleted file mode 100644 index 75dca87e33..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStorePluginBase.rst.txt +++ /dev/null @@ -1,32 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStorePluginBase -=========================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStorePluginBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStorePluginBase.__init__ - ~FileStorePluginBase.collect_asset_docs - ~FileStorePluginBase.describe - ~FileStorePluginBase.generate_datum - ~FileStorePluginBase.make_filename - ~FileStorePluginBase.pause - ~FileStorePluginBase.read - ~FileStorePluginBase.resume - ~FileStorePluginBase.stage - ~FileStorePluginBase.trigger - ~FileStorePluginBase.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt deleted file mode 100644 index cf05499195..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFF.rst.txt +++ /dev/null @@ -1,33 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreTIFF -===================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreTIFF - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreTIFF.__init__ - ~FileStoreTIFF.collect_asset_docs - ~FileStoreTIFF.describe - ~FileStoreTIFF.generate_datum - ~FileStoreTIFF.get_frames_per_point - ~FileStoreTIFF.make_filename - ~FileStoreTIFF.pause - ~FileStoreTIFF.read - ~FileStoreTIFF.resume - ~FileStoreTIFF.stage - ~FileStoreTIFF.trigger - ~FileStoreTIFF.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt deleted file mode 100644 index fa130b2608..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFIterativeWrite.rst.txt +++ /dev/null @@ -1,33 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreTIFFIterativeWrite -=================================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreTIFFIterativeWrite - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreTIFFIterativeWrite.__init__ - ~FileStoreTIFFIterativeWrite.collect_asset_docs - ~FileStoreTIFFIterativeWrite.describe - ~FileStoreTIFFIterativeWrite.generate_datum - ~FileStoreTIFFIterativeWrite.get_frames_per_point - ~FileStoreTIFFIterativeWrite.make_filename - ~FileStoreTIFFIterativeWrite.pause - ~FileStoreTIFFIterativeWrite.read - ~FileStoreTIFFIterativeWrite.resume - ~FileStoreTIFFIterativeWrite.stage - ~FileStoreTIFFIterativeWrite.trigger - ~FileStoreTIFFIterativeWrite.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt deleted file mode 100644 index 94e9f64a4c..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.FileStoreTIFFSquashing.rst.txt +++ /dev/null @@ -1,33 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins\.FileStoreTIFFSquashing -============================================================== - -.. currentmodule:: ophyd.areadetector.filestore_mixins - -.. autoclass:: FileStoreTIFFSquashing - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FileStoreTIFFSquashing.__init__ - ~FileStoreTIFFSquashing.collect_asset_docs - ~FileStoreTIFFSquashing.describe - ~FileStoreTIFFSquashing.generate_datum - ~FileStoreTIFFSquashing.get_frames_per_point - ~FileStoreTIFFSquashing.make_filename - ~FileStoreTIFFSquashing.pause - ~FileStoreTIFFSquashing.read - ~FileStoreTIFFSquashing.resume - ~FileStoreTIFFSquashing.stage - ~FileStoreTIFFSquashing.trigger - ~FileStoreTIFFSquashing.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.rst.txt deleted file mode 100644 index 03b17f329e..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.filestore_mixins.rst.txt +++ /dev/null @@ -1,39 +0,0 @@ -ophyd\.areadetector\.filestore\_mixins -====================================== - -.. automodule:: ophyd.areadetector.filestore_mixins - - - - .. rubric:: Functions - - .. autosummary:: - - new_short_uid - new_uid - resource_factory - - - - - - .. rubric:: Classes - - .. autosummary:: - - FileStoreBase - FileStoreHDF5 - FileStoreHDF5IterativeWrite - FileStoreHDF5Single - FileStoreHDF5SingleIterativeWrite - FileStoreIterativeWrite - FileStorePluginBase - FileStoreTIFF - FileStoreTIFFIterativeWrite - FileStoreTIFFSquashing - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt deleted file mode 100644 index 25c106f78b..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.ColorConvPlugin.rst.txt +++ /dev/null @@ -1,61 +0,0 @@ -ophyd\.areadetector\.plugins\.ColorConvPlugin -============================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ColorConvPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ColorConvPlugin.__init__ - ~ColorConvPlugin.add_instantiation_callback - ~ColorConvPlugin.check_value - ~ColorConvPlugin.clear_sub - ~ColorConvPlugin.configure - ~ColorConvPlugin.describe - ~ColorConvPlugin.describe_configuration - ~ColorConvPlugin.destroy - ~ColorConvPlugin.disable_on_stage - ~ColorConvPlugin.enable_on_stage - ~ColorConvPlugin.ensure_blocking - ~ColorConvPlugin.ensure_nonblocking - ~ColorConvPlugin.find_signal - ~ColorConvPlugin.get - ~ColorConvPlugin.get_asyn_digraph - ~ColorConvPlugin.get_asyn_port_dictionary - ~ColorConvPlugin.get_device_tuple - ~ColorConvPlugin.get_instantiated_signals - ~ColorConvPlugin.get_plugin_by_asyn_port - ~ColorConvPlugin.missing_plugins - ~ColorConvPlugin.pause - ~ColorConvPlugin.put - ~ColorConvPlugin.read - ~ColorConvPlugin.read_configuration - ~ColorConvPlugin.resume - ~ColorConvPlugin.stage - ~ColorConvPlugin.stop - ~ColorConvPlugin.subscribe - ~ColorConvPlugin.summary - ~ColorConvPlugin.trigger - ~ColorConvPlugin.unstage - ~ColorConvPlugin.unsubscribe - ~ColorConvPlugin.unsubscribe_all - ~ColorConvPlugin.validate_asyn_ports - ~ColorConvPlugin.visualize_asyn_digraph - ~ColorConvPlugin.wait_for_connection - ~ColorConvPlugin.walk_components - ~ColorConvPlugin.walk_signals - ~ColorConvPlugin.walk_subdevice_classes - ~ColorConvPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.FilePlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.FilePlugin.rst.txt deleted file mode 100644 index 8f8fa43b16..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.FilePlugin.rst.txt +++ /dev/null @@ -1,62 +0,0 @@ -ophyd\.areadetector\.plugins\.FilePlugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: FilePlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FilePlugin.__init__ - ~FilePlugin.add_instantiation_callback - ~FilePlugin.check_value - ~FilePlugin.clear_sub - ~FilePlugin.configure - ~FilePlugin.describe - ~FilePlugin.describe_configuration - ~FilePlugin.destroy - ~FilePlugin.disable_on_stage - ~FilePlugin.enable_on_stage - ~FilePlugin.ensure_blocking - ~FilePlugin.ensure_nonblocking - ~FilePlugin.find_signal - ~FilePlugin.generate_datum - ~FilePlugin.get - ~FilePlugin.get_asyn_digraph - ~FilePlugin.get_asyn_port_dictionary - ~FilePlugin.get_device_tuple - ~FilePlugin.get_instantiated_signals - ~FilePlugin.get_plugin_by_asyn_port - ~FilePlugin.missing_plugins - ~FilePlugin.pause - ~FilePlugin.put - ~FilePlugin.read - ~FilePlugin.read_configuration - ~FilePlugin.resume - ~FilePlugin.stage - ~FilePlugin.stop - ~FilePlugin.subscribe - ~FilePlugin.summary - ~FilePlugin.trigger - ~FilePlugin.unstage - ~FilePlugin.unsubscribe - ~FilePlugin.unsubscribe_all - ~FilePlugin.validate_asyn_ports - ~FilePlugin.visualize_asyn_digraph - ~FilePlugin.wait_for_connection - ~FilePlugin.walk_components - ~FilePlugin.walk_signals - ~FilePlugin.walk_subdevice_classes - ~FilePlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.HDF5Plugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.HDF5Plugin.rst.txt deleted file mode 100644 index 029e00d52e..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.HDF5Plugin.rst.txt +++ /dev/null @@ -1,63 +0,0 @@ -ophyd\.areadetector\.plugins\.HDF5Plugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: HDF5Plugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~HDF5Plugin.__init__ - ~HDF5Plugin.add_instantiation_callback - ~HDF5Plugin.check_value - ~HDF5Plugin.clear_sub - ~HDF5Plugin.configure - ~HDF5Plugin.describe - ~HDF5Plugin.describe_configuration - ~HDF5Plugin.destroy - ~HDF5Plugin.disable_on_stage - ~HDF5Plugin.enable_on_stage - ~HDF5Plugin.ensure_blocking - ~HDF5Plugin.ensure_nonblocking - ~HDF5Plugin.find_signal - ~HDF5Plugin.generate_datum - ~HDF5Plugin.get - ~HDF5Plugin.get_asyn_digraph - ~HDF5Plugin.get_asyn_port_dictionary - ~HDF5Plugin.get_device_tuple - ~HDF5Plugin.get_instantiated_signals - ~HDF5Plugin.get_plugin_by_asyn_port - ~HDF5Plugin.missing_plugins - ~HDF5Plugin.pause - ~HDF5Plugin.put - ~HDF5Plugin.read - ~HDF5Plugin.read_configuration - ~HDF5Plugin.resume - ~HDF5Plugin.stage - ~HDF5Plugin.stop - ~HDF5Plugin.subscribe - ~HDF5Plugin.summary - ~HDF5Plugin.trigger - ~HDF5Plugin.unstage - ~HDF5Plugin.unsubscribe - ~HDF5Plugin.unsubscribe_all - ~HDF5Plugin.validate_asyn_ports - ~HDF5Plugin.visualize_asyn_digraph - ~HDF5Plugin.wait_for_connection - ~HDF5Plugin.walk_components - ~HDF5Plugin.walk_signals - ~HDF5Plugin.walk_subdevice_classes - ~HDF5Plugin.walk_subdevices - ~HDF5Plugin.warmup - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.ImagePlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.ImagePlugin.rst.txt deleted file mode 100644 index 713e32c4bf..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.ImagePlugin.rst.txt +++ /dev/null @@ -1,61 +0,0 @@ -ophyd\.areadetector\.plugins\.ImagePlugin -========================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ImagePlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ImagePlugin.__init__ - ~ImagePlugin.add_instantiation_callback - ~ImagePlugin.check_value - ~ImagePlugin.clear_sub - ~ImagePlugin.configure - ~ImagePlugin.describe - ~ImagePlugin.describe_configuration - ~ImagePlugin.destroy - ~ImagePlugin.disable_on_stage - ~ImagePlugin.enable_on_stage - ~ImagePlugin.ensure_blocking - ~ImagePlugin.ensure_nonblocking - ~ImagePlugin.find_signal - ~ImagePlugin.get - ~ImagePlugin.get_asyn_digraph - ~ImagePlugin.get_asyn_port_dictionary - ~ImagePlugin.get_device_tuple - ~ImagePlugin.get_instantiated_signals - ~ImagePlugin.get_plugin_by_asyn_port - ~ImagePlugin.missing_plugins - ~ImagePlugin.pause - ~ImagePlugin.put - ~ImagePlugin.read - ~ImagePlugin.read_configuration - ~ImagePlugin.resume - ~ImagePlugin.stage - ~ImagePlugin.stop - ~ImagePlugin.subscribe - ~ImagePlugin.summary - ~ImagePlugin.trigger - ~ImagePlugin.unstage - ~ImagePlugin.unsubscribe - ~ImagePlugin.unsubscribe_all - ~ImagePlugin.validate_asyn_ports - ~ImagePlugin.visualize_asyn_digraph - ~ImagePlugin.wait_for_connection - ~ImagePlugin.walk_components - ~ImagePlugin.walk_signals - ~ImagePlugin.walk_subdevice_classes - ~ImagePlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.JPEGPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.JPEGPlugin.rst.txt deleted file mode 100644 index 4877093e84..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.JPEGPlugin.rst.txt +++ /dev/null @@ -1,62 +0,0 @@ -ophyd\.areadetector\.plugins\.JPEGPlugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: JPEGPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~JPEGPlugin.__init__ - ~JPEGPlugin.add_instantiation_callback - ~JPEGPlugin.check_value - ~JPEGPlugin.clear_sub - ~JPEGPlugin.configure - ~JPEGPlugin.describe - ~JPEGPlugin.describe_configuration - ~JPEGPlugin.destroy - ~JPEGPlugin.disable_on_stage - ~JPEGPlugin.enable_on_stage - ~JPEGPlugin.ensure_blocking - ~JPEGPlugin.ensure_nonblocking - ~JPEGPlugin.find_signal - ~JPEGPlugin.generate_datum - ~JPEGPlugin.get - ~JPEGPlugin.get_asyn_digraph - ~JPEGPlugin.get_asyn_port_dictionary - ~JPEGPlugin.get_device_tuple - ~JPEGPlugin.get_instantiated_signals - ~JPEGPlugin.get_plugin_by_asyn_port - ~JPEGPlugin.missing_plugins - ~JPEGPlugin.pause - ~JPEGPlugin.put - ~JPEGPlugin.read - ~JPEGPlugin.read_configuration - ~JPEGPlugin.resume - ~JPEGPlugin.stage - ~JPEGPlugin.stop - ~JPEGPlugin.subscribe - ~JPEGPlugin.summary - ~JPEGPlugin.trigger - ~JPEGPlugin.unstage - ~JPEGPlugin.unsubscribe - ~JPEGPlugin.unsubscribe_all - ~JPEGPlugin.validate_asyn_ports - ~JPEGPlugin.visualize_asyn_digraph - ~JPEGPlugin.wait_for_connection - ~JPEGPlugin.walk_components - ~JPEGPlugin.walk_signals - ~JPEGPlugin.walk_subdevice_classes - ~JPEGPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.MagickPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.MagickPlugin.rst.txt deleted file mode 100644 index 5b77c4c4be..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.MagickPlugin.rst.txt +++ /dev/null @@ -1,62 +0,0 @@ -ophyd\.areadetector\.plugins\.MagickPlugin -========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: MagickPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MagickPlugin.__init__ - ~MagickPlugin.add_instantiation_callback - ~MagickPlugin.check_value - ~MagickPlugin.clear_sub - ~MagickPlugin.configure - ~MagickPlugin.describe - ~MagickPlugin.describe_configuration - ~MagickPlugin.destroy - ~MagickPlugin.disable_on_stage - ~MagickPlugin.enable_on_stage - ~MagickPlugin.ensure_blocking - ~MagickPlugin.ensure_nonblocking - ~MagickPlugin.find_signal - ~MagickPlugin.generate_datum - ~MagickPlugin.get - ~MagickPlugin.get_asyn_digraph - ~MagickPlugin.get_asyn_port_dictionary - ~MagickPlugin.get_device_tuple - ~MagickPlugin.get_instantiated_signals - ~MagickPlugin.get_plugin_by_asyn_port - ~MagickPlugin.missing_plugins - ~MagickPlugin.pause - ~MagickPlugin.put - ~MagickPlugin.read - ~MagickPlugin.read_configuration - ~MagickPlugin.resume - ~MagickPlugin.stage - ~MagickPlugin.stop - ~MagickPlugin.subscribe - ~MagickPlugin.summary - ~MagickPlugin.trigger - ~MagickPlugin.unstage - ~MagickPlugin.unsubscribe - ~MagickPlugin.unsubscribe_all - ~MagickPlugin.validate_asyn_ports - ~MagickPlugin.visualize_asyn_digraph - ~MagickPlugin.wait_for_connection - ~MagickPlugin.walk_components - ~MagickPlugin.walk_signals - ~MagickPlugin.walk_subdevice_classes - ~MagickPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt deleted file mode 100644 index 2e89689580..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.NetCDFPlugin.rst.txt +++ /dev/null @@ -1,62 +0,0 @@ -ophyd\.areadetector\.plugins\.NetCDFPlugin -========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: NetCDFPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~NetCDFPlugin.__init__ - ~NetCDFPlugin.add_instantiation_callback - ~NetCDFPlugin.check_value - ~NetCDFPlugin.clear_sub - ~NetCDFPlugin.configure - ~NetCDFPlugin.describe - ~NetCDFPlugin.describe_configuration - ~NetCDFPlugin.destroy - ~NetCDFPlugin.disable_on_stage - ~NetCDFPlugin.enable_on_stage - ~NetCDFPlugin.ensure_blocking - ~NetCDFPlugin.ensure_nonblocking - ~NetCDFPlugin.find_signal - ~NetCDFPlugin.generate_datum - ~NetCDFPlugin.get - ~NetCDFPlugin.get_asyn_digraph - ~NetCDFPlugin.get_asyn_port_dictionary - ~NetCDFPlugin.get_device_tuple - ~NetCDFPlugin.get_instantiated_signals - ~NetCDFPlugin.get_plugin_by_asyn_port - ~NetCDFPlugin.missing_plugins - ~NetCDFPlugin.pause - ~NetCDFPlugin.put - ~NetCDFPlugin.read - ~NetCDFPlugin.read_configuration - ~NetCDFPlugin.resume - ~NetCDFPlugin.stage - ~NetCDFPlugin.stop - ~NetCDFPlugin.subscribe - ~NetCDFPlugin.summary - ~NetCDFPlugin.trigger - ~NetCDFPlugin.unstage - ~NetCDFPlugin.unsubscribe - ~NetCDFPlugin.unsubscribe_all - ~NetCDFPlugin.validate_asyn_ports - ~NetCDFPlugin.visualize_asyn_digraph - ~NetCDFPlugin.wait_for_connection - ~NetCDFPlugin.walk_components - ~NetCDFPlugin.walk_signals - ~NetCDFPlugin.walk_subdevice_classes - ~NetCDFPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.NexusPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.NexusPlugin.rst.txt deleted file mode 100644 index 353f3e7541..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.NexusPlugin.rst.txt +++ /dev/null @@ -1,62 +0,0 @@ -ophyd\.areadetector\.plugins\.NexusPlugin -========================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: NexusPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~NexusPlugin.__init__ - ~NexusPlugin.add_instantiation_callback - ~NexusPlugin.check_value - ~NexusPlugin.clear_sub - ~NexusPlugin.configure - ~NexusPlugin.describe - ~NexusPlugin.describe_configuration - ~NexusPlugin.destroy - ~NexusPlugin.disable_on_stage - ~NexusPlugin.enable_on_stage - ~NexusPlugin.ensure_blocking - ~NexusPlugin.ensure_nonblocking - ~NexusPlugin.find_signal - ~NexusPlugin.generate_datum - ~NexusPlugin.get - ~NexusPlugin.get_asyn_digraph - ~NexusPlugin.get_asyn_port_dictionary - ~NexusPlugin.get_device_tuple - ~NexusPlugin.get_instantiated_signals - ~NexusPlugin.get_plugin_by_asyn_port - ~NexusPlugin.missing_plugins - ~NexusPlugin.pause - ~NexusPlugin.put - ~NexusPlugin.read - ~NexusPlugin.read_configuration - ~NexusPlugin.resume - ~NexusPlugin.stage - ~NexusPlugin.stop - ~NexusPlugin.subscribe - ~NexusPlugin.summary - ~NexusPlugin.trigger - ~NexusPlugin.unstage - ~NexusPlugin.unsubscribe - ~NexusPlugin.unsubscribe_all - ~NexusPlugin.validate_asyn_ports - ~NexusPlugin.visualize_asyn_digraph - ~NexusPlugin.wait_for_connection - ~NexusPlugin.walk_components - ~NexusPlugin.walk_signals - ~NexusPlugin.walk_subdevice_classes - ~NexusPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.OverlayPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.OverlayPlugin.rst.txt deleted file mode 100644 index 2b72620c01..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.OverlayPlugin.rst.txt +++ /dev/null @@ -1,61 +0,0 @@ -ophyd\.areadetector\.plugins\.OverlayPlugin -=========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: OverlayPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~OverlayPlugin.__init__ - ~OverlayPlugin.add_instantiation_callback - ~OverlayPlugin.check_value - ~OverlayPlugin.clear_sub - ~OverlayPlugin.configure - ~OverlayPlugin.describe - ~OverlayPlugin.describe_configuration - ~OverlayPlugin.destroy - ~OverlayPlugin.disable_on_stage - ~OverlayPlugin.enable_on_stage - ~OverlayPlugin.ensure_blocking - ~OverlayPlugin.ensure_nonblocking - ~OverlayPlugin.find_signal - ~OverlayPlugin.get - ~OverlayPlugin.get_asyn_digraph - ~OverlayPlugin.get_asyn_port_dictionary - ~OverlayPlugin.get_device_tuple - ~OverlayPlugin.get_instantiated_signals - ~OverlayPlugin.get_plugin_by_asyn_port - ~OverlayPlugin.missing_plugins - ~OverlayPlugin.pause - ~OverlayPlugin.put - ~OverlayPlugin.read - ~OverlayPlugin.read_configuration - ~OverlayPlugin.resume - ~OverlayPlugin.stage - ~OverlayPlugin.stop - ~OverlayPlugin.subscribe - ~OverlayPlugin.summary - ~OverlayPlugin.trigger - ~OverlayPlugin.unstage - ~OverlayPlugin.unsubscribe - ~OverlayPlugin.unsubscribe_all - ~OverlayPlugin.validate_asyn_ports - ~OverlayPlugin.visualize_asyn_digraph - ~OverlayPlugin.wait_for_connection - ~OverlayPlugin.walk_components - ~OverlayPlugin.walk_signals - ~OverlayPlugin.walk_subdevice_classes - ~OverlayPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.PluginBase.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.PluginBase.rst.txt deleted file mode 100644 index 8c3955489d..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.PluginBase.rst.txt +++ /dev/null @@ -1,61 +0,0 @@ -ophyd\.areadetector\.plugins\.PluginBase -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: PluginBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~PluginBase.__init__ - ~PluginBase.add_instantiation_callback - ~PluginBase.check_value - ~PluginBase.clear_sub - ~PluginBase.configure - ~PluginBase.describe - ~PluginBase.describe_configuration - ~PluginBase.destroy - ~PluginBase.disable_on_stage - ~PluginBase.enable_on_stage - ~PluginBase.ensure_blocking - ~PluginBase.ensure_nonblocking - ~PluginBase.find_signal - ~PluginBase.get - ~PluginBase.get_asyn_digraph - ~PluginBase.get_asyn_port_dictionary - ~PluginBase.get_device_tuple - ~PluginBase.get_instantiated_signals - ~PluginBase.get_plugin_by_asyn_port - ~PluginBase.missing_plugins - ~PluginBase.pause - ~PluginBase.put - ~PluginBase.read - ~PluginBase.read_configuration - ~PluginBase.resume - ~PluginBase.stage - ~PluginBase.stop - ~PluginBase.subscribe - ~PluginBase.summary - ~PluginBase.trigger - ~PluginBase.unstage - ~PluginBase.unsubscribe - ~PluginBase.unsubscribe_all - ~PluginBase.validate_asyn_ports - ~PluginBase.visualize_asyn_digraph - ~PluginBase.wait_for_connection - ~PluginBase.walk_components - ~PluginBase.walk_signals - ~PluginBase.walk_subdevice_classes - ~PluginBase.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.ProcessPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.ProcessPlugin.rst.txt deleted file mode 100644 index eae3372933..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.ProcessPlugin.rst.txt +++ /dev/null @@ -1,61 +0,0 @@ -ophyd\.areadetector\.plugins\.ProcessPlugin -=========================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ProcessPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ProcessPlugin.__init__ - ~ProcessPlugin.add_instantiation_callback - ~ProcessPlugin.check_value - ~ProcessPlugin.clear_sub - ~ProcessPlugin.configure - ~ProcessPlugin.describe - ~ProcessPlugin.describe_configuration - ~ProcessPlugin.destroy - ~ProcessPlugin.disable_on_stage - ~ProcessPlugin.enable_on_stage - ~ProcessPlugin.ensure_blocking - ~ProcessPlugin.ensure_nonblocking - ~ProcessPlugin.find_signal - ~ProcessPlugin.get - ~ProcessPlugin.get_asyn_digraph - ~ProcessPlugin.get_asyn_port_dictionary - ~ProcessPlugin.get_device_tuple - ~ProcessPlugin.get_instantiated_signals - ~ProcessPlugin.get_plugin_by_asyn_port - ~ProcessPlugin.missing_plugins - ~ProcessPlugin.pause - ~ProcessPlugin.put - ~ProcessPlugin.read - ~ProcessPlugin.read_configuration - ~ProcessPlugin.resume - ~ProcessPlugin.stage - ~ProcessPlugin.stop - ~ProcessPlugin.subscribe - ~ProcessPlugin.summary - ~ProcessPlugin.trigger - ~ProcessPlugin.unstage - ~ProcessPlugin.unsubscribe - ~ProcessPlugin.unsubscribe_all - ~ProcessPlugin.validate_asyn_ports - ~ProcessPlugin.visualize_asyn_digraph - ~ProcessPlugin.wait_for_connection - ~ProcessPlugin.walk_components - ~ProcessPlugin.walk_signals - ~ProcessPlugin.walk_subdevice_classes - ~ProcessPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.ROIPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.ROIPlugin.rst.txt deleted file mode 100644 index a258227921..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.ROIPlugin.rst.txt +++ /dev/null @@ -1,62 +0,0 @@ -ophyd\.areadetector\.plugins\.ROIPlugin -======================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: ROIPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~ROIPlugin.__init__ - ~ROIPlugin.add_instantiation_callback - ~ROIPlugin.check_value - ~ROIPlugin.clear_sub - ~ROIPlugin.configure - ~ROIPlugin.describe - ~ROIPlugin.describe_configuration - ~ROIPlugin.destroy - ~ROIPlugin.disable_on_stage - ~ROIPlugin.enable_on_stage - ~ROIPlugin.ensure_blocking - ~ROIPlugin.ensure_nonblocking - ~ROIPlugin.find_signal - ~ROIPlugin.get - ~ROIPlugin.get_asyn_digraph - ~ROIPlugin.get_asyn_port_dictionary - ~ROIPlugin.get_device_tuple - ~ROIPlugin.get_instantiated_signals - ~ROIPlugin.get_plugin_by_asyn_port - ~ROIPlugin.missing_plugins - ~ROIPlugin.pause - ~ROIPlugin.put - ~ROIPlugin.read - ~ROIPlugin.read_configuration - ~ROIPlugin.resume - ~ROIPlugin.set - ~ROIPlugin.stage - ~ROIPlugin.stop - ~ROIPlugin.subscribe - ~ROIPlugin.summary - ~ROIPlugin.trigger - ~ROIPlugin.unstage - ~ROIPlugin.unsubscribe - ~ROIPlugin.unsubscribe_all - ~ROIPlugin.validate_asyn_ports - ~ROIPlugin.visualize_asyn_digraph - ~ROIPlugin.wait_for_connection - ~ROIPlugin.walk_components - ~ROIPlugin.walk_signals - ~ROIPlugin.walk_subdevice_classes - ~ROIPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.StatsPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.StatsPlugin.rst.txt deleted file mode 100644 index 9533d56e8d..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.StatsPlugin.rst.txt +++ /dev/null @@ -1,61 +0,0 @@ -ophyd\.areadetector\.plugins\.StatsPlugin -========================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: StatsPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~StatsPlugin.__init__ - ~StatsPlugin.add_instantiation_callback - ~StatsPlugin.check_value - ~StatsPlugin.clear_sub - ~StatsPlugin.configure - ~StatsPlugin.describe - ~StatsPlugin.describe_configuration - ~StatsPlugin.destroy - ~StatsPlugin.disable_on_stage - ~StatsPlugin.enable_on_stage - ~StatsPlugin.ensure_blocking - ~StatsPlugin.ensure_nonblocking - ~StatsPlugin.find_signal - ~StatsPlugin.get - ~StatsPlugin.get_asyn_digraph - ~StatsPlugin.get_asyn_port_dictionary - ~StatsPlugin.get_device_tuple - ~StatsPlugin.get_instantiated_signals - ~StatsPlugin.get_plugin_by_asyn_port - ~StatsPlugin.missing_plugins - ~StatsPlugin.pause - ~StatsPlugin.put - ~StatsPlugin.read - ~StatsPlugin.read_configuration - ~StatsPlugin.resume - ~StatsPlugin.stage - ~StatsPlugin.stop - ~StatsPlugin.subscribe - ~StatsPlugin.summary - ~StatsPlugin.trigger - ~StatsPlugin.unstage - ~StatsPlugin.unsubscribe - ~StatsPlugin.unsubscribe_all - ~StatsPlugin.validate_asyn_ports - ~StatsPlugin.visualize_asyn_digraph - ~StatsPlugin.wait_for_connection - ~StatsPlugin.walk_components - ~StatsPlugin.walk_signals - ~StatsPlugin.walk_subdevice_classes - ~StatsPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.TIFFPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.TIFFPlugin.rst.txt deleted file mode 100644 index 96995b11f6..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.TIFFPlugin.rst.txt +++ /dev/null @@ -1,62 +0,0 @@ -ophyd\.areadetector\.plugins\.TIFFPlugin -======================================== - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: TIFFPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~TIFFPlugin.__init__ - ~TIFFPlugin.add_instantiation_callback - ~TIFFPlugin.check_value - ~TIFFPlugin.clear_sub - ~TIFFPlugin.configure - ~TIFFPlugin.describe - ~TIFFPlugin.describe_configuration - ~TIFFPlugin.destroy - ~TIFFPlugin.disable_on_stage - ~TIFFPlugin.enable_on_stage - ~TIFFPlugin.ensure_blocking - ~TIFFPlugin.ensure_nonblocking - ~TIFFPlugin.find_signal - ~TIFFPlugin.generate_datum - ~TIFFPlugin.get - ~TIFFPlugin.get_asyn_digraph - ~TIFFPlugin.get_asyn_port_dictionary - ~TIFFPlugin.get_device_tuple - ~TIFFPlugin.get_instantiated_signals - ~TIFFPlugin.get_plugin_by_asyn_port - ~TIFFPlugin.missing_plugins - ~TIFFPlugin.pause - ~TIFFPlugin.put - ~TIFFPlugin.read - ~TIFFPlugin.read_configuration - ~TIFFPlugin.resume - ~TIFFPlugin.stage - ~TIFFPlugin.stop - ~TIFFPlugin.subscribe - ~TIFFPlugin.summary - ~TIFFPlugin.trigger - ~TIFFPlugin.unstage - ~TIFFPlugin.unsubscribe - ~TIFFPlugin.unsubscribe_all - ~TIFFPlugin.validate_asyn_ports - ~TIFFPlugin.visualize_asyn_digraph - ~TIFFPlugin.wait_for_connection - ~TIFFPlugin.walk_components - ~TIFFPlugin.walk_signals - ~TIFFPlugin.walk_subdevice_classes - ~TIFFPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.TransformPlugin.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.TransformPlugin.rst.txt deleted file mode 100644 index d1704b4be5..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.TransformPlugin.rst.txt +++ /dev/null @@ -1,61 +0,0 @@ -ophyd\.areadetector\.plugins\.TransformPlugin -============================================= - -.. currentmodule:: ophyd.areadetector.plugins - -.. autoclass:: TransformPlugin - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~TransformPlugin.__init__ - ~TransformPlugin.add_instantiation_callback - ~TransformPlugin.check_value - ~TransformPlugin.clear_sub - ~TransformPlugin.configure - ~TransformPlugin.describe - ~TransformPlugin.describe_configuration - ~TransformPlugin.destroy - ~TransformPlugin.disable_on_stage - ~TransformPlugin.enable_on_stage - ~TransformPlugin.ensure_blocking - ~TransformPlugin.ensure_nonblocking - ~TransformPlugin.find_signal - ~TransformPlugin.get - ~TransformPlugin.get_asyn_digraph - ~TransformPlugin.get_asyn_port_dictionary - ~TransformPlugin.get_device_tuple - ~TransformPlugin.get_instantiated_signals - ~TransformPlugin.get_plugin_by_asyn_port - ~TransformPlugin.missing_plugins - ~TransformPlugin.pause - ~TransformPlugin.put - ~TransformPlugin.read - ~TransformPlugin.read_configuration - ~TransformPlugin.resume - ~TransformPlugin.stage - ~TransformPlugin.stop - ~TransformPlugin.subscribe - ~TransformPlugin.summary - ~TransformPlugin.trigger - ~TransformPlugin.unstage - ~TransformPlugin.unsubscribe - ~TransformPlugin.unsubscribe_all - ~TransformPlugin.validate_asyn_ports - ~TransformPlugin.visualize_asyn_digraph - ~TransformPlugin.wait_for_connection - ~TransformPlugin.walk_components - ~TransformPlugin.walk_signals - ~TransformPlugin.walk_subdevice_classes - ~TransformPlugin.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.plugins.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.plugins.rst.txt deleted file mode 100644 index baa75f7ce2..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.plugins.rst.txt +++ /dev/null @@ -1,235 +0,0 @@ -ophyd\.areadetector\.plugins -============================ - -.. automodule:: ophyd.areadetector.plugins - - - - .. rubric:: Functions - - .. autosummary:: - - get_areadetector_plugin - get_areadetector_plugin_class - plugin_from_pvname - register_plugin - - - - - - .. rubric:: Classes - - .. autosummary:: - - AttrPlotPlugin - AttrPlotPlugin_V31 - AttrPlotPlugin_V33 - AttrPlotPlugin_V34 - AttributeNPlugin - AttributeNPlugin_V22 - AttributeNPlugin_V26 - AttributePlugin - AttributePlugin_V20 - AttributePlugin_V22 - AttributePlugin_V25 - AttributePlugin_V26 - AttributePlugin_V31 - AttributePlugin_V33 - AttributePlugin_V34 - CircularBuffPlugin - CircularBuffPlugin_V22 - CircularBuffPlugin_V25 - CircularBuffPlugin_V26 - CircularBuffPlugin_V31 - CircularBuffPlugin_V33 - CircularBuffPlugin_V34 - CodecPlugin - CodecPlugin_V34 - ColorConvPlugin - ColorConvPlugin_V20 - ColorConvPlugin_V22 - ColorConvPlugin_V25 - ColorConvPlugin_V26 - ColorConvPlugin_V31 - ColorConvPlugin_V33 - ColorConvPlugin_V34 - FFTPlugin - FFTPlugin_V25 - FFTPlugin_V26 - FFTPlugin_V31 - FFTPlugin_V33 - FFTPlugin_V34 - FileBase - FilePlugin - FilePlugin_V20 - FilePlugin_V21 - FilePlugin_V22 - FilePlugin_V25 - FilePlugin_V26 - FilePlugin_V31 - FilePlugin_V33 - FilePlugin_V34 - GatherNPlugin - GatherNPlugin_V31 - GatherPlugin - HDF5Plugin - HDF5Plugin_V20 - HDF5Plugin_V21 - HDF5Plugin_V22 - HDF5Plugin_V25 - HDF5Plugin_V26 - HDF5Plugin_V31 - HDF5Plugin_V32 - HDF5Plugin_V33 - HDF5Plugin_V34 - ImagePlugin - ImagePlugin_V20 - ImagePlugin_V22 - ImagePlugin_V25 - ImagePlugin_V26 - ImagePlugin_V31 - ImagePlugin_V33 - ImagePlugin_V34 - JPEGPlugin - JPEGPlugin_V20 - JPEGPlugin_V21 - JPEGPlugin_V22 - JPEGPlugin_V25 - JPEGPlugin_V26 - JPEGPlugin_V31 - JPEGPlugin_V33 - JPEGPlugin_V34 - MagickPlugin - MagickPlugin_V20 - MagickPlugin_V21 - MagickPlugin_V22 - MagickPlugin_V25 - MagickPlugin_V26 - MagickPlugin_V31 - MagickPlugin_V33 - MagickPlugin_V34 - NetCDFPlugin - NetCDFPlugin_V20 - NetCDFPlugin_V21 - NetCDFPlugin_V22 - NetCDFPlugin_V25 - NetCDFPlugin_V26 - NetCDFPlugin_V31 - NetCDFPlugin_V33 - NetCDFPlugin_V34 - NexusPlugin - NexusPlugin_V20 - NexusPlugin_V21 - NexusPlugin_V22 - NexusPlugin_V25 - NexusPlugin_V26 - NexusPlugin_V31 - NexusPlugin_V33 - NexusPlugin_V34 - Overlay - OverlayPlugin - OverlayPlugin_V20 - OverlayPlugin_V22 - OverlayPlugin_V25 - OverlayPlugin_V26 - OverlayPlugin_V31 - OverlayPlugin_V33 - OverlayPlugin_V34 - Overlay_V21 - Overlay_V26 - Overlay_V31 - PluginBase - PluginBase_V20 - PluginBase_V22 - PluginBase_V25 - PluginBase_V26 - PluginBase_V31 - PluginBase_V33 - PluginBase_V34 - PosPlugin - PosPluginPlugin_V25 - PosPluginPlugin_V26 - PosPluginPlugin_V31 - PosPluginPlugin_V33 - PosPluginPlugin_V34 - ProcessPlugin - ProcessPlugin_V20 - ProcessPlugin_V22 - ProcessPlugin_V25 - ProcessPlugin_V26 - ProcessPlugin_V31 - ProcessPlugin_V33 - ProcessPlugin_V34 - PvaPlugin - PvaPlugin_V25 - PvaPlugin_V26 - PvaPlugin_V31 - PvaPlugin_V33 - PvaPlugin_V34 - ROIPlugin - ROIPlugin_V20 - ROIPlugin_V22 - ROIPlugin_V25 - ROIPlugin_V26 - ROIPlugin_V31 - ROIPlugin_V33 - ROIPlugin_V34 - ROIStatNPlugin - ROIStatNPlugin_V22 - ROIStatNPlugin_V23 - ROIStatNPlugin_V25 - ROIStatPlugin - ROIStatPlugin_V22 - ROIStatPlugin_V23 - ROIStatPlugin_V25 - ROIStatPlugin_V26 - ROIStatPlugin_V31 - ROIStatPlugin_V33 - ROIStatPlugin_V34 - ScatterPlugin - ScatterPlugin_V31 - ScatterPlugin_V32 - ScatterPlugin_V33 - ScatterPlugin_V34 - StatsPlugin - StatsPlugin_V20 - StatsPlugin_V22 - StatsPlugin_V25 - StatsPlugin_V26 - StatsPlugin_V31 - StatsPlugin_V32 - StatsPlugin_V33 - StatsPlugin_V34 - TIFFPlugin - TIFFPlugin_V20 - TIFFPlugin_V21 - TIFFPlugin_V22 - TIFFPlugin_V25 - TIFFPlugin_V26 - TIFFPlugin_V31 - TIFFPlugin_V33 - TIFFPlugin_V34 - TimeSeriesNPlugin - TimeSeriesNPlugin_V25 - TimeSeriesPlugin - TimeSeriesPlugin_V25 - TimeSeriesPlugin_V26 - TimeSeriesPlugin_V31 - TimeSeriesPlugin_V33 - TimeSeriesPlugin_V34 - TransformPlugin - TransformPlugin_V20 - TransformPlugin_V21 - TransformPlugin_V22 - TransformPlugin_V25 - TransformPlugin_V26 - TransformPlugin_V31 - TransformPlugin_V33 - TransformPlugin_V34 - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.rst.txt deleted file mode 100644 index da097ef50e..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.rst.txt +++ /dev/null @@ -1,16 +0,0 @@ -ophyd\.areadetector -=================== - -.. automodule:: ophyd.areadetector - - - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt deleted file mode 100644 index 2d55b421b8..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.MultiTrigger.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins\.MultiTrigger -================================================== - -.. currentmodule:: ophyd.areadetector.trigger_mixins - -.. autoclass:: MultiTrigger - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~MultiTrigger.__init__ - ~MultiTrigger.describe - ~MultiTrigger.pause - ~MultiTrigger.read - ~MultiTrigger.resume - ~MultiTrigger.stage - ~MultiTrigger.trigger - ~MultiTrigger.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt deleted file mode 100644 index 1ef26c6fca..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.SingleTrigger.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins\.SingleTrigger -=================================================== - -.. currentmodule:: ophyd.areadetector.trigger_mixins - -.. autoclass:: SingleTrigger - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~SingleTrigger.__init__ - ~SingleTrigger.describe - ~SingleTrigger.pause - ~SingleTrigger.read - ~SingleTrigger.resume - ~SingleTrigger.stage - ~SingleTrigger.trigger - ~SingleTrigger.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt deleted file mode 100644 index ad45104a5b..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.TriggerBase.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins\.TriggerBase -================================================= - -.. currentmodule:: ophyd.areadetector.trigger_mixins - -.. autoclass:: TriggerBase - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~TriggerBase.__init__ - ~TriggerBase.describe - ~TriggerBase.pause - ~TriggerBase.read - ~TriggerBase.resume - ~TriggerBase.stage - ~TriggerBase.trigger - ~TriggerBase.unstage - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.rst.txt deleted file mode 100644 index edce5232e9..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.trigger_mixins.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.areadetector\.trigger\_mixins -==================================== - -.. automodule:: ophyd.areadetector.trigger_mixins - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - ADTriggerStatus - MultiTrigger - SingleTrigger - TriggerBase - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.areadetector.util.rst.txt b/ophyd/_sources/generated/ophyd.areadetector.util.rst.txt deleted file mode 100644 index 3009114c2f..0000000000 --- a/ophyd/_sources/generated/ophyd.areadetector.util.rst.txt +++ /dev/null @@ -1,31 +0,0 @@ -ophyd\.areadetector\.util -========================= - -.. automodule:: ophyd.areadetector.util - - - - .. rubric:: Functions - - .. autosummary:: - - create_detector_stub - get_prop_name - get_stub_info - stub_templates - - - - - - .. rubric:: Classes - - .. autosummary:: - - StubInfo - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.callbacks.rst.txt b/ophyd/_sources/generated/ophyd.callbacks.rst.txt deleted file mode 100644 index 08faa9b427..0000000000 --- a/ophyd/_sources/generated/ophyd.callbacks.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.callbacks -================ - -.. automodule:: ophyd.callbacks - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - LastUidPublish - UidPublish - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.get_all_positioners.rst.txt b/ophyd/_sources/generated/ophyd.commands.get_all_positioners.rst.txt deleted file mode 100644 index 0eb0ee7936..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.get_all_positioners.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.get_all_positioners -================================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: get_all_positioners \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.get_all_positioners.txt b/ophyd/_sources/generated/ophyd.commands.get_all_positioners.txt deleted file mode 100644 index 0eb0ee7936..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.get_all_positioners.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.get_all_positioners -================================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: get_all_positioners \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.get_logbook.rst.txt b/ophyd/_sources/generated/ophyd.commands.get_logbook.rst.txt deleted file mode 100644 index 777674a21e..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.get_logbook.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.get_logbook -========================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: get_logbook \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.get_logbook.txt b/ophyd/_sources/generated/ophyd.commands.get_logbook.txt deleted file mode 100644 index 777674a21e..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.get_logbook.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.get_logbook -========================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: get_logbook \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.log_pos.rst.txt b/ophyd/_sources/generated/ophyd.commands.log_pos.rst.txt deleted file mode 100644 index 55e4922a7e..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.log_pos.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.log_pos -====================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.log_pos.txt b/ophyd/_sources/generated/ophyd.commands.log_pos.txt deleted file mode 100644 index 55e4922a7e..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.log_pos.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.log_pos -====================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.log_pos_diff.rst.txt b/ophyd/_sources/generated/ophyd.commands.log_pos_diff.rst.txt deleted file mode 100644 index 301cf6199e..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.log_pos_diff.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.log_pos_diff -=========================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos_diff \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.log_pos_diff.txt b/ophyd/_sources/generated/ophyd.commands.log_pos_diff.txt deleted file mode 100644 index 301cf6199e..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.log_pos_diff.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.log_pos_diff -=========================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos_diff \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.log_pos_mov.rst.txt b/ophyd/_sources/generated/ophyd.commands.log_pos_mov.rst.txt deleted file mode 100644 index 5a66b9e8b6..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.log_pos_mov.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.log_pos_mov -========================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos_mov \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.log_pos_mov.txt b/ophyd/_sources/generated/ophyd.commands.log_pos_mov.txt deleted file mode 100644 index 5a66b9e8b6..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.log_pos_mov.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.log_pos_mov -========================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: log_pos_mov \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.mov.rst.txt b/ophyd/_sources/generated/ophyd.commands.mov.rst.txt deleted file mode 100644 index 9b993fecc7..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.mov.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.mov -================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: mov \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.mov.txt b/ophyd/_sources/generated/ophyd.commands.mov.txt deleted file mode 100644 index 9b993fecc7..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.mov.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.mov -================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: mov \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.movr.rst.txt b/ophyd/_sources/generated/ophyd.commands.movr.rst.txt deleted file mode 100644 index c733e844d9..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.movr.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.movr -=================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: movr \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.movr.txt b/ophyd/_sources/generated/ophyd.commands.movr.txt deleted file mode 100644 index c733e844d9..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.movr.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.movr -=================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: movr \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.set_lm.rst.txt b/ophyd/_sources/generated/ophyd.commands.set_lm.rst.txt deleted file mode 100644 index b447817526..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.set_lm.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.set_lm -===================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: set_lm \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.set_lm.txt b/ophyd/_sources/generated/ophyd.commands.set_lm.txt deleted file mode 100644 index b447817526..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.set_lm.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.set_lm -===================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: set_lm \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.set_pos.rst.txt b/ophyd/_sources/generated/ophyd.commands.set_pos.rst.txt deleted file mode 100644 index 1853d5e10d..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.set_pos.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.set_pos -====================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: set_pos \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.set_pos.txt b/ophyd/_sources/generated/ophyd.commands.set_pos.txt deleted file mode 100644 index 1853d5e10d..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.set_pos.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.set_pos -====================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: set_pos \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.wh_pos.rst.txt b/ophyd/_sources/generated/ophyd.commands.wh_pos.rst.txt deleted file mode 100644 index 99b8b2f365..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.wh_pos.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.wh_pos -===================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: wh_pos \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.commands.wh_pos.txt b/ophyd/_sources/generated/ophyd.commands.wh_pos.txt deleted file mode 100644 index 99b8b2f365..0000000000 --- a/ophyd/_sources/generated/ophyd.commands.wh_pos.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd.commands.wh_pos -===================== - -.. currentmodule:: ophyd.commands - -.. autofunction:: wh_pos \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.describe.rst.txt b/ophyd/_sources/generated/ophyd.device.BlueskyInterface.describe.rst.txt deleted file mode 100644 index 7fa40f90ba..0000000000 --- a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.describe.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.describe -========================================= - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.describe \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.pause.rst.txt b/ophyd/_sources/generated/ophyd.device.BlueskyInterface.pause.rst.txt deleted file mode 100644 index 080a91dbbe..0000000000 --- a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.pause.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.pause -====================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.pause \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.read.rst.txt b/ophyd/_sources/generated/ophyd.device.BlueskyInterface.read.rst.txt deleted file mode 100644 index 111739b74e..0000000000 --- a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.read.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.read -===================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.read \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.resume.rst.txt b/ophyd/_sources/generated/ophyd.device.BlueskyInterface.resume.rst.txt deleted file mode 100644 index 3493a0f105..0000000000 --- a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.resume.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.resume -======================================= - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.resume \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.stage.rst.txt b/ophyd/_sources/generated/ophyd.device.BlueskyInterface.stage.rst.txt deleted file mode 100644 index ca86cc2cdb..0000000000 --- a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.stage.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.stage -====================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.stage \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.trigger.rst.txt b/ophyd/_sources/generated/ophyd.device.BlueskyInterface.trigger.rst.txt deleted file mode 100644 index 9fbb0658e3..0000000000 --- a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.trigger.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.trigger -======================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.trigger \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.unstage.rst.txt b/ophyd/_sources/generated/ophyd.device.BlueskyInterface.unstage.rst.txt deleted file mode 100644 index e0b05b2818..0000000000 --- a/ophyd/_sources/generated/ophyd.device.BlueskyInterface.unstage.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.BlueskyInterface\.unstage -======================================== - -.. currentmodule:: ophyd.device - -.. automethod:: BlueskyInterface.unstage \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Component.rst.txt b/ophyd/_sources/generated/ophyd.device.Component.rst.txt deleted file mode 100644 index ca71f79e43..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Component.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.device\.Component -======================== - -.. currentmodule:: ophyd.device - -.. autoclass:: Component - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Component.__init__ - ~Component.create_component - ~Component.make_docstring - ~Component.maybe_add_prefix - ~Component.sub_default - ~Component.sub_meta - ~Component.sub_value - ~Component.subscriptions - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.configure.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.configure.rst.txt deleted file mode 100644 index b0ba0cee0a..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.configure.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.configure -================================ - -.. currentmodule:: ophyd.device - -.. automethod:: Device.configure \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.connected.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.connected.rst.txt deleted file mode 100644 index ec490c28ea..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.connected.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.connected -================================ - -.. currentmodule:: ophyd.device - -.. autoattribute:: Device.connected \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.describe_configuration.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.describe_configuration.rst.txt deleted file mode 100644 index 8756224724..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.describe_configuration.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.describe\_configuration -============================================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.describe_configuration \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.get.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.get.rst.txt deleted file mode 100644 index d5715b1c5d..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.get.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.get -========================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.get \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.get_device_tuple.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.get_device_tuple.rst.txt deleted file mode 100644 index 99f426235d..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.get_device_tuple.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.get\_device\_tuple -========================================= - -.. currentmodule:: ophyd.device - -.. automethod:: Device.get_device_tuple \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.get_instantiated_signals.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.get_instantiated_signals.rst.txt deleted file mode 100644 index 0a3bc41252..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.get_instantiated_signals.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.get\_instantiated\_signals -================================================= - -.. currentmodule:: ophyd.device - -.. automethod:: Device.get_instantiated_signals \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.put.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.put.rst.txt deleted file mode 100644 index 2540341a43..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.put.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.put -========================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.put \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.read_configuration.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.read_configuration.rst.txt deleted file mode 100644 index f476dcfb02..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.read_configuration.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.read\_configuration -========================================== - -.. currentmodule:: ophyd.device - -.. automethod:: Device.read_configuration \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.rst.txt deleted file mode 100644 index cb865601c9..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.rst.txt +++ /dev/null @@ -1,50 +0,0 @@ -ophyd\.device\.Device -===================== - -.. currentmodule:: ophyd.device - -.. autoclass:: Device - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~Device.__init__ - ~Device.add_instantiation_callback - ~Device.check_value - ~Device.clear_sub - ~Device.configure - ~Device.describe - ~Device.describe_configuration - ~Device.destroy - ~Device.get - ~Device.get_device_tuple - ~Device.get_instantiated_signals - ~Device.pause - ~Device.put - ~Device.read - ~Device.read_configuration - ~Device.resume - ~Device.stage - ~Device.stop - ~Device.subscribe - ~Device.summary - ~Device.trigger - ~Device.unstage - ~Device.unsubscribe - ~Device.unsubscribe_all - ~Device.wait_for_connection - ~Device.walk_components - ~Device.walk_signals - ~Device.walk_subdevice_classes - ~Device.walk_subdevices - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.Device.wait_for_connection.rst.txt b/ophyd/_sources/generated/ophyd.device.Device.wait_for_connection.rst.txt deleted file mode 100644 index ed71c55383..0000000000 --- a/ophyd/_sources/generated/ophyd.device.Device.wait_for_connection.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.device\.Device\.wait\_for\_connection -============================================ - -.. currentmodule:: ophyd.device - -.. automethod:: Device.wait_for_connection \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.DynamicDeviceComponent.rst.txt b/ophyd/_sources/generated/ophyd.device.DynamicDeviceComponent.rst.txt deleted file mode 100644 index 00545cc61b..0000000000 --- a/ophyd/_sources/generated/ophyd.device.DynamicDeviceComponent.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.device\.DynamicDeviceComponent -===================================== - -.. currentmodule:: ophyd.device - -.. autoclass:: DynamicDeviceComponent - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~DynamicDeviceComponent.__init__ - ~DynamicDeviceComponent.create_component - ~DynamicDeviceComponent.make_docstring - ~DynamicDeviceComponent.maybe_add_prefix - ~DynamicDeviceComponent.sub_default - ~DynamicDeviceComponent.sub_meta - ~DynamicDeviceComponent.sub_value - ~DynamicDeviceComponent.subscriptions - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.FormattedComponent.rst.txt b/ophyd/_sources/generated/ophyd.device.FormattedComponent.rst.txt deleted file mode 100644 index 41645f51ed..0000000000 --- a/ophyd/_sources/generated/ophyd.device.FormattedComponent.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.device\.FormattedComponent -================================= - -.. currentmodule:: ophyd.device - -.. autoclass:: FormattedComponent - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~FormattedComponent.__init__ - ~FormattedComponent.create_component - ~FormattedComponent.make_docstring - ~FormattedComponent.maybe_add_prefix - ~FormattedComponent.sub_default - ~FormattedComponent.sub_meta - ~FormattedComponent.sub_value - ~FormattedComponent.subscriptions - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.device.rst.txt b/ophyd/_sources/generated/ophyd.device.rst.txt deleted file mode 100644 index ee3ac59847..0000000000 --- a/ophyd/_sources/generated/ophyd.device.rst.txt +++ /dev/null @@ -1,40 +0,0 @@ -ophyd\.device -============= - -.. automodule:: ophyd.device - - - - .. rubric:: Functions - - .. autosummary:: - - create_device_from_components - do_not_wait_for_lazy_connection - kind_context - required_for_connection - wait_for_lazy_connection - - - - - - .. rubric:: Classes - - .. autosummary:: - - BlueskyInterface - Component - ComponentWalk - Device - DynamicDeviceComponent - FormattedComponent - GenerateDatumInterface - OrderedDictType - Staged - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.epics_motor.rst.txt b/ophyd/_sources/generated/ophyd.epics_motor.rst.txt deleted file mode 100644 index 93cb90d1c8..0000000000 --- a/ophyd/_sources/generated/ophyd.epics_motor.rst.txt +++ /dev/null @@ -1,24 +0,0 @@ -ophyd\.epics\_motor -=================== - -.. automodule:: ophyd.epics_motor - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsMotor - HomeEnum - MotorBundle - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.collect.rst.txt b/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.collect.rst.txt deleted file mode 100644 index 2cbcf87806..0000000000 --- a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.collect.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.collect -====================================== - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.collect \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.complete.rst.txt b/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.complete.rst.txt deleted file mode 100644 index 155f40014c..0000000000 --- a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.complete.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.complete -======================================= - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.complete \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.describe_collect.rst.txt b/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.describe_collect.rst.txt deleted file mode 100644 index ac453de038..0000000000 --- a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.describe_collect.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.describe\_collect -================================================ - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.describe_collect \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.kickoff.rst.txt b/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.kickoff.rst.txt deleted file mode 100644 index e9dfcbedea..0000000000 --- a/ophyd/_sources/generated/ophyd.flyers.FlyerInterface.kickoff.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.flyers\.FlyerInterface\.kickoff -====================================== - -.. currentmodule:: ophyd.flyers - -.. automethod:: FlyerInterface.kickoff \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.flyers.rst.txt b/ophyd/_sources/generated/ophyd.flyers.rst.txt deleted file mode 100644 index f61e1e4b2f..0000000000 --- a/ophyd/_sources/generated/ophyd.flyers.rst.txt +++ /dev/null @@ -1,25 +0,0 @@ -ophyd\.flyers -============= - -.. automodule:: ophyd.flyers - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - AreaDetectorTimeseriesCollector - FlyerInterface - MonitorFlyerMixin - WaveformCollector - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.mca.rst.txt b/ophyd/_sources/generated/ophyd.mca.rst.txt deleted file mode 100644 index ebd2e74ce8..0000000000 --- a/ophyd/_sources/generated/ophyd.mca.rst.txt +++ /dev/null @@ -1,44 +0,0 @@ -ophyd\.mca -========== - -.. automodule:: ophyd.mca - - - - .. rubric:: Functions - - .. autosummary:: - - add_rois - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsDXP - EpicsDXPBaseSystem - EpicsDXPLowLevel - EpicsDXPLowLevelParameter - EpicsDXPMapping - EpicsDXPMultiElementSystem - EpicsMCA - EpicsMCACallback - EpicsMCAReadNotify - EpicsMCARecord - Mercury1 - MercuryDXP - ROI - Saturn - SaturnDXP - SaturnMCA - SoftDXPTrigger - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.mixins.rst.txt b/ophyd/_sources/generated/ophyd.mixins.rst.txt deleted file mode 100644 index 321aa17d78..0000000000 --- a/ophyd/_sources/generated/ophyd.mixins.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.mixins -============= - -.. automodule:: ophyd.mixins - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsSignalPositioner - SignalPositionerMixin - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject._reset_sub.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject._reset_sub.rst.txt deleted file mode 100644 index d8842e85bb..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject._reset_sub.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.\_reset\_sub -========================================== - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject._reset_sub \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject._run_subs.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject._run_subs.rst.txt deleted file mode 100644 index 00369ee6d6..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject._run_subs.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.\_run\_subs -========================================= - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject._run_subs \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.clear_sub.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.clear_sub.rst.txt deleted file mode 100644 index a87ae0e1e1..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.clear_sub.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.clear\_sub -======================================== - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject.clear_sub \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.event_types.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.event_types.rst.txt deleted file mode 100644 index 51eb5c44d6..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.event_types.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.event\_types -========================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.event_types \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.name.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.name.rst.txt deleted file mode 100644 index 4d05c3e77b..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.name.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.name -================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.name \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.parent.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.parent.rst.txt deleted file mode 100644 index 1c6129ef7a..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.parent.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.parent -==================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.parent \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.root.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.root.rst.txt deleted file mode 100644 index ac1981d7df..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.root.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.root -================================== - -.. currentmodule:: ophyd.ophydobj - -.. autoattribute:: OphydObject.root \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.rst.txt deleted file mode 100644 index 45fa869ff0..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.rst.txt +++ /dev/null @@ -1,29 +0,0 @@ -ophyd\.ophydobj\.OphydObject -============================ - -.. currentmodule:: ophyd.ophydobj - -.. autoclass:: OphydObject - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~OphydObject.__init__ - ~OphydObject.add_instantiation_callback - ~OphydObject.check_value - ~OphydObject.clear_sub - ~OphydObject.destroy - ~OphydObject.subscribe - ~OphydObject.unsubscribe - ~OphydObject.unsubscribe_all - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.subscribe.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.subscribe.rst.txt deleted file mode 100644 index 562db4e4fc..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.subscribe.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.subscribe -======================================= - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject.subscribe \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt deleted file mode 100644 index 1d4329ec67..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.OphydObject.unsubscribe.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.ophydobj\.OphydObject\.unsubscribe -========================================= - -.. currentmodule:: ophyd.ophydobj - -.. automethod:: OphydObject.unsubscribe \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.ophydobj.rst.txt b/ophyd/_sources/generated/ophyd.ophydobj.rst.txt deleted file mode 100644 index 4a003d7168..0000000000 --- a/ophyd/_sources/generated/ophyd.ophydobj.rst.txt +++ /dev/null @@ -1,37 +0,0 @@ -ophyd\.ophydobj -=============== - -.. automodule:: ophyd.ophydobj - - - - .. rubric:: Functions - - .. autosummary:: - - register_instances_in_weakset - register_instances_keyed_on_name - select_version - - - - - - .. rubric:: Classes - - .. autosummary:: - - Kind - OphydObject - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - UnknownSubscription - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.positioner.PositionerBase.set.rst.txt b/ophyd/_sources/generated/ophyd.positioner.PositionerBase.set.rst.txt deleted file mode 100644 index 39facc6164..0000000000 --- a/ophyd/_sources/generated/ophyd.positioner.PositionerBase.set.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.positioner\.PositionerBase\.set -====================================== - -.. currentmodule:: ophyd.positioner - -.. automethod:: PositionerBase.set \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.positioner.PositionerBase.stop.rst.txt b/ophyd/_sources/generated/ophyd.positioner.PositionerBase.stop.rst.txt deleted file mode 100644 index 5629983535..0000000000 --- a/ophyd/_sources/generated/ophyd.positioner.PositionerBase.stop.rst.txt +++ /dev/null @@ -1,6 +0,0 @@ -ophyd\.positioner\.PositionerBase\.stop -======================================= - -.. currentmodule:: ophyd.positioner - -.. automethod:: PositionerBase.stop \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.positioner.rst.txt b/ophyd/_sources/generated/ophyd.positioner.rst.txt deleted file mode 100644 index 3cf8fda3e1..0000000000 --- a/ophyd/_sources/generated/ophyd.positioner.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.positioner -================= - -.. automodule:: ophyd.positioner - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - PositionerBase - SoftPositioner - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.pseudopos.rst.txt b/ophyd/_sources/generated/ophyd.pseudopos.rst.txt deleted file mode 100644 index 40760582a2..0000000000 --- a/ophyd/_sources/generated/ophyd.pseudopos.rst.txt +++ /dev/null @@ -1,30 +0,0 @@ -ophyd\.pseudopos -================ - -.. automodule:: ophyd.pseudopos - - - - .. rubric:: Functions - - .. autosummary:: - - pseudo_position_argument - real_position_argument - - - - - - .. rubric:: Classes - - .. autosummary:: - - PseudoPositioner - PseudoSingle - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.pv_positioner.rst.txt b/ophyd/_sources/generated/ophyd.pv_positioner.rst.txt deleted file mode 100644 index fa6adc56f9..0000000000 --- a/ophyd/_sources/generated/ophyd.pv_positioner.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.pv\_positioner -===================== - -.. automodule:: ophyd.pv_positioner - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - PVPositioner - PVPositionerPC - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.quadem.rst.txt b/ophyd/_sources/generated/ophyd.quadem.rst.txt deleted file mode 100644 index 81bdad5349..0000000000 --- a/ophyd/_sources/generated/ophyd.quadem.rst.txt +++ /dev/null @@ -1,26 +0,0 @@ -ophyd\.quadem -============= - -.. automodule:: ophyd.quadem - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - APS_EM - NSLS_EM - QuadEM - QuadEMPort - TetrAMM - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.rst.txt b/ophyd/_sources/generated/ophyd.rst.txt deleted file mode 100644 index 685e9c2a0d..0000000000 --- a/ophyd/_sources/generated/ophyd.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd -===== - -.. automodule:: ophyd - - - - .. rubric:: Functions - - .. autosummary:: - - get_cl - set_cl - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.scaler.rst.txt b/ophyd/_sources/generated/ophyd.scaler.rst.txt deleted file mode 100644 index 89ea86b7e8..0000000000 --- a/ophyd/_sources/generated/ophyd.scaler.rst.txt +++ /dev/null @@ -1,24 +0,0 @@ -ophyd\.scaler -============= - -.. automodule:: ophyd.scaler - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - EpicsScaler - ScalerCH - ScalerChannel - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.signal.rst.txt b/ophyd/_sources/generated/ophyd.signal.rst.txt deleted file mode 100644 index 5c9c61f5eb..0000000000 --- a/ophyd/_sources/generated/ophyd.signal.rst.txt +++ /dev/null @@ -1,36 +0,0 @@ -ophyd\.signal -============= - -.. automodule:: ophyd.signal - - - - - - - - .. rubric:: Classes - - .. autosummary:: - - ArrayAttributeSignal - AttributeSignal - DerivedSignal - EpicsSignal - EpicsSignalBase - EpicsSignalRO - Signal - SignalRO - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - ConnectionTimeoutError - ReadTimeoutError - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.status.rst.txt b/ophyd/_sources/generated/ophyd.status.rst.txt deleted file mode 100644 index 19d69c1466..0000000000 --- a/ophyd/_sources/generated/ophyd.status.rst.txt +++ /dev/null @@ -1,39 +0,0 @@ -ophyd\.status -============= - -.. automodule:: ophyd.status - - - - .. rubric:: Functions - - .. autosummary:: - - wait - - - - - - .. rubric:: Classes - - .. autosummary:: - - AndStatus - DeviceStatus - MoveStatus - Status - StatusBase - SubscriptionStatus - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - UseNewProperty - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.utils.epics_pvs.rst.txt b/ophyd/_sources/generated/ophyd.utils.epics_pvs.rst.txt deleted file mode 100644 index 60b1377bf9..0000000000 --- a/ophyd/_sources/generated/ophyd.utils.epics_pvs.rst.txt +++ /dev/null @@ -1,45 +0,0 @@ -ophyd\.utils\.epics\_pvs -======================== - -.. automodule:: ophyd.utils.epics_pvs - - - - .. rubric:: Functions - - .. autosummary:: - - data_shape - data_type - fmt_time - raise_if_disconnected - record_field - records_from_db - set_and_wait - split_record_field - strip_field - validate_pv_name - waveform_to_string - - - - - - .. rubric:: Classes - - .. autosummary:: - - AlarmSeverity - AlarmStatus - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - BadPVName - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.utils.errors.rst.txt b/ophyd/_sources/generated/ophyd.utils.errors.rst.txt deleted file mode 100644 index 22d04753ad..0000000000 --- a/ophyd/_sources/generated/ophyd.utils.errors.rst.txt +++ /dev/null @@ -1,34 +0,0 @@ -ophyd\.utils\.errors -==================== - -.. automodule:: ophyd.utils.errors - - - - - - - - - - - - .. rubric:: Exceptions - - .. autosummary:: - - DestroyedError - DisconnectedError - ExceptionBundle - InvalidState - LimitError - OpException - PluginMisconfigurationError - ReadOnlyError - RedundantStaging - StatusTimeoutError - UnknownStatusFailure - UnprimedPlugin - WaitTimeoutError - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.utils.paths.rst.txt b/ophyd/_sources/generated/ophyd.utils.paths.rst.txt deleted file mode 100644 index 0ef88dfddc..0000000000 --- a/ophyd/_sources/generated/ophyd.utils.paths.rst.txt +++ /dev/null @@ -1,23 +0,0 @@ -ophyd\.utils\.paths -=================== - -.. automodule:: ophyd.utils.paths - - - - .. rubric:: Functions - - .. autosummary:: - - make_dir_tree - makedirs - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.utils.rst.txt b/ophyd/_sources/generated/ophyd.utils.rst.txt deleted file mode 100644 index ca71fd4586..0000000000 --- a/ophyd/_sources/generated/ophyd.utils.rst.txt +++ /dev/null @@ -1,35 +0,0 @@ -ophyd\.utils -============ - -.. automodule:: ophyd.utils - - - - .. rubric:: Functions - - .. autosummary:: - - adapt_old_callback_signature - doc_annotation_forwarder - ducks_from_namespace - enum - getattrs - instances_from_namespace - underscores_to_camel_case - - - - - - .. rubric:: Classes - - .. autosummary:: - - DO_NOT_USE - OrderedDefaultDict - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/generated/ophyd.utils.startup.rst.txt b/ophyd/_sources/generated/ophyd.utils.startup.rst.txt deleted file mode 100644 index 2085e463b6..0000000000 --- a/ophyd/_sources/generated/ophyd.utils.startup.rst.txt +++ /dev/null @@ -1,22 +0,0 @@ -ophyd\.utils\.startup -===================== - -.. automodule:: ophyd.utils.startup - - - - .. rubric:: Functions - - .. autosummary:: - - setup - - - - - - - - - - \ No newline at end of file diff --git a/ophyd/_sources/index.rst.txt b/ophyd/_sources/index.rst.txt deleted file mode 100644 index 706828d676..0000000000 --- a/ophyd/_sources/index.rst.txt +++ /dev/null @@ -1,67 +0,0 @@ -.. ophyd documentation master file, created by - sphinx-quickstart on Fri Nov 7 11:18:58 2014. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -Ophyd -===== - -Ophyd represents hardware in Python as hierarchical objects grouping -together related values from the underlying control system. This -structure allows :mod:`ophyd` to provide - -* A consistent high-level interface across a wide-range of devices ( - which is used by :mod:`bluesky`). -* Direct low-level access to the underlying controls system for - debugging and development. - - -By presenting a uniform interface experimental plans can be agnostic -to the details of the underlying hardware which simplifies writing -experimental plans. For example, every device has a ``read`` method -which, somewhat tautologically, reads the device. It is up to the -object to have an understanding of which of its signals are -interesting and should be included in the reading, to reach out and -fetch those values, and then to format them into a consistent format. -Similarly, if a device can be 'moved' (in the most general sense) then -it must provide a ``set`` method which is responsible for knowing how -to translate the user input into values that the control system -understands, setting those values, and then returning to the caller an -object which will signal when the requested move is complete. This -provides a direct way to implement software pseudo motors. - -:mod:`ophyd` contains a number of pre-built devices for common -hardware (and IOCs) as well as the tools to build custom devices. - -Currently ophyd only support ``EPICS`` via :mod:`pyepics` (because it -is what we use at NSLS-II), however the library is designed to be -control-system agnostic and we are looking for a partner to port it to -other control systems. - - -.. toctree:: - :maxdepth: 1 - :caption: Ophyd's Core Functionality - - architecture - device-overview - signals - status - positioners - debugging - -.. toctree:: - :maxdepth: 2 - :caption: Built-in Device Support - - area-detector - builtin-devices - -.. toctree:: - :maxdepth: 1 - :caption: Developer notes - - api - release_notes - OEP/index - docker diff --git a/ophyd/_sources/index.txt b/ophyd/_sources/index.txt deleted file mode 100644 index f23f24a001..0000000000 --- a/ophyd/_sources/index.txt +++ /dev/null @@ -1,69 +0,0 @@ -.. ophyd documentation master file, created by - sphinx-quickstart on Fri Nov 7 11:18:58 2014. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -Ophyd -===== - -Ophyd represents hardware in Python, providing a consistent interface for -reading values from and sending values to any device. - -To represent a complex device with many components, it employs a hierarchical -structure wherein a device is a composition of subdevices, all sharing the -common interface. - -Why not just use pyepics? -------------------------- - -Ophyd builds on pyepics, Python bindings to EPICS. It provides full access to -the underlying pyepics PV objects, but it also provides some higher-level -abstractions. - -The purpose of these abstractions is make all hardware look the same as much as -possible, enabling the same experimental control logic to apply to different -hardware. For example, from this point of view performing a temperature sweep -is no different that scanning a motor. The abstractions in ophyd present a -standard interface for maximum generality. But they do not preclude direct -access to the individual PVs, which can be important for debugging or -interactive exploration. - -* A **Signal** represents a single value. In EPICS, it corresponds to either - a single read-only PV or a pair of read and write PVs, grouped together. It - assigns a human-readable name (e.g., 'temperature') which is more natural in - the analysis phase than the raw PV names. -* A **Device** is composed of Signals or of other Devices. Devices can be - nested. Some devices map to single pieces of hardware (like a motor). - Others group together many different pieces of hardware (like a - diffractometer). In one process, the same PVs might appear in multiple - different Devices, so organized for different uses. - -Signals and devices have: -* a ``connected`` attribute, to quickly check whether *all* the involved PVs - are responding -* a ``name`` attribute, assigning a human-friendly alias (e.g., "temperature") - which is often more natural than the raw PV name in the analysis phase -* a means of designating signals that should included in a typical reading - (``read_attrs`` for "read attriubtes"), signals that change rarely - (``configuration_attrs`` for "configuration attributes") and should be read - only when known to change, and signals that should be not read at all (a - common example: the hundreds of rarely-touched PVs in the area detector - plugin). -* a single ``read`` method which reads the values of all a device's designated - components and collates them into a single, labeled result -* a single ``describe`` method which extrats the metadata (PV, units, - precision, data type, etc.) of all a device's designated components - -Contents: - -.. toctree:: - :maxdepth: 1 - - device-overview - commands - builtin-devices - positioners - custom-devices - signals - area-detector - architecture diff --git a/ophyd/_sources/positioners.rst.txt b/ophyd/_sources/positioners.rst.txt deleted file mode 100644 index 50802b09b6..0000000000 --- a/ophyd/_sources/positioners.rst.txt +++ /dev/null @@ -1,149 +0,0 @@ -.. _positioners: - -Positioners -*********** - -Positioners other than ``EpicsMotor`` and ``SoftPositioner`` are not -"ready-to-use". They require some customization. - -PVPositioner ------------- - -For example, this code defines a CS700 temperature controller. A temperature -controller is a kind of positioner, from ophyd's point of view, where the -"position" is the temperature. - -.. code-block:: python - - from ophyd import PVPositioner, EpicsSignal, EpicsSignalRO - from ophyd import Component as Cpt - - # Define a new kind of device. - - class CS700TemperatureController(PVPositioner): - setpoint = Cpt(EpicsSignal, 'T-SP') - readback = Cpt(EpicsSignalRO, 'T-I') - done = Cpt(EpicsSignalRO, 'Cmd-Busy') - stop_signal = Cpt(EpicsSignal, 'Cmd-Cmd') - - # Create an instance of this new kind of device. - - prefix = 'XF:28IDC-ES:1{Env:01}' - cs700 = CS700TemperatureController(prefix, name='cs700') - - # When the cs700 has reached the set-point temperature, the 'done' signal - # flips to 0. - cs700.done_value = 0 - - -.. autoclass:: ophyd.pv_positioner.PVPositioner - -PseudoPositioner ----------------- - -An ophyd ``PseudoPositioner`` relates one or more pseudo (virtual) axes to one -or more real (physical) axes via forward and inverse calculations. To define -such a PseudoPositioner, one must subclass from PseudoPositioner: - -.. code-block:: python - - from ophyd import (PseudoPositioner, PseudoSingle, EpicsMotor) - from ophyd import (Component as Cpt) - from ophyd.pseudopos import (pseudo_position_argument, - real_position_argument) - - - class Pseudo3x3(PseudoPositioner): - # The pseudo positioner axes: - px = Cpt(PseudoSingle, limits=(-10, 10)) - py = Cpt(PseudoSingle, limits=(-10, 10)) - pz = Cpt(PseudoSingle) - - # The real (or physical) positioners: - rx = Cpt(EpicsMotor, 'XF:31IDA-OP{Tbl-Ax:X1}Mtr') - ry = Cpt(EpicsMotor, 'XF:31IDA-OP{Tbl-Ax:X2}Mtr') - rz = Cpt(EpicsMotor, 'XF:31IDA-OP{Tbl-Ax:X3}Mtr') - - @pseudo_position_argument - def forward(self, pseudo_pos): - '''Run a forward (pseudo -> real) calculation''' - return self.RealPosition(rx=-pseudo_pos.px, - ry=-pseudo_pos.py, - rz=-pseudo_pos.pz) - - @real_position_argument - def inverse(self, real_pos): - '''Run an inverse (real -> pseudo) calculation''' - return self.PseudoPosition(px=-real_pos.rx, - py=-real_pos.ry, - pz=-real_pos.rz) - -``Pseudo3x3`` above is a pseudo positioner with 3 pseudo axes and 3 real axes. -The pseudo axes are defined in order as (px, py, pz). Similarly, the real -positioners are (rx, ry, rz). - -There is no restriction that the real axes must be tied to physical hardware. -A physical axis could just as well be a ``SoftPositioner``, or any subclass of -``PositionerBase`` (with the sole exception of ``PseudoSingle``). - -The forward calculation says that, for any given pseudo position, the real -motors should move to the opposite position. For example, for a pseudo position -of (px=1, py=2, pz=3), the corresponding real position would be (rx=-1, ry=-2, -rz=-3). The inverse calculation is similar, in going from a real position to a -pseudo position. - -The two decorators ``@real_position_argument`` and -``@pseudo_position_argument`` are used here for convenience so that one can -call these functions in a variety of ways, all of which generate a correct -PseudoPosition tuple as the first argument to your calculation method. -Positions can be specified in the following ways: - -* As positional arguments: - -.. code-block:: python - - pseudo.forward(px, py, pz) - - -* As a sequence or PseudoPosition/RealPosition: - -.. code-block:: python - - pseudo.forward((px, py, pz)) - pseudo.forward(pseudo.PseudoPosition(px, py, pz)) - - -* As kwargs: - -.. code-block:: python - - pseudo.forward(px=1, py=2, pz=3) - - -``move`` is decorated like this on PseudoPositioner, meaning you can also call -it with this syntax. - -.. autoclass:: ophyd.pseudopos.PseudoSingle -.. autoclass:: ophyd.pseudopos.PseudoPositioner - - -SoftPositioner --------------- - -A ``SoftPositioner`` is a positioner which has no corresponding physical motor. -On its own, it is most useful for debugging scanning logic when moving physical -motors is either undesirable or not possible. - -Used as-is, a ``SoftPositioner`` will "move" to the requested position -immediately. - -``PseudoSingle`` and ``PseudoPositioner``, for example, are implemented as -heavily customized ``SoftPositioner`` subclasses. - -.. autoclass:: ophyd.positioner.PositionerBase -.. autoclass:: ophyd.positioner.SoftPositioner - -.. code-block:: python - - from ophyd import SoftPositioner - my_positioner = SoftPositioner(name='my_positioner') diff --git a/ophyd/_sources/positioners.txt b/ophyd/_sources/positioners.txt deleted file mode 100644 index fa245aa96b..0000000000 --- a/ophyd/_sources/positioners.txt +++ /dev/null @@ -1,147 +0,0 @@ -Positioners -*********** - -Positioners other than ``EpicsMotor`` and ``SoftPositioner`` are not -"ready-to-use". They require some customization. - -PVPositioner ------------- - -For example, this code defines a CS700 temperature controller. A temperature -controller is a kind of positioner, from ophyd's point of view, where the -"position" is the temperature. - -.. code-block:: python - - from ophyd import PVPositioner, EpicsSignal, EpicsSignalRO - from ophyd import Component as Cpt - - # Define a new kind of device. - - class CS700TemperatureController(PVPositioner): - setpoint = Cpt(EpicsSignal, 'T-SP') - readback = Cpt(EpicsSignalRO, 'T-I') - done = Cpt(EpicsSignalRO, 'Cmd-Busy') - stop_signal = Cpt(EpicsSignal, 'Cmd-Cmd') - - # Create an instance of this new kind of device. - - prefix = 'XF:28IDC-ES:1{Env:01}' - cs700 = CS700TemperatureController(prefix, name='cs700') - - # When the cs700 has reached the set-point temperature, the 'done' signal - # flips to 0. - cs700.done_value = 0 - - -.. autoclass:: ophyd.pv_positioner.PVPositioner - -PseudoPositioner ----------------- - -An ophyd ``PseudoPositioner`` relates one or more pseudo (virtual) axes to one -or more real (physical) axes via forward and inverse calculations. To define -such a PseudoPositioner, one must subclass from PseudoPositioner: - -.. code-block:: python - - from ophyd import (PseudoPositioner, PseudoSingle, EpicsMotor) - from ophyd import (Component as Cpt) - from ophyd.pseudopos import (pseudo_position_argument, - real_position_argument) - - - class Pseudo3x3(PseudoPositioner): - # The pseudo positioner axes: - px = Cpt(PseudoSingle, limits=(-10, 10)) - py = Cpt(PseudoSingle, limits=(-10, 10)) - pz = Cpt(PseudoSingle) - - # The real (or physical) positioners: - rx = Cpt(EpicsMotor, 'XF:31IDA-OP{Tbl-Ax:X1}Mtr') - ry = Cpt(EpicsMotor, 'XF:31IDA-OP{Tbl-Ax:X2}Mtr') - rz = Cpt(EpicsMotor, 'XF:31IDA-OP{Tbl-Ax:X3}Mtr') - - @pseudo_position_argument - def forward(self, pseudo_pos): - '''Run a forward (pseudo -> real) calculation''' - return self.RealPosition(rx=-pseudo_pos.px, - ry=-pseudo_pos.py, - rz=-pseudo_pos.pz) - - @real_position_argument - def inverse(self, real_pos): - '''Run an inverse (real -> pseudo) calculation''' - return self.PseudoPosition(px=-real_pos.rx, - py=-real_pos.ry, - pz=-real_pos.rz) - -``Pseudo3x3`` above is a pseudo positioner with 3 pseudo axes and 3 real axes. -The pseudo axes are defined in order as (px, py, pz). Similarly, the real -positioners are (rx, ry, rz). - -There is no restriction that the real axes must be tied to physical hardware. -A physical axis could just as well be a ``SoftPositioner``, or any subclass of -``PositionerBase`` (with the sole exception of ``PseudoSingle``). - -The forward calculation says that, for any given pseudo position, the real -motors should move to the opposite position. For example, for a pseudo position -of (px=1, py=2, pz=3), the corresponding real position would be (rx=-1, ry=-2, -rz=-3). The inverse calculation is similar, in going from a real position to a -pseudo position. - -The two decorators ``@real_position_argument`` and -``@pseudo_position_argument`` are used here for convenience so that one can -call these functions in a variety of ways, all of which generate a correct -PseudoPosition tuple as the first argument to your calculation method. -Positions can be specified in the following ways: - -* As positional arguments: - -.. code-block:: python - - pseudo.forward(px, py, pz) - - -* As a sequence or PseudoPosition/RealPosition: - -.. code-block:: python - - pseudo.forward((px, py, pz)) - pseudo.forward(pseudo.PseudoPosition(px, py, pz)) - - -* As kwargs: - -.. code-block:: python - - pseudo.forward(px=1, py=2, pz=3) - - -``move`` is decorated like this on PseudoPositioner, meaning you can also call -it with this syntax. - -.. autoclass:: ophyd.pseudopos.PseudoSingle -.. autoclass:: ophyd.pseudopos.PseudoPositioner - - -SoftPositioner --------------- - -A ``SoftPositioner`` is a positioner which has no corresponding physical motor. -On its own, it is most useful for debugging scanning logic when moving physical -motors is either undesirable or not possible. - -Used as-is, a ``SoftPositioner`` will "move" to the requested position -immediately. - -``PseudoSingle`` and ``PseudoPositioner``, for example, are implemented as -heavily customized ``SoftPositioner`` subclasses. - -.. autoclass:: ophyd.positioner.PositionerBase -.. autoclass:: ophyd.positioner.SoftPositioner - -.. code-block:: python - - from ophyd import SoftPositioner - my_positioner = SoftPositioner(name='my_positioner') diff --git a/ophyd/_sources/release_notes.rst.txt b/ophyd/_sources/release_notes.rst.txt deleted file mode 100644 index 1c35fce6f3..0000000000 --- a/ophyd/_sources/release_notes.rst.txt +++ /dev/null @@ -1,891 +0,0 @@ -================= - Release History -================= - -v1.6.0 (2020-XX-XX) -=================== - -Added ------ - -* Support for Emergent Vision detectors. - -1.5.4 (2020-10-19) -================== - -Changes -------- - -* NDFile PVs implemented in FileBase instead of FilePlugin. - - -Fixes ------ - -* Various doc fixes and improvements. - - -Added ------ - -* ``OPHYD_SILENCE_VALUE_WARNING`` environment variable to silence ``.value`` warning. - - - -1.5.3 (2020-08-26) -================== - -Changes -------- - -* Add a default value for ``ScalerCH.select_channels`` such that calling it - without arguments selects all named channels. -* Change a particularly verbose ophyd logger from INFO-level to DEBUG-level. - - -Fixes ------ - -* Critical bug in EpicsMotor limits set low to high and high to low. -* For area detector cameras, add ``num_images`` to the set of components - recorded as configuration by default. - -1.5.2 (2020-07-07) -================== - -Changes -------- - -* Default logging behavior will now be to print all log messages with level - ``warning`` and higher. -* ``ophyd.mca.SoftDXPTrigger`` now inherits from ``Device`` instead of - ``BlueskyInterface``. This is to satisfy the requirement that classes which - have Components must also inherit Device. -* It was formerly the case that :meth:`~ophyd.signal.Signal.destroy` was always - called at teardown---either manually by the user or automatically using one - of Python mechanisms for running cleanup during garbage collection or process - teardown. Now, *automatic* teardown only involves internal weakref - finalizers and it does not call ``destroy``. The method is now only a - user-facing hook for manually invoking those finalizers. It should not be - used as an extension point for adding more code to be run at teardown; - rather, additional finalizers should be set up in ``__init__`` and invoked in - ``destroy``. See https://github.com/bluesky/ophyd/pull/865 for an example. - This changed is in accordance with best practices recommended by the Python - weakref documentation. - -Internals ---------- - -* Fixed logging imports in debugging documentation. -* Reset the internal ``_status`` in ``SingleTrigger`` to ``None`` when the - trigger is completed. - -1.5.1 (2020-06-12) -================== - -Fixes ------ - -* Updated required version of ``pyepics`` to ``3.4.2``, to ensure the included - fix to libca shutdown is available, preventing crashes on Python shutdown. -* The objects in ``ophyd.sim`` use threads to simulate delays due to movement, - instead of conditionally attempting to integrate with the asyncio event loop. -* Set attributes before invoking super in - :class:`~ophyd.areadetector.base.NDDerivedSignal` to ensure describe method - returns correct results. -* Improved documentation of :class:`~ophyd.device.BlueskyInterface`. -* Fixed intended ordering of areadetector plugins provided by - ``component_names``. - -Internals ---------- - -* Formatting fixes in Sphinx documentation. -* Added epics-pypdb to test requirements. -* Added Python 3.8 builds to continuous integration. -* Added log message when an exception occurs in status callback threads. - -1.5.0 (2020-05-01) -================== - -The API for Status objects has been reworked to be closer to its generic analog -in the standard library, :class:`concurrent.futures.Future`. Most of the -changes are extenions, but there are some deprecations and some minor -backward-incompatible changes. - -Added ------ - -* Status objects can store an exception giving information about why the - underlying action failed. This is set by - :meth:`~ophyd.StatusBase.set_exception` and can be retrieved by - :meth:`~ophyd.StatusBase.exception`. The method - :meth:`~ophyd.StatusBase.set_finished` may be used to mark successful - completion, in which case :meth:`~ophyd.StatusBase.exception` returns - ``None``. -* Status objects have a new :meth:`~ophyd.StatusBase.wait` method, which blocks - until the Status finishes (in success or failure) or until an optional - timeout is reached, whichever happens first. If it finishes in success, the - method returns ``None``; if failure, the exception captured by - :meth:`~ophyd.StatusBase.set_exception` is raised. - -Deprecated ----------- - -* Status objects take the parameters ``done`` and ``success``. These are - deprecated and, if set to anything but ``None`` (the default) issue a - warning suggesting a better approach. -* The method :meth:`~ophyd.StatusBase._finished` is deprecated in favor of - :meth:`~ophyd.StatusBase.set_finished` (for success) and - :meth:`~ophyd.StatusBase.set_exception` (for failure). There are no plans to - *remove* :meth:`~ophyd.StatusBase._finished`, given its wide use, but it may - begin to issue warnings in future releases. - -Backward-incompatible Changes ------------------------------ - -* The function :func:`ophyd.status.wait` formerly raised on ``TimeoutError`` or - ``RuntimeError``. It can now raise any ``Exception``. -* The attributes :obj:`~ophyd.StatusBase.timeout` and - :obj:`~ophyd.StatusBase.settle_time` have become read-only properties. - -Additionally, some unrelated bug fixes are included in this release. - -Fixed ------ - -* Fix a regression that broke ``describe()`` on some simulated hardware in - ``ophyd.sim`` in certain circumstances. -* Handle teardown more gracefully, avoiding error messages at shutdown time - that arose in certain installations. - -v1.4.1 (2020-04-07) -=================== - -Features --------- - -* Update HLM and LLM limits automatically on :class:`ophyd.EpicsMotor` when - they are changed externally. -* Added more descriptive error message when attempting to run setup under - unsupported Python versions. - -API Changes ------------ - -* Added methods :func:`ophyd.EpicsMotor.set_lim` and - :func:`ophyd.EpicsMotor.get_lim` to set and get limits on motors. -* Added documentation for logging API. - -Fixes ------ - -* Improved documentation of :class:`ophyd.PVPositioner`. -* Corrected path semantics behavior when interacting with an areadetector - running on a different OS. - -Internals ---------- - -* Refactored code to satisfy Flake8 requirements. Maximum line length set to - 115 characters. -* Improved scope of log messages emitted by ``OphydObj``. - -v1.4.0 (2020-03-13) -=================== - -Features --------- - -* Version ophyd classes to support IOCs changing over time. This is currently - implemented for AreaDetector plugins (releases 1-9 to 3-4). -* Added :class:`ophyd.NDDerivedSignal`, which supplies a reshaped version of an - input array signal. -* Added :func:`ophyd.Component.subscriptions` decorator to set up default - subscriptions on a component. -* Added :func:`ophyd.device.create_device_from_components` to aid dynamic - device generation. -* Added :func:`ophyd.device.required_for_connection` decorator to mark the - Components that must be connected for the overall Device to be considered - connected. -* Added a hook to be called on all ophyd object creation via the - :func:`OphydObj.add_instantiation_callback` class method along with the - :func:`.register_instances_keyed_on_name` and - :func:`.register_instance_in_weakset` helper functions. -* Added :attr:`OphydObj.dotted_name` property to get the full attribute name of a - child component. -* Added the properties `read_access`, `write_access`, `metadata` to the base - signal class :class:`ophyd.Signal`. -* Added metadata subscriptions for :class:`ophyd.Signal`. -* Added :func:`OphydObj.destroy` method to all ophyd objects. -* Added support for ADLambda X-Spectrum Lambda 750K camera. -* Improved error message "Another set() call is still in progress" to include - the name of the device that raised the error. -* Allowed `ophyd.FormattedComponent` strings to be written like - ``{prefix}{_ch_name}`` as well as the previously-supported and more verbose - ``{self.prefix}{self._ch_name}``. -* Made timeouts more configurable, including separately configurable connection - timeout, write timeout, and read timeout. New method - `ophyd.EpicsSignal.set_default_timeout` sets class-wide defaults. Timeouts - can also be specified per-instance and in a specific action. - -API Changes ------------ - -* Dropped support for Python 3.5. -* The optional dependency pyepics, if installed, must be above version 3.4.0 to - be used. -* If you are holding a reference to a pyepics.pv.PV that is shared with ophyd - and all ophyd objects that use that PV are torn down, all callbacks on the PV - will be cleared and the channel will be torn down. If this is a problem for - you, please create a bug report. -* Removed :mod:`ophyd.control_layer`. The "control layer" used to access EPICS - can be controlled via :func:`ophyd.set_cl`. -* :class:`ophyd.DynamicDeviceComponent` is now an :class:`ophyd.Component` - sub-class -* Changed argument name in :meth:`OphydObj.subscribe` from ``cb`` to - ``callback``. -* Removed :class:`ophyd.tests.conftest.FakeEpicsPV`, - :class:`ophyd.tests.conftest.FakeEpicsWaveForm`, and associated helper - functions. If you need this class, please vendor it from a previous version - of ophyd - or please consider moving to `make_fake_device` or `caproto`-based - simulation IOCs. -* Removed ``ophyd.tests.AssertTools`` and use standard pytest idioms throughout - the test suite. -* Overhauled objects in `ophyd.sim` to inherit from `ophyd.Signal` and - `ophyd.Device` and thus behave more like true hardware-connected devices. -* The `ophyd.StatusBase.done` attribute was formerly settable, but never - intended to be. It should only be set by calling - `ophyd.StatusBase._finished()`. Now, if it is set from ``False`` to ``True`` - is warns, and if it is set from ``True`` to ``False`` (which does not make - sense) it raises. - -Fixes ------ - -* Skip erroneous limits check on ``EpicsMotor.set_current_position``. -* Handle bug in dispatcher to allow ``functools.partial`` objects to be - registered as callbacks. -* Before shaping area detector image data, truncate any extra elements that - exceed the declares waveform length. -* Fix clipping in status progress updates. -* Address numpy pickle CVE. - -Internals ---------- - -* Switch from :class:`ophyd.Device` using meta-classes to using - ``__init__subclass__``. There are now no meta-classes used in ophyd! -* Completely overhauled how we connect to PVs at initialization and tear them - down on destruction of the ophyd objects. -* Completely overhauled how PV meta-data is handled. -* Completely overhauled the dispatcher thread mechanism. -* Removed our backport of ``enum``, as it is available on the minimum Python - 3.6. -* Refactor simulated text object ``SynAxisNoHints`` to be more realistic. - -v1.3.3 (2019-05-02) -=================== - -Features --------- -* Provide way to select all channels of ScalarCH. - -Bug Fixes ---------- -* Ensure that ScalarCH channels with empty names are not selected. - -v1.3.2 (2019-03-11) -=================== - -Bug Fixes ---------- - -* Update usage of ``collections`` module for Python 3.7. -* Improve documentation of "hints". -* Fix ``ophyd.log.logger`` which had erroneous name ``'bluesky'`` instead of - ``'ophyd'``. -* Fix typos in definition of area detector devices wherein ``BrukerDetector`` - and ``PerkinElmerDetector`` had ``cam`` components from cameras of different - brands than their own. -* In area detector file plugins, do not touch 'Capture' PV if image mode is - 'Single'. Doing so has no effect, and it generates an error (that should be a - warning) from area detector noting that it has no effect. -* Fix a typo in ``ScalerCH`` definition of its ``name_map``. - -v1.3.1 (2019-01-03) -=================== - -Features --------- - -* Add :class:`~ophyd.FakeEpicsSignalWithRBV`, which is to - :class:`~ophyd.FakeEpicsSignal` as :class:`~ophyd.EpicsSignalWithRBV` is to - :class:`~ophyd.EpicsSignal`. -* Add enum-spoofing to :class:`~ophyd.FakeEpicsSignal`. -* A default handler is added to the ``'ophyd'`` logger at import time. A new - convenience function, :func:`~ophyd.set_handler`, addresses common cases - such as directing the log output to a file. - -Bug Fixes ---------- - -* Always interpret simulated motor positions as floats, even if set to an - integer position. -* Accept numpy arrays in ``set_and_wait``. -* Log errors with ``set_and_wait`` at the ERROR level rather than the (often - silenced) DEBUG level. -* Check limits on :class:`~ophyd.SoftPositioner`. -* Produce consistent Datum documents in the old and new asset registry code - paths in :class:`~ophyd.sim.SynSignalWithRegistry`. -* Fix some missing imports in :mod:`ophyd.areadetector.plugins`. -* The verification that the image plugin has received an array of nonzero size - was implemented in a way that it would never be tripped. -* Accept any tuple of the right length in :meth:`~ophyd.Device.put`. -* :class:`~ophyd.AttributeSignal` now runs subscriptions when it processes an - update. -* Fix some bugs in :class:`~ophyd.FakeEpicsSignal`. - -v1.3.0 (2018-09-05) -=================== - -Features --------- - -* Teach Area Detector classes how to display the DAG of their pipelines - via :func:`~ophyd.areadetector.base.ADBase.visualize_asyn_digraph`. - - -Bug Fixes ---------- - -* :class:`~ophyd.signal.Signal.describe` correctly reports the type - and shape of the data. -* make :obj:`Device.component_names` an :class:`tuple` (instead of a - :class:`list`) as it should not be mutable. -* Fix issue with grand-children not correctly reporting as being in - ``read_attrs`` or ``configuration_attrs``. - -v1.2.0 (2018-06-06) -=================== - -Features --------- - -* On each Signal or Device, attach a Python logger attribute named ``log`` - with a logger name scoped by module name and the ophyd ``name`` of the - parent Device. -* Signals and Devices now accept ``labels`` argument, a set of labels - --- presumed but not (yet) forced to be strings --- which the user can use - for grouping and displaying available hardware. The labels are accessible via - a new attribute ``_ophyd_labels_``, so name to facilitate duck-typing across - libraries. For example, the bluesky IPython "magics" use this to identify - objects for the purpose of displaying them in labeled groups. -* Added ``tolerated_alarm`` attribute to ``EpicsMotors``, a hook to increase - alarm tolerance for mis-configured motors. -* Ophyd is now fully tested to work against the experimental control layer, - caproto, in addition to pyepics. The control layer can also be set to 'dummy' - for testing without EPICS. This is configurable via the - ``OPHYD_CONTROL_LAYER`` environment variable. -* Added a ``kind`` attribute to each Signal and Device, settable interactively - or via an argument at initiation time, which controls whether its parent - Device will include it in ``read()``, ``read_configuration()``, and/or - ``hints.fields``. This behavior was previously controlled by ``read_attrs``, - ``configuration_attrs``, ``_default_read_attrs``, and - ``_default_configuration_attrs`` on parent Devices. Those can still be used - for *setting* the desired state, but the source of truth is now stored - locally on each child Signal/Device, and - ``read_attrs``/``configuration_attrs`` has been re-implemented as a - convenience API. Documentation is forthcoming; until then we refer to you the - `narrative-style tests of this feature `_. Also see three breaking changes, listed in a subsequent - section of these release notes. The existing implementation contained buggy - and surprising behavior, and addressing that made breaking *something* - unavoidable. -* Added ``make_fake_device`` factory function that makes a Device out of - ``FakeEpicsSignal`` based on a Device that has real signals. -* Add ``sum_all`` component to QuadEM. -* Add a ``set`` method to the ROI plugin. -* Validate that a Device or Signal's ``name`` is a string, and raise helpfully - if it is not. - -Bug Fixes ---------- - -* Allow ``DerivedSignal`` to accept a string name as its target component so - that it can be used inside Device, where it must defer grabbing its target to - initialization time. -* Signals that start with underscores are now not renamed by ``namedtuple``. - This causes issues when the ``.get`` method tries to fill the ``DeviceTuple``. -* Add new ``ad_root`` ("area detector root") to remove the accidental - assumption that ``ADBase`` is the root ancestor Device of all its subclasses. -* ``ad_group`` generates Components that are lazy by default. -* Catch various edge cases related to the data fed to progress bars from status - objects. - -Deprecations ------------- - -* This release simplifies the flow of information out of ophyd. Fortunately, - this major change can be made smoothly. In this transitional release, both - old and new modes of operation are supported. Old configurations should - continue to work, unchanged. Nonetheless, users are encouraged to update - their configurations promptly to take advantage of the better design. The - old mode of operation will cease to be supported in a future release. - - **How to upgrade your configuration:** Simply remove the ``reg=...`` - parameter everywhere it occurs in area-detector-related configuration. - - **Background:** In the original design, bluesky's RunEngine collected *some* - information (readings for Event and EventDescriptor documents) and dispatched - it out to consumers, while ophyd itself pushed other information (Datum and - Resource documents) directly into a database. There are two problems with - this design. - - 1. Consumers subscribed to bluesky only see partial information. For example, - to access the filepaths to externally-stored data, they have to perform a - separate database lookup. There are no guarantees about synchronization: - the consumer may receive references to objects that do not exist in the - database yet. - 2. Ophyd is responsible inserting information into a database, which means - connection information needs to be associated with a Device. This seems - misplaced. - - In the new design, ophyd merely *caches* Datum and Resource documents and - leaves it up to bluesky's RunEngine to ask for them and dispatch them out to - any consumers (such as that database that ophyd used to push to directly). - Thus, all information flows through bluesky and to consumers in a guaranteed - order. Ophyd does not need to know about database configuration. - - Ophyd's area detector "filestore" integration classes in - ``ophyd.areadetector.filestore_mixins`` and ``ophyd.sim`` still *accept* - a ``Registry`` via their optional ``reg`` parameter. If they receive one, - they will assume that they are supposed to operate the old way: inserting - documents directly into the ``Registry``. If the user is running bluesky - v1.3.0, bluesky will collect these same documents and dispatch them out to - consumers also. -* The module ``ophyd.control_layer`` has been deprecated in favor of a - top-level ``cl`` object. - -Breaking Changes ----------------- - -* The 'hints' feature was an experimental feature in previous releases of - ophyd and is now being incorporated in a first-class way. To ensure - internal consistency, the ``hints`` attribute of any ``Signal`` or ``Device`` - is no longer directly settable. Instead of - - .. code-block:: python - - camera.hints = {'fields': [camera.stats1.total.name, - camera.stats2.total.name]} - - do - - .. code-block:: python - - from ophyd import Kind - - camera.stats1.total.kind = Kind.hinted - camera.stats2.total.kind = Kind.hinted - - or, as a convenient shortcut - - .. code-block:: python - - camera.stats1.total.kind = 'hinted' - camera.stats2.total.kind = 'hinted' -* The ``read_attrs`` / ``configuration_attrs`` lists will now contain all of - the components touched when walking the Device tree. This also means that - setting these lists may not always round trip: they may contain extra - elements in addition to those explicitly set. -* When adding "grandchildren" via ``read_attrs`` / ``configuration_attrs``, we - no longer allow generation skipping and forcibly set up the state of all of - the devices along the way to be consistent. Inconsistency arguably should - never have been possible in the first place. -* A Device's ``__repr__`` no longer includes ``read_attrs`` and - ``configuration_attrs`` (because they are now so lengthy). This means that - passing a Device's ``__repr__`` to ``eval()`` does not necessarily - reconstruct a Device in exactly the same state. - -v1.1.0 (2017-02-20) -=================== - -Features --------- - -* Add a new ``run`` keyword, which defaults to ``True``, which can be used to - keep :class:`.SubscriptionStatus` objects from running callbacks immediately. -* Add an :meth:`unsuscribe_all` method to OphydObj. -* Support timestamps and subscriptions in the simulated motor - :class:`.SynAxis` and related classes. -* Extend :class:`.DynamicDeviceComponent` to accept optional - ``default_read_attrs`` and ``default_configuration_attrs`` arguments, which - it will assign as class attributes on the class it dynamically creates. -* Systematically add ``default_read_attrs=(...)`` to every DDC on every - Area Detector plugin. Now, for example, adding ``'centroid'`` to the read - attributes of a :class:`.StatsPlugin` instance also effectively adds - ``'centroid_x'`` and ``'centroid_y'``, which is presumably the desired - result. -* On :class:`.ScalerCH`, omit any channels whose name is ``''`` from - the read attributes by default. -* Add new ``random_state`` keyword to relevant simulated devices so that their - randomness can be made deterministic for testing purposes. -* Restore namespace-scraping utilities :func:`.instances_from_namespace` and - :func:`.ducks_from_namespace` which had been moved in pyolog during previous - refactor. - -Bug Fixes ---------- - -* Fix race condition in :func:`.set_and_wait`. -* Fix a bug in aforementioned namespace-scraping utilities. -* Do not use deprecated API (``signal_names``, now called ``component_names``) - internally. - -v1.0.0 (2017-11-17) -=================== - -This tag marks an important release for ophyd, signifying the conclusion of -the early development phase. From this point on, we intend that this project -will be co-developed between multiple facilities. The 1.x series is planned to -be a long-term-support release. - -Breaking Changes ----------------- - -* To access the human-friendly summary of a Device's layout, use - ``device.summary()`` instead of ``print(device)``. The verbosity of the - summary was overwhelming when it appeared in error messages and logs, so it - was moved from ``Device.__str__`` this new method. Now ``Device.__str__`` - gives the same result as ``Device.__repr__``, as it did before v0.7.0. -* Add (empty) hints to `~ophyd.sim.SynSignalWithRegistry`. - -Bug Fixes ---------- - -* Initiate :class:`~ophyd.sim.SynSignal` with a function that returns ``None`` - if no ``func`` parameter is provided. -* Make ophyd importable without pyepics and libca. - -v0.8.0 (2017-11-01) -=================== - -Breaking Changes ----------------- - -* Make the ``name`` keyword to Device a required, keyword-only argument. This - ensures that the names that appear in the read dictionary are always - human-readable. -* When a ``PseudoPositioner`` is set with only a subset of its parameters - specified, fill in the unspecified values with the current *target* position, - not the current *actual* position. - -Deprecations ------------- - -* The ``signal_names`` attribute of devices has been renamed - ``component_names`` for clarity because it may include a mixture of Signals - and Devices -- any Components. The old name now issues a warning when - accessed, and it may be removed in a future release of ophyd. -* Status objects' new ``add_callback`` method and ``callbacks`` attribute - should be preferred over the ``finished_cb`` property, which only supports - one callback and now warns if set or accessed. - -Features --------- - -* Add ``ophyd.sim`` module with various synthetic 'hardware' for testing and - teaching. -* The 'children' of a ``PseudoPositioner`` can now be simultaneously used as - independent axes in a bluesky plan. -* Add ``SubscriptionStatus``, which reports done when a Python function of the - subscription returns ``True``. -* It is possible to register more than one callback function to be called on - completion of a Status object (i.e. when a Device is finished triggering or - moving). -* Status objects support ``__and__``, such that ``status1 & status2`` return a - new status object that completes when both ``status1`` and ``status2`` are - complete. -* Do not require a ``prefix`` argument to ``Device``. It is not applicable in - cases of synthetic 'hardware'. -* Add ``MotorBundle`` for bundling ``EpicsMotors`` and automatically composing - a useful combined hint. -* Add hints to ``PseudoSingle``, ``PseudoPositioner``, and ``SoftPositioner``. -* Make it possible to plug in a different "control layer" --- i.e. an interface - to EPICS other than pyepics. This is experimental and may be changed in the - future in a way that is not backward-compatible. - -Bug Fixes ---------- - -* Avoid a race condition when timing out during a settle time. - -Internal Changes ----------------- - -* Reduce set_and_wait log messages to DEBUG level. -* Refactor OphydObj callbacks to make the logic easier to follow. This change - is fully backward-compatible. - -v0.7.0 (2017-09-06) -=================== - -Breaking Changes ----------------- - -* The module :mod:`ophyd.commands`, a grab bag of convenient tools, has been - entirely removed. The functionality is available in other ways: - - * The functions :func:`mov` and :func:`movr` ("move" and "move relative") - have been replaced by IPython magics, provided in bluesky v0.10.0: - - .. code-block:: python - - %mov eta 3 temp 273 - %movr eta 1 temp -5 - - * The function :func:`wh_pos` for surveying current positioners has also - been supplanted by an IPython magic packaged with bluesky: ``%wa`` (short - for "where all", an abbreviation borrowed from SPEC). - - .. code-block:: python - - %wa - - * The fucntionality of :func:`set_pos`---setting zero---is available via a - device method :meth:`set_current_pos`, if applicable. - - * The functionality of :func:`set_lm` for altering limits has been removed. - It is not something users should generally change, and now must be done - directly via EPICS or pyepics. - - * The logging-related functionality, including all functions named - ``log_*`` and also :func:`get_all_positioners` have been moved to - `pyOlog `_. - - * The function ``setup_ophyd`` was merely a shim to - :func:`ophyd.setup_ophyd`, which is still available as a top-level - import. - -* When recursing through complex devices, ``read()`` in no longer called as - part of ``read_configuration()``. - For complex devices, the same child device may be used in both ``read_attrs`` - and ``read_configuration``. Putting the read values into the configuration - is generically not correct. For example, the mean_value of a stats plugin for - Area Detector should be in the ``read()`` but not in the result of - ``read_configuration()``. At the bottom, Signals fall back to ``read()`` for - their read_configuration implementation. -* The area detector 'EnableCallbacks' signal is set using its integer - representation instead of its enum string. The string representation was - changed on the NDPluginBase.template file in upstream Area Detector. The int - value is stable (we hope). -* Low-level changes related to integration between ophyd's area detector code - and databroker/filestore: - - * Ophyd's optional dependency on filestore, which is now a deprecated - package, has been replaced by an optional dependency on databroker. In - area detector classes, the keyword argument and attribute ``fs`` has been - changed to ``reg``, short for "registry". - * The ``FileStoreBulkWrite`` mixin classes have been removed. Now that the - Registry is generating the datum UIDs the 'stash, emit on read, and then - insert on unstage' is no longer possible. This means we will never let a - datum_id which is not in a Registry out into the EventSources. This - change is driven by the need to support column based backends from Assets. - * The method ``generate_datum`` on area detector file plugins requires an - additional argument, ``datum_kwargs``. - -Features --------- - -* Many devices picked up a new ``hints`` property. Its goal is to highlight the - most interesting or important fields---often a small subset of all the fields - that are read---in support of automated visualization and processing. It does - not affect what is read or recorded; nothing is permanently altered or lost - if the hints are incorrect. The content of hints may be changed in future - releases, as this feature is experimental. For now, ``hints`` is a dictionary - with the key ``fields`` mapped to a list of field names. For movable - devices, these fields are expected to represent the the independent axes of - the device. For devices that are only readable, these fields represent the - most interesting fields, i.e. the fields most likely to be desired in a table - or plot. -* The string representation of a device, accessible via ``str(...)`` or - ``print(...)``, provides a human-readable summary of its attributes and - fields. Example: - - .. code-block:: none - - In [5]: motor = EpicsMotor('XF:31IDA-OP{Tbl-Ax:X1}Mtr', name='motor') - - In [6]: print(motor) - data keys (* hints) - ------------------- - *motor - motor_user_setpoint - - read attrs - ---------- - user_readback EpicsSignalRO ('motor') - user_setpoint EpicsSignal ('motor_user_setpoint') - - config keys - ----------- - motor_acceleration - motor_motor_egu - motor_user_offset - motor_user_offset_dir - motor_velocity - - configuration attrs - ---------- - motor_egu EpicsSignal ('motor_motor_egu') - velocity EpicsSignal ('motor_velocity') - acceleration EpicsSignal ('motor_acceleration') - user_offset EpicsSignal ('motor_user_offset') - user_offset_dir EpicsSignal ('motor_user_offset_dir') - - Unused attrs - ------------ - offset_freeze_switch EpicsSignal ('motor_offset_freeze_switch') - set_use_switch EpicsSignal ('motor_set_use_switch') - motor_is_moving EpicsSignalRO ('motor_motor_is_moving') - motor_done_move EpicsSignalRO ('motor_motor_done_move') - high_limit_switch EpicsSignal ('motor_high_limit_switch') - low_limit_switch EpicsSignal ('motor_low_limit_switch') - direction_of_travel EpicsSignal ('motor_direction_of_travel') - motor_stop EpicsSignal ('motor_motor_stop') - home_forward EpicsSignal ('motor_home_forward') - home_reverse EpicsSignal ('motor_home_reverse') - -* The Area Detector plugins formerly always enabled themselves during staging. - Now, this behavior is configurable using new methods, ``enable_on_stage()`` - and ``disable_on_stage()``. After unstaging, devices are put into their - original state, whether enabled or disabled. Additionally, there are methods - to control blocking callbacks, ``ensure_blocking()`` and - ``ensure_nonblocking()``. We recommend using blocking callbacks always to - ensure that file names do not get out of sync with acquisitions. -* A device's default read_attrs and configuration_attrs can be more succinctly - specified via the class attributes ``_default_read_attrs`` and - ``_default_configuration_attrs``. -* Some status objects add a new method named ``watch`` which support bluesky's - new progress bar feature. -* The ``ScalerCH`` class has a new method, ``select_channels`` that - coordinates several necessary steps of configuration in one convenient - method. - -Bug Fixes ---------- - -* The area detector plugin ports are validated after staging, giving the - staging process the opportunity to put them into a valid state. - -Maintenance ------------ - -* Ophyd's automated tests are now included inside the Python package in the - package ``ophyd.tests``. -* Ophyd has many fewer dependencies. It no longer requires: - - * ``boltons`` - * ``doct`` - * ``ipython`` - * ``prettytable`` - * ``pyOlog`` (This was previous optional; now it is not used at all.) -* :attr:`ophyd.AreaDetector.filestore_mixin.fs_root` has been deprecated in - favor of :attr:`ophyd.AreaDetector.filestore_mixin.reg_root`. - -v0.6.1 (2017-05-22) -=================== - -(TO DO) - -v0.6.0 (2017-05-05) -=================== - -(TO DO) - -v0.5.0 (2017-01-27) -=================== - -(TO DO) - -v0.4.0 (2016-11-01) -=================== - -Enhancements ------------- - -* Allow ``set_and_wait`` to have a timeout. -* Allow a plugin to have no port name. -* Ensure trailing slashes are included in file plugin filepaths to avoid common - user mistake. - -Breaking Changes ----------------- - -* The bluesky interface now expects the ``stop`` method to accept an optional - ``success`` argument. - -v0.3.1 (2016-09-23) -=================== - -Enhancements ------------- - -* Check alarm status of EpicsMotor to decide success/failure -* Allow ``stage_sigs`` to be attribute *names* to enable lazy-loading. -* Add ``target_initial_position`` parameter to ``PseudoSingle``. - -Fixes ------ - -* Add size-link to ROI plugin. -* Fix QuadEM port name uniqueness. -* Rename ``read`` attribute on MCA, which was shadowing ``read`` method, to - ``force_read``. Add check to ``Device`` to avoid repeating this mistake in - the future. - -v0.3.0 (2016-07-25) -=================== - -Breaking Changes ----------------- - -* Area detector now checks that all plugins in the pipeline of - anything that will be collected as part of ``read``. The - configuration of all of the plugins in the processing chain will now - be included in descriptor document. Tooling to inspect the asyn pipelines - is now part of `ADBase` and `PluginBase`. - -New Features ------------- - -* Add ``pivot`` kwarg to `MonitorFlyierMixin` to optionally provide a - single event as a time series rather than a time series of many - events. -* Add `SignalPositionerMixin` to turn a `Signal` into a positioner. -* Add classes for PCO edge - -Bug Fixes ---------- - -* Be more careful about thread safety around ``pyepics`` - -v0.2.3 (2016-05-05) -=================== - -(TO DO) - -v0.2.2 (2016-03-14) -=================== - -(TO DO) - -v0.2.1 (2016-02-23) -=================== - -(TO DO) - -v0.2.0 (2016-02-10) -=================== - -(TO DO) diff --git a/ophyd/_sources/release_notes.txt b/ophyd/_sources/release_notes.txt deleted file mode 100644 index 2605cd86ee..0000000000 --- a/ophyd/_sources/release_notes.txt +++ /dev/null @@ -1,64 +0,0 @@ -Release Notes -------------- - -0.4.0 -===== - -Enhancements -************ - -* Allow ``set_and_wait`` to have a timeout. -* Allow a plugin to have no port name. -* Ensure trailing slashes are included in file plugin filepaths to avoid common - user mistake. - -API Changes -*********** - -* The bluesky interface now expects the ``stop`` method to accept an optional - ``success`` argument. - -0.3.1 -===== - -Enhancements -************ - -* Check alarm status of EpicsMotor to decide success/failure -* Allow ``stage_sigs`` to be attribute *names* to enable lazy-loading. -* Add ``target_initial_position`` parameter to ``PseudoSingle``. - -Fixes -***** - -* Add size-link to ROI plugin. -* Fix QuadEM port name uniqueness. -* Rename ``read`` attribute on MCA, which was shadowing ``read`` method, to - ``force_read``. Add check to ``Device`` to avoid repeating this mistake in - the future. - -0.3.0 -===== - -API Changes -*********** - -* Area detector now checks that all plugins in the pipeline of - anything that will be collected as part of ``read``. The - configuration of all of the plugins in the processing chain will now - be included in descriptor document. Tooling to inspect the asyn pipelines - is now part of `ADBase` and `PluginBase`. - -New Features -************ - -* Add ``pivot`` kwarg to `MonitorFlyierMixin` to optionally provide a - single event as a time series rather than a time series of many - events. -* Add `SignalPositionerMixin` to turn a `Signal` into a positioner. -* Add classes for PCO edge - -Bug Fixes -********* - -* Be more careful about thread safety around ``pyepics`` diff --git a/ophyd/_sources/signals.rst.txt b/ophyd/_sources/signals.rst.txt deleted file mode 100644 index bfff114d0c..0000000000 --- a/ophyd/_sources/signals.rst.txt +++ /dev/null @@ -1,131 +0,0 @@ -.. _signal_indx: - -Signals -******* - -In EPICS, **Signal** maybe backed by a read-only PV, a single -read-write PV, or a pair of read and write PVs, grouped together. In -any of those cases, a single value is exposed to `bluesky -`_. For more complex hardware, for -example a `motor record -`_, the relationships -between the individual process variables needs to be encoded in a -:class:`~device.Device` (a :class:`~epics_motor.EpicsMotor` class -ships with ophyd for this case). This includes both what **Signals** -are grouped together, but also how to manipulate them a coordinated -fashion to achieve the high-level action (moving a motor, changing a -temperature, opening a valve, or taking data). More complex devices, -like a diffractometer or a Area Detector, can be assembled out of -simpler component devices. - - -A ``Signal`` is much like a ``Device`` -- they share almost the same -interface -- but a ``Signal`` has no sub-components. In ophyd's hierarchical, -tree-like representation of a complex piece of hardware, the signals are -the leaves. Each one represents a single PV or a read--write pair of PVs. - -.. index:: kind attribute -.. _kind: - -:attr:`kind` -------------- - -The :attr:`kind` attribute is the means to identify a signal that is -relevant for handling by a callback. -:attr:`kind` controls whether the signal's parent -Device will include it in ``read()``, ``read_configuration()``, and/or -``hints.fields``. -The first use of :attr:`kind` is to inform -visualization callbacks about the independent and dependent display -axes for plotting. -A Component marked as hinted will return a dictionary with that component's fields list. - -The :attr:`kind` attribute takes string values of: ``config``, -``hinted``, ``normal``, and ``omitted``. -These values are like bit flags, a signal could have multiple values. - -The value may be set either when the :class:`~signal.Signal` is created or -programmatically. -Use the :attr:`kind` attribute when creating a :class:`~signal.Signal` -or :class:`Component`, such as: - -.. code-block:: python - - from ophyd import Kind - - camera.stats1.total.kind = Kind.hinted - camera.stats2.total.kind = Kind.hinted - -or, as a convenient shortcut (eliminates the import) - -.. code-block:: python - - camera.stats1.total.kind = 'hinted' - camera.stats2.total.kind = 'hinted' - -With ophyd v1.2.0 or higher, use :attr:`kind` instead of setting -the :attr:`hints` attribute of the :class:`~device.Device`. See -:ref:`hints_fields` for more details. - -.. index:: labels attribute -.. _labels: - -:attr:`labels` --------------- - -:class:`~signal.Signal` and :class:`~device.Device` now accept -a :attr:`labels` attribute. The value is a list of text strings ---- presumed but not (yet) forced to be strings --- which the user can use -for grouping and displaying available hardware or other ophyd constructs. -The labels are accessible via -an attribute ``_ophyd_labels_``, so named to facilitate duck-typing across -libraries. For example, the bluesky IPython "magics" use this to identify -objects for the purpose of displaying them in labeled groups. - -The IPython magic command ``wa`` (available if bluesky is installed as well -as ophyd) groups items by labels. Here is an example: - -.. code-block:: python - - m1 = EpicsMotor('prj:m1', name='m1', labels=("general",)) - m2 = EpicsMotor('prj:m2', name='m2', labels=("general",)) - - class MyRig(Device): - t = Component(EpicsMotor, "m5", labels=("rig",),) - l = Component(EpicsMotor, "m6", labels=("rig",)) - b = Component(EpicsMotor, "m7", labels=("rig",)) - r = Component(EpicsMotor, "m8", labels=("rig",)) - - - rig = MyRig("prj:", name="rig") - -Then in an ipython session: - -.. code-block:: python - - In [1]: wa - general - Positioner Value Low Limit High Limit Offset - m1 1.0 -100.0 100.0 0.0 - m2 0.0 -100.0 100.0 0.0 - - Local variable name Ophyd name (to be recorded as metadata) - m1 m1 - m2 m2 - - rig - Positioner Value Low Limit High Limit Offset - rig_b 0.0 -100.0 100.0 0.0 - rig_l 0.0 -100.0 100.0 0.0 - rig_r 0.0 -100.0 100.0 0.0 - rig_t 0.0 -100.0 100.0 0.0 - - Local variable name Ophyd name (to be recorded as metadata) - rig.b rig_b - rig.l rig_l - rig.r rig_r - rig.t rig_t - - -.. automodule:: ophyd.signal - :noindex: diff --git a/ophyd/_sources/signals.txt b/ophyd/_sources/signals.txt deleted file mode 100644 index 4262a916ea..0000000000 --- a/ophyd/_sources/signals.txt +++ /dev/null @@ -1,10 +0,0 @@ -Signals -******* - -A ``Signal`` is much like a ``Device`` -- they share almost the same -interface -- but a ``Signal`` has no sub-components. In ophyd's hierarchical, -tree-like representation of a complex piece of hardware, the signals are -the leaves. Each one represents a single PV or a read--write pair of PVs. - -.. automodule:: ophyd.signal - :members: diff --git a/ophyd/_sources/status.rst.txt b/ophyd/_sources/status.rst.txt deleted file mode 100644 index a8586bdba4..0000000000 --- a/ophyd/_sources/status.rst.txt +++ /dev/null @@ -1,244 +0,0 @@ -Status objects (Futures) -======================== - -Ophyd Status objects signal when some potentially-lengthy action is complete. -The action may be moving a motor, acquiring an image, or waiting for a -temperature controller to reach a setpoint. From a general software engineering -point of view, they are like :obj:`concurrent.futures.Future` objects in the -Python standard library but with some semantics specific to controlling -physical hardware. - -The lifecycle of a Status object is: - -#. A Status object is created with an associated timeout. The timeout clock - starts. -#. The recipient of the Status object may add callbacks that will be notified - when the Status object completes. -#. The Status object is marked as completed successfully, or marked as - completed with an error, or the timeout is reached, whichever happens first. - The callbacks are called in any case. - -Creation and Marking Completion -------------------------------- - -A *timeout*, given in seconds, is optional but strongly recommended. (The -default, ``None`` means it will wait forever to be marked completed.) - -.. code:: python - - from ophyd import Status - - status = Status(timeout=60) - -Additionally, it accepts a *settle_time*, an extra delay which will be added -between the control system reporting successful completion and the Status being -marked as finished. This is also given in seconds. It is ``0`` by default. - -.. code:: python - - status = Status(timeout=60, settle_time=10) - -The status should be notified by the control system, typically from another -thread or task, when some action is complete. To mark success, call -:obj:`~ophyd.StatusBase.set_finished`. To mark failure, call -:obj:`~ophyd.StatusBase.set_exception`, passing it an Exception giving -information about the cause of failure. - -As a toy example, we could hook it up to a :obj:`threading.Timer` that marks it -as succeeded or failed based on a coin flip. - -.. code:: python - - import random - import threading - - def mark_done(): - if random.random() > 0.5: # coin flip - status.set_finished() # success - else: - error = Exception("Bad luck") - status.set_exception(error) # failure - - # Run mark_done 5 seconds from now in a thread. - threading.Timer(5, mark_done).start() - -See the tutorials for more realistic examples involving integration with an -actual control system. - -.. versionchanged:: v1.5.0 - - In previous versions of ophyd, the Status objects were marked as completed - by calling ``status._finished(success=True)`` or - ``status._finished(success=False)``. This is still supported but the new - methods ``status.set_finished()`` and ``status.set_exception(...)`` are - recommended because they can provide more information about the *cause* of - failure, and they match the Python standard library's - :obj:`concurrent.futures.Future` interface. - -Notification of Completion --------------------------- - -The recipient of the Status object can request synchronous or asynchronous -notification of completion. To wait synchronously, the :obj:`~ophyd.StatusBase.wait` -will block until the Status is marked as complete or a timeout has expired. - -.. code:: python - - status.wait() # Wait forever for the Status to finish or time out. - status.wait(10) # Wait for at most 10 seconds. - -If and when the Status completes successfully, this will return ``None``. If -the Status is marked as failed, the exception (e.g. ``Exception("Bad luck")`` -in our example above) will be raised. If the Status' own timeout has expired, -:obj:`~ophyd.utils.StatusTimeoutError` will be raised. If a timeout given to -:obj:`~ophyd.StatusBase.wait` expires before any of these things happen, -:obj:`~ophyd.utils.WaitTimeoutError` will be raised. - -The method :obj:`~ophyd.StatusBase.exception` behaves similarly to -:obj:`~ophyd.StatusBase.wait`; the only difference is that if the Status is marked as -failed or the Status' own timeout expires it *returns* the exception rather -than *raising* it. Both return ``None`` if the Status finishes successfully, -and both raise :obj:`~ophyd.utils.WaitTimeoutError` if the given timeout expires -before the Status completes or times out. - -Alternatively, the recipient of the Status object can ask to be notified of -completion asynchronously by adding a callback. The callback will be called -when the Status is marked as complete or its timeout has expired. (If no -timeout was given, the callback might never be called. This is why providing a -timeout is strongly recommended.) - -.. code:: python - - def callback(status): - print(f"{status} is done") - - status.add_callback(callback) - -Callbacks may be added at any time. Until the Status completes, it holds a hard -reference to each callback in a list, ``status.callbacks``. The list is cleared -when the callback completes. Any callbacks added to a Status object *after* -completion will be called immediately, and no reference will be held. - -Each callback is passed to the Status object as an argument, and it can use -this to distinguish success from failure. - -.. code:: python - - def callback(status): - error = status.exception() - if error is None: - print(f"{status} has completed successfully.") - else: - print(f"{status} has failed with error {error}.") - -SubscriptionStatus ------------------- - -The :class:`~ophyd.status.SubscriptionStatus` is a special Status object that -correctly and succinctly handles a common use case, wherein the Status object -is marked finished based on some ophyd event. It reduces this: - -.. code:: python - - from ophyd import Device, Component, DeviceStatus - - class MyToyDetector(Device): - ... - # When set to 1, acquires, and then goes back to 0. - acquire = Component(...) - - def trigger(self): - def check_value(*, old_value, value, **kwargs): - "Mark status as finished when the acquisition is complete." - if old_value == 1 and value == 0: - status.set_finished() - # Clear the subscription. - sself.acquire.clear_sub(check_value) - - status = DeviceStatus(self.acquire) - self.acquire.subscribe(check_value) - self.acquire.set(1) - return status - -to this: - -.. code:: python - - from ophyd import Device, Component, SubscriptionStatus - - class MyToyDetector(Device): - ... - # When set to 1, acquires, and then goes back to 0. - acquire = Component(...) - - def trigger(self): - def check_value(*, old_value, value, **kwargs): - "Return True when the acquisition is complete, False otherwise." - return (old_value == 1 and value == 0) - - status = SubscriptionStatus(self.acquire, check_value) - self.acquire.set(1) - return status - -Note that ``set_finished``, ``subscribe`` and ``clear_sub`` are gone; they are -handled automatically, internally. See -:class:`~ophyd.status.SubscriptionStatus` for additional options. - -Partial Progress Updates ------------------------- - -Some Status objects provide an additional method named ``watch``, as in -:meth:`~ophyd.status.MoveStatus.watch`, which can be used to subscribe to -*incremental* progress updates suitable for building progress bars. See -:doc:`bluesky:progress-bar` for one application of this feature. - -The ``watch`` method accepts a callback which must accept the following -parameters as optional keyword arguments: - -* ``name`` -* ``current`` -* ``initial`` -* ``target`` -* ``unit`` -* ``precision`` -* ``fraction`` -* ``time_elapsed`` -* ``time_remaining`` - -The callback may receive a subset of these depending on how much we can know -about the progress of a particular action. In the case of -:obj:`ophyd.status.MoveStatus` and -:obj:`ophyd.areadetector.trigger_mixins.ADTriggerStatus`, we know a lot, from -which one can build a frequently-updating progress bar with a realistic -estimated time of completion. In the case of a generic -:obj:`ophyd.status.DeviceStatus`, we only know the name of the assocated -Device, when the action starts, and when the action ends. - -Status API details ------------------- - -.. autoclass:: ophyd.status.StatusBase - :members: - -In addition we provide specialized subclasses that know more about the object -they are tied to. - -.. inheritance-diagram:: ophyd.status.StatusBase ophyd.status.MoveStatus ophyd.status.DeviceStatus ophyd.status.Status ophyd.status.SubscriptionStatus - :parts: 2 - -.. autoclass:: ophyd.status.Status - :members: - -.. autoclass:: ophyd.status.DeviceStatus - :members: - -.. autoclass:: ophyd.status.MoveStatus - :members: - -.. autoclass:: ophyd.areadetector.trigger_mixins.ADTriggerStatus - :members: - -.. autoclass:: ophyd.status.SubscriptionStatus - :members: - -.. autofunction:: ophyd.status.wait diff --git a/ophyd/_static/ajax-loader.gif b/ophyd/_static/ajax-loader.gif deleted file mode 100644 index 61faf8cab23993bd3e1560bff0668bd628642330..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 673 zcmZ?wbhEHb6krfw_{6~Q|Nno%(3)e{?)x>&1u}A`t?OF7Z|1gRivOgXi&7IyQd1Pl zGfOfQ60;I3a`F>X^fL3(@);C=vM_KlFfb_o=k{|A33hf2a5d61U}gjg=>Rd%XaNQW zW@Cw{|b%Y*pl8F?4B9 zlo4Fz*0kZGJabY|>}Okf0}CCg{u4`zEPY^pV?j2@h+|igy0+Kz6p;@SpM4s6)XEMg z#3Y4GX>Hjlml5ftdH$4x0JGdn8~MX(U~_^d!Hi)=HU{V%g+mi8#UGbE-*ao8f#h+S z2a0-5+vc7MU$e-NhmBjLIC1v|)9+Im8x1yacJ7{^tLX(ZhYi^rpmXm0`@ku9b53aN zEXH@Y3JaztblgpxbJt{AtE1ad1Ca>{v$rwwvK(>{m~Gf_=-Ro7Fk{#;i~+{{>QtvI yb2P8Zac~?~=sRA>$6{!(^3;ZP0TPFR(G_-UDU(8Jl0?(IXu$~#4A!880|o%~Al1tN diff --git a/ophyd/_static/basic.css b/ophyd/_static/basic.css deleted file mode 100644 index 607b5f5582..0000000000 --- a/ophyd/_static/basic.css +++ /dev/null @@ -1,648 +0,0 @@ -/* - * basic.css - * ~~~~~~~~~ - * - * Sphinx stylesheet -- basic theme. - * - * :copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/* -- main layout ----------------------------------------------------------- */ - -div.clearer { - clear: both; -} - -/* -- relbar ---------------------------------------------------------------- */ - -div.related { - width: 100%; - font-size: 90%; -} - -div.related h3 { - display: none; -} - -div.related ul { - margin: 0; - padding: 0 0 0 10px; - list-style: none; -} - -div.related li { - display: inline; -} - -div.related li.right { - float: right; - margin-right: 5px; -} - -/* -- sidebar --------------------------------------------------------------- */ - -div.sphinxsidebarwrapper { - padding: 10px 5px 0 10px; -} - -div.sphinxsidebar { - float: left; - width: 230px; - margin-left: -100%; - font-size: 90%; - word-wrap: break-word; - overflow-wrap : break-word; -} - -div.sphinxsidebar ul { - list-style: none; -} - -div.sphinxsidebar ul ul, -div.sphinxsidebar ul.want-points { - margin-left: 20px; - list-style: square; -} - -div.sphinxsidebar ul ul { - margin-top: 0; - margin-bottom: 0; -} - -div.sphinxsidebar form { - margin-top: 10px; -} - -div.sphinxsidebar input { - border: 1px solid #98dbcc; - font-family: sans-serif; - font-size: 1em; -} - -div.sphinxsidebar #searchbox input[type="text"] { - width: 170px; -} - -img { - border: 0; - max-width: 100%; -} - -/* -- search page ----------------------------------------------------------- */ - -ul.search { - margin: 10px 0 0 20px; - padding: 0; -} - -ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; -} - -ul.search li a { - font-weight: bold; -} - -ul.search li div.context { - color: #888; - margin: 2px 0 0 30px; - text-align: left; -} - -ul.keywordmatches li.goodmatch a { - font-weight: bold; -} - -/* -- index page ------------------------------------------------------------ */ - -table.contentstable { - width: 90%; - margin-left: auto; - margin-right: auto; -} - -table.contentstable p.biglink { - line-height: 150%; -} - -a.biglink { - font-size: 1.3em; -} - -span.linkdescr { - font-style: italic; - padding-top: 5px; - font-size: 90%; -} - -/* -- general index --------------------------------------------------------- */ - -table.indextable { - width: 100%; -} - -table.indextable td { - text-align: left; - vertical-align: top; -} - -table.indextable ul { - margin-top: 0; - margin-bottom: 0; - list-style-type: none; -} - -table.indextable > tbody > tr > td > ul { - padding-left: 0em; -} - -table.indextable tr.pcap { - height: 10px; -} - -table.indextable tr.cap { - margin-top: 10px; - background-color: #f2f2f2; -} - -img.toggler { - margin-right: 3px; - margin-top: 3px; - cursor: pointer; -} - -div.modindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -div.genindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -/* -- domain module index --------------------------------------------------- */ - -table.modindextable td { - padding: 2px; - border-collapse: collapse; -} - -/* -- general body styles --------------------------------------------------- */ - -div.body p, div.body dd, div.body li, div.body blockquote { - -moz-hyphens: auto; - -ms-hyphens: auto; - -webkit-hyphens: auto; - hyphens: auto; -} - -a.headerlink { - visibility: hidden; -} - -h1:hover > a.headerlink, -h2:hover > a.headerlink, -h3:hover > a.headerlink, -h4:hover > a.headerlink, -h5:hover > a.headerlink, -h6:hover > a.headerlink, -dt:hover > a.headerlink, -caption:hover > a.headerlink, -p.caption:hover > a.headerlink, -div.code-block-caption:hover > a.headerlink { - visibility: visible; -} - -div.body p.caption { - text-align: inherit; -} - -div.body td { - text-align: left; -} - -.first { - margin-top: 0 !important; -} - -p.rubric { - margin-top: 30px; - font-weight: bold; -} - -img.align-left, .figure.align-left, object.align-left { - clear: left; - float: left; - margin-right: 1em; -} - -img.align-right, .figure.align-right, object.align-right { - clear: right; - float: right; - margin-left: 1em; -} - -img.align-center, .figure.align-center, object.align-center { - display: block; - margin-left: auto; - margin-right: auto; -} - -.align-left { - text-align: left; -} - -.align-center { - text-align: center; -} - -.align-right { - text-align: right; -} - -/* -- sidebars -------------------------------------------------------------- */ - -div.sidebar { - margin: 0 0 0.5em 1em; - border: 1px solid #ddb; - padding: 7px 7px 0 7px; - background-color: #ffe; - width: 40%; - float: right; -} - -p.sidebar-title { - font-weight: bold; -} - -/* -- topics ---------------------------------------------------------------- */ - -div.topic { - border: 1px solid #ccc; - padding: 7px 7px 0 7px; - margin: 10px 0 10px 0; -} - -p.topic-title { - font-size: 1.1em; - font-weight: bold; - margin-top: 10px; -} - -/* -- admonitions ----------------------------------------------------------- */ - -div.admonition { - margin-top: 10px; - margin-bottom: 10px; - padding: 7px; -} - -div.admonition dt { - font-weight: bold; -} - -div.admonition dl { - margin-bottom: 0; -} - -p.admonition-title { - margin: 0px 10px 5px 0px; - font-weight: bold; -} - -div.body p.centered { - text-align: center; - margin-top: 25px; -} - -/* -- tables ---------------------------------------------------------------- */ - -table.docutils { - border: 0; - border-collapse: collapse; -} - -table.align-center { - margin-left: auto; - margin-right: auto; -} - -table caption span.caption-number { - font-style: italic; -} - -table caption span.caption-text { -} - -table.docutils td, table.docutils th { - padding: 1px 8px 1px 5px; - border-top: 0; - border-left: 0; - border-right: 0; - border-bottom: 1px solid #aaa; -} - -table.footnote td, table.footnote th { - border: 0 !important; -} - -th { - text-align: left; - padding-right: 5px; -} - -table.citation { - border-left: solid 1px gray; - margin-left: 1px; -} - -table.citation td { - border-bottom: none; -} - -/* -- figures --------------------------------------------------------------- */ - -div.figure { - margin: 0.5em; - padding: 0.5em; -} - -div.figure p.caption { - padding: 0.3em; -} - -div.figure p.caption span.caption-number { - font-style: italic; -} - -div.figure p.caption span.caption-text { -} - -/* -- field list styles ----------------------------------------------------- */ - -table.field-list td, table.field-list th { - border: 0 !important; -} - -.field-list ul { - margin: 0; - padding-left: 1em; -} - -.field-list p { - margin: 0; -} - -.field-name { - -moz-hyphens: manual; - -ms-hyphens: manual; - -webkit-hyphens: manual; - hyphens: manual; -} - -/* -- other body styles ----------------------------------------------------- */ - -ol.arabic { - list-style: decimal; -} - -ol.loweralpha { - list-style: lower-alpha; -} - -ol.upperalpha { - list-style: upper-alpha; -} - -ol.lowerroman { - list-style: lower-roman; -} - -ol.upperroman { - list-style: upper-roman; -} - -dl { - margin-bottom: 15px; -} - -dd p { - margin-top: 0px; -} - -dd ul, dd table { - margin-bottom: 10px; -} - -dd { - margin-top: 3px; - margin-bottom: 10px; - margin-left: 30px; -} - -dt:target, span.highlighted { - background-color: #fbe54e; -} - -rect.highlighted { - fill: #fbe54e; -} - -dl.glossary dt { - font-weight: bold; - font-size: 1.1em; -} - -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - -.versionmodified { - font-style: italic; -} - -.system-message { - background-color: #fda; - padding: 5px; - border: 3px solid red; -} - -.footnote:target { - background-color: #ffa; -} - -.line-block { - display: block; - margin-top: 1em; - margin-bottom: 1em; -} - -.line-block .line-block { - margin-top: 0; - margin-bottom: 0; - margin-left: 1.5em; -} - -.guilabel, .menuselection { - font-family: sans-serif; -} - -.accelerator { - text-decoration: underline; -} - -.classifier { - font-style: oblique; -} - -abbr, acronym { - border-bottom: dotted 1px; - cursor: help; -} - -/* -- code displays --------------------------------------------------------- */ - -pre { - overflow: auto; - overflow-y: hidden; /* fixes display issues on Chrome browsers */ -} - -span.pre { - -moz-hyphens: none; - -ms-hyphens: none; - -webkit-hyphens: none; - hyphens: none; -} - -td.linenos pre { - padding: 5px 0px; - border: 0; - background-color: transparent; - color: #aaa; -} - -table.highlighttable { - margin-left: 0.5em; -} - -table.highlighttable td { - padding: 0 0.5em 0 0.5em; -} - -div.code-block-caption { - padding: 2px 5px; - font-size: small; -} - -div.code-block-caption code { - background-color: transparent; -} - -div.code-block-caption + div > div.highlight > pre { - margin-top: 0; -} - -div.code-block-caption span.caption-number { - padding: 0.1em 0.3em; - font-style: italic; -} - -div.code-block-caption span.caption-text { -} - -div.literal-block-wrapper { - padding: 1em 1em 0; -} - -div.literal-block-wrapper div.highlight { - margin: 0; -} - -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - -code.xref, a code { - background-color: transparent; - font-weight: bold; -} - -h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { - background-color: transparent; -} - -.viewcode-link { - float: right; -} - -.viewcode-back { - float: right; - font-family: sans-serif; -} - -div.viewcode-block:target { - margin: -1px -10px; - padding: 0 10px; -} - -/* -- math display ---------------------------------------------------------- */ - -img.math { - vertical-align: middle; -} - -div.body div.math p { - text-align: center; -} - -span.eqno { - float: right; -} - -span.eqno a.headerlink { - position: relative; - left: 0px; - z-index: 1; -} - -div.math:hover a.headerlink { - visibility: visible; -} - -/* -- printout stylesheet --------------------------------------------------- */ - -@media print { - div.document, - div.documentwrapper, - div.bodywrapper { - margin: 0 !important; - width: 100%; - } - - div.sphinxsidebar, - div.related, - div.footer, - #top-link { - display: none; - } -} \ No newline at end of file diff --git a/ophyd/_static/comment-bright.png b/ophyd/_static/comment-bright.png deleted file mode 100644 index 15e27edb12ac25701ac0ac21b97b52bb4e45415e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 756 zcmVgfIX78 z$8Pzv({A~p%??+>KickCb#0FM1rYN=mBmQ&Nwp<#JXUhU;{|)}%&s>suq6lXw*~s{ zvHx}3C%<;wE5CH!BR{p5@ml9ws}y)=QN-kL2?#`S5d*6j zk`h<}j1>tD$b?4D^N9w}-k)bxXxFg>+#kme^xx#qg6FI-%iv2U{0h(Y)cs%5a|m%Pn_K3X_bDJ>EH#(Fb73Z zfUt2Q3B>N+ot3qb*DqbTZpFIn4a!#_R-}{?-~Hs=xSS6p&$sZ-k1zDdtqU`Y@`#qL z&zv-~)Q#JCU(dI)Hf;$CEnK=6CK50}q7~wdbI->?E07bJ0R;!GSQTs5Am`#;*WHjvHRvY?&$Lm-vq1a_BzocI^ULXV!lbMd%|^B#fY;XX)n<&R^L z=84u1e_3ziq;Hz-*k5~zwY3*oDKt0;bM@M@@89;@m*4RFgvvM_4;5LB!@OB@^WbVT zjl{t;a8_>od-~P4 m{5|DvB&z#xT;*OnJqG}gk~_7HcNkCr0000W zanA~u9RIXo;n7c96&U)YLgs-FGlx~*_c{Jgvesu1E5(8YEf&5wF=YFPcRe@1=MJmi zag(L*xc2r0(slpcN!vC5CUju;vHJkHc*&70_n2OZsK%O~A=!+YIw z7zLLl7~Z+~RgWOQ=MI6$#0pvpu$Q43 zP@36QAmu6!_9NPM?o<1_!+stoVRRZbW9#SPe!n;#A_6m8f}|xN1;H{`0RoXQ2LM47 zt(g;iZ6|pCb@h2xk&(}S3=EVBUO0e90m2Lp5CB<(SPIaB;n4))3JB87Or#XPOPcum z?<^(g+m9}VNn4Y&B`g8h{t_$+RB1%HKRY6fjtd-<7&EsU;vs0GM(Lmbhi%Gwcfs0FTF}T zL{_M6Go&E0Eg8FuB*(Yn+Z*RVTBE@10eIOb3El^MhO`GabDll(V0&FlJi2k^;q8af zkENdk2}x2)_KVp`5OAwXZM;dG0?M-S)xE1IKDi6BY@5%Or?#aZ9$gcX)dPZ&wA1a< z$rFXHPn|TBf`e?>Are8sKtKrKcjF$i^lp!zkL?C|y^vlHr1HXeVJd;1I~g&Ob-q)& z(fn7s-KI}G{wnKzg_U5G(V%bX6uk zIa+<@>rdmZYd!9Y=C0cuchrbIjuRB_Wq{-RXlic?flu1*_ux}x%(HDH&nT`k^xCeC ziHi1!ChH*sQ6|UqJpTTzX$aw8e(UfcS^f;6yBWd+(1-70zU(rtxtqR%j z-lsH|CKQJXqD{+F7V0OTv8@{~(wp(`oIP^ZykMWgR>&|RsklFMCnOo&Bd{le} zV5F6424Qzl;o2G%oVvmHgRDP9!=rK8fy^!yV8y*4p=??uIRrrr0?>O!(z*g5AvL2!4z0{sq%vhG*Po}`a<6%kTK5TNhtC8}rXNu&h^QH4A&Sk~Autm*s~45(H7+0bi^MraaRVzr05hQ3iK?j` zR#U@^i0WhkIHTg29u~|ypU?sXCQEQgXfObPW;+0YAF;|5XyaMAEM0sQ@4-xCZe=0e z7r$ofiAxn@O5#RodD8rh5D@nKQ;?lcf@tg4o+Wp44aMl~c47azN_(im0N)7OqdPBC zGw;353_o$DqGRDhuhU$Eaj!@m000000NkvXXu0mjfjZ7Z_ diff --git a/ophyd/_static/css/badge_only.css b/ophyd/_static/css/badge_only.css deleted file mode 100644 index e380325bc6..0000000000 --- a/ophyd/_static/css/badge_only.css +++ /dev/null @@ -1 +0,0 @@ -.fa:before{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#FontAwesome) format("svg")}.fa:before{font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1}.fa:before,a .fa{text-decoration:inherit}.fa:before,a .fa,li .fa{display:inline-block}li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-.8em}ul.fas li .fa{width:.8em}ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before,.icon-book:before{content:"\f02d"}.fa-caret-down:before,.icon-caret-down:before{content:"\f0d7"}.fa-caret-up:before,.icon-caret-up:before{content:"\f0d8"}.fa-caret-left:before,.icon-caret-left:before{content:"\f0d9"}.fa-caret-right:before,.icon-caret-right:before{content:"\f0da"}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60}.rst-versions .rst-current-version:after{clear:both;content:"";display:block}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px;max-height:90%}.rst-versions.rst-badge .fa-book,.rst-versions.rst-badge .icon-book{float:none;line-height:30px}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book,.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge>.rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width:768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}} \ No newline at end of file diff --git a/ophyd/_static/css/fonts/Roboto-Slab-Bold.woff b/ophyd/_static/css/fonts/Roboto-Slab-Bold.woff deleted file mode 100644 index 6cb60000181dbd348963953ac8ac54afb46c63d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87624 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

!pma|lSQ?8FBe{DRl|@FzhU7Cb>&@ataZS{g zrCQo@Lushkm71KyL3$%QD?KeSADp!x{f z=8g-xggQyFIyp&U(+DO4!2ygCg$vPu1pqEc^*Qa)IPstXB!i@fDLx<-```)5UsmT$Yl%a2onC zAFmUqUVZ7M=U;sB~=#ZhJ zS2lbGii8+5IZ#kxQUi*iaRi9X

#R4x5a04mzf2YJ>#U<-Nc81}`=EFMdUjIP>d| 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

b(7>T&1{%W+D%3_gwxcBR7_myM-&X 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 DnuPx& diff --git a/ophyd/_static/css/fonts/Roboto-Slab-Regular.woff b/ophyd/_static/css/fonts/Roboto-Slab-Regular.woff deleted file mode 100644 index f815f63f99da80ad2be69e4021023ec2981eaea0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 86288 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 z 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

msZ%O|+*Z+LS;;x4v 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%0AU9xwl*jMUcB+ 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 NDMp1hFB${m{{V&DCTjoy diff --git a/ophyd/_static/css/fonts/lato-bold-italic.woff2 b/ophyd/_static/css/fonts/lato-bold-italic.woff2 deleted file mode 100644 index c4e3d804b57b625b16a36d767bfca6bbf63d414e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 193308 zcmbrmV~{1$wl!L|ZQHKuvh6P0?6Pg!wr$(C-DTT;)#rTo#uxG4zn76abMMH^Scx&m zm~*U^+eJ>42>=iP008J72LSPB4e4_M0Cd*~00g}9^XvaLVMm?7;LMtU=>b%bK=_$J zrl2E2K*jX%M;-_PvH_6*Z*wCD`T{|3^8ef76A-T=D!!K0uMUtyCfbipnb@-6~>&vo<=5v&El{-By6>L{OV6 zw||(fG9&(2G32VVLaL}&V;soRBk|UGrXV;Q@4hqz++ES86zcsi!$pOBmaPXk>}RS> z$(yRVKUiZ@Ywu+rI2x8d%2-|=3USQcE(0I-vC}|TFL1SG zh8RjT1O)~p%^H&4y;e*I%RH_~fq7)k{-oMK>?y}Rm=5s!QOvPUm?bA5TLMuGSw19L z0tF}LLlNg;9wnO0(2yrq!)YYERts0XN!@9!vuKYy)C|mA<=Wu^_MigiFKG3d{KCh$ zd7O0Y0yjNxpo17;Xc+rhK?{LuWUB}!yT;a)1JbTC+td2P@$?L-)R_Pn%|6fZ%1Pn( z_#Mhg6$K(uy7Ms_-7GnU&fwQZ6@k$*B*j9qC^{Rh7H@_r>IM{vXXidJ^ym$8dZW1XKQ(OAR|H(~DV#0HtO@y|>qAhz zZ$+LQmpWJF_8a)hYbf;x`QFZqcV$qNL83-at%*!$Q5v`uqLLl4dmt6;Qp`P3BV#W5 z096uniju@dI1C%5hTbrjBDj?3)Qa`uQEwczH3bFLzoDK2-Um7rQzvs_+)e=g$QX#A zt^tSamwn_0=${}smMRN;_EKQgboTl=7gDm)7SmK&sSAbFC4KVqhlii<_Oepct%_XI zIoh#P(aSyUg*5n`gu2E%-)SWZg##grz>21|6SHGhBXy4F`lSrmN9C*hnc}Jq10_Q& zv$7pgpmGZ7o7-D)A4!FcJ6gcd%5CIG6dU4Io~wHo86y_yW*r5vyj8H|V!bI}e&Iwo zKR}~)(awps%)6*HqQ+&k-@aA2GmVnWVxUKrbk*57s?I}@iII=H?l6(+3nRbHuEc%J z`znQ|taoIRmq*i1+A*peKsy(@*y$fq1A}=)C^f{ zA6*wLgh~pJ07pNFgfzpbQnGco4Q4GL^edQC1Dg>x=lq?;5is0O7fk}hIdSplweyTY zg@ANudQIdQ4uw~hH!2NM%567J3Az%PRUCIbHQS{-{I@IMRKglt%e!rH^=S~&5tcT~ zfZCx{=c*n{XCNBpA(kVfa)VS%tgiG_KRsKwQg?3v-4tV+^j{Y5HezTHT=5hR$NI{r z)G@%;U>D~zs36rnYW0#&>FV}$(9UO2BV1i;CKvy4K8X*21WPlXCYIU&TnphSSAQEc z`@ieJATZ8)+v`{sO_TGYxhvWhs=7U^J7s-MbFUR=z)<#k?g1m6S&Q961zLP5G!99e zIC)R=7;=gNq)Q8%*ae;;ej!J(`9$Rcl4vdd3)VpUp0?|xSijMntCw=wrE7F>>8$uy zD)$t0_Cu|Q!rjyVbgm78(k-ns(ml!4QsLDJ9<5^fpVayw4UD8GA37)C4;~6`r%n`lhr}*l!ZQPk( z@?v-pv1w%6vdEknx?`Srtz=ptlDGRzQbZ1OokXwTCD+{rJj0+ybSi(BHm*aIbLCJd zqxEKSdO3W4cu%Dt^xObd0OW0v=Nom9f2h=subU9}XQ*aP(!#Ojg|4N~pdfX>tMp9T zz1MHtP>rC7nwqFaG_8XZK6BZl+EmJ%+$tV<82-uUgh)ej34TVrvMftM5>P1!d9f2v z6CA40!Wo7#NGQ95Wu@L<%+q}_W3-btjirP1>Ydl;PuDT+-ac|?5RdgS+Tl{=xC(Yn zg7XqiDnIVDfB2C+T3JHdHf(NVHQpe4mhOO4;<;i~yy|(-=<{evX#9EnBhPs}744n2 zszj6bkYY~10tVZvoS^D>fSlHWoz&}j?M#EyBe`AcLU1^K!` zaX8nF>0IV%3B|TUFpDL(B7tzDs12@W_h(n#l*=nDw~`a4<7U7XT{>L8AdN`TV`Wkbe61G?Y! zB8}K|Zp${C=P{eznK*&PJYZ9Ax8|@aRaLsW>xz*#8J#Oe`OukK3`8dX#3|>O2ElYi z(OLWi*c!|01Cc|CbD+X8Y7aV&==s?EyK0+I;_+3CPOjzbRH0fQ+dQqywmS{|CTA7L zYaiKobqHs{b#;0}*~cB3t9+Il@Y5|@s+CnJ`*ri8ny%|#!mkj>c0>z^^8UpB4DNj` z&kwPVZCk#tz}N2Uciwxi(jSDE-`)btdtXcZcHfx~p@a7)fB-@Z<5&LKBqKKv;(hn^ zCdc=l`JV&c4WN~R%H@|HCQej4!{?>y*)p=kKm`y$1bT@Oe-6;6IM@_S9W!D|gMl9m zv>iDbHgr>8)*{^uI^(74d1a&`RL$i3wapn;#M!cdx1OVpCRDP`$1`OrncmW96ILJj z+NO5v7VU&H1_v|_)pwGAyCLwcqsw(+N-iHNmx)1sh^Jcp_m7HzsgdXA*`nkVruZWI zInfhjB;}$_?a-NCZ2C5PKb@mByUKl#?fATr^Z2M!7DZ$V*2v-}r!A)DD}zH;hTl>r zzBJk0^b84gyJGaKXXO#2EBAF6bLp}XHs|yy#Vd`-Q{NfG;hiHb?xi2A4$jbXp}d|> za3eDhT#vD;trNbO`2_8IIC&f1WVgerC3RW|e3%1Yo*9G4`~KXtCs$>kb6bAnU#ggP z=AwR`ZmK0!w`{TU>qo~^h^MCO`WtUL=r$eMKUz##LJds2v$OiVT6XToTA0aI+5O!*cH!%5EYKY7%^WKUNN1 zUY61<6mX+VAumY2mB%O(3(-z>N55siZ0>wgzC%9b4!t3RUm*vEWS zx~abrUVk5IzP3#8DSj2)kxzVg1ib8v7wr&!^SvUz@{N59d{N##r^w|ha=K*jKO37trUp@^jhRp@GRRZ$1t zVf1RwhwPd30n!#8uO`!|qHku&Xz#q+&5llPm1am&P8lWNq_*AgWkUbvXB{`s=`uZ) z4z(KBs`=WNGy7Puw%}NddQT+eo5aQERV`xmUsQRAEKf-)Li;MBqLAf+V9h$E>3N_l zgz3jm#Xjm-cMUnLG-+Y-TdZd7Wsq@yKD!`fg~P$G5%#5v7OI`rh`UeuwWXOnGd(0E z#(V%cfU9gAfDgWJ@Xx2qsgGCs2LvQYlDT9b>N+BrLRpYp7>o@{;E3;>6?3wRu5Il& z3V95!JuTT~qb5T^Kx~p`k_ie;rtfcE{j*Elm*Vqp)hn;-`|#Cj2NfJ$g-Li&`fjPU zA;+RrR5NJJbs$>QBEROc5``?1f-w@q!>tn-RyKj zgLptg|9k|TX|VP<>-7CU-q|}xIUYNff+QLO3gdLb9vp`4NW>+rO$rgw_?O;F)%D#3 z$O0-ezOFCF@1IaUF4LW-Znyxoy&8oE(vhJcRPd2hG(8MGXLPAT!oN;g3-ZwxEuOBN zJ#-Nu!UUy21UV7~a^)#dpqwy4AjEE>*XVhEh-Tl?BGrNs~@_|DUQb%G5Ap9jbEuwLj z{;9mu&xl56Px|aA9*ZEHEFMFx=&s`?2qAaknoX4FI*%MpEmysN3PBi%AZSaY#gYAB zx4#auRU&0PM9Zp6GO z3+u;cDlK0CY)qdsZvWxX!!JR%P;53FfG`H1Rh@1(^u3b*ze4*s!sr~H!8k20T?`&(=b zE8S?B%bb^nnMSFf?-(0a4|F*Q>3H8v=y(s;KPhNoQz?-O85p+ocPP&Kt5Kq(1K+>R z>0p>`xL$AYL`Rrmb#*l~xjq(&p|78Yzf#bP_`GVxd#H5fTQ&50L<6!hw}|=kFhQ7X zume~Uq3-iEH6--Paq#8X^6}fsSUJ1$ePdN6KP^xoAEh4&kGOWAkO6ByRl8?>iJJ#t z0}LYEfg>tIBYES*l+JrPW&I_~%`G7$#DPOK+`-i~Bqhe7^%uL;I}fJ;HCYJ_o^3p_ zdr$QiNiKtZC}bTiK*#if@-U#KfH-{LCMO9PHVu(JHfDdQKulyGMr1gGKrMqAC@L^Y z0fVk|<*++2@Zt(R)VZ`XFKWL33vKlwq>brNB1|#?>1Qd2o-QbHJ`}mL0-ikFe5+%C zLqtABdcJvjG5ImT#*4&8P?=2Y++Ms)z!L$lULraQQ!T zRP>LQn6Y3*i7F)eZ_J;#NK4D9#P^%Dr0JnZ#M4A8Kz+MAE6QQ;=)?0-g06$D15(Aq zCw3Bzn@VZ;CvdzqrClix*`mtl9XL1@CEhS7JrItX z03SQ)uF>}Ua_eFi2{uIETh@c%?VLf|a)RSK|7ghBuNtxl7v{$DK1V_rSBo888OLP= zaRk>(IB`}H2*^NB?=Z80%}`-_swv`QL#uW4nlDT8hQXJR#?{ZVs6*LlmCnx9w>>QKwu>ifCs-$fweOIE-3zNn zLUX;~3#fGc*fremBScv6a=@9F4mMiiL34swXr2qYBAIEgg)7UZC0Mx40<-jdv+#WS z=l8(;OHV?}H7o)`iKG!#pku4%DH_u2g)40;m{|G5j5~N|WC)s2AV?b9&(#KJXidu% zJ$(bqf)35WCQ~FiAJ}AXtxzdxlu^K*+~6>#^N3!9Y@&?GS15@jK@5cec^L>0A%9%` z?*j_}&Ej9vX^QKH+%LJnPIG^Ts&4p{3gcR$e z&Gx-PLsDy%T0c=h-u-=WxX;l^d&lm`VKhj>&r=J!eHSVvN9kW&cDQqo2g(NtN-G>% z2E#TqZ34=p1_7PysL>bH2;`qjH|q?I?Q6NBRCN~QaP|KrBNe!#QYkkh6&8OQPeG7y zpJdhD-rFmGS(;k7zI?m=g1yTA@;K!8uUxx=8`xuaN zc@)3$M9jhr5r%+t9g8NiQF2^t-PMZ#zsXfK6Dx{mXB1?q&0{GYYb%pgt_zxqYRYSx zcLB~ropw65Q3Q3$096!=MA%123gP6mN6vktb#-LYy$li+{sql_Hbl7f-6iYc@vIzm zVYNL3$=m1Q+V%NlZ+aC9IH86CD0!Or9^kXD8%Bnd3FMVh*wI*(#Wd6P4GeDu42I$A zdaP#C65PwD6!vb)h&fy)aEkGSxO z%Uev`y?7k)$%~fzyay&e5Hh2KfvU}k0H@;?jf)oaXF+vgK4fi1$p@EC8#Gs8QQ);2)Ht;2 zBBh1P(x`p_{_zUiiB2v-3kf`9B%c zk1m-11ibQ3z$Xr)|9#elfuEa2!6K&o_?{^?R-L*2qE`>I#Cg`vkg0M1nnw?Xv$GXM zTEE=4SA_Tiv#DC(;s+WFb_D{*v9R^0CL0K4UZjzSc#&%|9yJ4I#$%3NfxjN8kx#q) zFst_FKvrf%$rUpN}m##es7w;TzAfs8{FenoG zC3n$m5z*}tH^e35OAx`uTn~_0^h)!Yx%Zg`4OzqsSmZ0_>yxueu9uWop1)FVQ~b=w zg8PDD*%AgP9nqybfu)a(<5<6#?t`{KouAw`po_JwOltrq}K z@`z_C6OAx6>ND`X()8AFNd&-mA)7JVZ$z=MIc3AuYt02atwKk(7N)JD4aq__+Fa;I zcpi6KL+-C=m%ZE&RxIb#Vw}YJY!&PP20?;0_l|757 zyDqAvt=5?kgAV*iE(#!8@3#}2NLM-xio~U@G@Fe&^*OnU8fh0&^(PCbwTkM0Z+~cR zQtq7UXSV-I&Z+FxPR!5p&k{>QO-a0nKt-=KB?Wz#vhyR$zig?SSghlo`QCmrxyIXL zu8yI34aBC_U5YVfEjtK2XgwfXIjH64c*dD34W`jF;JNwuuD?!NR=F@qC*?n);v+=O z1(J?bUOI<-U!k9Ay#MUV7UW%!EGltCB_@DFRF^kldw)Jwq~j@Z_MQgrf)Nj$U4_9~ z_a#yV^1Zp~dek^QA|w*&E&QcZ3C>7JbToar4gYP-RQKr)jDJHOZg zBl2`7^AH$B0Kq6OnXH^+qB%WjYaq2x9@~VzD#Oq!f^-3-q^Y)?)-9e|su*Tq84vOX z-ZAWyHx;EX){65ir*WLoQk8QwYz~+8<$6PP%K0EmU;TU{8Df90YbHLfPvvo~Tq@PP znYd&< zrDU^&WHaU34}Imr_$Nl>8@2dXXe6J1G=C;cJpRtlq;jn18h*@Fm#ePM##m`spTv=? zUX!^dvsy6VQIYY;@rd+Htjr>Oa^{-KBM;WrEzp+G{(X)BIS?--c=EoalXOJ6!rK9wB|I*ON(EGq^a>_X1 z#w@BGDBVLSK&^$GkCTO_6GjUG1;7WY4GL^Avxc`dcAlkh>N96^+B;ha_4Gzn?m7UaMpfR|2g1vsN!!9d?zl?u=COcGdGj%s zop1nY1c`sYcd&2pgH%}nGOiS`VS%f(bU4q1Q9-@F@0rU~(bdVyJ*~_z09HHgyw41_ z%my0&M90~=x~Bj3crM2xRK6cc*~JHF6}AAZxaq+EuNMrf%C!*L<5|H{cjUORS%;XxxOfK3`d#j*7j? zjW>fu|0z#nmpkZ70>R;k$)407gapj>;~0+z?+mzbb5Y~HVHeG>*QZ(OkBJ2UFhqk& zfrQ(e#;sl7aJ=K+X{rCv9H=gUk!}~=p;kgi^PL>!rh%^`Y!|_5Mn3+M0}xmc?+lK zn=MvP*=kB$#1TG~R;pekBN>SPPuUwf!oYoGe{}MFbtS8^V}n!sjU+ngQXLu!QxvEu zNm0ZXctI*M$n#0}(YLARnbFGX(; z5;t>)nLNTl6E8@j(;aN6gD~;KSYP4v&8)H<+|x5(U1I)|Ht7ow`jHF)jMEGlyDL|g z6G-dD55`q#%1Pz;*J(U4`4o{1!x%s3CmKou8Bf6Q!PP(|i5u;7@q4Bn966G)AA>m3 z)pMAw;yT62Djh*s7>ZI@&^2XXQulNE;GQhxKGVIl^tvJ(<2KTCQNu%nac1vZ&Yt5q zQAoL}+_XxgDW52x_oL+7vMt~RU9*x<`#jv>i;2>k!7ni{DMah_S`aP}_7DDK(KKLp z5#WWNKxng(!|v^xjl2e}a)ZFLMP(>!Xb1{DAoExwuMUyoG5)E}fi)d-_FVNw}vP#bq6-FYKoO74!o%m{S9)W6PE zfxW&P-q*mNS7NTNjodds|F*rKqHkV%XMOIW9b?Ad%~9;`e8%y~7RJQfw0=Woxb^#- zH0C3=uobc>xHW*xeE}KVMRN>?yI5f%5CoK44VduB3&bz`Gsm;M#c9 zpSbz%r-*U0bn}!v@s@ge7C(OrKMQ+tUCHU*YycP7*3k{jcArmQ_w4|e9K@u+`#u99 zkKwj0JTsWSweu?F5NZdY=Bikk zBn_le$<%Nk$z7=iRESnqX>AlfE^B6NO0=}^F26+Bfe%be`nLV_|3&#n(TQ1nANGn@ zZ5utUJA1Cbx~`0YKcBAxaHKheY^o2{= zWUG_uOYNwZ@@PJ-vf_0fewH6lmtv|C*PQyH@oUr@&XkcqVws2jm&wQ3A}ai7r(>TeMVkah2rqNV!6AoTeg z33-GQ0&+rvq%Z>dK~YRnklQh%C@(}!$T-QvTZ^6Mw`sHWSjvi1$Ae!&6N9Rltlpx7 zoIofc?nicds(#@DyfheCQvKR;>3SJR_k}dp67L0sAf^aLCJ|w#8G+6xp}v}+f)0)$ z;-@+2YlTqdPa|nr)O<|0PDSeu4ht5#+xaA`Gt~B|i;Wo9T_*FyqMERwPa?aT;XQfr zHo3s}3}hlIvz~%XmR@Sea35QKrI=dV`3&mXp@7)CqQ6@?;Z2ct%YKiH6LqfKj0yMJ zcYh;3C5M+=f6;jzeVI&N}FLvn5DN9D4B{u8aI9ru7FpnxO4&o5U2;T)l)aqS=QCnHvCro zx$$Pza=gv6b>3C<=vDX3KjJkj^n9PVI9gWRQGz*Sl7nr1<@RvoQ4loUGn8#c`M|Js z2;reAP#deVFG~W+wEHC@@1&O}Dskj;cinW8>%Av`U2a?M!Mb8nn&o=CpFOdh;^*u)L5=sl7JiNztc z!|pph$aS&qgS@MYvrmaj@80p=A)7~qo9?=$J7+G5Z*_B$56LT^JW zQ{wR;X@V;?YNNN0Vo&UI45J7fe{_Hz z2}5#Bx7iz?iy<2;MEh4Vk5LT(d~XbeDr(v{m4+>3VjsG((aEvxAOqqKPeOrZz#fpB zh=#hn_?RcgpUv>VXZjyi01G4rIkaH>>R;0EF*? zNUWI!AG-eRXuL=YAc$qvZN~ti07EVwZlXruZxEI^aZ@QhO`TZ2_t;~eh$+Z-lz%)p`5e+{Wf>C)Jg(NushB94s-7r%Eo3o6{eUY0T6Pqu?Hg;zPvAa(Ye0J*j|>5 zVH@BlfYukGz~C`EbIi9+Cd`&i(LExe8;u4-3=UzKhU( z>$XNHk4tQXjFcd#8dGFi?sVTKvNjIviUW|bce85Y>%vTq_iUo(J1F6tWB+of&t_!U zWDfpE&FKAuI^qdG50Xv~52F9)o~!4W7|Jc00&O3lfVm|+ax?j1wt?$X9r11D+*Iv& z<4<63f4q$~*u*G4Q~UXu_t6$wr>Zp9kcB-?{ehr1l8;FmSjMvY4H?T26|HD zYW24^ec(BXU4a7ntEbiuv4wGF5fdxy2Bj_AWT?094Y0+QhyZwpmtUZ>bsdqT=KYos z2q_|Yo%4*doGw?`JZk<;2dk|S=@bR2lr$})KWn=#b#Bb% zE&Y?#gHLGX?_>}cKExbSp6I+iPPQm#cV!s;LR0PYn^?`-F|p z=RMyBygwq!0A#$0S~R#n#aMW`#4rFVs=lC12COcMAE+%sHb2S#;2($M(*I6cZ8qi*uop&qyG3Vu$}i_>F3Fvf?%1*z@F5HG zpgkLpgNhy_4EZ8F!HNsp_@GIctR$Bc&3{$skzvS%t{wvuZ_1J;OTeWc524&XCQ6Cr zQYXTQ9C#zifijU5tg2uZ6`{jeMI_ak$6-|!?>WMDv$ky8vYYd#D&g4}aa*b4Ied^g z-!c)aEg-Z&ZcogrVFh!Lms*Igi*qP>@4A-7-|S3W@*K>(-Ll*Grm5iWuI5AU_=-4q zgX^e!ez*OkT|4*cV$W!6(P(Yatc~%ile2wa{P0pSo<)Do59H33m)OSQgSdV^OHJpE5#GVtFuH1<;4Xgx@fME2>cUEeMg+s6+Ll z5SHds_tyhiihd0Jo7|s_l?CXFP+3_vk0h5zXuf+;kh0~EEfRg&YKXV}ur^tRp*0s$ zA0N%&trs-#tQ!qA3$rDJAYlZRBx+iCn)%qVCd*araCyhEZ!DIybm3WrXSJOjX^)rS zd%CCG{PwbZ`mxY*H+ttIPAckScL^Gbk}m#tSqXm33aN!VuQbKJAQk^ViL)b2GGB{6fBlFT2hTSP z9-;c-O%?Vxk+`B+3>shH+y7h;zcgCLz~L>Z#yV#^8nAH(5rzO`CV_b{k5isIpunI1 zvS;$vu49|-tG|(h*ttAz(im975L8aP_UQ)?ZcTkneU!;6{8^x>+j71_3IK$8qt9Da zo96UR7XqYscywC?C=o@nxUTIx*TrP;;Z2G429qY`qX9WqRax2}04e^bb!#lB`k`HA0zB-7wx(WxGrAZf-L&;THQ z370dB96)I}$M&~38Gkji$=(Sq16r|oNURhWO6WnLhx>=2o1Wx?;1oENjt+)WDCB4g zgANOuBuhFSh^Pby)qbZHuFfTMw-3uwxmY$=u`YAF*gLU%2zerd<2U>T-Tb?0IMQv3 zxfK7!xXCD* zE*2Ii4@35#S#K_gD?7AAPPbY9mqa~(>QTPem&#b`MIUUKxQRLG!sKeewFK)bSM$9T z*+BK+zUvo&QAJxeX`7bjU&+tE#P=D1e4M=8zJ1TLR86bG*pk{J&)C>6^8BqTZLVZb zM*10LbF5kj*0$mq-!@N0uRGSkn_9416_sYtq-+Msy`RBu560+sD%$MoINL1;H0Q)L z*G4pr%U52w8fv&YTR6L}HQHP>KVz@8*GQbi>TZiGeujEPd~VkbNFCi)UgGLd^g8-9zgIWE!zRtr4-KUf8oD9rzcPqstpUp%=62$hv0guLG(V*@6`j;7 z&>na)*eqGLw%V&t!N<^?!P`>naJw>6S`pa+`w z3m%pXv&K3WtnAXw{PPJ8EC-|ls)=zMVb)j;Sa}cm1oo}s8eh@+G0{OTYSFE%0roal zzexM@Y4dV}dkEU5t%HTTX~`P(-bUpBcmjm1LB?1ev?2Ykh7K)a^HeTvCdf930iini zZ}*c*wQ1!rA0o)hM_>|tZ&OUBtv~tV{7fhAt-sBug9WzL2evq_=Ur2m6CAHdXAPeA zzS5BROqfz1^qj@DRP9_OQz|@*5?nj#oMcN8HhCGB_C=??54Mw9J&Zn^iVBU54i73! z;mFkR0V*4iB$v}5h0THy57nCmYd8(_ra3LWGz}JE$Rd7{-9RE3bX9tfS|NL}O&7s? z8}ELs@afnA^?ubS-t^nh_L4hzb`XqMctoGFs+hJ=ktt#+{&V11wMFjwqi;TAU8WDj z{1JYlo$ZWzj$xn-S}tvE0mTN#f@G=LC45*rm}*feg85ClhuIYI*p-n zF$7Y#M3MC}Kmrir(srS_6%GME6STqaZcqnBd&e!k zM}EJQytyQk6aRtRz*2~x998+OH<~QPkVZ=xL5C2*p!42tzW$XhiWn8}OSk%~S==@DCCxRe4om0K!PrAj%oslI>j>c^zdw!CnLox%V`Kv`aGFzuk zUSl}Qn6j6>B9!Rk3%7gcWJ+|;MGT(j*F$gcqR}n-GJNN8@k@vliAuc(C{VObm;fD< z>$n;@1V9ey1Wb@LX!vO`^FRZ2L$zR*-ibOn=0s#wxps>ISFlt_CtfDNF;Jk$oD5R* z1(_f7--=RBznqV^%IDkLTY(42ZML`YAHx>WPP|^O7q->CLzh+kKoO4n*^e%0qAha( zmY!Z+Pw9WbHM3`4vGmxz9SAoY&8$LhTA6LhkGJGQl||gbC=lMVdSG#_yW)Ol$_^B9 zEAh4~_iIE6ke*=U#!FZ z1|&<)>zhA1t0Pb{#s&AeM8!*$wctB-To4l`!3HYFux;=d`R z=*%x^QbHohVb?{EvaIMoA$AN$HVX!Dei0ZCdxIt>2pum*YuUEMl%h%NVJ8dr^TO0T z8s+VN!}Q1Kd(o|Q{r0Q~ju)TT>(f5_S3W%WGRuD@(~FIn%Re9o##9@GHcbt;jDfP< z0&;PInE};xbHA7~gIve`*KktOu_N8KdqqNMiQ;TxhFStWYfhE-dDgJ=-qTpAb7#B1 zT>V$|BTcE(s!DFtTVZp#H;y;nrj|?9FO6g6f2AU{z91&LBBWV6AVGg16I~%w4f?hv zax?)@*ne`BO{T{ zy8iicj{p9Ipp}2Un?T}$LNc2of$)E~_(6n|D$)(yGySTOFOMJod_aQ`F@XHvnsdND z9)bU-bO!!O_$N%X#K~vLECR!ZNEFkw@}!fqQyOF3Hv~m&Xo^j-5vYm9UJ2FqV8I`3Ru1 z%ax&9v{lY071tk^y0bhYY%E$Qci(4Vf}f3vFjy;(Mv;P@<67!roi%!r6W{S+NXPTm zLLLqNniE*UN76*JB}<_tQ|t*r={Kl$bj=2~sF^Nx6t`qm9UkeZtLeP`5+kQ?)?)I{ zU%&rqFTe#IRnOZ>5r@Uw(5RCOheOt;d9G`$#o3@J9d04rRD_js8TJO{&%IB_v4cPer!U#Q1`qkvXKLPg73IfEy( zo$Ejk8Hz)7-As?RjBf-~Vh(2F7RXopf6SHlU)mn)f(-K7g}X4c8>H19+*t&q%bz$# zy?`WwRfDgxN@X9BVP>^xs~22H_G~xKkSu%20K)d+8bdU+OYd;f6VoHm|7y*Db)p}^ zf8CLJ{N0Wk>nm)fZup8Xtv#CxsZ}Ggs!tOkQ6q(`m^ObQ2o^{c-$YSm&LxU0IG#~k zn7vFo#BnPu*b;RG*~nv*-U!qzX@fv7@L42cW|0gB{m#|JnX05rIF7#UfbHynJk*2{ z=R28fpxL@pZtI8H#0UIevY9c`FY0eG9eF0X$A-=DG3q}<4p&i7{>{xBJH>l1NmC;= z#yUHNAM1L@r4E%5ApC#95dPKN1#r@h!2CZ+etM#D#6Oqz|Ej=;4po{Q8~+(Tw{QJ! zVD0}xvu)pD1|A?(SmM71(RAID)JqPx$L-lv2Yin66I?e=*2j$$&a4)mE&)my>A%2J zDr42q25?3AZ(*K~88BzmtY$@5ZSB|rKRs^UjE&MUFx??RLj}sAWiF*C%WsYWT#}&n zbdD9{h{7|*&$74HX8i%S&E@lb@a|NCup5`tMGA~FZGxxenodAO@PrUqY8E?+a?Thv zZ988X#GGaDku>o1mVPtN&UV3(+!f$2?7M+uj-wMUMx_4 zs{g*?S^>3N4&(Tr@4kicO7SETNGDB7%F4?BS^TV(SDdu}GfTu5#*?(qkU~E1YB@Bc zYJ(*eC^%12&`=L=Zur1NXv+Y(Fd4Kin>uBX8Md=`IBlCOv_*ha?pHb;!-|Eg5-Wb3 z56zXQ2@G)&0Fzx@GR))%4REzKj~Pdbh4B?{mHtDfpNe5V|M$fVN}T$f1N8nR^|2>2 z*2FtPuCItmB7#X-!x?Vs+EWT)RX6YX_n?f9r;5NkoP&k7kgZhnv0NLW<8Qi1EOWG( zKS-O4Q&OXJd}44-d;Ahj)Rv3Qz{De-@g7^aq@BfNT^|J(ed!kj!ih0IT`8jq;CM)X z5dXK5ti_@Ku@GA~%aiG>Qj;%TJG*U@`{@6=#>6RNRTVN2iiz!I zz(!If^M;T(M0g6|?{T1@b;)vykZ1k!L_vMlV~AN&ng22Q0I648tPk#8% zXPt}eGh@=MWJ6bFcV9QHHgyTGmfw^zKuiS)cLeimw{bK(6$_`-{G`-8#>c8n|6aN1 zDQOk6)C6t>@Uv0n3`*TE#80UjDbd|)nL+c)O!j`moDsVMLqAWVYiZP>q-VU2?CG|L zXV}ZwL}n6S`L%rLMSr86yAu@&^=WyZ(RXq*Wb{Npk*@zs2LX3P*CQvWwn3sA#T|~N z$<`A%UlR!7$K*N5eEHf+yif>tkV zhJzgN#_7sUV7z+NBAaGxli{@0MOR_UZG={%t*^7gI;&cWjlrG)-6fhn^z|NDC~bd& z4!+X~I}Z+q!2sY37(=;#xr=2G>*x3HsZ>ti|26slqK$kZ*oAuBn3a}QR@Xr&hM~sx zVjc5PUQDZH-e-Yr?<_8(w)J_O-s}Dj=Uf`;gT&lf9cS}{CUf5@D>in5E zqGT)W>d^jD3JHTIZS-jJb#RUhEngDr3G?Y5)IT8P#A#V}Owh$)@h#!_U1<6(z12f< zuY>+Q_3di-Kz2A&icOw!?*)U1`=7J@!H`-r#82my{C|z|X!IW%`_T$1@*k{l;nmQi zUI`%m_}@R+iiRXj?3Eo$@<#{bg43sqp+^WGL@JZ6mM>q#s-gqn`+tLD!q|QG8Ky(a zAQIWxR<`PMC%Aw?A5|83L1N$vqaQL#9xHSm&4#sIUjE=(^bI9G8ur;UuqzpllTf^j$pe84EwEFqvF}ZvHPMPRzewxT2=*r(FPKBG6u=>nkH`U9+ZV=1 ze`=s8Q2#E&<;<2G+Ly!<`JCaCM-Cn zWHGvk=>v95+->=+4tEA9x7 zbU>tec0)(*VhYn!`)FR)vifjZLhtio?rvW011J7|GV{~0Z*Dmi$G^W5V8~K0kcTUe zD%g1j6QEqFZREQ5KlzdAJ0uMNu1Li(2AKa|;eVH%K8Y32>lL`w2}QOz26deYVcwDm zKqUd+Be!Fz)i=2)qVN7ej$Q^c_wcD6L6)cX@Wk`2AObA1`L`Y25~ zxKOLw{oX%4ecgo%Y4A~E(o@q4Ozt~MXuUDWc3Sni<&h?z=vov%t%4PV=R^H#-ItX> zQ6lDmsJaRAE3v@p0=@q?2FY%bOIgj40&BOI=q;F4{?Az#qL*Hi8E zz9Q_Pca&c1q>yN?$5zVIovfx6o&!CGXzCv|qVCef;oUBH$TSFy_$TTAH@3XO6C<)o z{&TN#LDS)C#(~P{Vyk6gjDawqp%)eJ+3|lbKH`k%7vKioC_(W_mLAnyii>#{H%QXY_GW_+Ihzy@{lzuL6==_H zQG0RC$I(+PaIrfpt|X^TZoi_-L8zPko=OKcYXY@H)&bXW8!B_DtThOTT?pp>cX`eY zlWP064dWwy!P5dyi{)o)%k4bIp7QSB;a%gJzFU)Sl2?c057fJ7{c7+1$p!*s2;~&u zBzwWf;w-f5lI2^i`}~E9hL{KIl6-a8t$kJ8XYXMa|F5D%Wu8^5-_ue_q^JHyH#J^Eq2|fp*UR^58NJGbPxf{LOtJ)8 z{EH1CyNTZ|yz||!-~*bxi_J14xRD8yBsHLpqT`d!59&F6P2(dF2A2$?Rs(( zMu_AGS!6Xa`$RkRE<7cqV7=1e&d6|X(`z3>oq?%&#Hu4<|+yx zLSdewGM>FfFpt?`_T1cLbQ>Gj1iM2%4(f~eh5zG47FUw({Xzo?0%3-TcN2yFCo2D) z+W@w-C8^ZMS==u)Go7xe8%5Ax1QOh%#F7>0^u;#zcCz_!DLvMBk@s$d+_8os!s=eH zX;#zLH^u$*%T)TaO3oGtc4|NUY`Bu3wK6{Tw=5XVsBpxLC1SBX=BaHtuOW% zbj&**zCcLSWiUWpCN#_}441=9kpMya(Nl;FECmV9?3UZAhb0ajmNGSqZb8aozGljr zCo#=fD@!&)0{KU`U2{;8lS)OVA~XuY~oBD$5VJ@D3Qop zal>19gz@jsKSY0Z2Wg?3P9wrE@0Tz^Eq&VnPtKIGT8ZvvB>3uDYJAv|*RMSg#m__u zPN!MKAA}nGfyuZ#vLe=?T}wdzO~`=4w1v{7>z-6g%s>nDSz z4T_OsV$z_JWMpJeondcars@HF2>;l8u(VvUe2SDf({VwVl&yiU85FNn<+ znMJVRLRy{&K1RLBLHddEllM?bO5tf?p<*;DQl*N3N-@Ym&y%cMo$XP;>voA`+shu0 zkuYsouzr%NE@;l+o#ukx8jGN#ia?;{z0D=Wv*z|t+5Nyw7(QBoJN(;~5c3d6=(Xz` zs6(Q^L8omUzM8#S{Iw(z_#kO%ZeIU+Q zG*;$XCM**yGeu4C*Q70m`C-#7!DJVBi-!DI^rSBu?3P9+sN+Q$2%d71%DCO-9w!Am z@wr^p8w6Y}D3iFb`k$whHS7pSqan&ty~PXNt&d|tiV&^$!x>Tc z-z8RRosl(|WQZjLp(27%2<8w5SY%`ux#!gGtRJSu&7xoIaz7#Se9&hv->la?^iIe_ zl}#K+VE%kTcJqYLstj#LvCSWY>tPv(zR$Mf*PmNWcGd8WZ#Qu-3Y7bo)gPgWKVLuw z$C-S3lAxdQ2MR3Lt9d>9FF5XuBf{Ma!IRbI&5PJ+lcmj`v|8kDb#C25;R}DRlvVS2 ztR;H>a!)K~wA;$^Sw|H5yyCzSgwjJTO?iU}_qN6bwVTQ!Ia%85d;=mXjsE-*g_Rpl zV^O$4XLoX;C3g=Vgd$Q%b)RC`Vdpdw(Yp$xvdqW2FhZ11HhTfzb0JiXx7y|C!>gp! z$GDY8ZR{+kesgO5*6v{enJc!$XCoD~c{fvg>RPM1Dhk;>zhOVnfXMtnDV@l@FA!cY zGLPZMzTd}9DJJe(_`ixL3BC)MCq0@QAUL>Y7jB zsC}gk?KfgZV9vpx8cpoy`4p3S=|q?B@Lc=Ei|* zXxB5y_=Q|m;8AgZ${Tk?&SOmuMG}^Z1Oi)|GM~LXz#s}o1~<vz{Z#kTZx3g?okvM!cvR1cph1b z0c3lpi~tc|vPe(KJ1CkY9N$23M=IUN07Fn2b&!@^sg4r@vYS9wp=_keX0gXgyHT_e z+&N{#SLGVFkOMv5qvf!8PZbh=E>xRSRH%%LxF1HNX-g*fBYe&mhzhs(?V##Ax(M#e z1d0Hi%bwr!h;Cq2&K+^O@NkiOTVXznPsW|o`avvHs^Mii@-w=fOCx;J1P8k~T+~h6 zv;(x|?az037&V*uvCXg7=pj%0h$(Txlv}FY#ka6AG9wGeK^;yoJ1hC2j|i!3K63N7 zlFjHJNO}jGMt@9%XJ8wVN$+ITmopA-j!JHtz`$;?v%wub_UuF|uQc@sIDxKRj5ed= zqC!B#Wx>katIw!j_>u7)gy3 z>Nzo%Mh?z&l@AyHiw1X^O$e?rvrX~qXh6ahSwF4bw>1WjWT^OnFEvYff!;i{S=I(O zX+aH66+1T;N?OKk#hxvSS24bCgZW0F*@R_;;Pjex{Gou4ELU&#>boM{u$5Xs%v7pK z#3y2kSn$V)Jz3mA+)&RSkV>d_m=q3}HJ)_~$}}BEf=>@0%9GlZ7J@RDZFf+fhm((= zRE3tyod>V7|A2p5BRZ+q3Tm;IvSKU{ZzZsP{*oYji$}pjM+p|(E3ia4p;mM!u3T;m zUMZ_vxe!BtpH$`OvoxSaN5C`m*!596bNQe#qcKK7eA(}|WndHXQyMcV)`y~^v&t$o zOrtk`xlnPDl2E1EpP^8yuktmK}YAzE)9qzi)b*)of;da=5mU`;rXG$cJX<0 z`%X?tB}{h*u^JhXKQ)xR3hGgc#ZrpF2*AJ1+S%9!xpWPvy#z>4O{qwZM4@KONrbUk zW2#&ff8WD>t7+Sd98HOE`>lIJBTVD%B_qR!8p)?Fs!9 zA%U~mYtR(7d8(pyNg3r3Z*7lE&h2u+dMS}m$fRI?T-LRTe`DQS76)bp2Z| z7K)k;9HaML)lt3N&GdrQv|7Xpc@I{0&^KSEP@)-!&U-5df>!dhDLwP2Uh7}xv~IFB zli9un=2nrC{rq4P-2FRphS$A#mH6btWipr!a+C3Auk^+<=%39KMpI>B!8i~Sgg<}7 zsbRbX+wNb#nzfi(x1Razt;fH@z-LzK$+3|0)`9=vhlm~R8Sg%=vz*1r0QdAIsywNs zm`EZQT@Dsf#x*T`)1ZF%F4)3ba@qLmwE6pdh(Wt@sht7-N9o%Mv)hh(rFPXg(M=uD1BbK=f#I{14Va7jZ1Ys;OBLh3H^1J( z@`vXbe|Cg4jP-{ooqZ8dq9UOrfB-^@BSNh@R15~_a{q1If`F<420kcMi!F8|;cj5& zy8x{QH?TK?a}Znw6l!o#0p~GQwhe+2k6gKV2m6KssREJzr_v-{)4>9uXT{ZA-yd4{ z`Z_Lwy!?V7t^;SvUbwlAK0Q+S!%DktyM*5lQ zJUznf11`3vC33q7xGBK|OHg*IYfwjL;t^3#L9cJjMgCjC8(;Nm?NGVZoNCi^rPiGq zp|^u`hi^+RcIvQ=D-*<|fpi6+<4-S4PIi8-`U1}bS5@Yzs4?~86;08Vi)6jXz5Hl# zKbE`nV8}b#`MR49{k@~$m+VM^<1ckh8Vj`N0zb$4_`t%gDT7{ZL^*lZ(N|EugDxV!l$iqe>!hZt^PQHQ=RS#*43$Nc8GM-ne?JS0U2-VS#rUn9nN*>jFVSQR!bQnN>|(aFg1z&yml& zv~;6j?xGw=GBXo}QR>FR1Hw?NmP(j8&lnrDrU(vzsvqJhOesN}7PqCY5dk$Cu#Evc z?nAZ^AJr1T0K}%s#A9#l_vkbgAihaQ7lDYMFzb&>DxPHt@TkBsHesqo36$ke26UL> zFsn&rQm&Z+PXP}#nwn&QvNLu`+DW*>>k%R>27?|HT_iy4tHpT}b@@q6Em5=AUgI^X zu(UGWOf3Ws>RA1Lz3TMUxo~+~2j^Q@(d24?tJTlfi z%=`Snh=O(4=VLKjp2@4HxuI?sk5KhM{fK!xjjy5PCYRoyFxl_;xCrD`$$G|LE(;Ya z9|gztDq5W7Y}eUtZnJ}%it%%M203DWU!Gi-YGy+QB+SeVK7C%hlHyR6rJESL8Zl|b zo70KDCv+hpritmW-hA1)F@R5wcjxIAwyhGSqaiTNB8=A;a`Gdh3z(fyye#u&iU@2A z*tC>GycEL3ri*vW8v>tb=v<IOqwQ`+#&Q+_L-%atX#M+uZgjH zouH?TZ5`1ZbFa6z@7l&Ab$sEr=bO-6nE(qb6S8vgXQ;LK8&0IwJg?In!o~3R*-S0` zM#}^pk&5Q0K>RlKB+1aur9HoFL+vXT zJx+W*?UA-4k)fcLd3--*X5N&^YURM((I98>x}gVW6iM=nrnsdjE6sgN{RBB+r#rIB z%fs@`);vz`w;rgbi+Yz1br3=wNtz_@AdXr1U^%SLi4FF*Tt)0|O7&Q)8zuQHfdeaz zAj500I zVwhXv^|3(c!0Er7>vmK`j*2`qIW?!!!Z1Nx-A%^c(@It4Ka_DgyH(?-_YU&H++8?% zDNxwqyB{K`;GsJbKgn$7(Vcjm(iQ#S`B2uHq|6Lma%csKRB-U|=yG04JxDG@5_L&Z z2jzlACK4_$^z4^mxFY8bns@=W(C;>*78vHcwnZmcL$CEViMF!d0Z12BpPxN$ea%m* zA0c3Z#l*Gx1>I%U^GJ=!qAOYE@5jb!>N2<@`{PTQL4-KD8-!L#*)#lnsfrZ&Txkel zl`Fwte}!45>edX)!j&SmG{qO7WmaWu2rSw-9vHQiCpo$!+-{KUlS9}jfQ^T#Z6|n7I8o2O+Y5`8vA_>^xuKP z*h0HcD-K|bydGEoEP={m*J+oak!0P%)P&p)GV)=B6309K7s9ko?J zcQo%!u))FRisW+Brsv+>$ou$oQqpv(z12pjAXLbZp46ON%1a=A9AAH`<)Kjm1t7fo zPx6Vey{eSW@t;Xua`5cmp*bW-^53k{dMz{Z_eT3wuAdbn7b#c}3;2E~28chjc8aN? zmTq0;N3f)Jup*i8t$++ zCSbKo!jNn@IKcILf4L~}cw{|+3i?!;0S>ygcw_0bnwXMu)hD;LmDx6d@wyi=717gN z{dVH={IG^T{R}`T<8IX%J-6%6BUR&1aoste!&$L83sxNu6LN(fj<;kPpZqP zdAxK+9ws%60{;1ghey8UNW-8Y+yqFGgAdnV#?5jh(e$Xbhf5@zSSBJ{q)jD+ZjOC z%zxbH@3haGGdaD-dQ6F`nPej+5J?qV8WvN+lOE2m&D0`@H~l*&Pz_e)Vc4VgUMtnC z5Z^U*lS(Cq(mG;PN~2Q6wxw&1iH;5c+kg^8QD>o{Qeog=tB`I2FctnjVL4qX%`5%7 zYs<)RE`r9a$tt%_dc706JWFm7$>1uWO#gqbB!xP$I-^9jdH^8+<{=uE&j#7qge$Rh z%fF)}n%pt2WwIYCKn7I*@oL{Y!=zM2u;9pB#4bVow{S>_iV>A+BvsnnWtaw8jiGW5 z*XAQo9-+Qs6z+=P@$bdSl-?xQE-_{WFnUVIC|b9!x)}4Ir1z=zMc2BT(%2 z4eve8!y6K&9fC8W=S)c{h}vJ%M_d`>dQeKgZxrdiqi z8C|2xO864xqm@M$7W(#+(8EgWF;SS{dxYiO&f}`61Vs@OGwJ}T64khJLUElf0M2o+ zpOIYfR{xn&^*w^a(Y^wsdDj3(-7&nP2X%MT{dnuJJ<$Zj4m<4GN4fX22VRVxUqGnT zy&-}|dc8bm&xC%6Xgntd7axS#gE+o_RpFi1mt)V~u6j3(Q+euxqWZe8iB+$IgngkA ze;(Q9Nrm~vh~@cqk8GEZ)Ho{N$Dx1?5-DedqwZF6SRDV>A(Wl8wSe+Pi za#(V7_Z2k;iE}2VDQ#jVRmgPOHzfa-H=!3}SmsN9z z(8QnazZLG>W{uBAQsmItv^vfWWpewcRd5tO8HE%d^(k(k6^Q=C3T`>NF+FjZ)74o|p_GPj1O}nMH zO8tvx;veYZw~ra}Pe^6QaSiI^wFnH_JCK*uZ|zdEnluR{r=*WZN;Sk0@#)4r2|vZJ%V;e? z!q^z|t^y%z3xBblf#I)o@N~IL*ipB8BHs&0Blr3Zxz?PDZ<$-v<+PtodUnPl_Ydr` z!KPt|G*Z5@BA_*rLX@hR+n!AJbKn}hAY3o8Rp;`tfO^13B9~r2&QD+$`?zG}!K%sHd@wM%NQM+N zdWb;g(|HEZZX>1SUi9TVtP4j|Ne!Mf2cXTYW8c$CchkY+b%AWjiaB6v~norU{lYxmTgL71*p31JTw8iGcNBt8_eL`!u?^atw++SLtTS`>AW?}8<))-4xhU%dIRtX7%(gBo5z|4Yj4CoUHc}B~TjMga5b3(O z@%1IOf2Q*|(j zV>A_3$K%XM#u3BglF*tony&MUDQvV!!ZecK%=FkJ`Z2>;MJ#a~G`Rgl1H>tkY1Q!Z zlc}bkhH9xhdq$4#jF(6AxIn`nTg0Vh(_uGgNIq1cjD#na8j;h+1dMt#tM(3h1k7Fk z+|t>kvEsCFrg6~8>1vQ9>)9SZbR>QA$a~8+j3-)*4DD2lgFj%&H3 zy+rplB8H>NPBw?sSc{U1ah^I5uVdrChwYa?wthnJ+SiX%{Nuyx>w=`=nx;0Q!(wUe z;B@H^;Q}vsifV*I_jwVL(ZlZLQdIEGc0=3t^CNX=AN3v?Qq&D&q7pB154mIuv{RwYiS)X2!%4NxNE_qUy3? z{WODg)YUL_lXPGo)bH#%q10oQsnur}zkOCNqn)r2#+QGlapI1PUUkF-DyRXp z#D)=zk7H36MPdeVDQ4h3s`2NITrP6WCE~HJ{ zj-k_P(+7rW3_5@r49YU>D=EUHKN%PaIgQ$FS5c)&2{(mE)5qX>@oaXvHywQZY1=V4 zCf5zX4G=c0@GBcjibvuU^FZ_*zeP%3G>V->iI*bX-oc(*e6uN8YHI`JC?Dg`%)&JI zHguZ!nW1}o*P4)Zg&R>A^6*#^Sm^C7WDmPUXNapkf_^nJ5RGvsY{>rfnH$Wx1@8xl z+9|9+@}e+4!v1GrC=BniR zHs9(dAD`li1v3pY*G}OiwwN3LjDB%oTLxeD8LL-2+wPVu4Rov08q}8KLcsbO>@|P^ zo?d|vE?dk-LiHE6X0RvJ@AWj7FC;`;cN#L$nDm_PLdqtsW3j zxw-XE&1!~tQ$p};R;`F}$RRf1FHix5~MU{mD!~Dn{4SipRRL%SriCk7say*mJnW7*8#b%RJG%o&s zMB*(#ByRfzl;Z&+ahBJAMB=sJ-<11N3oocwJhuJ7>a`!Cl8kY0Gf6k*U$Q&_Awc7q zl@{EW__Ycy`QNx9#(&|4a@r_>9pD|E2kug4%W2<9!%;I$iO|hO@#5LaQb_>y@IiRDjjHgmdvl2LN|apb~K2B3-U5-uX-LB6L*5?nuze^R|OkeZB>JGGj-{IH$NY234MaR z;rRW*Mf&6V%&%#sP8i~Mq$t5t@DL*Uc`gIZ^lj>^qj^ftY6o_aP%o4b7YZ&80DM=2Yw&9jvY zbiyBmXavp#VhVYT&&Q{O^(PKLl+>+FrXWF(@xSsyLwxE$F-Y^{1uby0P+pFOl?7o= zrI8IQNfYfUqo9d((HgeVhOPWu)j6=#A``l3RGl=jCr+j}IyyviPAu=>A(QOFF9=4Pc)KWzn`n0`O{9)@R43 z43)>@CxK9D7{mKC-1-j4qwr)jBkM#M^&#}|&@y-BH>yLB06ng_OJgqPzcQK)zEUAD zl=r$j1*+oqZbi}!0T{x3mA<2hW({Iv8H}@_3}Bvr39J{E52-5Zf7u(r&V|bixpfQ2CDVuSLg`l0jOmb1`Wl#$S429iA_s zmj)19n&fk-=Jx=XIS*4<+yllDKZsnsB?gsxhQ8id-->fdm{j+kv&#U{ajmG5EJh| z@;yA4N5d!RRJ!~YKJJ9QA^u~cIFDhO2;1akQmzsC2pF&}r!99T)54Q}E#gyrNTz;R z2o#7vWbDt_Mlpm@2&T)ME?*9pc%FCki-^QpJ?rGzOi#p(MaV8tO4S>XvwA7{iWqxP zQq1z=LSiBc5MEI%HdqHZXQDwf)17g02{P$AMfIY+c{Xm@Jb3nV%AHPk3nrbAYPHgo zo}#h+tup<6TwTGx7OQ$NDXwjaIYQj|<$2HPeYNm#q}lcf$TiqLeEM;~^Sm%enZU>( z5gLz$c-VPtlWl+nJ}-d3<*AQMfUM1O$BO=8RSUfBS8}>n$#ud{%$FG0{f#p^jN0aS zt4LYsn>>3bPY4?L(-m^kImRlb;p{qN{iCj6S9I)eFtL+mvN8$l4GtUncJh4g$P>1q ziX(+4WWq26WCL2yIMkE~6!PjN`qbpjx7!i%lS_>a;4xqyRu1A3vr*@i36Iav4_#NS zkaO$N62uqxR#n$K49e?~YpV-KKx#$ABI0rKD@-lnaY``$Lr%VVYBzs^lkaxdws#VX zEQO<>Mx@HFN)OBml#M<^k`8sV%&#Bo?`1qkY!tAh3`WQn@Nqtn^S$`_GbfJPaY6ip z%KuA>nko)LSLHzRvBH|NFo9l`h#)^M`!<(h*_#t7G%W<0Sg2`&zAKRV3GnI z&&kC|N%IvmJxyK3ysE5@1=bT#A(^VsV@j7SU^MrcxZxxR7&Y|Z5!EarsdDEr z0xA@MHNl5G%aPIl)0s^;yC$nrEa>&RJKTy?Z*Byla!0~{;*RD&oPFL1njEIr`5uiYPh6|2h&xp48fQ=TntU4slLAa`1AAZ-#HWk50MkIrr>= z>%8-A72K`sOJ8X`LDae(bF+X-OkqkCQ&bnVs>OX1L22(oqEHrFIf`cgw`UUKl1xIqEys7Dz0_qcd;N#YX!TH^i)II4yL4d zLPCDey~Iz%x?czF^0-=EuS9>M^po5tQnz%t>!S)8a|oBs!k}4Xt*q@fx~7+wb`a?v zV3tg^1r*|$QGZlej{jgtE>#X`%ilfK8f4l-i61}|NRNyID~c@l-lO)@h+v-t6Jpgh z1p=0!pi#_#flDR8nn!Q89IIWwHL)Zi)DfCgY_#^}&!bh7mi;BF&b>4zz(*)E>k+0S z24)f<%kVb8{5e{@%0s!=9V%bfLtB<((S>VK_a?mxeku?L(c$&!!M;oIV{_{>S7$v= zf6OAjHOUW|Y{7UoA=-kTbU|-;7cSQ!#1|Z@*rh`v&`t0H5}+|nalO?5G@KmPT4GZ~ zC5ZQRJiuC_Ov(BdCj=!G6MrllJS_eDQr$_b-sabh^sklqYvkOxQR7po;Crf}eEjB7 z^>V?pM*Ut*mr1}WQe_a(2Vx{#4Ve8MEflosw+8kgAqhH92<(LZ1=IcmwA1m3TsWA) zt`dItMY00=B9Z(*e32Yr{1LTyuPDK2Tr0xQNZT`nJL{r)0jEi;O~g zb&@$Ml6*L_VMqcKQ}<|i>x1Wq=m3W z#v*AW>T-2;tQyG=kBm;Wp&1n;o6cvsPun=ci+A%c;NQB);Kk*%PdHdY#-4WtNptGo|ny51#!6vmd|~AxopQBu}H;s75lx#ZWAA0v9u3 zDMt5&gx12m-W)oZ)X?xn_xr9`7&{iu7Fxg6zNPngaw~>pV0Ri-%z71eaI)&_SMj_58hUB$6OCb1h0KjXc(NcEbRC?} z6jI4L?Bcz|9aI@ta^0V%Vymh$;36{FH4E+pjRlLQBN6n((C8UMh6Y5-$&=i83FE0g zCy5h;NS6ySI%A{rS|z!@Mtd&MIbeB`4WD{x#tI}nkQzqaYR>DslN8HiRZsV#sQBKU zGXT;$JL+wBz^?2yagA%-mgWy(T2jYY4A0`Z@#oU+;$6lLB@ zarjTsp9mEW$R9DX6Lb>l(!ixYf>FZ{@Y8`H%a%2L_tU|&I?3X&6e*Mk1#C9&pgE7o zU)lqJs@4A>5Q}@S(Ed#b1Kn-P@_WUcOZXaB34jn-bSwmQ`gl5BtEBF&)xT-ke>@O_ z{>uY#*Wwx;I8A*wp*o2e|1io>aEptI)hPeYkzuL#)w&4(KsE&&d-LJRwRXLLA#1p4 z%H*D<$X(=xiPxYoTh>gt-jGrlSkp;lWlbBOls+~Ia)`5N!cidn^!p_O8E{8c z>)x<01f$M92DY_#{IfSyhW;rpQuE&TdZ*!$53Mfs4^gdl$oa!W40pq#oZB)fZbBKk zX;f&@;$+Fv6lmj}FR%^|a6DR2z8V#urA!1rlZr~FQPBI|juJj!8_`O?2j!rD#D2h` z@{ReIo0pgVx6H(t9F8F7Pjdd9kY^hg9^G3C)HR@`qBK0e;YxLi8F+8=@7`OH!1ooZ zc-*dWodmL?0?;1CdJf$CqIi22u@A_NAwU``PTY9&6^;(_GR(FA{lI!(1VGi$t-~4M zd66K(AT!{>eUx{zkKs7O16UIS~Ykl-;&`rA%+jQzS(;+L)Li?jvV${r5uC)$NyACb@jCnT9&T%^3(&av$jws6>V z0STf@Ki_%w5Fm;V`fneyf1*XVnW1wd!%o^WBnrDsR9F+Fa0V}E5G5=n@RtJ+zoTe9 zfSUzmfPm}*{v9L=QlzE+4)c8D1|3pBL!F8Qr2s)OOQC>8Doiqg0`X4KO1J%0q7wEu z99Th7ODnWgCR6UTA%3MquZB+c3Tu@nBYmISfJ3sFlJhtZw;Wagz4x%*eHv8O-N1nz zaXo2sL5en0dq{rZ`%N+4^kKY7w?pgWmbc!_>F*lN1T=oJ;auA@jK=d-zG;fIHk9Er ziq_&VMMu^!cEQ17i1p zG!irn2)+C)|5RI&@jGn(zxQ;;?>|V_Ea*Lw0r6DpBTaK@*A>=BktAT#&Ab>m>Qzoj zuc?C+mM&)K8~!i7;#TOh-2qyVF$lFrBIH)qcRB;GDGQRTuC=WJX_xe~TW5i@a?X|nr{=_o_@-IeiTSq^iBDYv+dIKn!CgDLa6X&YMW^PgER;+@}j z?BPIy2G4bBK7X|Q0RI9q7&R9PJf)$F&Nllb*5d-QEei1TIL#0rbVIIK{C!j3^>U+t z5C7}-2;hHA0VQSDTPx2@#tk^|JDnUgPZe`mLL6eTvF3y(H5)R2#wPz95_3CEf_>>! z>-}xj^vc zgu^k8+=o0rGyJCLV$Wg5T1;v2#G*E zz%v34V~YzAM!+UGHTC|AQz$^Zm^=tN0O3u#6NIQd8yzHz8xZ6GhwML#1_Mp|HV2v#o7SDe*j`uHTpPtiq?;M+v6vEosPzIqGMylZULe*E!1}Z8dX9 zle3f2IxujN!-`UqYN`Api^Jw)?pBEM3k{J{CdUnzwYjDeBlV~MsghmeBbH{lj63b% zY<=5ec&~dCU7wTxrTo~qwF)?@!Q_q?mF5v$;f$F4N{(RPpDbGV7g-@W=??>gN&bSh z0s-^MKTfukdYXcKPz^rXd(P@*8KO{!n&m+mBZBgGoRU%#4TO_LQ2gDPQG&C=8TwD4 zLFoM*3rLs@_|a%6RAkFi=A~6p>#+x&5{5gcj&8X8sm~udx7=|kcil{8DC>6PO=TSE zy{u8&g1=2^8fTs@#8rH+w7ws#^1HAf4(RIQO#Q$@M}Pe}F&U(;NSnllU>sXMgC^ov zITbD;`m%FFe==C)YBBEWue`aCe6`pVh-wm(Z| z$gXjK6z!k&e7~;V692E_6;QhdRnh*fU0Z9*>Vid02jIZDQ4~p1D%qii%m6iKa7Kc* zE7om#6F_~A2Jo+#Xb}RPqnUa(#fdQf-w(zoWfQ@|*~AnGs=%@WzL3+-9R-0cUpHqvUcg zlW;B^930akZ((mdVhRe0e9G@CLJfuLl_|70($o4nId!wJHC)IyqhcbGO8#o%ho$)+ zDBj6XUfQVk!}d1k3}PoM<=uFdc^ws__PCZ2@<^C@-0hRPPLZtN>1Oml+44H|T(BFE zf(cN>DGWF%W+c2n=D3IYA3iVMG$PGAnXxV#R@O@lYG{0n=vmRozaJ{`Kh9>q{LK z$XlN@Q3`LvV({KwVA`C51va*bD!otJxI`UV`g9Lsb`5(1Lk)9vb_)KiM8E?*909;} zFu=rUzAL`~`KWy{+48YM_lyQJ{jziTGS-@v$JyC^l2CvgPFT%fV%21`mGVkLoAm;s z+F^EZ+zA#rV5=^c%p-YKuxjIBj6A0$A7J%bfb!RIchH6Zy)XLTp1U)ZSIo`FLJ-EH zJR){F$v_KV)@tYneSYs6-C)E!IGM@l2?rBcL(armc&pyzAGl=FGb@RDZ6vpHP&`;J zJJ-!W0#HYO2-xiNe$>2#$L1OSNWOmX^F_eR{2DhTI-EkG>^6x?vO=E%iwyVE>nz{o zYLOgu3>3fOp?k+9YMnThQ}@IMH?he?_r)p)@758tnFbmrhHSYWezH51BiGNPF!=s* z^qXteYlJG4QYBt>gc1 zilRnXUZ?#Y0!>N9Ii%{XNXo)T?=~dmTBy>hpZDW(B!kK(cug51F184t92uy;HuK?C%BixsPw9Rl};)wn+{qjOCE_&1FH zvq;p=X&pT+vK1Mw3U3Kv+a~HPRnirwzn@OoM^fO;ACFzx<9~?({ciqq@Gkma^?-0T z46N!wh^(4E$KM>)6dqtH%Sz{Z3B42-c7Z_LKESp29lThP$-1t&?RHoqJkLj0Ft1rj zfyp+FSa`7a4BLjUYP9MnN5=t$@SUj08}{f6uk=W6gCaZ>tG7zPr>ZB-YDaxiU78lI zp+DuzkOvxTducy^i0ZSj1`|s14*M8-hVyO7W?kV(bj^E?y8SZK@yH##-~C>Fj2wXY z36p{=HQiN}W5cLx_Io^oh(IPX2q4o2G`oR+{4Rd{Ab6Db<@`^_Rs7eVnQxR0N))N| z1{Jt>_36x?Zqz7k+@OGszph^MIu<^CZuy0Ima+9yM32XXx|MHp6U{tP&XJPTWuhMz z2jdB=;3MyajtK&Do}@N9i_h2*gWz=udJT~Qu5#`ZZ@MRKc`x8K7hq6_qz{!UPxQk$bkpJRH>~A;ORQ5){4mydg`+bo{*RJ&1 zUZby{2x_1~f{cV4jQT?$;b%h6P?hSE*w)_dHL~{g#PqL1Nbh0>z1NJVc!xsK8GN@L z6m-9|59vFgm)|9?ji9Rcw%u`64%KUY06k|)3Vyd&`fI92YyWRkwcJBd(GEE@xNy-= zN`aSN3ms)rr_sxkmh97fZG(ah?qY)WaB*f6mEyo-bI><5dyODZZ!_D{o?xFm4HR3& z8eAUGIlLmu0i}0;&#AP3%1YP?lL2R*pC=g7Ma`?{-mMXJRwG#RNZ6=l{I;u}c+mQ{ zlj7Ql=EXa?U>-NAb2UA@da-q$K~d4MW~8=Hv)s!l{TE|%tYT5=6<&xUC@WNS?L*^5 z)7S5{_qqh-f32|~?;I6{*?14ejnEXgeR+a-yH`5IWU8~4_!6trEf+NCTIb1JC2Wqt zk3olO2Ds5G@D)~M3?L|d>dS|7u98kVe#0E@bS48@{QQsB6VRKUVY;YSE4b#*B?}@| z*s@|;gd%r4W`lw@_7p19C988CS{qgRJSD98863y#mV|?|I3xa)!~G@*&`cH@sf)XJ zv|-s#De=PpZXSd$Ku*Zj#@|a4L`A1@rv={h4BcjJl^YDXVD2GG8@b2vlSb5Z5hGdj zK5=*#tlK6U>M$abO=Xs*kan))Til_YUs^yg5jhU?L3p)vn}-7Owz6>G?S}tw;jP{U{Ib(J3hS!*7qW(0T}&}B zI~>6_tlKp^Xy#l=YTBKHGfa#K*6}_x<>^V>Q6pZ$>PS zMv8fU;PHVLU`47&^lG8GPSlyybK1jX+4FtH7LqxS9zTP#jBs_MOi>x#v zOhFi(xmK5c;OaDdH2N;jKEDSJPeu_%`I1=iHb9EUN$Ih1pJ(EvV2lJFUX|vIeq705=j zySdjXgEpU8jzxddTH{DwZg%HTf{?U!Mw2!7i9z!d81Ix(uA0~PH1<53G}ywXS18LJR&Al?0aQCKE&@{Sl8 z(+za+i$~i74q7#Hu09*4g+RswhZ$i^!*%U&0OHTdaK@~E8wgLf78<7EQXY5yiBO|Yo0ZWj-sTROA zi&ERUQ=MTe^{*in_6+NH_`lBX{}V=du;?m^-fidqis?#WVyyWRIRCfplQ81HWOe`J z3Ff&Xq#1Z~^)?Qvd{1mmX3sK{G^M2PCW#8#AA)Y@9umodj^UaO=+^(<4u&~|x1_jUa)RK}o`l#-Lv(_t6$ zqVYq>gG1dq@1pH($>ZM~hUf<(Zzk6_J1nk)pHWSNsWl zPtefqXpm)k;1pN24q`z{g7g&1q>&@N&*jlaxvTkeGeH{Q_DtjwEfn z^%Op&cBs?*cQjOgs62RL1kpg?bH|)ZtGS%q0k(lG|r6OXBD4NBM>?$Y16~)RqTBCU1c4>IIC!MqiV3^>g7#)-FYy?YBDEI$? z4@Gj5BEs=cuJ~Y7Qrbi~as&dZ82i{6r6gqu;Jp-cYkYm)5b%41-9B4sO>|FiU{utH zPTE(jrzmlmd(^e?JW*(|@LtJL+P5{kh98G%R;?Ra;740<09vhZ5GY%-*)Z&U{(aa~ zZ_#3XfG)w6(AKhMh>2r5#l06EnjyE^VEL8dtJ5MM#tFN8Hpd+)gg?}Z1(ZDz$tmL+ zC5el)L(UlGF@$vz^Rc~d2Fv7aIuoi1Gly38Lnlj-X6iEuoiB0&Iq*0lWbQj4cRe3! zjPzXmx8!r6_}PfyhO-$#Z^wk>KuJT+$uXXxPPh*9QKO8aj?&KurvsMpq$I?L8PeDO zh_F{xi}#YG4_Lh+%=RaC${re$pE2+7hO#Hw)8+L&M~oP#bN()=^Pa>Hm_)11EC*ve zB80PY>oQ!U=HiU!a|?!JjEm9NYYe9c;i(aI4#Nk|p0xzJ^S>)o-{3VCV{5jP6PaQT zXt5i^IzlRxWi~m^LKVChy%d7Exze!vKy&^mT$iE&Q@P*{5E=LpQI8&~OqGnO^yVyZ zCt}>Oow|*fnN69Q)#c>o8sa(0NfvN{aTOZqV`YD&nj%zgvvi@Cm8UJhd2*cRwq4u` zE;x_x?b|n*wIsDUc|UeTA%TR1GWB|st zT;&2X2e2~>&kB>ufAQ*x5)D(#;=5Eg;+M1>-G%psS4wgm(~XrXr25S& zZY&_Elee)6x=&j6wo2&z2f8OG&gk`qoI+#Z?xL)7eb~n{aoC&byxn&Bc*LGH2`HM-Q(`$oae06kh{D;k#g*YE&F7v zF(*?n$0J@_GyIS6^OmO+n)+pKb&olZdLhd+`*gS&-n}xj++Qk+2xb}5 zY-P@8wHZ;YEi+XH)-&fC#LGy_W6i&M#kDb-9{AGRy!aEd4WOX9ky))4_*u7Y$a2?- z7ao_;SZc1=iiB^Fc0>PBx>lTxQkdQnnuwlu%ogtw>!RMu=J}279>!O@wooR@XcVmxVJLZgeB>h-Vj9O& zQB!$JehEU!p(GL%S}E+|`GJ`H^tr7H;_=jPhK76!=B!amUSdeiF7@^LiKD{aJ zYOMNLqmBA>51CdqD1z_uuvzQJ_}lBSNBza>HKGc%%Ov&dr^=i9a&A+a6Xxe-+Hjfo zX`BwhDWg|krA+T<4ANRFM)lvXEB*FprA^P6>??Hl*lU0vS2~f0CGJ=E_IiWN?%qNm z%gQM*dRY$|E7?&q?z4g})3uD^_Qa;yr#5<>e;aAKZc(cVS~Z1h@wOimZr@qun0 zUo2L8)*4$({&soZ6ItlbdApyp%GGeg_B|#-z?f>*t2wuQ7h58HqH+@Pnl?K6v8;zq z<;!Wqa=H`p#0aeW1!>xpdDPBd@scQ+Wu$^(;16%LQ6*PBgU3Kc)RK?fv?&#<;TZJT zuyGA55Ed|pAh044c!58h9pn)3q<^DeZswPkx2&=jnSO;W>+$`pzi1ls9fnQan6bMPeUR0>^s@6)xswq3l_S_wqozb1$0=?yb=$T;EdQ|A$ zPnB+Z9GRV`7oFS~@h94u+t#j25sN|y8F2W}mW8WNAZ!rhugF-JC6n%xR6EK{>E&mJ zn(i`H2Lf4AtnJy?=+BuwJKY5B_{P``v9lvuBC%O0%qY;g>VwGgmGiFX(?m^RdMp;k zV;naY@X;Vkc&Zb(gaqzIV~jIy|XYnUqF_ywGV)Crt1TBv+;3n8tBnc*0%ih3ZFxauXP>fL%28qp18BTDGmQ1US8vmFB4t1s_Kq_2P+ zcPB2!Oyf^iX4OG!$<-ye(uR8qAwX%?%x?6RePpk#8i3Y?V?W#zbby%c^;D?Lx&|BO-ZXh6N0@`3rMd zTrjT_bEjrDR2M1YMrs-ATR6AikL4_~R?y`Kv+U!7q&`9>dRA$;Bu@rtAUjAP^W#`8 zup}@o%nZwd>>lnIdH>Q{eTeXFKHuy(_CMECl9hzk^fOw|81eY(j>D4M$ltw1@mwwS zo%am>Bul8`x{G2Y9nonzSmr`cf^aTTL z8GaT*`^!OoRL4>4arI}09THGh|3c^sgpCNZc&MNYK_MoZz}`1} z91&T8E**qo*WgGHrLHQswe2E}plFp<%E?WW=E$K4(dwR~5o zU|kr#D*)r;*S&Eu?#_vH@B85CmZK(`^7au!6_6$blw=DK?zq8hdfk-nZTc`=(#&}_*YWT zL7AK85goEa={jyNF7IC*CG<1-$GWQg0B^6Ew39^oWdz07rO_ z#k(8c-75=Ez;|>|0C{628f>6Hf{Xz^5W`{?+cS$iJ#p+W!e<4glIvKsIh4bz@=kT= z>pynseWn_|4K59>nwL0~0s)s;I}(lQEK~ejKAYdW6tT>f2!5AI3>=(BaU+gSPeG{2 z#y0w(R+%5t_+4f0U8*cIvAzWQcF`W$SE%%;?1u%s@kY+thmt;Z5{6Jw^(xj;w(siGfiyvi;pmbo5nY7pf)jrJbFso;=yW7s^owMn3p&GB z=NM0!MawvT+e39dC@7e2~<1zA&D7Fr1|F zaz!j|9{9I}9%Y27`_%9c5Y`s`OhsAJAdG#OU1n@&uIj-!K&u$j!#q{MOk@Cy!Gs}X zG>PuLsvi`&J@ytmY6V#Z|E>37x;TNgc-u{iCZ(CuCpPkw7)y>~i`}q0J@Yj}i2e3n zaJP}QI5$&ml~#wr(Y=djgEhUD<_iZ>U>B)Di4lTk#|mNv*Oo2hHP>SZ$8qWtu7p2c z1mgJv7`|k`Zx@f%9#5XGNl%I~w6V0DKq1}Z%g}BoI}sDG`*)csoMWsZXd$_9djROH z2A;Z52`ylk$y`)r22;FyhRRS(xXWm_j6N`4=IJ!Rp??IH3ArE&?RbYS_c8(9SRhc) zPx41yQhf}fpX3X2uOR9+g)^}T0xTAk^dj8h?||5s-#%bSjshB}M&sQ*I1}!AIV>J$ zf`HP_vvrH;)9LQy7Osq$UZ$U4YzZ<#)sM+Okhx7`=+v$YHIi;q$MblYs#|=7Eq0+r zD~tv2VenKwk4i6h5LBUt+OCUx``)Ry>gZ5EqIgLa6)st4ts6&aVI`%?t{FC~Ve*u~ zAjC!5U8yauqv{-esad%U^~rd+-K-0zDLDKzpF8APw4K`9t%@x?P*@f5-}sUfv7Z#M zt2xJEX5I`zhHzna3C+v zYUvD{FtoyP#W=JG8WIUE&i(U1lcNQ%CM~th@~K79VgZGNhkwPX*im`Sk_d8mArN*0l9LjupFp|96BfM z3`IPDcP67aP5NPb{M)spJg;oWZE`YNiVHrYxV{T={sC)DMq+iHWC41zc)K4huemfy zb|fg)gSKg`D~Jos&`D@y?X@{EQT+%nr&Sl1vi`vJ2w%_*(IM(_n5mBV)&fc?Zd+;n zmcp2d^7!e(C5K9=%Hr%}-JB6it1L66^YEgNNTBv}b9HiVCg+>|UJ+=W!Z@u-Ah?11 z$jX)4BY#Mrg{8*mmP!f`;<(r4?t=CPR)K&Oj^56@NFE9QsG=B2*VO3cf`FjOUqm1? z9V(inP0=Pug}N44sCYdf3gwWLuw5gD{UJm$L)MBZtO|+jdc6*Bc#b%PZG?nD5u5Au zi=QDkjLjT6)4(5z0E?7Zx$-PEolmHLzYJ;F^9vimk(&SoO`5iZjAyNz%|Bcr zb|>I#i{j?Ah%^jl*W@@cG(ENLZ9=`MQob1CGi~A(+44i$_D&oSaL0?~j5qdQ*J* z0PpFVa4&49=`o%}Ap!`jlq97yUomDh%?Bd{Oe96~r_DruVHj|<9n2{qX+fIn*MDbWk3-Qzjhab^AS)1!0p5xB@_x$*sH zQZTUtqs>OI{3IMDa^b1%Ns?> zC?Z!3?;q+n$$WxFTlL^os>1CqH8&mWvpYm*am=0TO)e>h9)`*16HXD?WZ$2qg| zyzwe)Sb$sxjpN4_sL2WLaOygOX&-?XBc@Lg48|IW`qMZWJ$Ls$5yXk4zZ?AFfB{Q> zM(pyWQVT(+a9tSd`Nla<7yOrL7$H~5gBcudZV;ThXQXp(i1r+)gQ>fo z>4z<@RA6FzptY3 zL>MqN3H0*d(!P{KDpWZmTcb^+F#2`g4n}hubB=_m2$j0zn+Gy69^urt_&Q%KQwF&h~i3v%6)v4&|4J%g&{ReQT~;K zrTH5L1P94$_$`z*RzlsJg^rtR0k*nBW$H`F1EQ&T2Ax`lCo$XwajtMLKpcAhS9q)W z;jrAV3-W^(^IQOFU>2JLPEEv=1!9F$G$cpgsUUZ75!*7S_ON!k+JzWXHYZ_gtf}o1 z8BKcV;Wk`aQ5@a5)I4wg(X3PKJa2zYqMql-o7rT*8dg>@#R9w1Pr{ppRMg0UEmEX$ z)H!f=?_T>*^hOazEb&vic`g)p=wPolL#xK^NjlPV1wKOh*SHszYFS;iGi4@Z&75Hl z(&3#p4HL9}xqR9%)xdSuM=m{GoyeAj7vSX*zRReDDOz|jH_fPWAXF>t${lh7&t$yfXQO&P=C9wM) zUuvwrg^YbrZPj8Mi;XA$;Fq&_ii^Ppomat+-+@buUmT=&J)#gTVb)PTV_jgN{uT9o zruFh?1`sjSF(}Za7nw4#(67?kPK7>y+UMIIZnRyUVnjOaoUVHrJDxxQs*KOjMSym5 zo(nY&MD;VomwRXXc>i2|S;Y+h)6FqVw`xDA)!@qOn<-)$tpEd%<<&1xNzo$-O(;+t zpi9@IMlB3+DhK=na#1c};|4XT`Kz9t;`Wg<%pb)NVyZWi4Wcbo{nxj$tpor<)mok3 zZ_@$N*uq=?Cz1YawaPJ(lh#^Ns?h!K?4QN0dGqfm+vqe9VCRhT%*AM=U z+hqJZL+VUOt)@bd;NKir`Pog`9(JOCay6Et2SW-BNc3=e98D|KVx+V{?aM*a!?v*ba)ktg`zV3Hx=~>dUHI zA#Cy3t+U!D8vU(CR*0`9VZsKZ&gh5Xg~YKIiku16{S zdnbv^gG>I)RbK6j09A3YTPz4<8PJb|gM-OebaJNmFbjB5zZSw zp46U)etV}a?VN^+3YcVnh|zK_*XrWls^|M`PPqveCa)LWsV&di#4eiLk11MTfL-p6 z`(!8Ufhr$QCUU!VRkv8Dd}uv1f7_o`Rl^)5x#M8+RY&#(y}+#7T!dVdkY2Mm@bN7z zJrL6BXwd1-XgEHt37@Csx41^9NHfgL}G~=r!i> zxugIk_*AX)37a9>5q~-XP;8&QHAm_Y0imM@$`$Qw`y9Y?0ueAlK|%9d*%3!6sA*ST zq}fL8e~i{2&>4Qc_$y>@X)}7%4N3B+VI~*Hs+%`VhDi1K^M0rP&h-@>72Qp3QRX(- zv1$9(&(s^!RjA%k=8}9d@j_H)EWW0;xY{hf*3b}zCJ2X=iI=|yo?POyw+|R`X3Q6X zG7ichV2K*EwDh#bt!)3mIGQyml7HaA{KsqAsIvVxbo?%v$St8puR7<9go(RYbhjR_B(_&e6lS1K%=ZmrjSUS4Bl>=r1xocvDpI6c+A-R~!*=UI@QPD)l+aovo;M zVUp2-aB;ihMf#Kes18#iX;9!XiuS=SDDpCn9??izcvw0@ejf=QfWnqfu+o9&I*iIs z1+93LwXA_X9B9eNUmaX|)l7*6G$W}%ftWHob(ZgP|I34SrZ`JWg!HL{ixH&xD^9nc z3i%iF@lQ;y+SSj5-9R9Zf?%WwV54vMFLI9?YC3hDTv$LrrBi|0ZK)a2&+$1+eF6g2 z=MldkUr&hj`QoLRPn&fq!x^kU^>d3)Q=N=dy43%-gB9(n8kfXP(d`7!)#M5wK|D@h zn+?P#W1sXeW&G?XHi8kw|28t0d>Y&oBR#x3=hEPGQEkI`ys@P-jX*Ye<_YmMfrRONCe{ zDHZxmsm^Sy`9ZhOE_;$mxkNCvP*y-~wSWzmaesDoMF;~ub)Qjp|I!9qSYtn)T zoZJEFch!q(YW#t8qA#(9qQoIXyQ+?SI|zC{{B|t}Sts(BHTP+P4^jba&;Baz01h=? z#2i8Hf2bvH3*h<92*V^+Zbb2#HujD!*yXe#!1lEn`lL2eovPJg%kd^0WeW$YT`md2mXs*KoY7J9YH6E?))L4DC9G?1W1smf%PrE`k&wz7ON) zh3g$J^u&m$4N<^rZ&~tKkw^#yXrMiuzk=AOf>muhQrL5jUfV#>?jRYA_`#Oe`G1<# z8g0$LWV41=b1^wZ@<+W$ff4`zO2KBSb4}30)cR2@a@4~9S@1#8L`IRDJMDzo2py}&?Cq?2R>XI@bt?DcF>zE@owf2mruUkA!b5A9OHk6v5 zA&A4&E5MubyHZy0F)}NIz3tWLYo)CJvX>e9nhO!dKWA?a=G1P}!C$H?5C!}#AQ(=5 z?oQp0D1zuOVEXTEeb>piCz;bFYAGDqG#m5Y`1bfQBk$lbb}za_^N;5W@ILX608$nO zxTNH7!nEoxe`TCI3e@sViz`oW5+e}M;Uh|)o*A<}v=p^DwkDU1ng$OB5N;@F3uILn zUuEzn4Q2Nhd>*rOnb|2X-{+T#3Q?qaO?q zrUjUWe%LbyJA7nPEo&tssn@N|ua7+?Ixe@(Xu#Lr&!RE<(;(HP+t2p|w6!bmp&lZP zUsLHE`&#ycj!J0PY;_xCBq4ZX;d-;P~9beW5J03p1?g> zj(@$C`yN~@P57%@V`7K*mp#UP5UEUG1DT;!P5Kv}{HRbHfJH=rfcW7#)fa`;zxs{h zCVVfpiqqeBdCjwBm1&!*jb2L5sHm`hO0dIl6nZ%QJ;3EPPb`SvWf4lJIM76+C~fM! zG|3#wj5cD(`Dv=u;Zn1!B5ydR<~~S^QWz2^({vBrD$)f4s!|mE?~WpCn-(`BBA&2a zQXsKFV*svi=rr_w6Xy)n0t*OAu^u|XU>haANT#>oGk%!gX}55A1roqV0bynd|DWzI zfd-(e0Hnx2faEr~QD~`Dz_9=ru5y@MH#yws-dXgiyvf%3anP{hsO~epUZ)Y~JmkL9z-0RX-Ff+T z&S4mx9H_g?(R|dj_>0Y^m89YKX+=z=^PubVbSs#rh!{8T`D9lsZ^NzcMl4?*9C!D! zs;)}yj@l^%;)a{j?s`C6Ab)jgRlxRCrpn=Zu!aOOuYNkY_$WJ+;ayi5}Evb3sq z;-7}7(Pg;G87u##N?Qy8UWY|GyiOW2+X{_HGxn*R0r{N*x}QG@d#08T_I_M^f! zk%B)F+21_N+*#9awLXr9UGwdE+Li#jN*k z6i-w~j^i}@bIG>4$aORp<2YQ<=w@=HzWUN*;1w1>2aDlNk2Pa*h7{3~XaJUOICsLg zDwjeVVZVP?_0uF!e+i)7P6gL4QTBJ}(zlb5$kD5_A6>7`vp}H!f`9g1SEapiBJrGY z%2}X+SKSN@M}xc}7rlv)s+f)GKY5YRvAstipKshu>$_328_#|TaFjz-ZtMVqyj@vw z1kr!ME5GIO&(|mzh@Amy>}EfDBz;XqcD@T}L!p1Dr2yo_KS59lqQEpXJ-cxWeYh__ zyAwX}7Ug|t!(4&n8sD+fiZ08Dikg7TN?EJQ^1|zZ1mnq$$^*$&xIZVfI2{_*PhI zkJ6M29K5A@xYC=dSSv3rNs(c;7saex+ZOgXyX(wT=vP)+!q7e;4a{EZVsy*O#=DB?bKqNc%emJBC-41p5$jiED%4*!exbw;q=>rC`R_S(jUO^NOHP4DDl ztC`zAmtgADi=fU8$_2dF-LivUa%)7BiNNxdE6nV&%-!L`wg6PiDGxMc{S}#*$t(~=L23&e6A&WFD0EKXxMeR2y@d~KQlvhPc)W=x!UmQbZgKsh&hDM(5~!3z0gJXV@r zrn|Up%A2W6QKTl#AwLY58aR->oXyRZ)>9VZe0rfHERzfTN8a|C$(3C&-!6vDsY@a$ zcRB-vN@od)-zw4w$=ZiM{8IRmyy|X2{m4TmoE>e)MV3irg9ve+24VbN!(a0=W|0V+ zF8G!?zPrzcmly@ zAX3Wx=lguUaE+++<=2%aJDq_7Fg!#DAT zISQ9(?!n3f*T$iX$^xioz(cFZuU6IJj}zc!2jJ%%}b$ z0{Ct}A9-Z7006T$T#vv&LAV%HS5=OFcfNTpcC_i2Kc9;}(9&OL9T3oovPaft2Wurp zA^h3K<+9R^02l&FmdLR}5tLlDWoJxt=pm45>-9wcww!`@8rh!C^;>FlA;G|`X0`Qg z=JMVfGqp^SfAeGUjuX+vKcyP$)Y(#W1VG*fp;3|Dd#vnS2_!vY;lPvjmIm zH>mDrF|z1(?G2JG14J;{x{f#_ZWGaIZf}NMNHUCdi?0V9{d@!`!SbwF`%ZXR{Gzbw ziHI+IbrnhkAxN=dDf#?F28Mj_!u7S;C8u+8&>Xy4h=044u(TyXHPXDes2Kg1i<7p| zCFVza-$yC-M?74X_B}OA@1rEJQ(-V8``HXJGeZ%PI~}SiCBoN-yFQMLrcS@kDRJY9 zJ3m~JdCcz9UYl@zbRVTH$NLU!G*Af=S)QdW6F*p^69^MG*$OWH)U?(SM~$fQ(Xb<;Q;KJ} zk;cU*O7Xd;f59#so}oAh6Id)_D(of!f;dGZ<8&h01z~)YhJqqa&ui{qDOLTmrxj>qhaAmO6DLr1D!is`}NKzY@gn1XZ4*&?4M3U z+WBVK>Z3&KHr?V;<@9E*2gkD~+=cS1AkKY@rT?qJ8$b(qS}`G+4tdWV~ZZvt35zp-y> zPJu~af7AP|izsPH`AV9HK-X=v5BTOc9UOTkwZPgF$$gFZxr7_r>S)!(V7)HWUm-A0 z<)|~pTsbqmEJj?+-nvVjj44m^rzf5{ zJMG=7&Q{{67WHQ?h8xf24}{Y1`7QD(Z8`SqX7T&Y*ZrPFbL87W1odYpqui3NZXU&n zlTc_t(a@^5g;$!?vVblT8%~sXKJZtb=|OnRH3P%nXQ7I7GfkE|-ZL~El=Yoboe--I z&Hz=jyP#o39b`R7J6o9ty_U`cM9&oLP!UDpQas$kFpg-X})L z>zmX_70PNzmhcXYy;`qn$4ACE*%c78A8KHT8=Xe?f{Juzzp-*;yT;L9X;rrRQ(oyM zWUVD)FuL1ZV4pdds29Nz4er2@k8kjNIVWWUtkf@`G!2C@5cB^Ew$Tng<0|G8fbHog zCoBBibnG(cSJA=h1_e7EZUlIUef6GM-Rw+$Ly-K1M;9WQFU|8lEpXCi&xO#g3nQ?h z86vxY;h*CVSpENv7X7clYO8;VfZ<^}pIggMWdDCC;&L8c_pz*eWO1?Xl91;12hdE0 z_|C&hbmSKdoTfRnv^8j-t2G=kd&$4@b^@q>v#!M!Tfj4}p;Iu@WX~(w0L;x_3yiC4w#r#2>Se$l(sor<%)6iI3POy!5 zcFw?Yg31RoVp0$g&p;_EnfRoV!E~EG6^edL4i|sfj4#$J6~BQ$uJ1e}94_K6Kxe#5 zMq^6usg-p|J)@M7NOq<|kozi0XSL=BYElIha{|5#T%5Ylnl{aX7MZ_CCo>b zT?f(ekmh~8)eG!ogprXuV-lB2O-U_TNmvz;*p1cT^Mms*6%CjmBD}z=%POE!7zx^t__n2~8 za~saXVVn@n`gh|3xlu6dl2DG3yBrIq?0!Cyw$-=~ogmPpbkzkl+I-h~7w4b!@ZwPm zZ0@DYwDfA@!nC7_YFk#5*`CU=l;rB%4R7C}XA3LJ7N!!It@=W~*0R^i8xK2p_vLq7 zv}`s3)G;vG1m4N}{j5Cuw?!jgZ8khBPaVFfU%s|*jbS{*h1w?V+Dxr;()?QNSiAQ) zOS->Xr@aY2S`#9ND>Hz=t{I`RM*`wggkZAQ-t7yKq||ArnLhN&fO7jtF>c(tIyWO zFO~=xM!ygPfJs?tLE3Y@O`Y#!!mV-f=3Us4?(BR zdQ^-g#PW9_V?)}=93TBeM)2rUfhH((wUNbks)qWxbC$O+KOJMV?O&gh1uH&Mq@8JS zEs3~Y;aZ};6lNN}5f}S6nt*>C54-N6(GX@tWo%Aatl4Q0o;ED^%EqA8AS;|AQ>dnr z(f$J5k4_d9lnk0Ncr`X)iNA&kCp4#3p-M`u>t_AUlLlA{r0GvWUrszCfjYx*N^JJq zB;B0irbOqzDzhqCowbg&mE@>f@tMGR@Y%tWD-_##=dxBg?GH>eJA9S20;>>MSKLfRvz9D9Z`LlYyg}iLweQdneYFSFcvGJ7>gMMEd zn_k-74zq)Ki)({l)vU?4(;+(eXcjw|Cmh1YZ(~konw5%k3#FgVL0gZmpd$4>kQdCQ zk9%t1$9Qma06y)-w!#t!sNtwq8PMd*X+qeXjzeix2{tOkGN)z;!F*B_imQq|i8 zi|oC_ugw6N$i)C2gq~xb?!j`GFZLlAkYHlAzsBXRres2lY3otC@2*yKg8>%f z6zhwVKKh*?TumwI9C=W}M$?J8PuxFX71WZ3(8?(kNmpvCmu=!@2q=l6=gL_Ee-Gp8 zKIF`58k8}pU({bnJH|*=RQ6{l(DNp)61ZFpyud~4esCy%yn8)ZnhH4Ri&tVA;wP!j zE*$Q5?@7S&ake4=pQ$B;$VN&=Pi8bv#xV{J4GiUeYRscLg%;IKJdly!K#K~+C_iTW zjk=DhTrnJtYQa-4FFR}Tf*L4+Iv>0>3`0rBZ`Io`d9ii!UNhxQLOR@FO6Ed#MN9h9 zLh2#RJ=`a^92=b;d^P_w>uT(qDf=5#GK{mP!@-7?(HClW`yg6cPi+KO_p9ZD!P?)H zmnBuN$_ zQeY6_;rDGlmy-6%mG8KkrgvupD_n|DbEG;=w#}~d8|@XH4T*J;6`5^6zKrPAe8!4U z^<2_rRZdr-4@QOvo)Sl<#|g5`eyJf)E7m7jTV{%{r04FdLu z2^kp~2(LZn-28!A&k6i3x#0U1_St40*H7W^yTxc47if@QWcBKDST|ZNsV9k5qIKbH zMDfRGsFAgO78`fBXfgS~_iY~ZB3%}P_OTc!8I#k~SHH_bnt{A(kc43N;JxdOnP&b@ zf7mub35LiD(j!q7j&E=Zt=Xk=JS-Hi3PD{m=M04fE?Qi6dCiH3dEg zt%F_q94dF#B-+LA)@~zV+?{~pH9{OkrKn5-sK{2#!!jr=+~9RN=o{$oRW1G(3q}%_ z9@jI-X&sI9GhgfF!L3yDqG0xzKw7n}nG1NZUta9fuv=*Qa3UN7nr#HQLVfOZikK^* zSoa{|!eIYQio83{v6@9^pi||qX#SvWz&e$O4E<6BUvR14)8Fj%g3>z|?JSxRq3UlE zk1{(?RGa#c(S~B*;HzOK-%}STt*4d(Ib+x#hoeqarl( zl|^saxrHdx6Q`MP@`e5izdMw~7j6&sW+u1iqo4L6+Oh+r?=ZHLm~n5rKQO$W8^6{6 z^S+0koFbrs%MTMUynX!$k_*+_?^~lKJz2d&j8uveU$^6I7&b&iS0F&IZ`4Md8W3q7 zeUnc~_bY`MQ|gb$00#lQ9v@JZq`HEv0TJZhPZ11e2y8NZ37A_VBJP9Wm0Z4W1l#w)| zYN*(667tvr_FEw33=Ee3@0J>q7Jp{Y#lZ7GQ#>SmtuQii!?y0v>jAfNR}n^y4LX}F zsEEfS^dWG75lnrvo&22h7o4Am=)>l>u{yY1IB*mZqdTyHByf}4^lEO*lF>?GT#6h7 zfjo}tv=U?lJdJ$QholU4YU2C}xT3>dhe5612tr1LOV}ptNbc;H7v?RO7M2`rb)_Zh zeMB$kyPJPy<~ic2V?wpgkK%8JA1ULDF{^0T3(cFTvVY*ljr}q+C5Ma%;S*TWdS|B> z@s(8O6yBUu-WY?^iioaEEoG@KYRdOB0YDlj{unNOSKX1Nn-61Wp8r#$sy7sRptb?0m6&v zL6>yu7l=EHbOMNO2!mxFMs2yk%*|9h_L>Xv#~WA83+=ef-}-J@n@~3FOByfl(u`EMy@Z(TDP1 z47%XG&(6rfK!44T=>$T?O{`P0(~BTX;S^^nt}4tB<)eyBhDAn>t&WrJm&cKf*zIha zvP96Y&K>G5c{aDpO9^~3C6}XFNZ6eRTEBN6E8aAvABKPbN&LY{sG4$=ItGm_XTX&t zH|hCe-50yxS7a%{`mv-LIkGvS+pp({27t>kkOR$+d`j%b&J zku=~t%ri7C+gTj;lkS^IoZ=W&bDT^nzwMWRb9 zr%L?tSQFRU9li8?(Y7?Bbd$#2ZAC}=c|hh15N0b9BbTSUE1DfP9kJ=cXqQ^m3)z#; z;#V$)8>+*DqFM7?erQe{mV+ypk=6adCD`;%eJ z^Wa1TyeuvF_X6gCYo3m*-d+bkRmH}}?sxJKL%t%o@*S2b_n{6dy>pdD*+;$MJeNSb7UU=_} z5G-*0HOf%s!jP#7nsJc*&|iB$VRPeBF$pcP;JUdYEB)t2{@ty8obu`BjGGGH(~jnf zqD|AOm`d<=Q?vxZz-0K2OzJv4q}_uG&`gS{AtFkFay!nyAdt%%&2TVxa~-CU82_(F z?w5{4bNRakpE__Pd#;-c7rU}3V$7mtLI?>w94(!XCQ1$-8|okX?Mt6*#L>Gp%J-<63piIyzC7L9_-@6nQHc)L{THMkbIr=S* zXtO66w{`w<2|usbRNfhHSuJZt!A>iM-X{M+bFWPJeCYyemoML<(n%&n;qdl!1Z(eZ zz+SlwC(!QakyBHF)K&jxx@{f7gGKy|@Ebn)Z1w`ip}yAp(CNtj-Ue^*Dzc^i65&xC zVQ_En9lRUMTg5l^lj&#zY_bB+dihn17n_djQoITYVgR`i@H>p0sIW@D{eHUK=}+@# zW`clo6GaCc(eL+Q+0Cw_1QFAGNinHE(=d6arNIc(4=_!!@pQg1XB4Id4Z|A>+OWfJ zi#V>d1j%lX(z9#G-?zdW@e3Q7q1?qBAbj>qU%s84;V7B~U|JS?$q>7L1BbNFVw2q@ z%Xdv~|9Ma40ySjxo$Pw(z_B?Cz+WpM0$k`Iqy~w@m%B6VNG#&E&!|^2?CF;B;{y+^ znxkq8z{8;5h>^kUt6a=o3kJNo%s!zuR`=~AnT-vE@OrCW+MxM4bdLz^4}(*f5c_9a zlpgQEeP5=l<}P?eFQRO3fGSo^mQ`3UO*>?&NqveU#(5|_G5eHnj zqNhy?JB33C+!3rR7K~Z-K-@o!cO?>&u?$qKnT-@XmL~c?d4j5=zr;p0AfUNVhqXBl z`>~?2-gRi6H4#>PO+N1B{MjVr5Y>zF{Gc?lKM&~s zfksj>n>%|ncD}XXQ$rLdxs%v7k=%x*I0AW1+Cz`N>c^7M@fBgNjPeIm?s=-T8xqBd zzYk2R?`?Q$#|ost!I}HgV$DnE7K_uLgi=FMT&w;9ii*rZs$c20@I5WV17>f+MN`S- zvW1Are5PIiE&UG#dBq*9D{T8kC$0Zo)aG=>sqNHJm@c}zA zdD+%AanW^kzxj?J&?685dV1sBh2s-ez08i(um+NJcdhs+em8A~#-~sW=65s96sQB+ zw{qFp{Jo`Qeh&nMZlL-c=`B2Nwj#0$!RZ!8vJZc$Z5&;OS}PdwfMCc)8qGf6^2+wW zCU8(Pz|6ctN00|$f0p5?f+joR0o+FS$F$6#vpg*Kp2`-TXiKa|{6{+pdT=ZZrTmMA zzG38&g63YZw0R8QLS^GzcEx3BbVsgo_Sd>!)kC)ksM+TP-sffqKE+v+Mr-vc`IcS5 zzksVkx9O1oO^^CpG1B@Ol`02mqHfER)$w?lx+S{DEXG>DeSEQi1itZW&2F&%8Rpbd zdUF>q3%hqb;x8Uh^5V)P;1J480uaEs#h9+BBKrX}gnYKb;U3i9OV{5vL9IW3+G?yi z`y-Rw``PsseIr7|mGAw5%A0GGM;dH4#5ADcPk@3X%@81RP6um2Xsk!A+r2x@ots;G zkXZSyAL(0axWg{P{!#g|lKy>f+9$9W(3%icN3nG-V#Pwz!E>FQb#JbfqSUff&P!d^ z!mxB#zGGX#Mpkm?`kkSp41%}NQ-=Rb(`9q)(lvA3elgx7pP00ZSm;J@j&nw8`kf@0 zGz`>W0~)Az6JMZ{?_CG(@)g?XXHKNv_>${+fM+p&bZK*A3jkdS7^1tcBLsF1_;4eX+`ZjPy z5bzPfnmhnT7X1%C`#GI;f-WyHupe2CInn{8{46~n;u4T%lf1(K9G; zeaRR%q20WSj~YvR@eiU}jn?ReuCb##xPH`}%BC>XT8#OLn=B^SNVos2_&BbE!$Jn5 z2{_>seyLV+TR79{`TuS4(gZAC9PQzsGCztzTg;+0MZR7v)D85gTDb%uDK1^z$z?sT zrvHzzcZ{*L>%wl!wr$&8w$-IBTV1wo+qP}nwr$(4uljkvlaurB{MlLA$xc?XbKjY3 zu4|6LkNm&4ngOK7)JMyi`c2Bcc7 zy|}e0f&L4-|1!tVV7;fjL8#{-}hydzuqX(ZdDfmHzvu05I%4 zEDPlRKS{#=>yd*F!BVQTEaM;DPCWIMuj#I*7<4E7zmofZ`Ivv7Kmb1D%g`Oa073qr zp6dSv!RY=-8vbAHTQSPDj4~DCPd2C!NIj9h1f`7Q|1#g8(;=Emakr;ghWvFXWs!6)=F<8i7DOjnhso{WEdH58^4hHL1Zc2s zxQ&#WaPG1Jkt96O>ns)XPZb1H{gq}i8tDbdKTIK9wxH~=+;4-6w4)-6F;J|yP7$#6 z>&VI)$`N^XLc~%kwNBvEcz+C>-S1|{x{PQzDL5?9A)bvR^nskS|Jk zK%B#^h!?vy%+LC7)Ys-~wxRie|5k_G->%ZXd3YHQW^D!&>}v9y-(`Jg-+eHn_GCtb zT+mOMN;-Y0+DG9Vlf)AnR5_6G((dt3r730WQjv3a6@HdTtE+z?lkj+@g!}~kfAgQ~c|D?@C!GE?;PjV3RN4oZ9B9NH5 z8a_I0dwGy`4>T;(IsAu~%pXod8v%9%jx{X>q^~hW;m#)HbXe{h9_`8{#zO#>H*?ka zhyq`Zi0~=zwbR_DV0rGin6c2WtbqmsHHRaoa8ocdxH{070!_Nith+i@bFiF5^)T~A%iZw#cnuAYa3!n$Q6N`EPkjWmbDDC+haCkc`aNzHVJ zbZ>39G<)q_{};4V*93Q~0`kGJxvA|D@-tzX!iee9;q`3`ztG&eQLUH1*LY38(BI1x zuVvPlOD@$t2J}EUl}(!`BU_OZ+1-=_;V2ck(%5fLOA z2SA*gF$jb|lPn4^R}6{#)iFO)*ufy8F?wOa2j>;M;56ylrxqC$3T-BuVz1}iciF?9 z)1oDm7hoc-H?4@fj%B!|He?Ik7`oT;X_1CS`61!6<3O!$vVYdvI9Z-Vdcvp-T}-yS zglVr2EyXuWyA=8)8XArYl{I0+Vdh0({Iye*Sr0pdfN3^G!#6}f=sND$u5S80?t|DT zt3Q`#(JMO(OUAp|SfQZl6M*z=mJj=l&?_a(_jCFUlUC~|sZAmH=hp9z*P6OQ^FO|+ zT-1}uC5@bEbWQ$%y06s-lVF`Q?lLtwnEu5o%-Z$)qThwi+V?g%o;+|~dHeGfHEWG& zTTq9)d!|nA+tMmzVoPf~{2=)O_4lPj7()c!lh<;{fh`pAC z#Cn`S@bZY^{I}q`D3b4D+Q8vz(PXH0hdNNX-Z!j&hdue6`KH2Ce8n>1%cE(tw|&e834X%lAL*DBE#wk}dNBs{_OWyO`5;I<2#2v3 zyvFE{jKpUVKmC%_GM&@*f=50& z!P0=g^Pt~NB=`YlHy=r4I{|#EYpgbz1435Hd9e6l>$`-({~Yr|UEFlc^4(i$`LnEr zsr5qVsJw?i72j9n6|=c4qo$MXle(N^c>}nGk!(d7Q#txIb5*@XJ?0|cL`uO*S(p-o z4ppRvqgmh*!2qQ|2w&vlA==hyq(Kx8{BLo|lq$`&*p}sJKmO@5TbM0b ze%a47G*DO~S}?(7y#2s{Lyu<78U=|jkq#nLESZ&67!FQxINPmO!I$lBrMRCM*0>Q4 z3{+AV&L1qG<-mv;Ac2&-MJ3_E^xIRdBZ;rD9m^15*FpT&`8JCAlTkwCU_xcq$z+*eiRiln5_>guId}t5u|v*;RgY2i-V*EIRc}r_(C1 ztoe%BJPxI#U=_w-L$s+i@YtN|+iJ;c>$zNR9k$N{vyVU%{JO5F@yTv}nSK+1m*2@z2M zf_H(0WFk7{75B>&U*zez)5b<8nn}zpu841-DSS+m?orx^P(dmX<)G|B>5=qW?9q~bgi{7);h+3Leo;uo>AZ*eY+6KIK zG97-l!95izcT)xx(KIP_nQq~n=3rWYSn7sHK0n_xd2s9T zd*dcbk?~}^+0I=1FkIV$FL3n{US=f=L!Qb0F-Z9of+9F@nL`|kURDKt7I@1OZIHqm zd0Mjei@QfVFpYLpRnE6ZVG#%TeCL*C|KVB=!lBGi=Z){seJH?~u30t`7Cvcxj}zF(8;X*CY)iN>jVzP1XK9+$h{VZL zA7={B!i9XW7<(3tf*8!qUE`7$P4Pi1%HrK%5)k^?805XvGe_F1EHRN~qzslSgI+92 zZxCyhf~#W~?4?Fy2foqED1zR-llk5ILe!IW{>76ja!sTu-5iz09w0`#X)wPgIGcKL zw<_fjHPDi8eGs*CklhyMmF0pS5x{W7nG2FNwa9r$aED^jMG{x-sw;puLUrrO&(UJf z@@m&BR&_J_M8Z3WmuFZKtfo(e$n)>s3?kx&`WaR^=3+8&&kmh3MzjQBaUkw3ai9p+ zI@2YpAypov2Mr+Y8_O4QTHh1iaW39;HCvb?S`x@{<@jis;|TUdhii&i z8@A=6&K6JYO@gbN0Q8RehZ=2WQf8}+iH_Izi8gfig^Re5)+XKWFw*Dtt>!uy{rFBs ziT?KUU?pA*Q|YdBT_Rr;)XrQYJL$?r%m|soC_Pa7T<#V6K)QDo7Cau%Q-3-#Au3zm z2z^S;!AY@d_R-?HB2|b_Ws{5u40g33g9rws^0@R6%>4sP93}uZJlCt$8og7an=re5R{jyP-Qbh` z;snp=Rd}e%?Cuq7GVdh~?{7vGJm}FdGp1%adi@NgG#~D`A-ipI{-~fNqUD6)4@4c7B$Cbjsm_-~&|qs^lD*Ut*=(~^-zo2)WfnH`(R3Gj&G%kP||5buq%%2GPFN@=|3)m!Pw<43p%ca>7P%J3~YuUfWTR6iLgHWgfy3FENB4yIatRox&hn2MNLDoE2{XR z&aepr{HlO9w%KjPg_DX+1!f-If@WFzXINy+69bh8O$-5K$_v}iHT$mC-PJWLD8~Ot z9QldMp!*R_Y(*6}seE?l{NS_raL+-OTfhV4c04zG({>s@Tz#ghJs*-p01WBZJqkmC z&9w5_!Yhvq^o+UGt39whjCh@e$=6#vtj@A4SjO${xw_trtINNqKkDg6D(i;5xn$I& z99O#EHlU!FoFWF{GekuzN~B0NPnIvC_J*0qs}SIT

l?s7}*4vp!2W|88=L^r| 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

nR1?qM=|aYy zM|LKvB;R5NJdjnvur6290{d8I9Cged*NIm)9^$pFQJrfD+j+BC7Lz zdBM+_sMrF-*}F4WJr3IY{|d7>SbJNQj;pep}-z1sQ24NzuFn z$Tv*0O}NpTGG2eeIYtLxmU)<(e~_5@Cz`D8~v_{vD8|Z-~0|2_b=B zZ5YFysc?Yv3}ND$Fa+4C+3ETJhVQKXS-mCE@_%^{iML*s-(+2k(Ly?=3%gh!Vccfd9z@eKFD;7)E0#{lEX;$*lsz_-(q zE~Gi>GB|I53D$WjHaa5sP0hs$>u8g{$E>W=@H4RaA+ZDA5cg{@%+=fzwbbpSjqT=) znpCX$;+#H%2k7r$KG!Jp`cT3A#+|lD(kTC#k<=B@P_qQCCKHO!m@C(1 zA2-Gu%qW%RWTD1QcNy&2;ah*VCYM|ww5lcd19@r5F=NRd;e+NIjh=U2YK`5KzeVh9 z4^gBGldr+%yRw5#&Cw_j7gcpFEIJK7!u^1P1S6fG-Zb^KYyO+J=d6NDg3N83YlaE? zriM%dCg|1=ara%kWb)?_&;IMugK@){n0t;t)z|(!dJnxwcV-d}{mQ3_p7fVJxqX}Y z0{BFA9Y!7%nDSrjEmi);B_HP4!D82Msq!77H7^EHs!0RjA=!b4Kg!#Y@2|IhlZi{q&;&Wu}?mdf+y|OCLP_0Z&6k(XqBzc+k#jErrcFp% z`F_4{oT!|x8bmC*+GX#ncb}50tR+%Mv}Dugq~)-XVB8SNN)adM&w_;f>1)g)9fKdK zuhiGdBtCvJP)yKmTC^R){sg7Wm`@38MSn6ir0edX9-E@8fZ?cLDImSdP^tg4bLw)Y>nBOx!>eDY!A^t?F@31F#oL@dG}~Smw~LDN!qMsCg5Ak0;!!$g?%tW`c)WW3WW`R; zZoPjRm<4!3l>xqts+A`k@bq=`nnb_rT?K!UJ~+6F#Z#gF%FCoIA z2ye%*gCXGcwr^==0ruoD+%CmmEhJgYgJM(GxbYP{)@{1l`6w8XnRnN|6~Q~lVNBod z*k^;>-p9)EbDM{%KY%**>UJmQ^j%J{M!^g)1Mi=~{7piq$1kr#?#(aH87{O{sc<5y zDfm4=&I`=d7avfhd6&3lQn;@5{!=5wsiRdm8!YD+{`*>aoM2N9jrya^6O1?ag zaGPI#=1nv*i!KZ~LY-(Q@c57S{)TzHQX)gW6lMsb3LFYmX;kGV7fRiHh4i5yif7@5 zf7b8CA~V}%<_Au?WvT0-ngHBoQ>sd03OC6kcJr0;MuW#hhVS#FQ|h36U15G7;{uoRbmryhVGanA(3KA zbPOM*0!SHG@H|USkZhq)knV$<1X|%%0N?&RjU>2C*mN7Zm4lm@vHd+1SgW+Ol)f1T;s%EOnI*Hh73) zDtZAS{E5i=&MuFlvQ=LBFlAaFNtkozE-F+Zf11>J9ze^ka6EYC?}d77%WVF{{lmAY z;-4T}P;`78dps67ofS~=vjIip_hrcJFr%q&eeW3hR1l3*E1@afilc#YGyLE8Q@G*7 zK(FwC1*C-8vYR3EW;(Kd8m`Jk@7K=i5W5~xNdO4tay$bT zizz7Or$WQM?Kadun1z2amRC3Q)h-C%V$taYkQNdsxonDLT#{xKFFRi!aoDk=;*Po0X7eepMB3m8KC^bd((@V}xkTgqTBdof9gR)9}<`un^ zXBXAR>!i>0)z5k4yLVHIJ19f?G}>Z8PLtuMUYQHS!1el3K|;qoVhi=hiRT!dkU&=4 zUKETAv8YmkBa+Mx&0QRc>X76?x~FyE!YW{9G91f*!wO^hNL5=J;=^TmahTJ>Pu#_# zgm%qcNQ$8o;h>uaNs_;h<|!2d0s`qO6qIFsG_w=HxM9Q4w_H|;i2ASQIFN>z4_rR5oC)42qC5cFAJ z@kSh`SsGG!D9OaUC!QdY{)LX7vBPOL3Hm#6$^+Bjd|Tdzt9ayy)31J zN@mS5g|7G1M0|pR^s=S+$_nh|xhrSWfhnK!*&lf$)rWRyOJA=|LXGYU{tXG}YiQtcznCyIRX>Go zB{d@i7zeI{7k{uip^(f5uva4*5K4hak<{D7Cn*8uA%IG`xhG%v*wKbr`h(WE9bhG4 z1N;0co8hvGvO>}5jcwPU?+@zmSgtYd2{ty%bWs(kK&f< z>~osX9dyD{zH16TM#Q>}7fPYsW_r|Jbo-hF+elLKFtP>UFMZ`=VZOXF}y%VkP1Bk!qJJ%#) zC@?YRk8S@9VEs7pKh@MNr!~_j;(oUT!m0`nZ|IsppVa|Uf% z`Adju_Sg9OJR+cw)F7s$pj>QaY|SR@&5oM^uGi#SUVZ`jSA6_|aQwnXpv~Ky4(k;L zR%A??9n*?6(&w0Q!e~(5r_elCSDT>=rf!@RCe~3`3p&iN4h-Y0Pi=ZGSl{e%)SJe= zP`hDIZX|^07!KPXJogWGUt$5XKEOyV^va3}G890MP6BXEp{Q<**>|b8pA--upFySjt zua12Q{NN8YZZl-*6Rob$W7+J?mR>PjObRrXD^sVS zk2himkc*^MVTvnJD*y}nky+9`wK1tbtO$O*&I_y`W##gU;I^3bSTtCSV{plAq{5j9ik_^v|ZiGkr zN1e^tHD)H>ez$0@1}8e_p^HP?*Vi@i6k@HM=_u(B0@DBAavxjoqxl7xo{cyJ7PttY zGj&b?AB!~bIc}^R>^IJtICdzK>A5&4a@qAGR25LIaJ?f_Sjb+?N+*BGCQ^WGV(uY1 z06*;b(>h~@SvBEPAPvSHFev*FG@A)w2@9$*DO&hlQC0a5kQ*L-F+I?>=2U6t(du}v zM=fiCv3@YuR)wRTEQ;2$W;`QffbMe`3^=zR_OfIOO4u+pY?Ue`DxZEef+-45C3jwa zRYfjYr#e=jXI69{$2j1YrD6gNB?IXclQhWOubLQIc+9Qwd=mA&en75olo- zH{o1}Ldg<^2~PfV)>?HU3myGp^O&)upCcK|TC&yVcRNhQAa6Q>cGA|;VYsHu&EriJC2~aWbKMxb7UB8Jk!}rsDG-n+WoWU$#d?i z(gm5l5C~iouIe##Nf&`_rnFSc&=u9l%CPrblalFH4*7|DdE}o(gNZiOtcja^YKvst z+^@I@HiiMe%1EP4*DV@~R|9G{25(`#AV6@$2tnuq{xDdM1%;N+)5RfnJ(!5&FU5~U zTE6nTfxn&-8$k|-)f2Y}d1Y340*YmPq#K|ip)6cX>SBp&cvQHWC2~>~QfCA%wtfCy832{odNO;*$mf?dx#dURMiI9MZMPO3JG%L0D-a*hCHRz6JIb9X}L;y7fR;ZeqQGH?ggSq zrcZXXTbD2@i5+JZncU%;`lk$h)bW4J4MmK9JA+fSp4_3B<*HbZhL4jwRC>U@Uqfg)9N+FngkshorZbjR5(0q}AV9VtX9u+8xK_pUE*2Eq3cl?mFP4NDr3 zC{#_I0RKG}A*g+aS!uybiIEeH7N=T*5e~4pCc|-9lGV!Da8;Y$*)Vw1QpNU=jY6Sr zOp_9i>FXH3PGAVe=(-;CxY?Ea^W{jMhXIR_({!^St%d;#UxEg|yz)_C`i2c;v=^H->D97p}ZF1;^EU3rJ}< z3B>hLoNk|^l$o0Ao`~qk&EJ_Qn2DeMx&WE5^J7e8UxbCr4Xujm%W-0>SCa_1}x51vt%)bm6^g-wbIdfXCqpE6n|#^S5{5apzz}ChSa__!2t$ zyQ(K-xXlC84qJ}7FA1RQXBJ=-WVn^33t)huJj>s%Ys@+8=t^S_=^VXqD*=g&0Wr~~ zm^z^93w6htZD86($Ps)pj4&gQPm@qM1A&PXW5DwtIuvo=`{jp9w}79sz>o zAJXJwJX{Vt-%+Ltjo8(T36--_H-`eu^j~_eJE9`_z-G!nL7&e_8JyN!31I!IPR&5i ziG@~MWVx(Tw>SLkaQ6jM4a-T?@IG|phKm`>NV#y=G`B=0t%LFCY)F1mP^pukGSa|h ze9ZzAPYm0VmaWg9bQa6F?b#X};XMl8UvXq!WkN_@mdl3C|CEKinvuKZFp(-DFvB>CiHM_`K zdF{@mr0C`^tArcC4L)a>-H`etCPZu!64v~kexk#dtyyRB#I|)i*C~ybHJ-{ok8U<3 zU7kN8yl;0IXcr8?L;5$%J$#z0C1k5~$u`_*0X#RZni7LlcG77!?3mRNJpk>EkUr98 zHSW_V5%)umf6|n+u-lb3%C_lMg!4*Q)`0U2LCO(qu^gzG`XvBOvaevub4QF)sk+U> zon{A|_75C2I}1_TR0fi5D<+xpGa=^Q@l!RDAO+N2C19Mbx{G{=%;9p9uVRwD(m+2L z8i|sEdI4d0B-kRK{D;MoR%vvxvJdPU?XGyUzzBb$rzu*q)Q1gR3Y$y3LE+FrDT*3z zQ{XL-qNC!@-#`*TU~9+CDagRatrbM`C6FHxsNjf|ba3KymTzGVUW=la&a#mjSBE&O zj{CY~gIVF|)&KEX@da1djX#?Yq7=$tUf~MweTCKYW}*`#Rb4Ur-NuXG9aU%2_TllH z+`wzt5+qKAH4P(;h|#~OL{vLe=BUVDooYL)&CFZkXZqRmW*KHolV54$C)Q^J!m6=N z?zhHa*{hn7q(FZ($){W^=bUoCqHNKMZ z2PQPgU^}X2h$dX7G$DQOr?bky`d%>Z*U?z{IO1s0#6Q?!DfUHS3Hw0uo~J8-z!^LF zSm(>41XxAyi zuvS~hRB4l{u>sRr;1t&INwqL3H5PdV!sc^NgcjwxOyQPvRFa(a6z?Gys_R;bEF_Yki9E$Ga-xU2MeYs_=62of!tL#0KB3Kx6l z**vtuQ{X?#7F{E%wa|>afk-PAKWi#u>7&U^_(~dSA=(qt)6goVFw+*aiTAU-n-z?UVBzq)L6?j*2s!K0DjP;}l;DqP{ z$CZN|@7#=ca*G|fFymHs$r}3UwkuMn$p_a9+l%|<)?%Pe%^t6PFY;Jt|7zMCvux$P z_>LpqZ<~*UqKXdb$72r%5%vUt}u`qhq5mG`;bk0&W)q7503l+ z?3@RzF!LnxzL0p(6SCHO0U~2H<8t)ix|NT&1rI^zn#WYY(tGg-vYNCK`!>SJJu=4l zfg(+F#$HRTF&%_+^e8029E4Pm_S_Qlce()lP{v?a0h{g-VaAdLc5lQkU`oB~Ur9mE z5(eC_iO280Fv{J#MZuFCx5$R(e-`ORvkB0ifBhU%l&sTN@#vmV`aD4#d{^PHd z(8b?fRJFlmh=VG>sSaa#Aw@(Af%rZQ^a0qK|2mba$MaXDW>RNL2rZKLu=6DML;zStVh( zz%is9OfoSa&3s=#?Ww9G$ViLP6lDJeoXPE$XdykVjTZ6b2V2^D5s|}{g>7C)(zLh8 zKX3_sVtItW84uAqXBlttW~xITB}+?3$4EKx6q#ITs_8TBA-Kz%Sh9a?%Y&PhSxV6N&4I}i+f<|ve3plshl^(hTHwe^4T1y_ss2cO zHa&&FmdXG5;p-ax#TUaISD!@a)rA$mB0``#qXmhZf#7#ibVeXhx>K-(MvMn{k|s0q zhIU!o7$^>k*ZfW-JC2m5xD=BtTYE_@czMB5pbdW<*N=BssJhGIj?r3xq+ttOVRd66 zT^9($k95VUsz7Qr+JFjPHbEYB{U(0O+O<>E0z!35NeqEg!7=Lf*P7m zN&F3x_yon7b)fhpnJgrbD{7_DV7m0fLIQrub{egOeYVj1?94XW4o1Jn8xSenagNLu zVOM1yKI-`{l&~G+`B{&@K=6E?kbmXv`;5)O{T_c3hQX$E3!R89mKL2yaR^?hXgqhJ zTzy)g-T)HHn0t}|A0phUvA%{?c#BjtB{Yqolm4k?DVy}qA~)~@rInYteEn^Opsg0C2w-Z zQVC;pDo9WVIf#KIb7GGdacm&`WqH7&ec_rmf&=f)vFJWY@!)9(sL487pzNj@#1e$H zBTP6!nj^wr;F*7kiQ>F|_ZQ&UXC6De+4tT3hgbRdc`KCl8O+4worBSeo+qpbBsnhq zthR0sJPjVJr?+ra&2|ZTHFNrCd*-dz;)<7&FiW``w#2Ygfv+#OrS4(h;DWW(yDrUX zXB~D{7~k&OcEwua*)Pv)=Nx|Hd=sI>mT;7&>qbvn9n*@el04+Sm#Erq)C3rp;YO}| z(|KuS23;3^+Toa7q!&lPxC9>gPc9n6DEE~6S*OG*_q-^ziE+rqMR!%(jZ3K2 zlkTW%Oz?W(8*0SNRJZ@~-~u^~X$f#kd5YFPyrBqfj>2Po$4B^MWZ5P1i0rljg!9K zFFk{xDT5K09&xH>K`0M;#XcC&rg>o3S*B|X`cEG&_=YTLy4BG->y=)1K#{r&bqqcZ z@XRPfmNwpMZ<+B*D?gZZF^oP2AO9P6!m_U+ulE#o2s}h;YIGN{1W}nEE;;vGK_|wL zgq6B1`ib(C_3TljNbB^9y45Qx0&R`I;XV5%8Q|MJCZ_~2#BCIEKV7|#>tEEmLR)OztNW2~_qvUlvk`prm zI$EUZn;-mQZ*3=G{|E45ZCFN2SasC>g{u%^kMC{DUFAC3CbaaQj{r63gu`m?y<_Gak_SBQ|f257Wp!Vrk>|NqQvpp>$yQ>8uwo0Oqfla6@T$$ z{4BjgAE*4ZpoN@TS^P`-3hTY7M0$W$u8uD0V}!F&&+eze<-$GX6wy`=DQC0$`jvXQ82S0O;9PpDOt9p&Hb<_ zggG`!d4OKoFo3ouFr^-aY*b$FE57~1g(Ad$p#u%1U$L`GzfmgD1*{fcQ2@(eNPf>U zl)n!}6jr;5+3j%|^weq1)#ux?D;I?DEm8I8yufr->LRbGn*QmH-75E;mTMTyn1bc0 zYUaUN8Ue&mp?RR^yUhHBXIPw&dxWUTgCV&Wc%boJD)sjq^MD8~e@s(o zS@DGbt*onT&t_4WX9@s^+DY9mnBbo-8IeuTP-hSqaMATY#TJbILF{%e9R(cx>bCSp zqZix@?v`7YoIy|DtG4V7X4a(El&+^W9ix(`tzM#_X9F;U&Cs0O zdyZ?Z$-kp3Uqmz%(TxwtL)3*zEA2*@iJEhhpiszDx#%S)QPWRimO)Un4qch!nf5=2 zo&~`yJB2>k0G2>8vkw8bhxQvzFP_LT2CGT>5~exiU@h0=F7RyiZP|!i!&@yf@sIDm zp$%mss)&_u&n*;7l83_JZc~(J51(ksvfR&Rc?sVv82$$0(whKcP5*54(x3oH4OHrT z{c<;gLrXdxHLF}JBm^33!v`Q@+oM@P9c`pVov+yPwU+~2y&JmfkYnCf^HBQgHu)d5 zJ#k^dNxSox4gr2#jG4dody0o2;Lgrzv+XqLp=-D=$qO-wQ8x?a0H;T6&#I`UHsX}V zEKl7BVTZ?WpH7$`AVkYd9DeVrA4@3lkyV$SlM@t||5)i85fo7h=(CsEKieUy!u#Od z?AGK&<<=|&DD&=D@N#9aw3lDd6 z(qES+-Ovrqig0Em^-!h9&ElIt07pQ$zcLktqW;$v)TRuLJ2rRey)BK{1AQJIQE-0I z5|9D&hPb*i0Em(5*26mDq~N;+$)bGFeX2^u2`*2l8quam+LM~{EMUN_>@=Yndcic2 zbRi~ET9EcUMJ&^&JCzxM7v{$O>?a=0c6lk55<_P}NYl&6XTzR;7i{%X^!y+I#zpDU zOn}UEZg)_F2racmV?9D;bUTV7_+1L4!H;?G9yw^A}0>W7tMr$&pG zHW79Q2D(WY(s)eQl*FpU_!Qy-tx3^3Q0a#W#YJv-0wBcWqh?Y_Z;<KoyVz-8N7H-{@|+V`mXJSLy1@Q ziBX4^BCs<7i{Wg6!l8dfPT(m%#IWo%|4Iu2#zdFV65i&-MEJc;ZF%&7;s=KPiT8$^ zk|dY_?s~|2y*YqH&Qgn300K6?G909Z2@w$~-?%1mT>XAG8T|L2FcKqEEna=J^#>fP zEgZs8y|ZPeBC1e^$*veUt`(?uFO(n#T$kt8;t6kS@WG#Wc*47Q9Ly77;rz=kEF5P= z2tpPELkc;%Wrj=|V|_1KI>`!wHNfd7JoyZMcM?XNO?Z-zC}*_+2#MNq4~h6qYr`dG zSehthf`m;PaX7wq+qK?0cOpWof z3a&qeK@1Hwq(&mJU<(<-E=TaljfhCb;7C3nYl)Qv7fQ7YZm88_V{&jjM|~2hj*O?! ze;Sqn0tuP{L9e`{#TY=_^D$%seeY}>qMDq1{>vQGro{&;Z|G^bFdp^Y&77Q!@jq>y zP6R|n^qPaHlw^%3<$<3fh~bX&8<9wp19AY5T^0Oi^vKRCiN_~%!8u71)@x!WZC7jX zW=w*?Obp5QN$p5#Hjn!3Adm{9&r<5)W^I!v?b}iEBN~XeP~jDajKt__D>ybzC_~FB z9?ZG$G3Q$kMFI+fh)PxYh%2Wl^qwCf26sqb+|)54vU69^0UM$I_PVeAI7SOAq%^E9 zL5qwA_Ap(g&B=C~dFMq!)kv;44lI&T0MCHrl^GhGsqguAg`nBV$LB<=xGRAslR#YUGv(k(fo^ZY%~6oFdPrue1VpSX zOs`>vVskuP&V0LO$cHBT3@wElv+~2z@@TnK)>7`1Re~8jPN%hVBQ088y|6u2ZU1Es z*}B4ppsF*c8x{}%NB)g5eeD-(hKI+S$W^}nk9gnXnbGWoGVsPOLt6|PXe*t=2?5|rg|d+N?L|i`CZse<70s*PTnipZ%%^9W}d_1K47*s1+Jwe+o;Wni$ zD!h;p?X2JNd-$ z7M5rm;*lbRsm`D!=2u>5LA@GK7$$ z)FylGT*}S0`IjCO2-9N33`&xm`3a6Irb*p7y949`waXpBo&~rkE)ligzD;9C8{1hp z3i@A!y7Iudn8W4&Ks4%QygIu+jz%SLMO{ChXO#QG%UR_Bm4h_NV^FZ~Q%9h7y-Z{j zbO(cx_X2$sbNj*jBzEoho)i+|H_!LJyKqaCRTkw#{eZi^l2a52H2rgTLx+h?NR!(L zx^G@Ngf+(Oh*4F%pCr|4S;GvCfg0-Y%N;1H>QUjPyIGC{?F*1wA>wNAY!VAs-by~y zdh9EJ)DDDO#hgeXgakPWfw;{MR=( zSYp-<0<`7iAz`uoeSCtBu*92)4f=6nsTsh#7wnKARyJsItx3|Yon|$L+ce4dcY50x zAm}Va{LBYvR1(sExixx&xD@Ub3NL1MxH9Lacn@uZeUESC1dr4HLLm_7>kjfgLkPro zHF(Se)oC=LAeRSVik0JhorwFmME|@%!-u)QXWcBDkSyKgk1Gl4^I0z=o*TrSK2UyD%>uF%qE;o<-z+9#_>4^6`r za(%|p7g-$rML({Nh0Fc-=&4fP5<=6ul^xWk$yHCySx}%yR>YGMvI~mPWdn(Fkc%)9 z%P-7+_6VXAPj|edN>1FmXcfmr5sm}Aqaojb=Po)lZ`N#pCC|Iw@f3rYO@N1^u9(aH zDE7mzn;(nIzE$DT*Q=vB@=S>fZZS&@{swJRT@051d9)j5!YpYT$DzO63|IncuzPzj zidthrH#KS_8a^5W&oomHkcm+%Kl@3vmha1aBf}%JHWGn^-R$Ug=E`Hx(s&5^$6YjS zRFlQu37Q>GhEgO`j$rQt&iLsl=`%5W@}QfVV-zHz1zr%C%T!F}218%^QSUngl4M7p z?~fRONs04uB;H#Y2AkePSh`~ghQP*##zDOuvdu^dcU!RkdlZD9ipGxHoNgh^Ht01? zksp+@%MpYUMhv(15!W>Nj*8)^f7iJSIQhsN0*b!` zLO(kA2z4CMwkl9a_%W5H04lIkRCKGfL5vjSIg}7bL{Wi}`3#WJ_g^XSw9G}glw^Su z935rLGxVz$t{~c00z~u!D9K+Zk_!sJ`;b{Wo`Orxbktg(wn}qNE==bb9n%%~SpuC- zOjoe|k@scm^Q*G~dboDvhrEI7ss-|p1G5pFKV_vp0Pab5*aurH-=4R zhxqlXdQrB3GBbdJ&HG#ML4z0BL4a|fD=zRaC@tp=FB=dO#~ubo9WjScLG{#L%W?GgAKuI_$H+Lr%AXFh*yLlDcKX!|1)e@UmsHwr)={jB9T%@*B= zEfE>R$7q>KjnbKOC}kjUL#!HLCRz+0dr5_ekWq3e1R=?qH3-$0el!%Qt-YcDNh;GL zLL0!5p+xL$KMw(nGvvaddUqVj$h^zeny@6JRvBgeOj{ib6ZAwFdo)G1L<}mt1~Utg zGkS$g!Hh_PD@n^r!EAh}fUI7z78g)`*>cS`i|!+~Kon>1BBumYi3~_hq3fypH-O|&v+em5!$!*k z9=}5yfQ#Xy;s>Qhjlhoa<&fn=j6F=S!{{Ak7WHf@phapci-0jRuM8g#T=4L$8~g()Bw#z0l^>GvAL-X6ceoo%w= z*f!%~mftS^`7di9z-iXyalZ~1fzxHBCYMI7;>H6Aq1~EKmqdC!?A_XvTo3GEY^P`ZV$2$kAFR3b)|lD`!byZOR&94cj*+6G3KX12 zLIpV6e}v^D%>ppnT8XcM9T3xIhGUSt$0`sO4mr|K08w|V9x&25DeJ0t4Htsq)o3nIxzXp~d*` zh~|A2{P58tiL&m%1iAYJcFjQ&&2AE=!BpmT%j*bwX%*;z3l&4|Po{%@Wzo0jspz>V zosX4I{+*Zzu9%+rZPa_3UsUHzZnn{J09sDd0!4Smr+x!&5A*#E1A{gH=w-Q&v3u^K z8V&vYSHX0h%YIp2i2S^sW~#mBATZJCzH|Bn5L!EZrS>>4+G z;w3v!$8cju`E_w6Zm38|9`KaN8?)%Bin z9jE;9R;GAZvwboqQPRr%8RA}TTda!bhB;9&DKhG}j+~7BVM6^|HW6x6g6nQf=>YO% zK!*olI@4TOsvwe}3^fOW#RIe!G){~en1x+E6IT4a`J=;qHJ}9G3Y6!o>o2&JiP|H3 zDMhny)9L2g1aTvtk;m@#)3)BTRTForytK#-93j1@Yk+Z3k@5u4?oQMns*9Ejiow0w z6Prci*Gq;DWW+`zWZ#3z%;OVB1@W_r{6Ouyvih@15SMv~AUu3a8skoC`Z++}@Px%` z|KMmGX6u-?fW*zWV576&p&IB;%=50jebkaDX)Bgw@?18{Dly#GE#Mp6ldnEW9&ZGxG5PxF2Kt;H&k_~JR z{=MPc8Ce`N@iaJrQ+lr}0*(C)`(o0?)(Hz@@u9n=5XU3fwfI)}8#3yDzV9lbbAWuR zA%s|`lZ8R}U>PXZ@kDdkkDC!Zg{PtxV9oQ>wl_?|gO^9-Sus$>^_c*w8vD#P5PEcR z9~7h#hv&IbNX6}v!j-BW;HC37JXUo{+!Od;Bz|-!tIz-M_+B*Q*DT|AzAG^Btf;*p z3p5-=D_()d-SHoV+yX%r-YL8$K_=VS33Yxm^RE16nbf;%Wcer3FDA96-dHe-T z>dS^T%Ug)-hnr)jZ@XB2+(1TBU~jmUHc090Xh7v=wX<$^xeWGPE$lwx`?mE+y2Xpn zIIZ_*2&HLf$j(4a>(PjS`QYOW*C}K9Ug?W&rSVE$W;atu%JPWh>CZGZP%f#u=Y15q zYNo6!b3hpZTFabiEF*b3BT2kk8hu(A&~R5FUtou_3tkVR7xXPLNx1>O6~hpZprglD znD|yxh=2~}JZGc!Za?j_spX&6d1*%$?=W9*yEp(&o*u#|MPQIBluR*^@&29$d&Ez^Cz`y z57tlf#tv{s6|NcW*~(GZJr6Pdj1GGH_Mwe|WypNd;MYqH|If9EFPyUXQRm~uQ_p+# zjmKVxP4-DCA!&4YlRqi%4HeSgXEaDvqK?|YT?mtWCy+HqEVC4iD31p<1^vXa6VA8# z67<9rXD@T5Vc4v-WbeJ=I+CL%dNf|MNc;^YU?fzrf@Ys0o}C~kHf2Q>iP?yJ&B<%% z{j)}~=EA9djjO9rD!H6^ zkY0E$QXpXYaZw7SuxXx>lge?%Y$2b-g^@1#ZfOwV_C(BZW!Rl?}%Dh=rXq-VgRvx z)=30uTq8=&{0tObbvc0O`jqK7T2?T{wj^6{mTt`IC^Z?iV8E3i-<5D>s=B=4q%jQq~{e23Nw^qH#ye52R}Y9`$SfEQj=14 zTdbk#xhkuN?h=dzUyk51-UfZHTKrazC_g*49W5`|%`V7w5VRfXGjMnHT35j}r(K*d z@8E~i6LMwE1b}j2evAesFgT-r=UV}7;WUxX81{cT6%0-?UZASl0aeBv)47q%L>VEY zQ2}JP>opZN(l?cI5l(i@4agTGoq!!O0;2gcQZRgd)zaye-X5ZUuWFp_34l4V<5%pHP;+P~J~ zuyf)fO)v)gkbsM<{rL6OTX~-UnLYL4FQ(sY`VSAk#EnVLlgCK%J_&^OwugLI zYv5Yt`0YgblRg9*fP?B}_rNb+dGyv%RcpwcUh{*q#;v1Jw!X9dSc)530&{+AA}g>F z>riC5V}~;U*j3w=o5Z+ljp5xJ1SV`}5AE>Y=x-PbU)#OBk#0eDM z;VCt+9H6akHjS$&u~SQ*=Oy*&&Hu|oPAa2M_326mIO37aJ^3zaWj192&hSM99K_5r z$Vt=riR~nnzXUI-%c!a5Axrx&>pTY1i3_eUt~QTa^!qYsB!40$Xniw_+W;+`4;dh#OZkFZNS$AdRTEbjyMJpJ-W{L%pT^&6C* z&NbUNz;w2EnYzX&8l6_cO~7b=1UGaTw|NA&c^Er13=!IzfcA6-c(=z#p_+hgPpP_h zpaf*LpQ(g92JFnHLVC55l-t?bS@W?y7USWyZe z*7>3B^c>%;Pso2~(Uz>(=^*hd13k(Wd{jjxZ6|_S2qqmcS;_^jh?@xLW}?(!rh9qz&CdXC!~;@)%fH6Ar!-*- zT_E8jD|O}l4x;FR1o#l0S^p+8A1Tu>l?rm;%kz(9^tOZUSf7@iiqs{>lbxWFiHiNh zbr~^1`SRSFklYkC1eB5-F=x;T)O4HjrdF2$K(~F7klOqbC($GmMM=e9V>Wa~7dr?B zu_#2$|MPJFv4}oK6|}jG=2yKF=bd>uGw(@u5NdwiJAQsHKr+mMyN%wxU8=O%io|7u zZUpYYxyV*D;2Cg3?ZU>mvkJcvs)rRRKOzwhWKx06GHlQ%7;E;Ynf{;s!-R|4GIdML zR*V<0-YUydCOems2Oou0RW+vp*fO8Jc=z0MqSN4e?g4hg-)DOWPdKwVw}IM?6)>%K z$ix%sQoEARB1;P=*cM+QMwA8DM_|&XdY`ct%jPLv<`eCvm|=^?Qo#|rh8)2m9u!E5 z0tmaR@l#RMumVgrx_t+C4eR)H3t&k)(o&U?oDw&W6(h3C6=ITaeFR#ufXw$%&+y`n z9WaX@m7~kVN;RSsb6P_*FD?ZlWmrM1X4_cDHg0X4KmizaS(MSAK2P(8AS?G+uuC*i zG*_9i#abRt>XK_E6r?b$O?MwM|7#yZE7wgV=~p7mFgjNU!iW{Z5F<;*Rc{WhLgfLa zXrX3eTUud1T2@E`?Y0sv1Vb}q0A_Ukh|I$lJcAd43za&PDBAlvqu4Nri9iVyQz*}- zwz`g=Pd^&sGzb?&t z^sh+)e}t_aMJ?IUU!>-g2IrlRPr(FC1a4Ooei%vkjur&t4Nc(mCg-ny_|sF(SB(Ui zT->Chs6W?sKCH(K8qXwM>>=OzK}He3T)qA7O1q_%so$~j+k)sHtMC`xW(TOru6?59 zM#{RQ*7&$*=Y{W?r)mw62&*R4)3B|sAscS>_TBC}Dt(sttcK)@KXFYw zwe#*}3h3Hn${NnDD9VVsef8Wralis$%i+8TDB@023``m0j1w!cElpCyj!3kkkzk-N zb=w1k=68*nZ;>uNp}rObbcF@ceVk!eK-VtF7q1XmtRtG7`S8()0;S@9x&_w>x95%w z;!EExAy603m-q#RnQMS6fg4OA zLggaD{1V^?J?^lary{y4g1%ql<>o5*n&mtl;$(iF9{eNlOpLqo*FtS?pjdo}uJxt7 zNp~YRj^KIBw_PZN5;^ZQBS0ic()lwU>>ih}_dD+7KlHXR6VL_zT%EK%ozgUy@>Ep5 zX-67O|C^g4>%Ns-9i3lV98W)Q)83u^>8jRJS2Ciz)NHS{{0ya`i#lZ^^Z>gktC!IO zra@i)7xx6>-yqO6ah=Q!aL!6Al$W1$LV-Yym|ddBMTO9wNGWD|BQZNdk-O%ps6ZT&1E>zbrw$1{vbft3A&-M0*u=m!w`UKr**my@u`1o57 z)|vGF-)K}f=(jJq6CmP0c8ZDFVn#&wfBqd0prUiGZc*L6!rnr~^m>om>U9O}3c3U% z^m;UI^#y^RU3T#>vI}&z{4yhP_v{JWrmXk(T&9lJq=6j)b8pF3XWWGj&zit)hWCSY zMs3jEuG_%=q*m|~Y52mZ`FS{fIOJNgta}@*m+(i9cq_JfNlpD?=YLzL2%g;JrutOT zZU9~F4ThI*6Ly79cfds7ZbXSlu;rz4Nw}BE>>nN2l|R}7I)ApGQ4-ESmtfSxYapr5 zCiU7AXa236_Z-hJY(@QMXh`SzVO+(&UjmC;wzXZu9c=v<QreCceA9hi!F$h5oJx_&Xf>5 zm9xOG8L!xiE9860wLTwl)l^mI6X5lAv4T9=1&rJvlnyb)8h&HFDnDECWo=MZ;LNzz z-c3O7ZsPM`Mof`X9_(f*#~O)V$^Ien*AGZMhPXI#TuMEzWmU4Sp{v_Ij<3j&_I|N_ zYeTlI4k=oF(&I=2?AwDYFEZPa>e=uXKucXOge`YuFLSO|4OCrEGUk8V;4by+e(#Ve%H*}x%Llbjyyrvp zPM|w5FwtbjC<{|eAH@MJ8}&COL$OmddfIeEp#HU7!}LX0a6^lO2JZ*Wl3NyD z98>gzS?7)nc4LQ52{!(L8;|)&)v1P<<6J3 zhVE`5wFUF={c{SL_;HU?K07nh*;-ZW#pdAu-jbC%MXSIf`S4zjk}%#XJxr=-qV;GT z5{hJcJ72yK5j*bxGM1Q=QPm4*xm$&h<$3u_yxUFNif$(ACmEklM9&qN^MO94X&n07 zy3XBtbAMg&(G`I2{xe>w`>b5@J4%0RSZOUu7&TCTn2cMi&fLeiSX@qeFLrLAe>nA2 zc6m9a)j}P}C#s)XF#vA?!MoViE&^tX|HZ)N)VNb@(ghcshAxz0_-00gJEg2a$png8 zKK($Fu+%ahhW0Ei4~*Z(p&j63H58!~Epm`KwuGz_DTy?r$+>6|3!mK~-P+otdpqnw z_K4fR%^*&fWzBkU0hLcm>PVEqNx1Xtc zu1#xSfsVSmBP>5oWEl=k*w0pWG&ZiCq4UZi6dHX(nz1>PDY~81cR0K<{iz$Gp7ck? zys&to0i8!`g0}^i z-;laM1!KXU-lS+}Hkn*7!vP!j3+;TAgzxmLY&%c;<|UCaTBvN2bTFIEt{^in$QFmC zkh@1ls2-VSe;~FZ4%mQKH`-g;9h|R*Oan56=r&M9AG)Ez64E;7yEHD3Y|+c}Yp|4+ z_K-qS5t$&`n21{~;mC<{xg@yl1lZVTZY4Q7$WwM#SXoqA4wqcHacI9MuO_N1M`FGj zQPJ2OhCRY=bzB)jqq494GJZd3)1OuFt+p(om?JlpkwsqU zQ=hgFH`iu`i4|PEv7Rh<{0m%O4_IUVX9>nY>Iq0uEQXo#=%J!o>`8gktXp!%Q*#{~ z>GzCzq2Vut`IH7vV~baha--krb^xDNrUlxTj3(K^n12_M$O8+u*(>_^je7=3?UCB- z`&s?#;VLYj@HgYbS1ba4e_X~@NYB#2at?97Ci+ZjqR5S@CQa#deW4F$ni|7pFo`G2 zprS>WHR*;3*6aw$v1@XczJ~%X1U|$nc^FQ9ow5s`;SNbAK7o|Yv63XRw z1hGQ9#9;;b+z>+OCj-^L!i>CvS`tgY8g2_?y&kEmFeY^qJyN$wss7j~DmNmYYfhwR zKrxL~;LY{J4dAZX{qFxfr*eyId|E)e5Rw%r#Jn?FzvE&dVaYIona{YWb_>4LiQ)p^ zp#c`hU+#ci{0hlZ4~?Lwmma!)1f^q5o+U|;kygJJ95nE3H!J{pX zk8|gD?3k~A?%2Gnun+b$lRNMDxU`h}N$%Nmehn}WoV6ZPT1mf`yl=95Z}Mg9n&Era zg=7CHN_Em9UqRBWJE_iGno9P-n15A!WnuNpFIv&Cv9h7Z2@Z;e^Gz5LgP72Ox@ zEgK%MTBswk%2LY1ieA7p>R(6fM07z96>cMTW8VF~!Ez2X1Uf>Z-y{O(Q|Opi;8mmf z1HV9hgRM5Gu#w+4+1eWyhDE=M)mhhtf&r3%bVi>(WI; z}JsOT&W7_Jdh2f~0Qc|8(2Rh+b!cB#@oV=$|tUfFlumxGPdC}#2zeQwnX z{c2SpXgH^$NwL1>&B4TJrN?2|rM&zZMstwV-is5|niMt;< zXWEV*LbUUBurpomn9}3<0B}tq9L8ODfG^cjE~CE&w;e(B{oV#j(dBBWzkbq_jE;J zh{i)z*xWu|0IJ-#Aw^HXCttC3AM{=tc=vX+n9XSv0MM$bwEVgGE?(~bdoq4s28xa? zo=g-Xpf~PA?75b`VS!^Y*+({d4J25VIb(~>2s&=o57jjC0^C|ZgXzQ??vn6uHMYfk z$68L}S`Ebl{~&Q@EoVbGM_k*Wd&5?HNSn^t6|%9?Da1faen|##EA4Egy)OwZ`PP^k3rdR6=pdjW649+%M+=^7uK;q z-J{4{q2*4v`!i__gMQ0cZ*o$wSJI9<8zpu`Gf=&~Z0!o#zCrilY@?sALwg#v)dL*S zw=&c!GGoIf^^21kfc-RSw_)yA(qaTUfP$W7CGH3$PiH}z%I3~IQCqXi5JWi}nsZLt z^n|vt2M9F({UwPBC5c2MdyR`pl5=E}LK&^K&$*jYAQB_+ER6{K%MiowDvW1q7~wds zn6e;Ds1L}E&O=3Jm9mu%q}j$`J7K98A%r%F;XfA2*=()XUOu6SdKn6>7>Hb+)gO_s z>f?q4ula8(<^P>2?&t+I`6sEB`7V!GUWLfSC;fZ^9u07F{Pf8^B|)4QdX#;l(w9nILS@1*^mv-@aVp1G3_{o0XgtZQcLMqrDD z0Wr%FJ^VtKr4_HqR#1^y4R1!m{r%SbOBBnjlu^*3nnY2pif0Q$m8YZSK^dQ-*D}gk z`y2Au)s}?pE1h~sgHG^wGPDO$SzIc`#hum+`}}?10^8e?(X{!1JMmwVRVH=_5F$f- z%(9R}|A^xOsfZz5MHs9rHGKe*O7}K+_f&pi2c2ffNQsS4eDUiz#FdX{{ z^U2`B6u{`__=_2&^G^bq-#Mt)2|T@9t1lrXIJb)_&O?-#?b@(GeRpYMg~~` zWlT1MiFSsd1Jo6=a@_GuX5^`3ye6_`fm2V|J@r&Xa+7=>maoE~yOg8ZAUe8_OaI5M zXumz0SEg1spn8lc;=5&ohviCb2X7%GGN$h@afkyH+U9*pz*c0q)yg_lElf={HmWlS z=|vh@9ik2?!kqj?N_AWIkgb z1A1%?Y%sCZhS@&-zBTG={i8*JY^_P?M9cNyB=!?ZqCAdoLqyX^L z|-dOW_TDEF%J*=`9A8->x`~%RQ@p7P8ZHlRDJ1z% zraTu_EC5pnt9piRm*&S5v@T7ipSBsZG5fFYS}T(#BfBP84}4bW;=ZdCuShPV5bRY&F`Jh~_Yozv<-T@-=J9oGK+T@*V^*~txPR9IgRQ;?Cny@| zWph&xzY|=y7C_BCm>2t2G?R`(V{fDW4@cw z7^gjYfnV^wd2>XkXQ$0SxfhxkxM8FM9 zFatX9+dHrW9s$(=?cs=@rc2@Nhj$9(-x804tInwQyxAIWa`IUEdc!K$h8C|=@#pDW zPvDQfeW8cZprIAlRKOv{0f4$&9(+M$pAf~`Wzoxn=poVhPfOwPd7k7FoGR2@V_ZR% zmQcG+c1X_eCfNol-})6Qt@3u?iv0%3Nv1v2rq5R_i?mR31#c6X66FD4H%@ifqO zJ*(G6JNsuPK3s6mE+GWt$Va_bInoQc7pxx0^I3cWeXFf3zPV5 z05lFpZYY(go8;?tO#-O&PUG+vFx`?IuTL6>M-P#&H>YSzB_Ah|-Z1Ihc@Vd4C$KKw zgm{!fdJr}tyIQCmgGX;5Uu{bI&N#%gdcc|`+7k9x6X{yynKYA&3%+Cs50S6eH3F|s zk1O5VeflqUTE^!dvnr;Z7U|2M6i9)4Vj=kL5H#ywsxke}vHWtdy4;og&HK3JSGtFz zYK4~nOI%0GvM`xbvkX}3*5l4-W%F6nHg056udj)w2Ce^NfmPDFNiK; zoYGI>IO2**jJWJHeLXIdSl;Nse!NyW&>Dh>TzP#*=!RGO-dzyKbF6V`1yTfDVcm<( zCY1cei?r2ljzl6g4g<&Oy^i`6=IJCN>X$MEa@uGyE{ovqTVMSWpDxMhi(0^k#{uQitDsiy0|SgjT!(Hp@2!C=QhL2PyZ3)h{@C zUyyQd$?h`6hLvsYg!%DVPgxc8=0A(-KI_sZ%mBX3=!HATuDgh`xd8c=h|Xa)N&%54 z1hFrpW&`@nkVJ0nC*X>F0|G|iW+~uNc)^HDQD$F<6})bFCDh?AaTz4UQ`n6^K|GlE zT&0v=89-d~K&lb%Uk$U9H&-&u2BhOYHm+oMMLnGMdZ*Qa6hDn=T7r-`N7CY63q1iLel2(>pAG zBv}brM&1t%jcXL!4WiGEjm72*N5C8FHcKpaQ7(OLF`as8OBf%W?DxSFa}!ff;W}4i zH4PbkW^s|~y<(XAXU~7OK>OE(*!J#{KXm#m_=LD?4vTB%1jM1^aruH#|5}rP^(4jr z(s0XR{}f+FH4jfKB~oyg&+l;f1zliCh^T5G-Vpe~T}*OPuix%f?Rh0)!~RiOZ-HCW zLQ%jFirTYVXJuoDr09S?V5Fd@MOw75%b$v*YrndqoAm|K=7mC5+Vo+a6^-qT{d)hv z_04Y9)*O*r_ZB5|)8)|~x}$?sxi`JXf%9X@FQUvIPzng>0=)==hpmQ1$3uZgFo$dR zljs6O7rvK#HzH-e$!*IFrD*#`QSrvxk#bV`mPcgE{t{{9*p?{eneF3(Z;$(mDmDZ6 z{1=!d8xQZSVlH&Yc=+L1&RKB0B>(T&W%&$*uddHoTZtCF{egt`z^<&Ik*|0U(=*+e zp-EOJK3ktC0o33Cq{ILg%!Dny{H3u+#+&Yb7uVN?8R|Yy4?0|%0qb{~^*DOLCcm;B z-E9K5TC%NfykX5j4vwUS3apBw==Z5w$bwr+ew)5KxADqHfgDkR4P)Zu;Y6=_%cs;BNP&# zotAP(dEM3N_A?sXEojR1#7VPSiPc;u6k`J7>$VVEy9Vs^1X}*bPX4Ki%5k-c1$y;Tc~i9#kM_(#Wt_C?f<2Kl>) zBwByHwhg6Dw4-uT)7~I7jE|}v_j6}5V@k4$8l=$gM;fBhN;qc0*|pG%+y(oC05d?$ zzld>@zxc1TPH$zRed1`1XIDLcPGrKA{u;Nk2_lF#Va;i5xtkhV;4ntju<6xo@?W$FV=4@EeN+jseX zmj8PJ{)aaZJgYm6FMz{-(Z&v!4GJizG7;Q8P=nx`P}@>=*5>;$Uj zho`zB5$g;kbj>^7M*+3<^K?_hJkr32Rf#*;J)U{}#qnG48?Gc%kvjm0$}CVBS`(XZ z)G;IgqI|~mV@C{M*Hr7OH|m_V$5r6#fF}yiV>g@vG|MZ^RoF1Il`H(Xa)ccEe`KEi2Ae@4?xcD6<>4~Gy`7x_Xi~e+;5ET z><|*Ttph#t75vAVKjpAeJ~yJe^5X%#A($Wp_6+v(8O}Ixrr`>t$hxzj-UtnO-4h-l zaC<*WkVQmL#jR3wDoO^h;&DbWFcnPUA+omrz-X;lBTLiGQ_iH2nIPH07Ur51Rb*T{PVLuQvAg)=eOk zmni6l3jLWb>xrZWD?@KQkrrt83yYxJLnDZ205sAJKop2=q+ouK;5hw_T*l*REUB*@ zunQL?aMgJ**!bg7dd7)F_YK^Jyq=PHy-w0QbzCvofEMv@M}QgRPfFa3m=gSWH8HMz z$=1?CQAfWlxt2gAS1g~xOiQ@+m|OL1$`vNmFZuL8z0loIWhguOm|6^--8nmlfpIYM z^^TbPw=)9n-L}%r?rOlCf{lK8`t{flVGvT-;r()9vihQ=;!Q(AA!y5Yre=;0(=-gW zecC=%$m}tjuV3znu95l#k+V>rXzWxngc<3DEqBbZ1JUBQuoengSGxH%du*MAL5XDD zDJN|Hpt0tE*c8=D(6oRY!Ax_6Y~%H~*rd_b+GzSsp4@U!*X(#E+PUO_B(^&dVNOcN z3jWXTA{*i`i-_Y5xasEc)6NIdX*nQ*M%iaOqlsy|dY~`}4cBURxs&!}mjkqE)NQmYF$m#d3 zdh*@7_2mC*J$^j`~UaniayU+D&^VO-To6TPYU46+u*i*Ia zrpwo^PM1158PNL`Y@VpDUqPtf@zGB+cb^Q2Kx_5b#Lch5Z-rlFo0S0C1`lFkaH%4n z4sd!76_zcC3&_>nldiSD@9vx$PgVW;WE@A~Ew1U2D}ie4@;N*CvINU0c9^))Re4<# zR^e-cxMRYaVCCA3@183*^Qi=%NLKS)$I2J~COk?1@I3b-A9WM4YasSmRQ-NvXVtrd z^ti{OOs&-kT(*qF@&m8;oC?< zgrrflOqR?G-)gb*k*}-;rurIJ7SBt9+_c3L(IcmQQjhz4b;NjI1fTef6i8R&kpldA4sF~^y8~~ zVu?5qT361Z3U&1J7K!(*N$2(r(H0X}v_FQ7O8X?tcFisrpr2MVWM-7(5`$UNws&en z*-91r%#;6HT)oyj_E=POPeytgSA%XoUU6L{5m?rIwpnOq<=`DArJ^;P(?nEdI%u{Q zTx(E`uZT-rAZ+{`@g6J4ALcc0CQ}l^!Y!GzI(OfFT}(ZiBl5O5DcV+=^QtXBYb@?8 z*Pm*AZpCU6$-G{kC6lqqXlhy9f+0Kk8P%I@7I$Xd0QY%ST$h37^|q#>c%L^XEpE?g z55k{Ig~xenaoc*{iZrjX`qVYAFXVBbH#0Mm*<#Yw45o{@3k?}*46VY;JZqWTm!Ca( z79dPdMuyto(?x{ltgR4b0`%ngG#3V&4*4ZMhhES$4;J3@&x@RaabDA8`VcTl@nT11 zjeb1e<0wwxSFjKLHGSX{krg>Q@xab z>~*tdnSG4JTXrnE=WJ1v)osOBL8XdW+~TCR;FAR-<1*Hmt8&(fdA-15gzpDcfI7!uR!b4B zr^5#*r$ALN*~E@}{oZMm5q^lBP7|~%oPoxaoc-%vdSSeT{QRZGh%JiB{o`2&??%nK4-QO%z zsv|wQ|5c1fl&F(O!f7clwZBF=p4ud!(jnpB0B`gTIyC$rC+3~qDYSG>29%Zi>T(G^ zq`=T-8zmI#ZS617M#GCeSkD;pH%G%=Ln@;kdl9`JmbN)fAz*$FyA|wmrfd zm?pN)=x3llG(e8!|M+*%_47aQY@=q=vli&+IH5jjrbL$Nw^*6ieg%n`@)HIIDKU?^ z5o2xx!UN#mR5$S@{z>unxAEOTkM2|eZl?2LthYbK07&%4_&ph3CIDg(i|@_ie086z z>#b-O7rK8a=}89pEI77%f_LF(*Mnv<(c|g}5d2IL4MJtXbkEqyG7~{m!Q&5|2oRaP zMPVHX5HSjJmUWj`kn@;=jS8&zBo&>Ev+nWg+aFi5kwMqiBSmIO^s-QZ%f1?mUWmgk zZ>AUEfaSZNAC7%VcGc`w%LR|8Bfz-VCG+q95)NJZ*_w{{NU?cwe zUxQLBz}x$C^unJZmQBPJtfy;yod{kJ1nD&={x~NJPqx`sT^Xp$^E{6(x6tWOGIXUu z=F*2lzr436^?5iDkN*1`e3j~8a^`3{Kjo&j$f~RWa2XptF!G17x{aH2V((rl zIrYB}sIBjTUO-|Nj77~~#`doVDfFeeq^Z~b{L3cqHMunM{{T%xT{9Bmn_F*XZ?5Ch zWh$^QiH*o0`Wpla4c=iE@kDK<^tNyDM1n*GmQmIi9=tO#Bx$I*W(+AUl8O4KY(%EO z;Q<^uVuzC$FI7-CYlQm&acz_-S8Qv2C`B0YaJV(j`9ung(CBx(<&THmd749owfT@~ zsg?$0Jv`{Uva98;D4SoMRPLBw@P(+m?vD7dT%|Hmfgw4clkx;&^)oZNj#cxiIeqBdM{s*?6A_Qzj>FzE#g?o95;I&ZzE(MFu*J?{2$XKw?yshckCBb=-f&+yE$ z2rr?g0;Y#HU0SBSnXNbcRFr~re(!kENgS_WRwK5a4uW9aX{DDtBTeNHC0ncxMy)7-;9f)c*@zzVf#yqR&Y zId>inUX#n~kXphQMvCQw6Z&H6*(qXyQ=kyB7^jS73d>y4c|UsJed;2hOFs+)&@g?e zFSs2rpH+v07dC4*Rn@LUcru7-To0_J1|X#kV^j-L+iqu+MKww#()^uZ@h|Mb zS-BMzPSUZPo?s3Wb9Hu#n*fS=v0@+B_|%~TeZs9BoH2!0Zz{a%tJ3fw9-(L>ukSm) z9y%seA_nD|!pU>N762-}@DRX=_X-HmJ6uBW?-Of2N1kL$g+2-KuE z1}?!lOMH2V%Ma-O)@dN*6+98r>C}>LcIZfojx{PDORgwmt!lX)La;fX49hQrC8tV^ zoB^Q~@}te2d>ak+i?x}bbnrvjpBlo^d~3dz)mac;;R{O80-E+0mROub28%2^L~#Ba zLG7VMc@mFcs89fFZ0ir|+vw+{IEWXt*`*gURL*z0_<1mm{pV1Gyd6ggAg=rwC>#<=J{Djrk`~wjJsZ?rq%D|TD z8Dm2E=b}0>tGjVIapUbAP*e0O5c4qc6$W#HS@~_Z|CeKV|^A*et7AZoj@UEw|xCIGCSW zIaqYZ!R)_ob{MS?Oq3+hxb0Dyf3;b+M!~}}n$rO>V7~0$Ot@Hv8e!BMotF`}N}(L+ zX(a<%!S_8Q{m(2C%Q_F{D_b9Pez|myZ1laE)6vp>vC;Qv9vm+%bdA1l=b_)BV%6kK z&KIdWmAr2+JEDK`VaFe5yVmxh3p|cA+lgFz<4oS>oSu*&tFJ2cJDf{=7c)V_K)A$E z{tdfbHTQ?ZO+82ae{jn|DLv_4UaY8;)#C{GJ{NdnLfJ zMT3)hwb)nOj}O>`S3`IipJej=Y`Ip9_;l@;n+dtc)A*Q^c!K(8@^xLD5PAiK4Sz6!=iqzU?}pr)^EV zexsrWV4-%Y5Z+%5^bz5t*2Yyg>E%BGe`_^pR_|J{S zcF4RRvzm_+TJssgYQ;}&swzI?esARG;HzP)I?}!p?%=ZLMYr93y!7htVTX*31Y{zcYzjAN$W18ak zOfnn`7$Dqw&bWAhHC%wA>q1k96ZF3_dTO(=?Q^-CaMy++Q8agh1ah!P162Z zpjHpOjXdKOtZCm$|GvZ=%sE*((=bh*y}dE#5ck$uU)PqO(4gQl=Jozf@WBlLGh7BP z0}6vc=;CCbW=!NEIO@2t=6ok5px}*@CnxymQ7QhGg{$=u(^OSmT6rh+U;z{ZaqSat zm05=alS`CM)eSF*v6AR6}Pna|>`{#>_IENlN#sTlNpV)1dF4 z?Yb8SGuOg`L2DVa3>CQW@w1x$oH>dhWOK#@?V6&WGk)0 zp@u#-jwC^ZQ;{x$y|w;YeYBE)yS}jM)!`De7fSms{~kON3}2tMAqw>J!MgS6 z>VEBm-OadM8mT!lCkgecL&^&HxbZ;e8LTCJHnn9=gSir7i^uaBEOEXE-mN4Y_V>BX z_8`n}XZT2-yOUT5)pG>gouzllV55Vka?GSzt$Eq)!q>HWX$xvK?ysbUerBygX~}t# zNs@?94|L>ple}u$`Cs?|i7+aX#X01j;Z|TJpV)sl@3+TQvF1|9<4)fU2W-sX>V)~} zRy8d458jV1bp*EN=gc`*QK^;~V1uG5uuJf#b|AeTAJ1nM7qavBblhVb_>sj#pj?xf zpWS|2f=S;epXF*WN5IcY#=psxo5a?oC?|TbL(|Pxe}b%af869<>_7~kv^fgo0aBBh zpKVX&C2IG3N4AFYIg)8&Y@Ih?BH95b>;;gF8L{+IhhUE&HMYmcFt#wXfY=pX=yj|% z-`5p;m{b=1A4H$;T5X9IWXb@A0fZ|ThB{o7D;as&G-8wcE4c@z+x1?56%?~*Cj51W z)+~fX^}Q3YG!{hu`m`TaaMJ!Td=s-{gP>U)7v#Z$nCX5VQ)ImRvsou%hB_@zu8b%G z4BQ|G=#>>qHstnbbo@6bX}6b&jTg!=N6M{U_+~**WTT+maQ8VlBy2AHcemr&bzA^s zmhTEjvl0(UH0FY=dDWTDfPr5$3+pjQM$5*YYI^$s7{H)sbzz4(ZSStwJor$8oV-nO ziuxi!cdkDJE}8rXVXrMX)nb+x7v@7~-cS=B`>AikR`%+uV=bnxn9vQTA@rwlnk{{y z61=HZxKHs)YW%ur_^HgYY}FRpoSnd}=3g=gel+Ot$>n$}8P11J zFFaD6u$No{KV6}tNLLd=JKA4ni4QURkam%*={%fr2!O<2T+n8>wKD8uWSpfPAPtl)M)8(~-;u+x9)=OYA-hdwFrFP%e3l{7* zQ;vuf6;Uoh9s?sQC2scJYUdST8&$NTxWxs{_<*r5u<)mLy`Cd*(F*dUN|j7c!ne*a zljo|f=)T7pZ$g1KVO1i$Ny=AAi|kiPD-UFn_`rcP^U{%wj4Q6p$Uh>$M3acK3=V(` zf*nA8K{rEcBS!CC?63TMZvzOV`Kn(HT4U9~Wqr=_#NHC%niIa(`8|oTag6BEC!9am z0UAFAZ(4gg3}iiFhq1o?LaN1pb1T~UN%9P_OeMHGcvooQlbzpA`>J*6^KWp0W_|tNX zaoQk@A3&Iv=IW`tR&yM0fMZXae_GO}6E%^5(fm{Ii5yfp%4w>B`L@~A+R({7+yRFb#+YWx@=7dYtpGY}W3x^HWt<4M*&+V9|VvFfef zOeseQjF|F=jnx(^`8piTroGM=DQWpUr9jnp-kXqyr9P~;X8-en_mxvlkHZ`pXFT*i zZptL=&?L-SI|&eiy0waF3rQ{!A9qZ9QuZtJZQ5aQ7X*D3xs^{*tuibIDql-t$2SQb z`8pz^xlj$dFPUmCZduPGAUIF_Ph{VOIkXT5x?u$_PCs-WtIK+E2EY#$^|adxu}-*z z7=cVhC1x`~qih%Ej*r)!@JV0V)r;)5{`^$u75QB)9l)x14V6fviClQ|*aD1Ahe2{3 zzhTuD7_t$WL1w_lS!*?1a31t)41A3;BwU4;)jd(OJ_+Bwj~iPD=_UbfPy&XMH-?~> z+_HX34^%hHRf{(S^sfZ4&FOO$n+!nG)AiJye)3bLPBzaB#Iwwus7dZfN8{XHaue(D zeY0)Wd^Gn32EX;$a+n)%?mWlmk@c6Q*hp(e&4L^`y>q<9oo90AHOjf2ZqdzoMt5E+ zn)b9LvpcXht3~dvbLYL3>YX8MkqWV}G}zI81`MB{SQUJ4R8xgTzvtkHmISA_QTmT> zH;kz9k>O#-uG_nqBYka)8f0+n7aIo^uV>F3pTRHz`A}+=$DGa24ryzSUKB>x2cA+P zQ(I1ZWbO<+kDJ$Xc)j`aN=ocM>qF97rCkL|!?LO|i>`LqOA6^HT2qOdy&5@N=fhmX zCeH)YYpd7R=N`qW?;>q_oyXYS89+`%G@+mg(0YRp?n5~Hk=CVSSQYmpRqN;5Qp!`&uymkwK`_}S2mFx0nre%@>`2{t!A#e2RInINdrmy#H zK>g>a@joXSA32Tl4oZ(i1aRYtU-vir`&($}0Mjn8{bcd)R23Xu4Hh5=;tXWu9K{hp z8}Z+)Bd7o!^~YtMITa&gNf8FnsQ3?9P_T^LZ7?;TGpTd{~7%@=_=+wcl3wNVl( z!MI8RVEb=eVUl1TL&YCK_1#YhB5#U2eTrLOejig)v=WHVMeGuWK?k~ilPZmm@{OFj z*6ZUvsHv3WzE?998M!*N@hM1>knlk#->W&A+$2 zneM<<&b}gfKgBY9i4cZ|r!NDQ7<~(t_Kdsvvh{ni;xn@SEB*X}5a#0&EWt7W6_;_g zCQFwja_WN%3D`{|CR2WJO_J(ba5I0>LM7^RH%OfYe9XW^P_#+vNV{h)v zFz7FR>-f{&I(9VBpLpx_3%c4wpR)+hUFKPe5DCqK`3zTh@&uqOu8=)&_K&;tCd)>8 zVRyeE&prqNFxZViaGe~O9U`$pTng!4^XR`i%NwLo+Qf2JXnmo{DW?8a~-igHQ_QZdW&CC|$ z*sfDRVLX)L;g|s1!9R=qxf0&u_rWUAM(reMgU|$0u9y|{UpFWR9GSo3Z%=D%xudyY z@>AMF*5l?(fBkYe7?}5jk3X+bQQFMbvtpI+aQgCCs^D%bnFm9gIq1BPqsfFm{~uT@ zkeE8Rn99nZ^NmAt_Huxw0_!)cu^l4plzpod?DXWtEDHgoc*DBnjOGbe`GLtTUaIpl zf(#&#T@J$Aw+6=L!1vVzZ}0<|BTBIj?-&Svy%)dct73PLH=PCbLQ8>aES*e{Z}#zr zKto7_WLt|OI2A;Y_1jdyto?N|X_G;OW7c|!uo7I!NZorgxg{VXya?8og?ItHgju4=r@7tgz%5v>{F zGY#N4w{-2464WXA!pbVL=TlhLxq@Oa$y*q(EBPr9A;u6`y`7hU5;H6MG-++BW|(_<+O=eE{ma z^Hau-HBZJKPi0;#=lE8wA6uD*YH_hEspAPc_4^Vg|L6D#U%J!#rkvgILmSXEyYERo zAr^kG%)W05-^1%wvKYHlLl`0Bez3M*^TxeV^+QT)(MHP7<^NAoCx(RB@sFcZ`-cQe zoQfQGt}obt(bF@B_89;AV;+c#KVdJMfAg*M_yg*)OsOh9VMl(Xep=j(leTZo69-Q%%NW*Y1;y zU0hQe6uo9sMHm>wT<<|>yn00fJ>a!TIiFzhgkad8A>Wkx{nzo%G5^o5dKTM{hbhuL zIGKlbDHO-Z(Y4~Fyhn9ROZe-`55L~5O+e~11liZnZm z@nZgX7(~jQ#T-<9zJ;t`uU=1-+~A7>%HbQEWCN-9iY85oDI4fv!%?Qwx*}>D?GW)l zGCRRuGrr?CiW?UmV3AlQw9I)>aVAE|o1zPDiASY>O783v_J0o&{*1B+?INf|IlEmH z_Ue3+(*{5J-DJJD-b1sf3jA}C<74{wNyaW26CF#}ZuHL*H2VnZD?33CdTmDaJ5hi5 zI*!T-Op*4{$)M(r;=tn{4QQL3*ldl;mr{Ar&+CL;)wG-3OukzXAq5eW>Zef;MG=$u zKmR>}$j_q5zrGFy!Cq8LYlv_S(`KdmB8y(viG0b?-6$^Hh!i_Y|At7nale%H;}KD> zSFJZHzk%lJb&3t54$r9*?_>jU_Z20&P$Q~Y)C^tL+c`k8Gk@PRtf&s=L)P63J}QsC6rb+mVLQJ7NS1UrBzAhV79vq=`zptE?& z$PlCMUJCn{6`Ae4;$Uh_UsQQ!&?ay@WE0(A5IN$oC~_A5Lx-K<0LuSwhECcE-o%Qt zB{qFiB8Bx97?*-Qq`v=ofaaBkh#&9YnXl|axj12Z&gwCxlSfg-*BViiYk9>*RbRi zks$muh#omgqs42DUj(GXoOx~Ln65}7XTIt?7f@u8{>&fK&LI>hsy}qzF&5di@)dys z)1Sunw8d!ulwj^zIIn?fz2e%IDTOLj>~ih3E$f-Axq1K4;a|;)w1^Co7?DM4JgUAK zb`Zf#v)dy499G$4wrxwaw&5|0%e!$g`tAxMgs6K`?dVY={54irkH0R+Aa3WJ`n39K zxho=!&G}i%yyS$kE>plfe7bQVJpU3^>@AhtNWtS))GBV1sMIROi0Tspx^loPfbLg$ zaWxI)t9}~z?^bnR33`mv@)eY)KuiMo@GO_IxCHzH%uA-m{-aK22DC0PhCz7}QaS7a z?kHSER)b#}RHYeyr;I*%b4ast*z>i_ROm5gj`aVIL14z${FU_rYSsRGBPO1d>O&ur z;31yy<@kEA^{FS}4p5+7UVAHF*GIcrpCvo~emh;CLk^;wtnZhjVLTe%D}@0{fx`bJ zh|xEJdJ6WG8oGkQ959K)2Pb|KnC_-CrN((7VGe{8&IddH8tg0U0xu3=nwplMeu91A zb~JUOh%PorIq0Z6v_(YR1NWn$T}doa@VCd`E4@X?%NW#FlCjN5}Q-BI4-XQ=7!xBfSWZXGg;xF#2gkZhiTSKnn{uVQqB(#R(i@--gCk{EwmL&7e^5_7U&9>9iHQT76O&0VI>vXu z0-(|^AwtN5l;IC6w=V$V1jGm9q!vP&65ICnZUvnn`hS2>#3zaJbqodP8$7EqcDmHa zb(x@J$ZsdZvF0cMXlaizT4*=0fRTCUiV2bSPb+h3IuEn_@(gMP{al@f?<`CLP=0N} zGoTs1CF_cLNO*8Y94kN`9mv_%1hss^DlIny)rt?9QVVI_osZ+_^?5RoHu94Fkd1L1 z4GFkYI%(`D-y1NDcpLqNfyxCf1y{iD708b(#jp2bh-iksH!8+z|ID00Q(-e^53(rU zJ@|c?&V-sZMdA&{$hU76^aP zFKzg)Sr0*|@vIQ(Qy85r6-LUOxqIDO7F=;G69QNgddhlxGzi4Pd50R!6c48!lo9sh z9B`rx5KV7W^?kuY48(vkh{eFc%ldx+76lic6t%NErKq}xnpgvoQpVL9d>H%SR`Lz_ zZ`q~vywr*&ko$;}&C-)jyd3L^(~n(eRd8wl0035JK7AV#tWTQY_YXo29mC(mm0Q$q zM%GA6Oga z`b`PeFQ&j=sb5V5SxsbOX%$*sV1fVmr3uurl`|4f&FV7Ti*~blqcI2%oDd}^XE{+! zrMm^;oW>OeVAaaHE*NE0S(yw*F(yZ@Skni+40rLp52MoG*U>+9>@gj$>BJp6`IR!> z(5J8Jv$tB=CFMM*)3;1J^B6!2eHlApvv}*a=PQQ?aoUBI+XF6wJ(^OSJx{I7DqGHO zri8{V+C3b-!7`WKb~fdhR~CNexi^?fXu~(V!b1R<`OMZVn20o6_-}raqNo7kbO2tG zk4;&y>7SN4ha-OrBaH2ed@LnB-qn)l9&wMhrE zR;|xZ(+d0#KNJytx*u8;`*G6pmc)yB3u8~-g4mR|G*+J&c)+S$== zM(bc_3O2Ua7RQpXp}2I0n+w%JmyF%BhpQ&Pbg)rdUxr)xcDr~O-z=`FJ4`CWgF`9E zdG_Y!Fw!9B738wsjWVfQ+n>Z{tko?;a+_t+bk={mw6vF2v~{|%dhHs#eY>Vr3+dip zAolw{i*72~{I1_Z?At?C@T3Y~@V1`{x7T=R{}FP?JL6P0b_Cc`c6L(YJhnHVGRjvK z*tJT{(!$gUyGkoJTPecRifP&EY)$T3avfIne0Kxmb0cVSGt=VIFC>eKu}AT$%HLD% z8g{LQI@iMuz~@G|=?m9~rL4-a8P!A?P3EQ`2favUPBM$qm3qBTY1??x^MGam*e-QTajxX3_sQI}k2eXKg<06%D}U&!}%s z#sL_6(C`lk%bGLH6&6qJk*R6l?H&SO#$jf=fHg=T9#+8nO^4VuM@SW5T3xiaFnt{aHFRfYYi}3`7->MH$qD4%5{4CpfnV+G9X?$5jJw zn$H3UC}wqx_M$QEW)+hEo0*UIzuqEKRtLf=VRIwDX9@?JBj<{u^wM{Ozjh`qV)SyE z_P^xOm*Juu1Rc4PX@RHS{}kypMf3c+Vt6IVYp-)^A4fgGC#Yn*C&S61DT2$*jL%Jg z`TA@eQwQi+Wg=~~zBr%A8_?@&Z!zrdkQQTMD#qD0Y`-CMO4R342xNiJ02S>p%AYGK zXCWeG5P(eb3j!JX;G=>T&tq*1l&PB8(#Dnx`#(Rc?4T^_zru+hV5S!`mtFCpaRD|0 zaLItXuDM}Y+_Q)xcPq9Pwe>SB?nNU8_tYA`K<>DNc7NN zF4e}da+&zI6eafoY)*Sbsa8mqCN^vZhMpn z^G0xhMsScuCL*2Rf{NrHPiH35Zz!~*(VH$cE65fc=QZdr)71I;nv1qWcfDvGWgFe9 zm6js4{&E2_FpvOW9CW#%=9D4h?2V4^(RN_RBpU9ZNVx}B7BClISkW2UoLLzG<&&xn zg6&lMOJa6DZt-2gwIa81^B~dBne?+C%28JD&b*oXU0~Hj6=@3F$j4z;mfOkdtQ`IT zZ#nk-dG7xX5!NK~!kAn_zH#a)qGL-KByz%xG@W+P3*rxglC8CBVuD#zr$j zdRvG!X}Fm7h>=l-a;J}kU8%krGAiG1A_@h9LOerEed~y*9?GVmj~Z}^S5aJ9 z8>3t#Mi~}%T46y1nf{0(2jc}qC)|9C_joe&1KpE~AZet%SqCa33lMhrg`IhvMXTTS ze*nm(-V`Dp4fbZr(59`SSX0zxgh)j;Ua0JU1hSa03sok?9}P$uqKEfLoH$ttOG@;G zX$37#DnsgjxOy2SoRnr@RxV@-pva-^xi<$knauWKIClBJfL+4!h|;l@QPj3gsv4&R z%$Iv8qp_`hJU0%jWb0RJQ>QFdSkH%5_Kr|1mgmj5i=?ljU^}BY_S}q$loCJDC=4X>I3#n%0i1U8HjS z?mqij34-EJu>s_a8)T=7PwbO3y;a3sH7w6?gBK^WNPY9wI3-^>ER=~XK+vui_UL>7 zGI0-Ph9L_MMOfE-w*i;(b+&PBMImt8itIwV#fh^!Y?SjrdnEYy{blz*$&GYJ+I~i` zE+OL2C&kJO>pIz8jDkX0aav!AFXu|fima2t(PV!^=LfzVD1liB25h$E1M;?EOYyys>o|9Vyd*(lyUGUkf+F2#5O^0Xn8?iwf%=p(!$9-2ROA^hseD4yZYZCzCqYM%xoc8cA6Z{>0jBEROteu{-ItRNy@qJbMx z9z;RIRGiSR?DD^lSuRM3I2|K~&QPEexr!@~HIalscG3}kdUx^~55@S`7DxxA7Z5UO zRN&>wC?5O$aDnSg0l*FkcW?Pd9zhfO9kx{D#;o3v1xSv(FuKP)Ny*#T0|;rBNU(Q= zn}f&h^E};!R5wY!-A}9QDiSCjBVOwc@o0ls?EpI$*xg$6=C75#q=Q?&;{?mxES&k! z3)}x$Ar~H=7`73)Ui^e~^7@goVu0sXmQWd5 zBc`PEu>l2w5r~cxXmzE2s7~NO^$PP(8frM@aa-*$w{|sHd*zt&HpoAOJkQD}V_1~h zm4x&>qyV8$UeeX}DDT7BDQBZNRWB~^+Y8|;d?HNBY~FxwcG6XmWar8> z;09PNj^TY3MSfxFyx3dH*hhA!0j}Z%HqK;jQ)}lU(E(ClFQvh|eNW{I+RLoI6Rc*| zxHK0XlO1L4UU-o3kP#goJoXsRR`@Dy){e#&ptwP5Jwcg(=#Ko&WRn*K+GY0neSn3V3F%ngXo@8 zVj2hVQZX?y_O#l5r z6A&S7S=I%161odKR)WVK`m3i$z*l~DHl>4of#QLTTDLE{vdt^U6c+K@4URk1RmY?! z*5=3Gntn^NZ*=r2?8!t`cstqs;eB+5pO9|!$mqI77BqRuj>Xrv8j^G~M*~5b8b9l2 zoc7o`{*0z*D~j*$pOt0W_F*x8dCy}<0ZRL1tiDLFXoR!9$9f|p(^j}euy{mc0$Zo3 zr;``n?YWVxgDc#NO%G5yBxu9?2wNOh?D~5Pv<2ll03H}ws(P=DE!P_a5_uJpIg`K# zB;){61hcz$twv;KbPYAG!g6Fiu~<;L~ivvq^ZsBNBCn&F~fI)7#jXaJY;PYTEI@MSIt}Wo;lRP3(BP_=A8F`J-y*Hbu z>yEu_Di@460g|*y;5Zv8|Fxs&FfQ{R(5*1`31OfA5yGFRkb>*1x7t_T{u&Cf%LdY3 z8~A7>hSqn(dm1x|{{Aks101K}D-M{c&Lbn&;5_UA_e%K&!`Hf=HEIcRkjO-t z=Pm&9M``gdbl72t*GV9x)bPX;*ME2WC+`2-iM@k%jz33(3p@AU_fLbw?-)XgbNoxg zf7hmD>OG(P_6G2FH#_M~FxKI2!|$n)&*?8Cjs7_Rzl%)5rpOy|BL^3MTsi-T^71aX z?CTWs_^g9^^sm)a?%(c!YfAevbkwnDZZYm>m9BithRq*k)%Y6p{nb6C|K9cgRbirv z|MzsGFQDvwm~Yhmo&CR^^RjPDZFr*vj*o9v%l|bV{2&nO9e@vHnMxY_Q~AHE|6;cF z|K)#B;F2|7E#2y8~lBY>)Kqs>gLoe zk6$;3!EUat6;I=zciuy_=qo#1Tn67tp&ZGcUN@Lx7_C{L@SdFp*2HKfvoHhUF)- zoC3n3O1P9Lkv@JCo9X(VX=Ce4S*g5KB&V4Dh4`P>Rs274Gv^dTpBLk+ewpH+VNUSK zhLu>abS$wJkKWq#${k+b>}Q!J_wLKVLVFHorUHI1^J#Jt_dc)ffpk4;({^m9rrkiG zo@D7wt8_2F^EJzuz5GaTn2hax`<)^}`QIwwRWESBReXMGx93&(@;h6%J~n0*Q0WHE z4H7DTxbP`fEyL@}&1$zk-F-J1jBY!&?UH`E_P4c4R(iHKn{J^0LF4*-t=_gaG{76Y z8(z;nzIXPk+fKzvqIbR)ZsT@E;nk$*=(YQ5q_*;mf<2${V77o1v*l*@Q3x|vn@J!l zUDp#+UkLZI&6i`#ak7DsH#;bh7I|heew$m%)X;e=H{>qy%#b&v1r`OU~WE^5}s{=V#i&tV7Owl|J z*K}OAjC}=E9Lv`3;O_43ZVAEN3GPmCcP9+)?(S~Eg9dkkdx8YF;11yp$vNkq`~UB) z_4ex3U0%C(?W)@K^-T51hg|D}$x@9LhP^1%1E=NeU%N3}_AGhsmVrl8o_4oCFLQi_ zJ6vy5SZ9vtQ%qNX8dEuH#i2(r6lyYKGAjcU2|;NIkYMTQ);c2Z+et*dJ9(P)m=X&Y zW10K;ninb;Yi-Tq(Na(CjL=Wp{CF!=`i!xMQWrXJli26=T2+qYf^PEY1|VHL`^lmk zM~sG~ig)6Zusdg@!iUj$sA~vhAwc~rPqx8zH;5sGOZQ(vmtbB)lini4w5KW<`ZRfpN zb@BaVkzidHl7i7iA&H5HjH;$n5)wOqq$IuugF5e+?Yh8-ig=xK%_L>A>x1pe@Ta|5 z8(!eIC5xZ3J79IX+Gx12L8jSvrMT)rBqToY=m&GjBLc;#C8>vdFzm7dGtfYT zap0618AoynsavkUj^Qt!I#Ya}?N3TV#y{0C>uVcTwVreLQ{i|I1-=qdUKpOeZ+ys$ zwW8v+Taf}wP@&^zCp{cfD!+9dgDUCzq4D$iqGonYFl8Pogc#TWcY4hKBVtLWXv#%e ztcc&?BY(?w1?AF0rV386yHh8)$hn?AuXze?UrNT@stOwrrlmy*ykJMeDAvGDQjFdH z27F1~`g_M0@geDnNkOSL8l0!}pEVI<_s%ro5|eVL5{%@h6LuD^Dk3xCdY-jkR5wiL zAs?Iglh&4D{8CBhp&r$dseH)&{l23Qpk6ITOO^87B%4CaU!{T})B6D%cBmOrMIeue z8ym?W=@1T&5S=VX3UT>1NE|<0n1zVW8m@Tw>y533Ih6Ev~or%9~TT3!yZFXX*yX!yOPdiG*qkk6g#Dsp=wcT z02522OBNj=nfn4E;#0&OED+#_Xokg;3o~I-_VLZe&^=u=z?v#ibXQSL;Bh3xw&J$~}H;Y)D^KJ4m)$+k8ge!@?u<#{k-XjPk)D;Qr zYu+DttUc*YTt&E);bhS;1<4;_QGGM7WaO=r)vs-Gd)}fDo~qU>vfsU>K?uVLKeLwT z^wi}#Y*A!2KIcjhVG7nvFd^d5tX%3jYd|jX2d}u9mfO)%*-ke%$X8b?l4{aG5jPE> z$jTWD=ZKX-<>ytiCQK(7EDZ3}eK%9GBH)7b8T6$o!p(dKT+DRv(7li|rlj@Kh~@o# zxkY#d5?ZMQg3hC}1Do#-@j+tEAv~~bo8sYZxnJ!(gUVBY3mb7~XGXQDMc&b0Vf_T< zP7Ef#YwM!Y_;g*H2AGdv4aHsoV^C@64G7+nnq@Ch%BrT&p3}sNC}nyvXCD#b9aLXB zer=?2XX!snceHn6N*%B>-a{;$N!BdVY6u@bq=51J?6gOhr9a)2Z7m&a52ql7<}=nm zmDA?of2$K7A*I<&bPs2{!^hD~g%?RH#1{Mxw=%7)o<@F8o~Hgz$JhFtB1=au5T6TK z&TwQD260{3PRfw-d$KNYTIw)lM0jiCtYzYcr8jI%>hN$Kjaw-DjLOQO}>=$8C|nrVZ{0e(-Q zJoXCz zosZ#!HW_S2rVk#_Qx;(Cc+vr$#_29s^S<*}@O$n7d_K~Kn$5Xq8*ExLOF~<4%N{v3t=10d%jO2;$Mzvjn zJxq2U4m^POLjW;ZZZf!ZcnucUqT0V#bD+ay-S@n^v~cJf1h2GR=I~7o`Rqnoaff zt~miX=g0a{S{QMims#&mG4_s-u!Tgi^PuINRQTwd7Az3F#ZV{rP0ja^pycI>c5)0= zu@$CzvjnA0*{7@*dmX-BG;ti{Zw9Gb9z^18cWoF|!@k8=C5n*$+@k1kt$M#o<1-eI zJ5Se?<8C)%w3vKwVjMD8pMGd#<9Ils7B2gCaB!_FTGA9o-rRKB5wAFNt=zRPI)!3S zdZ&>)9&}nk@hrRAmUwH4ojcXrciEfV34;gGYk}XRuQ(dclY!&m3k@E6G%Y)+pG3DA3efZrU zP6!nUf$~7;qml|E4YW3yw4qDH4wiiffu?S2s0Sm>3Dz{HJ^mk50?qsR}V zm|@ZEZ@j#iIJI!h1E&U077EB%Y}-G%V2nYPnV9Lz4{ru^&lP#$Cl2f!az>EIV3xVw<=$ zlBrUhJ!O;AS&)$)c%++eburO1ukNV#mWf){SjAdy$qf&M=i|1I9rX2Ak8c#;d8~l} zosX7UMx)<|Z%~b6ZGNgBzWI)1ti*5B z^sNiFhkF$jphi5^X|`ten+hcZ68&G3p( z5h5{Wi|TP7X}>Eww};%`C76(a2Sd$|e{-)}6FowH^Mq{XH5FALQp)Iwjg>c9aW)S3 zwX9aeAE#e7P@E-9$I5no0rqLD?`Nhz)JSK`*nFj@Tg`K48wJg%*8w(abDoJMkrGn1 zx$3Gr49Mp)Ky1376qT=Y3(295t)UEqKph1tuv`uSYe z(8{3E%8kAtouJ{^&)M8Sl7@DxW5h!}R5alFFr7%7$dtSIRd z?%inL&!VnO8F0l@l*7~G)v589afuPjPCm!{+n&w>upDCD-$_hI187XHE}CKblCES^ zO&eH~E#_nFvhgV-c9iF5_9~n_GCzCpDDq~~nO0A5luphR!;RGr@M!1uG)rYm((jc; zG{+*!e2Yc`m| zhWeG0hWiA6M+7e{DFv6?lM84X+i--awU1pf$wM@#zJAa*Y{Gyqd!u~WFm)zPz)mZl z=TW8QndKjb*3F&wp_w>)O$+vr{H`LwFP~YgtqrF zRdqaGy8n(m$3+)LFdy4x&jqW$VeDA0Lgtgv`xN6WWF3!YPC{EYsJ{ilEwyE( zbnu`6 zAX;G_HmOO*p(z5ZUN+?|onBVp@@$f_BoFT7K~Fj!Mhr)KIo8z5+c@OqgYWz({>4O+-!abbgO@R{{g`kbL>;s z%L4Wgnq;BSuq|Q%an8BITiFeLZdOy9>4s)M0ZZX{t_r94VlIVixrXhU%;z=W)O85= z^JoTY6&0oDAc0x)Q1gnmCjInnAxW{?l%xl;`6H&!ks#G!(bLs0G<6=5#x1HOCO&1G z{9c#)6{6|Qh@A@aaaHHIyHq;h%qkQ8`%FleOpPy;$#8{ANU#@ggw>tkM^hQAIGNN# ztJk0Gj+ENi=dQZUOvE?2zF`X+(oNvkYIQP}Oq*{-!%n1aIUX)$O~sTf1QJ1)(Rm`R zdS-Cy@Bwx;-!^;en6_uUdjx&h7~)OOuax(uBR&>NRdeol=43`MbnODy9bShla7*hB z?M2qPNkl(at1Oo&sM?tZKf%gk+03+|7I-#SjhWJMgTKv)t#{E@lJQwV&Om{L=EA$v2x!lX?p9*RB6h z#k4BJ{vlES7Zr___;h@joLrZeEv){ODW%fdYk+QsjDM0%vUkY`%vaivvT)~8( zonN%c-|Pg3QpGH;lWcHHffOfz#(nrjx7^T)bUyZ7UEEf`NseYiYBLqqm0Wi^mOA7) zH^c6gpBy+@oN2RfT59l7^Or_uM$b<^DU+p|^l1#(pG`Jr2fQxI^<$L6DZmXGKh^i9 zDD^TThr7QaTquvM^K2txF&57l^t!rB_CFmq8XSin;#R3z%@{Bt|B6oGN?joN2^K)` zcFU}ArXnPD+%aeQ*!h11M zH+ccMliLTPyM2qY0^}5EMe38L(^7)#(p1HqekB6RqB(tf#ZI+(Rz(EDd4v-cafMs` z7lZK0BvZy^dC{(}Y>g6`zS7Q283Puw!Jbz~Z)2Y*L@2Ol%56JQdtBHC10voCLSuek z3H-({z5Z0Mn9N^1hod6RE-q0~ZJqGhR8}n0}}`FI@_$> zXv2DiS313`Dznc32A#OUquo~CTL*m%~ z+$8rRol{707z@ITkFg?Fh-ub|Q&on5chu4<3N|xtxO%?s`h)9^AoCWDX*BFrr(HDI zkIVEk3|A8li2_nVB+U94Ttt$u870LJ%lh`nW<}b|7U}O@pVO8swc2chcn}D4@wPQt zTb5MWH6f3+F6#Vk$M;s!NW*y;Fg{1igyDuj$Wn@hqira7DibUpXqcMlhx+EIv zPimxSD!xV7)z8T=VAqBB7Be4LoFkQX-Py>WszNRaTO}`(GYQP6e@7*{)qmf60amR z9?Xa5xW~cmNoG@*_Isc5J#kSIUgpovA7ybRlnw|qgy^J4aYdnxq~_8)$5|HG%lm&E zp@={!arPBq&bx`g??-xlaLfa&k~}DO=NQqFFOi)6BG~M!hk`t_0`EyE%;6VTsQ~YJ zxYWR?T5R_g2&aG2>tm56WppU>tX3{<<2bA}8MlD5oMA|QvuMI$M~C~i_Bi}~vi|rF z0XVc=`18SGrF`O*H7yaY>*R86HGA#% zi%-mbQD|vkT{igAB!|ZFhRw5uiPygNbax3xKVPS=mJp0{^>HyeSTR@|pne8C&ZW^T5^~sVUfxvcjFAm9{d~vdYCtZ16BMVH~g;xi;EK^85Ez8Sc_8cIA%I~T0ZJSLtV9OkRJAN@K-I#hTFs$O?g{2 zg~CX9zE{cUE1L_3YIqb2Z0obv_IE!&R;f*%(65~>r`E*4sDx0S%dK}ef%jQmU|eoq zREWfSZhCwqG-aMqC9|M}JqGtP&t8;10s>WU-9Epdh=EN;|l>wwx#R4IJ^a6gH~xwz0adBS&0!@ zHY+RaMYa>z?wzfZr^D+xx(w3*Cd`1}Pi>Tkx5tcHJejhZkDIq_Kd0M-u&Us)}U* zQhOX)x`|N-Lc1TB0CsWo;M#)vV&UVRb zJ$i?)nUTKTEn9c9qn?A}Ksb}A0$EeoPp+pLMZ>XhUIm$c?@@#s@^vAhH$cqjtUcq2 zk(Hc<2A)v=?$bAlE+@Piq+!GBU2h@F01I2VNf-6TNHdIfc+6`|eXg9@ZgRxfQgy*A zvtJ=$PnP($5DQ-09JVFj2S0eLP?L*|O)A6h@q5;MZgnYf%_>Py?R2(zsk4D|cMVyC zuw)|cD)521Zu^4;}h-d0NU^s%Y#>Lk)%!j@jj zPIBe|Tc(7Nn^cW*B5aT^a%!=t=@BzqZ@!RC_sWr!vqGzk8TmprXvO+KOnkH6Cuuor zzUsPXXP~B?r+z$b@)rD%ll}bg{)MPJjkxxcGcGLrK-4An33sA873FAYXM%9ExtwIM zqZMq%5a=hfSY||Wy<3Uqk=LO=vq_+02==k;1O$rv?buE+;TmYDe`s>=?s?3}+`o-k z!K4N|LdIl;xJ|TEUCVHAqSCDt?(j&1yZYquQDC^Cz}?uCAsS<9lG7YRx_fB^O`!E{ zcNGvjev#NK;n;~l*g76oea(VfgOBMbJncy(HC=p~+QH0-hfe^@_7JRdAFQr0?Rz$4 z;h@2zH1XD*emK;#6PyuYhJ1t^65Wd+%7qWzS0?{Fzmz;LbSVdB2!$NOOzSK~3oR9k zP#mxPWr*v!7V`~$#Av9IdRnO1P9(>4UHM5;^d7qf&>uw|)04Kwa@aRl8u}$fJzCQw zIR}J{9Hv^u)>QbgV&B7h1{ctn4Chv3(OITOt{S9}$2?CgI_hr|yg^7jTOz2Z6IJ&c zR&s>)5;JVe&Zs7`tP>x&7t8t4gbnWd_%lwxk|ymyxO#J&MnAQ=?qg{N<*_`6%OqGV z^c@F%;3&0(6>{O*s~lN8(PyF1NMhl{JZB+IS55VcI{ruRh12i7A7dr?1147D4E>~c z6RYl(5c4#q6@<*ybmQx2Z{&=*9m4C3*Ob{GkfRkC>0P?sZgfWM}Hy8ne zM+Lx7OWYZ7<_IRt|7@NC2K(qP5rH*WLgvNV2_z$Dr2ghe>ld{5aKCLEl{sB^4YCKiq{K86KTq`4dYvCb~4UtkVFPiI8SB z$+%Gu{)7@df<^tj^mXL}00O=P^@@NEM&>x2``!xdCksHtFOCFui6Wj6RjE$T`b>rr zL2e^m@ur(Mo{`l*lw3=wTQ;7NG~2hGtI$XR3@lc>9td0%(du@dRx$*C3HC~f)WuTR z7?Q#!ZMW=60p~6SIBEJ70v0j536k$&0Rqv7ia@JwoAxD9Ft!gPgD*_$Hl~#V>#cL` z!HN5gpPGy6EDVR!NEnVkli3}QMVP+P1^@)YBOybcuddQQ@bK4ivgyM~R+_N1kZMY^ z_ZlObIQ3l7W7|V4nBi#lW53UQS#4`O7KadGn7tiK$KuMZXq^p*zYqXm(gHB^11^w; zKg3Ku%_W_x24u2e!hgu)v|#@hiXC?v2d}?9dxR3GcJJ_u!7+(MDa3#AbG}}1)7$w7 zAA9;BZQi9O)hAIr z!!T(5N^_!x!8j)o3_*Uz=a2sRj*F{{Dt6HwJe!BF5q4Eo+*T^r( z62H;qmLSRFyp;Qp&Qgfo^CG;}pQ}9+A*?D1fP^lxJJe1s{O#9EDy%bV4n>aeYFAg8HGR1?g=95r%aXJjI9hdsV*H&d$F@W?RK2;TR5gEozp zyX5>>W(0?t0C0NRn!icW)il1r;|zKX(; z-wCcSoD`A{)W~>Z>ot{@QItSwaj!MWFOfkMZr~SKRVQ~(A&IoH<;B+c03(rAt5r1R zw{q6UlhI(F(Y&>v!`LV0RpC*o8>^d%$Xxpx2iHoQ0~cLN$VWLfR1PeVP^md9C;nvl zDM1GSQMb<`PRC1Yi1Wp(4?vYbDgAmudi<#!8a zIddf|!;s2ZsAp0X*`+NkeOH;od(ABLS7w)IouB-wS1_+(Wn~p00*3_v)KEws1`ub8 z!tul#(X9y~{>A0bM`0)c5X?cR=u6Z!Is!ll!p9a406^j_BZUq4*9Bg4r}c4r{;XUE zf)p3-Box7oG<&AvB;)*Y4IFS5@?%B9l(x6Nz^d@A@hPH^8WaG)oquNd+`nUE zJub|VRzhAv_c~+lsys$5=<-D3c8)bd?ozb@+4b~_M;uaqOb7(v)Iit>3;ALoj{cZp zHM5J@S>FmoiIymwwzv|#8s5No*4W-ALB4E|ChoDu%s|zRC@a?0COI`{Xy?2#$aX$n zI(OK33{|zRZd%ZuT#5}8q-F&Io}sk*(;+S4B!VPqh2bnX21~?4Kj!A^87n)<)O;(q zyy_+!CsfC99~{}SOk70a?i-Kw2`I7%+3^4qqLcwiqRmMAhHg~drDl1qoi>~WHKHHA z{Fo8Kx4OPYyl}n~j0K1qm52L24s!xGiW>AmV`oR#!Wp+0kFYb}rq1*DVBW3R_V2PL z_q5kFiQEkDCbHdAVU6+Fog zw9UJ!tyn20x(0t|$HtO=IyPnL*|vXk;I>=cJP}i^E7wXlN!H#mv-4rp-k1(702@yv z3l)pl)XE?N|F)tmI6`1tl@aZ>nC{EW9%nLJgVp;H7KlMXqTq6tHZA#f|GKti3b(-O z(s$CsbRP>lp}v0~${}7VZBFS)7Devsa_bjU(=#5IEl&Nl)o>yx>}OGU&s>BX6S?L? zFsp5-Z=|)Dk*s3I3a563XMo@(k5|8T;O}Mb;-=2#RhQN`&ZJaRc+*P5x)-168qx}+ z#C+O1ew2FrT)XuBkYgiq**9WCpX*h_K{N%B;?HSCq%pBAU0X9cpQLz7Oi7@Yf1ni# zBE>E|l;+|(Oy(IjQC-g8T}GjQI5m>bQ+=9wSjY{K(D=Y~v;THy74Y% zbcRRE%Y~r4P%G$IR7F`?!m^Z&Xs#5-7u2-%H74zSgxSo zFOCZ->F!I1fQZDTocgTY;{z_?#m|rXO`_qB4&|c&|z?Zksv|< z0Ejy|C?`sf3o&XYiCH=_hDrxhi;(eSeK#q;$ij&BLXvO6Q%QJKB5%Ed3 zG)#T+bgEHjtX2}t7w~qMHB%<&8A`bx8P~_qHRM0*O~KH_cBoD=*dzPer=oNb2tME4 zx;DM@?@4&G02%qcruj%5V}dknQ_hH!h39LU6w$0%2XfvbeM?fsbdxc}iVN$|`Shmt zV2MrfW1yRr$TtdzKe`6}MwdpXHkA_quxY;%BY;Ii3l_;oMMFbVDm(OapOqixBaqtt z$ct6K=}DuILw^5!aAv7i7PHb|cXOjp%+~%WPO+j7={$p)!D3?qtU0lxG|NWT39n8Ke-jRyABAe`T1zXtx^JUl(F2q*rqWqHh^N4mbo9;iYW( zlm0a?xrNT|e0&rcamijY@O(!H(DF5hc_r3LYV|o@o zRB!7O5Hz(xp@t_^m4Q~sl#|cI?}9e_@d8}Kr8fFW^U^$eheqRic%m&? zm8G{^y_-re%xJ3L-o@9E9gcCiS67m!%07NAO|Zh%tZ)=onDmaA!Y#P;PYj6#HulA{ zxv|ogxJkpnSST->A&)fWL5cg;MX2PeojW}^O|^n^3I|_3My%DjEj7u4&#}${@&EM8 zzwaiXmFJa!_>j1$f1LkychG_cq?#7?Ck(|}^cw@FWb(N3plBcdP6PiIw3ZqLM=-9# zrcNf4{*acCU=snYc*5cZi3sHcC0u$qZXy4S1kiA}+HeZsBmGgR(^=K{;d2?&T!It(`6z_| z=i*iIhzNY1Y|0_vHM6TgsED_%dn*~b_T$1H4_DUy=nVpOgdB+^?UqPQ+b#EC7Lz}u z2y1{bx3DtEIO_l@@7PoZeQGi z=Swlhk8Z;k%T!Mvf8=L~`H9Bao4jR*6y=wcHge$pBO!v)!HONN4-7HlAr~##MR0 z32(SIZe_JLjyu0#F3`PcD-Tw>^hwgPTLMBdIO|8t5*p%n?oSG~Cl8q?KjIqdxs3}R z=Zf(&r3)AN?}&eV^uIBCCpcEmsNLZ7aLKw{)`DVD*ke`F=VJ!7<%z|yu;PPb3N@Hy~0M9;U+*85c|cypv=uQB1DJtuBgG-9&Yy*tY7`ARMPu2wCYg z^RX;lM`2da{^*F~L7tH+PVo#C3-tGcNV@VX+7A-rGCMBumwlMn~{#AGNk`AV4 zd5G^4#KeiX-Y81ibJb+mN;8QxPF@zdbbacHf;w_~7&1mY{3T?+YG_>&c(agUR^zNU z<8=G(uqV`qPog!b8b0<=ndIDIyiuRNd{@3iOnBW&!|iz0cig0uuhf{auGT71fqV#mYgf}Wlg zsRO8^tM&|vA14CWa{0XDI3Bv!z~G^=Tm}f0>}9WcSVhMnNpJv{XTP_@y|3Hh8E~nG zkPXo*GfP0B!W$I>y6D}NZlmT78n1OZM75kIf&dO$il9$bWh?tkq|u=5!z=Ya-IH)< zZtBRDrxjo(LZecrsESq_tjf&H3ZJR)!0JB^$C|-1O5@%WiH)kjj zEe{%0Kr6s1P6X*92%l9D=XK-Mw%|ws4%!6GzN#wlRf%7l@=9l5f1avpzlou(nQ!ul zh)J!&@2QAK`N8VsD7LgxlW`%lI9F0U>;0E$jarymqVFe8t-9Z1Y*(9CPu$vxh8(lL zP7UIIh+-S0Jkk?HQs;`WH6 zERR#GWWo9H;%yd5LmV4q@A@v6xj_g;SnkhkitG4w0gM!qf;I$$Qk;Wv2%&(Ifw`r^ zXu2~qeuRCtn%KkVXC%qdTd=YE4JDIU*58vQ;@G(mD%EcQ;6rsl`|Ym4Z( zf&X&tw?hDkJN_@i2ldJ!1VFz{;9rUVaRMvARQ*`zm1h#KSvJt>*8;M*kYG9VWUNuD zY6Twf9cYp%WM7{F0p~)gRFqlMs>Ym_l?AzJc(!|4AMs zuH=8hKyV`fNX);T!$EI>o8}#Yg8C>Tp`~ccwp$NHnqVS6i!@tLv`CT4nguHoS8x!5 zcS^s|;dk80Q0B45A<*SRNeTa7g$sdy0ss^QG!v3&|LpMpf9?q)uRD5x6y|>w^}ju5 z-;Cd+QL78~?<9WqrOvsFjmy2#wdOf$-JJY}iNhXk6Zwd}KGuDe8cZDUiYDn^w}x8U zApO1fB-$#}{_F**lz^40Ge1?4J8Kg+Q8%Y?$(G_bSA~=QC{L<3v@ZO&hCv7?nTXH3 z^buBSn3*B}hnckh=!X#Z72f}{yMjb<{#m8|&b6WVx9jgGQ1m~={1t}$mo@iy5&)3( z(jWI9A0P!he-gdAgdXCjJ%l>4X|Jhv zx{9sN%bN#dG1Ft!mh*3vV$CHLxOD`zpAvF>PL5bhZt)@oAfDa@R^6$hJBJi7+de!_ z3e;id*GeY(r5C1a8qXhufi{#lhKQ>!r!@kdj|A5vYcKcP9(+vu*GdC4ghu*K^~ohE zA<$$%)_g77nAdsr!&|QAzc0Ut4gIQ5Jr(5n04QT~PebZXOA{M)#sjri9vG(7i1 z+Yrhi`jbtFHGq1tS@sD!Xbx!>zuf==1n__e2m)OGBFNV+v&ks2{P)#|;`ei_S9l)K zYhp18?R{_Z@5qdjWqW_f*J8S5K$$y`)L$p-c@j|2sp@MmKIwh`=%#*6g8~~jt`29U8lm3RjD5Yio%4D^ae7ho<|Tn0!YMv6Dp|A z69-UE;4>NkSa-sKsb5IAD4is^I5Up~>KNOmlUK{0%gs-H`VZ#zdwBx2?v=`tlx66O z|GL3r{SJGD-zox#UfsaI#{9_mKLp_XvpoG?qi`>|K}-v@{N_6Duf)rLWYC=dmry8w zSGBSBXL|XwIARNk33{-&w2c9>oQGy2U{K zH&ees!GANzBk=b~{<~hPzdGZOxXXnJgf-PwtLNVBWjTL+x2No<2V)Cqq@~oP3~JY0 zUNk8qLxno1r5X5*zaey)d_nS8O8DCkVp}=zO#sNE&@TTi6DzAJ3DguUH3lw@SCU0q zfqlgei;0{5ukH7>R`^Q-zgzI>w`MfkivAw^z~3dt1b}!U7D$33lTS@k5@V=~K^01y zs(K^&M-s&H^nbPKuY!VzU$DrCi{2@W(-tIaZry?mmVbcTpCm%BCI1%oZx`TC9fp5% z@wamR=EkG{j{x{l*uMe#=mzMgB{)F+Hh_ zED6I1W+bGNHke$U6lyV6-XG8V-=4TX9{Jy%Prp56*~amtG7KAZ*l-1nBGd!q!b$4G zC7P6BGw`6(9|LHsh5mRLAOQ9-YHHUgfQ~=_;I(6k!GL67z;|HX`ypeze-Kw3kP6Aq zj&X>yflB$z210xw!Tp6ueJ}x^$<8+WLQzNreD2Q9ty$UrB7Z}xzo>%vA3fH^0^IQf z0C_shpgu1+|LM(!<+gO#5r<`r~_D~-)DuPQh z@W((PAETma=*qZnueJGm-JQxCj)g4Y^1I^eYCbr8z38T;$*WGZZ}!x`cCRhi-D7q! zWvh0s_I^*yAqs`T+3yJ+4qwfYC+XL|(l31FvdK1UlO(-b^}9Or-t=-Lf2#Iji;RMm z!xF%kN&;Be|de8QijQjk@Zp z@^3*fJzv+vUD^HEQ*a-6LIEE3KT!7T>mb+=jO0Ld;oqhvWPpj(>#LK+He0l)8$FXT zQfltH?b|m;=8s1gEPv*|-!=XFcEpVGZ|^^DkB8oW-2ZXtc>n+)YxI9n-Xv&v3N@wF z*mW?tTVH8+Q;X-(h$?nh&bkP&+^ylBm$IIcJrOmDH)3;S3~hUwv6u*JMKmiW9#qEU zNqDb+>Gb3^yPOAa3PYMD$rtsbxnN0AuU*}@Y75`I>J%4>z@*Y1kLbL;!F6tiNB6hz8MGF8eLLdUYr+Iz+-tt^C zrPqia6t1%GBOw$tp8tZoA#!W~Zr8FZ=-m4=WKr~`wvVt~-k1Vky+D1D1Ug!tTi|XT zrYK6G;R{$K+C@54TDJjeFANX!hE(bcR^dU%)IFE_yrwu}LWOkR!b zLg$^vKw~!NU2isokl(SPG{tde)G$Eq-5%NJy<75;&rOQj&Bz%qIYCP8e!UTVg&R?V z?GaD9?@my|p3VY(rAobE)cVt23ZUsRVLy)e`R&}5M$ejBheNLgepq(9oq!Q2!+3aF z<*^*F`iV(`>kGRWXbKh0?%a_-l(7|2)ZWB-DJ{ zvcRw_tv8w~;1DU$>%n?$d(NjI3LnA7qrPrcO>}s~yjYj&;iEue z3poPC$u)dLQkdO0zY=l9E!{ne4Zfm^k};{Dp2i7Vl_* zVT+39Yy2Mv`)r01-FC^_WlY7T_EZIIN7WlR(#Ww%VdKsYjz>cUtul2)lck~|SY)>s z+P{-tL%w$}*q5(N(G>F;zMM2Wn=8qpk?0hhI2EG zqynPyy+D`DMn^t>1AY7)W+M5!&j9xBZ;zo|uCakZE$J`MNCFc{iD=y5t2pN6-$}E{ zYALgg<92cLN`sk_0t+DeezAG54W6T1XsRsvP@vcnM0!7SNG8V20|g(L>7~ zeS~oC^WN{@8TskZRBKLT|9~j`M6OHHIjpB@7NcFcJa*^Qh*; zPhFyJVDe{F9Q00k(N*~}U|s)&ZHKTYx<60#g<74yc^M{J&iQ!(nfeu0%b*9leo#*l ztPLN}C#{IZe!V$#mBjB$i$%yiwn#zyWl;^^i*lX@%EQ5FY0KVT-&ePfk=9<9SEq}5 z(%7>mu7~zxQ`mQ~F5cO0HYRZ_dJJtenk%Gc{4R|FwiNqJS*p+|8eniIn=hj<_sGjc ziT6#im+D0t;}TzfVrSW5%Qn>?^H^%4|J1WFc`N+p>8r+`Vrem1cB@{b>o zl;oQ;gi#gm!HtRWMv1Mg@v=;E2bPzG?cK%#Do=-mTg-zeAiWrU*Q|>Y9fc-^d_s-L z*6|t*StzyFb}uPmm2l1is7Wq(c$-_vnGxy5Y>a%25f;waxdg>#ll5i*It;{45i)A} zNC^qka)}Sf)a@I*8r5r24+zml9Gt$rY;u@=u=^rf)wT$1{Olw;3lsx=4m^B%8G3KZ zsjjb{_1IlJap$mY$nMX^6JRM|Y)I8rizG=9YxoHAmA>qz+sr1t*?!Vuxmcs}zKinO zhDg0-j}?KInRmMFNe``BA^cUrN#^B$5#P6PCO4|K7mbsGZ=oVE+YQe&>17P$?${rH z(R%iF)+aU_D=c+$8_BAyS1i}WyQ7(wy5#XEv(ZA*hlb8YOsNf?80o>wDK(?fzp>1k zWjcZ$Mz7C$UpsBGGqVXUBQ(r`aKf0IL{1m=rovAi*cbNMDW(xha_62C%&{!|y1zN7 zj9y?S=6Z>j+N=a&Z;?WYbNnDX&j@|%-1uHNlZhe&MV~=6ckoQkmAs~6jUqe7=Y4Bq zN$=`lnNvDusxNTq5!U+j2n%7ermv~SaTZ8da;ke2nYlw}`1iWohyM9M_ zg1tC8Sc3el=AE<)qt^FSTV+?g+Y4UKtn_)TmP3qQVBPMo982yL=ON8qKfk`OpC^(d zYf4!eLMlCFaAD{UG9u;F%5;Y)uu@W+t!!jIjeJJW!6h4<%{?gbue-y_n;^Wb0i71{ zD;P$S;Ei`!pn*NNLckXY7ceqf$STzFs`vrdg}AHa{(Sn#5Y|m{UD%Ox2hFhNnIYqE z*bMJGQqg;bjXk6i7{x0%m*M=0oYtm!XfVU$aPNim$+wO|p2QfW5W5TG%AOdfl9(Uv z21pnsd_2>Ut))bs(SKEwqQQ%@Qud2E2OnDmVFp`SSTIYdhR?7jc}~!Tv=-_HZ|aNl zjbNMELt+(>9gIxPHFX(NP_T_!B!8>0X=1t^HgVmlma%XXyIO;2-tN!&#{DCT!PAk( zKpmb@ep7QiJ61e`C|1pfPP#nt{?MhXm^_&{(?3EQ6Q)fgAWY4%Vm6y-x-sIDl)HIR z>5q==O33eOOpom|Ut8=7Cz@C6O26N%oaXh#B%z&nzvn&bh-7X*Y|FH3Kk5o4_C9Pq zw*YP~iIy4d96@N#)2sCyOciN$fwOYe#8aP_!#nNT6Fbp*^yOctC)ZunDOXDpVM{7*qlDG$fJSryeL0kub7g zLYcDsb6-XyQnN_`>f@BL0cyakYV2}d@Bn>THI-yNWz(YH+PtJ5g#VmaKAR>0<_DY@ zdb&vQG#+Z=z^;R*57<^QnJh!EY(HZlDJvv=V7nf^Sbh&PoM(-!PNZ0gqNNM;pM?I3 zlqpiCPQl8>3l^?kfzv(HBk5Pl_fSEBF4)B2&0&6MlHFkW&(5|a)!&oG;@oWPm(x_zS{BL7#9VaXXBclN+p z=aw_#o1RUdd#YH|pWtuPG2D?VNst1u!T2i564E}|1m;)r!pi)TgjNX?%z8AVYOhOU zJt8KmysUypp;yrxBHhyLE;Diq)h}%&nv=1C~mbO_4lX zMCt@HGW2wpmkQl6<*F*$^N5n-z~9!~+TyKy4yknsA*7dI#V4D+FybGowJjjkDxW5S zpI3Es8RTO9N%=&Bp}d#!sor_<`W{82!?s>;fhJZM2=v5TS^KaNcAoyfjc94<_A1ZNWbI8I@Sj9^>t;4P2s8tMWR78jco&6@wZaD^><2@MgcjKI6Nwfjs(bwuo;plEcXAhv z9<@*1zN(a7IaN1TwWO`Y|Hu9VoC9ipaDIFpDh$#Ku^bM*7hxciG(PZZK_lp7jrkll zP?}n$ODtA0pOxo>3FDAw z*MNfX!zlip^J~|WpMM7h9ibY7b(DG$FQI~Y#I(6PpPv1v*&W`d>iXL24*V7tWHjs) z9YNAS@li`Ozy}5_nay@f_txUY9hCSZ4-og34>CxrhaJ3P} z!#m$@rZs4q(n|HSx8oM*G7K7bd>Ybr_s-;edbV$ zxjk}_M;Bcnz&s@mLTI!=rx(&JXsj}+5<`nKHT=729S`@}{u^~`$bZKxUhkaDh3^5;wQ^!K~P zMHjJDw+}OsQ(MG*0c*MbdPa*m|lm7R7^FN}3x|uo6m*690)Oo1wK}Fl;R>`!ic{v&|sx~suS*4(0 zjjI-#S?tVZzrv>W6k!IlvONAtCSXz2{3053>0j|Fj#e&K7D_Cc|N3l2kn;It>b@|R zwOY0L5f*uBH9hiG-FtTWcW745q#xO1{)?vmaU=cXH_D=byw51m(oaxZuGbTZ{IId- z11pO3>;?XxoD9O&HdQ+g{j$iUa8YZ&RKH$%w>);XcD8rBb;X8N=JfgMEvvw6V>@s8 z$Mzx5iObT&8?uNnyGSxV+_bsZoOy;bl2f|g6F@{ zv=Wv~N_bCXyKNj)6FF*?q4q#}qJ>{=N^bz9L!F@vAQe$ape=Po&770kf6XLiaKz6) zah-R+KrNIv15x z1fW~4ppa&bI+I5SfhnvdjXT-(IQAIA`$g6_l48wmu*Zav5A)0Fc4>({w+PacF+-Le zAEm70R4+d4lXO1EQOtyi8Bj;a=D~{J2oi`qt4`RqI&F;oZcVOFqOkZ;Rhv64Bt>N* zvuIjG*lNWp58|JWq4a%ST7=lIbmAMU^|j|B;{tOCC#8#MO7YFPkmwY$gR9X#?|6S?%wsFf2o|Jw^L zROk^hqZ;jZ})iIYW zvwy8nblU=jGY>oMP)P|#7gc;-T)c*{xZwPZ0=RC7#2E2TUm2hjAL9Mh_dZ#1u+ zD&rOM+WT?q2FaI=dQ3q)7CZ1U02>G>MU_d-CT#*#1_c`XiC}!5+^*)Bvp=No+DKrZ z_>p$$d&NAdp39ymI6(`FKO6f?j{Z^^v4l+A<|1B5j{Bc|17eNhSh0R&KsqpA(qh{< z2Zn)PcYc5l%`u2(wuJ~O9J@e1If_(jI#mKmx=$SjU=iMf*jlr6u|a8FGfK{^<@!T^ zB!hPRU2KMQ-bWQ${w)O%FgTuOBpF7rreK35%Pu{Hy}P)le3yBHR*n8`WOY8Hxat=f ztraEZ_;R;mz#jTeIZ=pSPV_qRIVCzSN+kR4fOaZ;Cqe8@Gks@&CrG7u8^PK7|AvRw5W8|v5Q zn4wy|$K!QeAU4O7OhdJq%{_nRF!8xhMHQ&TMu*91fq$~aPw~;pfIh(oAi|;n<`r$D zIT<<3`0eMVfACQ#p^$Zyk#ND{DDTZ>$!a#1+DAGPqG<~9nAIwBb0Kc2Jc zy$uulR;0PZGjQP{fNQ84k7dVLh61E5XZ{-EU#$CFHnh%d^*V=GA6IJM& zHY$Eq>-vs__g1)5oky1Z&H@|pH$~Wq zQ+5?@eZ^y68HjS7>hJ7<=n2@^uY$47KrNg#P+Vr=(9EgOx5%eB>7@RvAu)s3(vu!? zv;u654MH|+<0LXSo!L6ctCEzfxYoGkO;hS)_e>l7Igu>FVZFAh?4U3D? zEvgUqJc%-&~EH42_9LZ&F8tzuHL|F3#Tnh>;uS z@Rd6^TMoIkXz0Fea{OMnxl?<7;P*I*Fn^Pj04I}bW#p}@x9z6}udjHA)#A~ce5yL# z=UrAPeo?1Z6bR3cZr=cE&H#3bGY>0$aI z3c`sSZ;k1CMr}_-mAdrqJk)DuAEBQ$odJR^P7ZkilGp8Vo!0AtgI89wg6DwWPui-* zM+4oB{PwAKp-09>i9~H7L#6r(4;>|o@_!Na6Q(xu(>mj3U+|qQdo*XX$Wp4ZCLZ<9 zRS>*FWKE>c8`8uzEJHjdBl{Xf@3EuAEexppynC0c8}^ZO)~e;R|4r)ccml zm5Kew2~E@v*VXow*UMglrcGP(0_Xlwyq{R;JwxYpy<=!(chslBqtcfyC>Quf!^ulI z2hEl)u4NHDs^S%O0eUP_?aSLozXv#8aAZ)H=nQ`-83(%L>MfqhV{d|ef$*8~>bfa2 z?mIKEZ1X+AR~2g_Tf09jQ5GSBLtJn9Tu6Dl-z(Mc@! z?e1LzGaWJ`Y@AF?i6mP zcSe~N6#|_Y9+e(1S-RDhwksw1GH3dT}%nzGC|k#g$(KGt&G_;v8q}nCCyiO zq5e94XT@!2)&S4_HQ_I3muaw|`rkMAGx?VFD=KHz(>-P-8(KyrfEkx$Uc^@MW#*PL+PEcHzM`32W~;oa`dbb=CP3 zwe#Os6BFqI?U}PnRr>Ym;3^&aB*P74-giYdnH0$cHz8dV$2(4GMse|IzqvV&UFGQ` zDbiY$-j0n@ADiBZIWTsXodK^;)Q!HQhWYvG)e{LGeDjK9=RkQ=w0dfi)XcJH6HEQN zpW3USB0XO`hBKRv_1MPo;Czoq2x>M{_i=m+3lLbNR)@(Fp7n0qaPaBiA|@d(!=$gL zVc0Sq|8xg|F$b^;sh78FX~i-i5b+~yvG7*G7kCGJ`~tZ()Rr);KgLBvL~SFQ2UX?R ztw=6pw})w+#4k&n>!9<;Rvmc6}%&Z6A#Bl7P1QalEgRpNjV3 z{kg;i7m?MfKX?MI+HrzjnL(x!D>)HcM22bE%Aw6Thn<#L z#XRXvoC?s0m`ujI3A|)IdUrT$X4&}>dB{i}Q>Ap7$15Om-=kO_K}F{tewxEAA%W5z zWNM^KBV+v4x_mJE?S~rSiyLF^;;SXiqho=JgFL-ABfcpD*T#xg{5(x{FNLyR*=c1) zE7g(r1WACI*Ok_B(o$}(qx>}r(%x#deXe;I*H+h)dCAc3o$GhD^x;)WIK%RtfL2b6Wjd1z(8sp;lJj7`>S*}UsOUTPbrI`%_0$^iMz;v$4QcSN?2z86)y_6o z>+ZPwK0tKc(KuZZEnjXP6HqXe1|0RHHa3xzE8=r=-c;I$MURD1{yyKyc7kRKhs*}1 zF@oi#ZDFF?SxszcMcFq{r+?H-xwf`R`h-PEVZE9(dag+juYp!$JKnhuRhHNCx7 zMT}Xzp(k##-&mx71_IG$Iw-IDg~0RF-XRQU1Cs}i070*~Ft(%&L$KT90GqDMXvBf? z+*}4{Q@kjQ9}|THZ3pm+pLWitKU z!PS9}0ERn%3AgB*cacN>ZsDYL+HjF<{eYl@$!83iaYT zJT&CjWR089j~)nTzTkjQyYV2IW=C9}U)Q9Jv5pjdAUmHZnkRqsXT96KcQ>|9l6m`x z7I+67{CQA89i=}+K%Wy1E& zzJM$Ly`Mqfg^Q^xFilXgreYCQ{0q+FEI|tU7yW&9F$sqortk0uL$-*LRYk&E#WFv?_Y?W6P*`IStrshkFNX`hAV25hTURELq(P zN|0kYxdCgp-gvp?<;A=-)wA(Kcj)Nb{_hT+WH})?b{b>#RBWUVZ`J5#$X|`^r_-7*aPxnqLp8| ze>ds*tdnk%hlatvFq!xX|C_#wk7U-fktGC)k}onhRy0N4_htxksF9P5nH7&A*&V_@%-_iZy8RbNi zbM8u^WRIER=Kdt@?Tq$m5d9-Bd!JjM)VZK1>~mjdTP<&}oN&6N*EV6aQU)4dMy7?2 zwFx8@r1y^dxtpjJ?ejGNxU2cbxc6v%*}sjM0A&;Z`vyU2OM|jRpq0j2izszWQOS z6F*9*D5JolCt0^q5$}yh4*wHg^@T#`XF+nL8gy@9f_z%Cz5AdZqh4N2pI}LerWi9v zDEj9R6)YbV9#ke8OI4qU=@DdWdFvO{$3cZy8+kZydK#FbS+=&h1VKI2#@6n&jd%>U2Gb!!*K>OJXg+ zSTEoyL(649b;)v~oLKLU3~`TBI)5|4KB?D`776$@Cf1g8dp)K@`2o?w^gFWq)^K2}A zUa0;jGh{depU-1L{<=<|*Y?c&g}a5jTC_RPDb9vToV_!B6>KEK?AI9s?@UdbB4o0krP=!}0!~@IjX`8>v)eC)zv&SXR z6l0Fh^oyJfQT_Sj*e{q4b3|e3*qg;mx?9|-qx?Sh zG5C;=2Iq=`X_B(O+lxZIcMBi^zo~bRqDTIG5AQC1iSiVF|8sxeD}12S4#5j<697QVJl`O@Sv z#FOISh*=erlbhlWX_}#%z=@eChVg#FmdZgKVB+oILuBwDabcn)NB#6kF-X~HFQc%| zk|Uw8*-}FL$KjQpfMhx8xcm6s^3F%^XJ)r4v&z0 zO+>@TzP!5+Ql;kG;~whHSr5~GJ5oLvUDg2!lpzwW{NsLr$A?-24DFp%`2d8c+S+Xq z7XDk%$_xmE4+1@i+)O{3_o9P9{dXXdB@k$bPb+;~|4Aeu-!(D@wCf0bfp^fO9!nR6 z0KI~McM}RP^?p*TCj`>r>#>A;Xw|}Je zInJ~7VxD8T#}7h#I~|9eLjj~?!XBTClP_N#>K%k8s!fAKXfTG!1WE1`H{)Kbls>#~ z9r6jz^ULEuU-<-twJrQ|$2o;h6yswsuHZ&H zDu+N>Sl0a6Ow_D^5a5FG=$>6xv1mTi%-YyxVPOyGYF8?edCso}39?){@s!z#AIXRXT&e#5;0FUQ+*U7?;b(G>pFfQlyk$_iuG~lx_Gw8 zI{QuaH#l437K6FvHIm?V0jK_r%BW0%Wue^BfE`-mG)@zz+s$GXtD?L zM&i`ut|bspK?OHVTJ@KA11`wC-)Ne&sBya z=^{26O>8&iZ|qx(&s-|a4842{&nW6qhbeJ}QcOLRi(RcOk-(_+Eym7f^t#}Veo|JB@VTTSQ$*04^YEPc z^Tr&t8YYW+PI%iSB7c!Mks#NE<5}N0J~u41$_obV!uMC^PSopvL?MukS)$=x9|i(xA625-gPX1 z+$Q}vsp_aHq>AKRdQRT){TxLbh-*b;e5Iz*pyJ@w+b#!Uy5!y#;z0?Js3M}$_D60S>Pp=Hq(xjS>q+qCIx9pI%~F7Xw7lyCRahlqN~%1 zcbBbqvK9#vx$0)ktWfw&eN9Td=cd#ERViND7QA1P-#qw%RQZhIF25r7eP3os$(Dus1G=dK{jl+isE`yC&p4P=s=#-*UHfo(XB$-o9=^*<+uH zfz)E}jzQszK{6YFM$$A5%Y6~n2`5kId!UHOOczhz_pz64!)yI>bt+&0&|Zh1e$f)h zNd^IjJ%wSxoqto6#QVePg0fGV_tDlpbV6Wnx8TZMs z9}aw|7iL9X27L#mRgwi!88tNM!(gzvy(UviB5#rlPJt!bgg46flxv}GpK?heXzFyz zw5uEW7MZBG#Cw-?Os`dz4#}}~(4^&*Uh#Ip#jY3*g|f+P@ItIql85pY+ir-ec+#+& z1oxm-o-NztmlO**&h0_yE1uW(PmxoMl+R9Z3gHDH&hX`RJzcU1GY;9s5~5ey`+Z># zp!U(%(`a|i4M+N8C2SmnxEuxX^S3>vH3_j+1Qa5>a$3D~sAB`OCm1)o7bewfq-USj z^!C^mX&3O*LYq-;B#<0S*Tg0#PeXRe?T{Arsq>RKj0j5iCe`B`-3hMv^RtYn+0_{Y zHcx88CM!7>$}^TE7l*V8*6FXU3NQEiLhqYW^B~Q&_=ZOr%Ufy)W{(D3jFCrE<&Y*r zIH-Drx(2QYJ4mK_uaF3eBMzEfbWNJ2T=LqbN>o}gh7~8c zBd5wTf5vjwEs&T+fg2#pVqN|xMoFW#n>~0tW%y)TEAsQpi|DF5x#1L zQI-u_H;MC1RNT|)A3zEfP#WdnT?PqH;N6S)gakseqQi9>;6q6m;v)xRoZ?3W{JedF z*jRDG?*S?K|(ug1X&N%Ziuf zzq1B=yd{+af8qX&$+W7s!N+W3s~4nUfYCBEi~He-+QN?hWry`CKa>Af71Z*l#41_b zkeRBW5FI(GCi!W+11YMrLZ%5EEF9OoE?>WUIkyQ#d{~99@ETqV(iX`C*5n)wK+B6H zh*{+IG_he``^2{wj0Px`TKyMa9kbsFE;A9r+OE~VUxRLI^PfEoh&IGK3=*osyYBSn zg$Rv!K!Cx<>ADYMis{XLx7wg8uFyem`7Ht013`I}{c{%%>jv6vh+g^#aw{{^z7To% zL45$cscWlMD(Q8ZbMR>3&Z>I~TC*YAVW3wP8LBAd{2i`n`~8m`NX`K13H-EaD+dhtx?Uv{V;_0L~b_VIrMFx>$s&b1g9L%yR_u9|j0Y9ok=@u@k z)2&7mB=iVDYtr=m^6^E{DpN*$>b(gs8Xh?;^Tm~F0~F0I!PF|lX9@02QRWm1G^QA| z!|XPQGDVnP1L(REH*o}=ML?6(g5`d zIMN{3Pag>L2#Tnj{l+F>o4WHSpgqKqFa4G$;P1tMU2^zA9g6sH-G(rNa8!oa;H!;& zNtA{&!vBmFlBVlr3bH~MCjhaq8#x7`cGVI9XC^^B;%jcmEC@f|%~gg)r}KM?L+n?%#!Bp)e~LovZ@(sROX^LYPa2Hnfax8e;y^gop~VY7=s?QcA=Lmw z??9luhL}Q*QX$^dFbaMYbQuf;5f8v}Z2H1hgx&{1RVicPh_TIeAW%Dy$acb-Dt0y` zuKE(K1~O=gn(Ep(%YLnfsgR&=$WbmN5^{iUQG}godBy|!YM&1J-2)&AXccJ{31%KN z>Y*Bon@12f-v-L|O9UEk%#iBoc9g#Iz3=v~oVV{wcv0Yiuzh&Hjym?7#37`OTfjV) z2bPh|TV0caJ{4e~G5(Q|^pI(Ss#X5lz2Icbf(7!-TdMtBxM_)2e8(iiCSXx<;sUR~ z75nQfvrA6t@f`jWNtfl={T8a3JGGK?_ojYT+8F?+#;c7IQ`HR;U|)W5pLL^$R1Ri) zVCndpp4C(Rv=aeIjl3|?c~*-U*K(>=3sr4eH%`733kc`^km+>Auq5Lhb>fupq&Cgd zu-0Wl^npjG!JU->_lAoK5T~f?q*nVbSnFNfo9EQg?b{P`p4j=wSu+{^rieCY0--&2 zk15m3&%?WKk|*Pt^J$;rvM%LnW`+Mj9#b#>ru&JPe->!TdZsyje~ARRT)tS}rK^z> zip&|SaFr!znBfEUQ#`=D{Fy(95cZH*lxsud5}!@A*&Q=M9V)J1NIm8#l1lAU~MmEuXyX^Xb1@9bPSLGC9za z5_r3aOF069h(bBEJ)$hTC|)@%m;TS_NYDo4$bLl~^k~7l$-!69pG(MI_#3by2O6>x zOLrKvDyJ#7BV48b$@nnrD@Z-{0^9Mg@baIHru8H4!>=lbHtu_?0$yt(BAgPIec~~o zF7ul?jT-shj^x~X-`*|qNl@l#C;$0E33LYpc~1KX?~9OKWk=tS{~6zY{s-{i)cfzS zobWz1*;QP$$DmB>X1?CJ63ZPh)N@)=*ou;jD>gc9K<3?MKFzrj*6;Z7NAShNzpc?t zg^og!i{%`|JV8PlNIHS_w}-L>6Y{4{R+ykJR(w>dRW^Ktd;`uL^L=bGm#}F5UYX4G zeEBn_qFbPf=QO?WZ&?L8KrS8QLnz>?BQ;=FI4zpY(#2Hl12Ss>&6H!qwv)x(p_5c`1xMmCc7H zr#rOF_ud0)!5?OV8~2w?h7l|7QJ!}B?M61Z%KAj zYj#ulCpcVk%)<)FJp8?PQSNhjc5T07lp2T5p!V#-+^1OFCy%KLdWE)kn^eY{RN9p( zo0nvpsftXhio|PeoL$1)OrS|lA_+<^t%Nm!*j;=W_n+0LpOmJbY(v8BL;Yc=cdd&j zzvfKBTxv?{&T+o(FUh9BqKQGklElCN)?GeK z%nc`|`q>F|Jy&Y`4(&0dOZofYaBW-O9kH!#W5yqT# zd!;j;rnYIXr%f|mpQvhL_yLqA3a4y4{Ktx8t7+XM4Y%sL{X-|tRFP*i*%Jj4A#CZ+ z_|rIIk~-0-T&NJLhkjVL74mI49M*6KgFF%T@25{Lf^-aJW2Q;tRk@sEpq-5cL zTY(?_r1^~}821#S4(8nNSu7+#9UT@;OlD%yI-K}C8TCtM<;f>-Z~2iY>Ke8Zgc-L= zP8>w#fZgV6>>wWXJbEX8b_?!d8ejhG`iLT0RHO{u?DHEFj#rBFn@FHOGJa)R{isgo zXH*5bFe{J?Q!%XT<1p>isBsd62!ugfT;O_nb=yFX z%2kX$u^cPgv49xOwci2|J<`fA>Gvru_56>zTk zr_?Vy#cmN%J7@paGyi%@;)y0Q0AT3+k0jBgV>9rHsd40Q(FL7&7R6U>2312+L6mfG zM7-eB{Ily&MuEyoUl*LMsQ{eCW~c#^RBoFv#WYB8;KcNY<`lLWh?Ie5c`<) z*1I-trEK#n_h#M3X5Go4r8!VKJVgqzR_+`p8uW0x1QLbv`E@9c;F zEs1>ydSqkw)}rCZZf8dUN3QJKQ*^X9J)%%-ryLI-=3fy(M@TV`f!c27Zxb3?LonxT~HMvQJ*otf5di;@~N_71Ze4F{^n{PE4-y`kRAqv-8}Oa?}? z@$Ei8GjELz1KZ__|4CY*`07SzjMc%3bKSCshB(6K?eVxwD{E2xu*bZVryoXL7ad{T z7K59;f||WTno%y=Z<@7_*O(Q;3l}F1kGGqyIkc?`Y8NM6u9>2RhBr{3`^s8J7Phjl z7$(!Se0s`+M))%c%sEPxMpjWPgndhs?|sr1bQTBI9vo+QEAXT6GH05o+2XDqGhE8H zN;ZJI+>TrQJ;YjrYM@Sj;a-04PJZt({;@|SDe9VvA1O-+W^R-@K((?XS+hHu+7T01 zd$wlCk&0k_C7+wpeHqX~;lMl9m+6YLgf&*2i0M-5Bw<6_@o#=O(Y9)?WR{)Ce|Muj zXvQiSHIMw7Q9AqP4D>S&hf%TTvRnB=^M(B1xB6kWn_e+v-sJ;b z?4@0B8Cs}MqsoW&`Lu9YO7n_`yBR*$AX=@`t}Hy19}Tw8jFe$|d-Y^M+$-S!+o%HIGPUdVG^tE~yHh z`cMqvW6l$26L(#H3;qIv{IK?h#a_vZzBjoYoKrbyYY(XR4jE`TQFeyt=&ds`@B`rXNKRRjwLU&_r7ndF}>4}d3K;htW?CVJj z4Fg43_X(t12Y@1MC4ovu5msm;ll^JQ?B|Zs!eaw%9fJDTK3QFZK&c2T)1Hlp6b+9mhN5e9peCs!O3L`j3T-d3?s%wM6VL&5@ zGTvd+CJdhyn7pc{IpS_DS*OXk5aLp$=Zs6#qh764Hsyjn?2_5TtZRPeUl9y=Kda(d z9KJRez9D+Xf9wK#)8zNDU`;RCWur%U3Hz+xj$s6Q)}^+m)J21RSE`!If|SW`H1ER% zZq$3jU<=$jEMeS8e^yR(230 zP|YKwRO6JySOa!`!bCmT0KI(6nec64}7U8QmL3A&wzYG6FfeY6m znp1-AZ}{SmftdDk;J*s^v6WG9RK~*^3DtL|Px+&%ZAjpPb{gP@Ia}zcPQT@p^1gXD z!R|E9KgYBrM&__6CcJ<^*3CSJ^3j0h(ErIn)I%b=8{zjLN!aBSyvH7N>!q*Wy(o)U zPO|WX9NBIG+P}erQ+oTivS3+VLH(2qPkmFm_R_oZ<3e>emD1+onWgD{yFai5+_hrq zN8pUm^ggMTOEgHuXue?sc0Y+zeG_|9FWbUiv@W>zq>n%9uuntn+Ee(Wu%1sq$gpwt zNp5WmniMw{8=VjD&`HF(@npBoB`ea5h#!sYM32|>3%9)RqO&b^kg*0T2(4mq7fqu= zLuMG!d>`O~U75jr>2o{gwVu?pVw%x6J#{37%}gAKB(v6al6yu+tP#8+z1E<_YX?|T za_FHWW(^tlK%%szyMVt-oa>;Y};@9ANREzlA=Jh-&7BIbP_{C2Fu<%KqJfcC%frKv}H!ZRW0uMrru)x3U1YLqFW{ zTn7nJgE6$5O@}$rYAwp?Jlx?8jk;(*;-xVxZVeQpmaj`$2aV?!$cN>Qc1&AdtJ2A+ z4Jsp6Mk50$6Fnmo6=zo9)n#@gv+_$A6TI;0hMx>0B35gbjnxTaY zveT{B$7S>!c0&>A>>Gt608N8Fxzw{CBe$>2TG9wu4EoZ{xlu+MEDieJrJf;H;LFut zCE$bLg_fz{Sf{Kb>at?hS*J=Pu=UMvG@Q)zU3clv=Ca3h22*u;Kk%Ek4WyoB+<9bj ze02JX=J@rB!0=I|*Y`}paYEEtj5-$h5;IZKsnsVZWZ)AerIO^!Fd&FlN-{6xH8w`* zZy-bxBNj*z$7>Ps_c9$N=HDx6jSHkG!QI3Sl73fMZ!mI-F2&?0L(C8SFZ~&<|n!Si+=CIuPKxw)XB~hhFs4#G>PA~xn z!Cb0KE7n2%WyZg8m89HMCll1%w?TYxm?>vLqR19)SL^MezC7OHz6d_b=j77bW3P#z zZ`u-K^@?jBta)p*Mc|~L_eN%X72c1mkKAS4A(~eJKbRrA{RnDCF%JlBxHUfi0V=LV97R75K-DlrFF68N@kqCW=J1iT^ zeXj4VD5h|XqzLxApSomyQsn$4m?y=*Nm7w=$BXi~izn_h@+HFwhw8HVZg}2aI3<*q z5~r6E%-=Oh^GIDxDnPm$8F!lc(v#*5C?62|Oy~C}r9IRAS%2R2XCG=@wyQSowCtrI zBf>A&;gcjWIR^aem*<#{pL#@nJ~z5jPA0#;q+W*zb-B+6lLY+T=s&mkQ{(^YcBAKM z9mH~nUx1HZ<| z3!~p{$O|R2M#KxZ(&ct4^m${AAV%tX^l$O}HCb2#9O%6@xT$WG&%s2m(RgA=?Z|}| zMLimPFCBi{Kppm@7tRukXwS^s3*Mq?Q7rib-0WQx^N!3CZ^?1$xy|ZQwvp=l2&?)V zCr1CaglqnjXH`NOIf1ddsM|)qeU|pf1&O3Rqt#03Y|6^L!mjrAu*6bLkVE2qgx+Ji zTvVJ|gh!~74{C!cb-pUxBD>0>-$B7f)51x;rx@B9fw_rOpA?87%=z5Pyd%)3bLM2N zOxBTcc3^|htU^rnn^%O{HP1?D$u|GI@0f%@t)JF5$FS$vqqe8Kh;>nR{kQRjJ@cc> zTGx9mfv2)e@9+O#FmoX*DDbk51^nV>U}a;W7jq9?jsjB8f7XzIDH!JzJQ(LXPt#Ls?(UQ9B&}A-KZy>axw%Ltmh^GIM!W{=~ZIrvBT*!k*XB zFZ}V>g-mkU;p$-^AXJq}Iwy~2Qw0Cz8}yF@Av%)FPS<+_0k5h|;W>FSnl~!On(-WLv)IGl)Ne5YhZDHtrT-yDuy;-<^vorZ)MEGdw?>1?_aNnaAEc-Dz~>cl zkbN%b>jdciF6h-I2=_O9mVo*NWKJ%!8e{qfw^O-oEKn!2(-Zq_(e3b{7K5SML) zGDxF0X4ZJ{pnCI4^W1~UT`1|1Sl*lTo%gYX_p!KlmZZ0ys5dFtk^0>pzx9?U=cxpX zny2z5Pc#ire{A~3z^L`WXy!nF_2!1=xntQiDQlx<>7emoZ}sMPO($!n#w$ywgKuS$ z$al3!cN|GA1aiv})b@RGJXaoAj8hQfb}u4x*c_PoSdwPK4X=zeTk+LdXsSHed~ay$ zR#+qcKtX@s+NbX;{ja;yfhb1Ee3Ti)81hjsXk`N8sk#O+);2>NoFsXF;p0k%z<6`9feafCo* z=5Eo&EJwO+j9@`wP4Jl`;`zoOPK6e9Kjyt!gy8FTC0E}v$~gRFTy(lW9O1>wN;G;m z{z09=9LG^TR^$h9tUPG$UeqOPv~&ufrk;6|%uvtf!tW@LiZyti!OIdHg6*#SdFb1E zSd(1JCihvbr`G4ezV#9vnklvTff#p6m1|rrr}BZMCCMn8S5Br;tiyD%v=4|#V;L+W zxU(jVN;!6Tff2@mlv#Mgs9k-=&G+>V1A1NbKf*DufWe2P;0Jxo-I&g2}hgSU!ruYu`0^xwI(e%(_m}d zu-kw)TBgHTkQ5;w@c8$1gN_^8u9u_=L9_rt*urx_mS9mk$?>P}6G3GYNyY+EM{C>m zRoUM_pO4v{mP#r+=`4L=%Aax6nXYZNQ z;^uN)bJW-^%;IrPE{}{Jg6kt?ADWA=>=k7hI~aBM0xaU)JL>t2g>Rif;19U_^V(Ng zv7`Ft)-*b%92yXhZD0s`zjft`+B~D1G4s^9=8pP3!z$%PyaBr)q>2H9Ai}p*`V>^~ zD0sxLXpJBR#gP?0E0HSVgOtn$l2iPdlw+l17NCbWyPu^KYH|^urHK&l{MJwmzOshz(iNO23&ZxbI#3nrQZ2 zaCcuEsakpuR<`d1PMK}|Mo+Umx^MsK6?vH+$MJf@-vXX5yJ&xXm0jH1Z}R19jj?Wn zUr(P57&t=0SD`vWZlp^v?Lw3~m!NFZo&(qv9XqYI%WIL#n%J(IW6U>YIfYl?At%{yC@gpABLkxO z?{)Wg-9jCZF!b^C;NU+sgrh>FrY*BUt@(L^^avmBu(bd>zBTq z3n3+%G^X;fk&KSqt;P`g>ri+@2LP!T;Lb{>=Ld_9hO}l1fW_@Bt-??GB;sMvSVm)2 z5}Ia}SC|GY{)_I$$C~f|{Ad1`c_#Ls14Hh_ovF;z29qtF zLSwYg*JUJwWK9w<2oU*{C@>j9{MsKgnG*EmNNZ=GbeWu#3Hj(FGZLibODJe(V&bO; z-dJvaCUjCp`5ntr(H6x1jyZqg;-H_k!5CcI3S3*V!}N*q9126x_nuMF2X?=5!aiyC zv{}&+L!lvzHsv&+eFGut6YXOJt<9!93Bb?wYcIerQ9wAF*3+N10XplHz)f!?^T%lb zrC{z01pt~t)f$3SSr3;WMf%Jwfr7&=$V^7TGY9YSjwR%6to50H{cWe3`kwh?&I^%S zI1#!ow6Ifu%9@sVrjs7Lsk1<55behKXCi&NF1(6$B#pDc(%UXI&o!$Kyo&F?71Xz= zJq_hM@U|ZZ@wQiyKAZ;TePY30Lz21`$7oXw_$Sv7THj$63DvXHmxcEf7QSt@1CRLj ze+v=Ya#oT4$r$wFmEHQ`=vS>Hse5*Yv1p#bGPeD7xY~!ecr76V&8H;zU9=J&4UaqT7{mWdlaymwxg>jOjOUG zvf59~Dzkc3AGTIF940+YD-=3AGfle$luIK@4rASqD_pl9$;;5fW(yZLi|uDZOp$`D zty-0zANd@R%9}FCWoBefgKB1Eh#NSP7owHGj)YYEVq@s4QQ514Gl?-URK+)p0?B*; zVey2z;u1w;sFNT==g1>R`}I~>D6a&?*ed#hJ^cIAeos>UZZsr-ZtmNDimB92dSXhv z;Me9fG~as$ZJ0OEwJxFb?jcyNe7LTBTyppu0*F3ys3fM+z|jsJbY^!Hc^-Y>4Z$jl z<8cTeT9jg0B+vBFf5J=jqgA8_Xj+fkCw3{YXIi+SAMHtgy4=PkXd69{#sojiWIkSW<5Z{db{GzJP}$U!%~q*_2K&UM*6=gw=5v0#zR z4&1$v&uc~Bx|HA}Qj}-;jh4n*T&dSBEZ#P?*y+Fxn=&h9%T4cKUNuU3{bg56(hFB9 zTWZ=Iwxp~lEb#mGvkVj|#3`USr}&GAl5`5_CVn)8e} zt-lui3{~Q9)V7mQ0^*=pDhNfLlZ4NB2cJ>ywVuvE@i6O#uIPclz#_3_s*1Qk+rgqj zZxVZ;nsAhB#Hz%W0>ppo!T^Vb<6kV_YmoN`QbnfuGn^^Lf4kWiu8K@M82#|1*6kGK z!WbMW=!2x`MOg?H=%EON|7Q~;+oq@#6INTiiG%}NO!rz!jNwlFm!Z}N{?2}RiJrN6 zIqcY~L4K;(pYzE7sEnu#ZvEe)#LTOZleu}4!$Y&!Av@j9(s!x?X{CCJcymk0t{N8& zn1W-&%s=L~N)MeV1awv_?+`bY9*-!WU1Kv{*KP66zI-?YAhadzfexMB_)>MVM=BJI zXN#&29!?u&Ju9Y8dOmJSxh_ZcyU#!6A3iGy9#fLKVMI5-zEY98lAwLrwC;$f)M=(# zMSx=?4J)s@DhZqZvkYF#{|FvD7V;Q4W zU9R+d@|*Ad<7qj4`M@(eE9X3E+P`kr%~Nl+XuOj`vrYf6u4$qw+l&!yn8sPP_L04D z9sss?Ht$xsrrB@5GXGv%RX+^8_K0rZ9`EfR@f3=l)x6ac#u0-g)fkvW?Dbsgn>?;` zl2!8Nb7@mMcu)e+Bf90D5@H{Vt>MtMKm|4{HXsEyL)Ev)4KLqLzo#^)Zg=Zv=cNR^uJGXfoh_>Nyz$2mHrnW2h8blO3;kL99A;olVy?# z-J+`|rcTQL%kY6?zZ`hPk9cv5lO#i(KCTgdYET5ScQlz|(-RYGhRz1Izb>-)K21gF zP#9XPV=*<7nucV3BD1CZPVdr3d24%xZTj4jFinM5?pvaN$nj`BNgf52jv34=<03Y{ zM2rd!aa1ZD#K#eGxsOFzwYnMQ>&;gLontSs&I0ZujPPnhGL3weGRLksb`k3yeJ;Fe z*p2c-=BhA=v_)*Fn8QL4SmsyJ{}B27Dp&@q7fpB#`#46u(h=AgR8l=5k@(dZRNU*` zLEE;wOF_&3Y|JKf$}*XxPkMJ-@muloZ;USWB9_A^KeBnS{4XJLYjW-l`=wsc^6=Rw+_WfA#=$iFoB)5BcPwgCh7HvI@b~ zi+tSNIfm~*?ulB`zBOz7JHh;i3=r`dg-Zj<*k^KXNE zyMmq|ik%VWr=s*H z_+GIJ7WO|e8o8?s*gAoJrHT$Xh!x_UYIF^Vuo~5%`a_>r5BkH;vo-%G*P0+VXu;$a z*y>r6*AJSoi=z1dQd9hshoRomR+YlkP16R(cc6jgS z@-2{Ri&QE3aBuKo<8@R*pi(kx38P{yzeByO^lZ%oz4VIqj*t~C;Y3Y`jBoaPzQ#11 zRvgD(9nM^b8OG=FPge;u!iI4XVa)l2M@yve73-pW)O1BK zTM0QCm2G>w5;`_dS3tMhaaCCdZvP`7( zjiiFB^PV&(*+4!rt@uPCx8k62(GO222UhnkwF0iLGNlnm&&0}fBb#CR z132yITgmk+?IuNshjE#@HMMfribo%EMBWGpn3xA29>!#n)YMA2x(&HmbPEF_&Y{M+~ zmz&_di*QKOb%tMVo#J=q5U@0(9X&LG6WBAlJc!U90rno2gz9qLf#7!0_e?Z0bqaQ8 zORH+P`7@hRNw{mf&0Ob3P}AoPIRtFXf=3Ul{t-UwKc*^EvuVCTR>$;D>@oP0Ynmy) z6iBE8?EF8P!K}i&l|Vj!%sMwO_Qz~2{M8e4ACm$V&Ao4Bm#{t}&B?RNV+8aWvFjkd zgV8o&q^FFXL*opul>H;*nIEYg_ToMRbRz6SJQ3&6`JM_hu5l$tpReO_k8~+O0^;_$ z*jUHl1i=qLYNGm#3!fp02V~U>!9AaoZ+^-bjaC#IU&X6Md^OxbQw>TZ)-AegjBJG5U zn&_a$M<`EugWVsT!)5$s z%?0hE;gy%i$NeAQrtm!B#;{uP$o>0M73qfk%fWL2KY`$W@bQBusGS$B9uUic=cuXr zBkD6IYjxTIbC4=G8)cGUS0Gp_i{qA8t!@MRxu$S+h9}_}R+4K3C0}z%(q2gT@xomQ z!ic-;DKJnNdXCcBQe53>>sz7`Fz8Zr0|a%<0wY#$@mGijF%p9X$E;<#@%NAj2$u&2LnArbMt0A+Q21xLYmdVJ73pLDH;i_N}cme^9L9wO1~HKgdCX)M!mQ$JEsKVVibP}2;}$Rk_Vj~y%< z&{SU)R?ne#dk)Vn*d18nW@{^T{*7iG)hwk9 ziJHNV`nz5H3VU~U>XNHj;_J_vb?w^No{~*|?ZMy9f5f!qQE)U8E+`cST4gt<(-T$| za_JnEoH4umF?x^VFslfthV(@|6Xbh$0Y&!HLf+%MlTg{4OR`XTG>*?iTti=cXOo4^ z&oByLNik>6{~Z3H*-N;sG0eaaq1yF2v1ip(x=B9bGpjaztf$07^Lm7bzmh#V86p+q zZjGNB6WSh&5C!zaf`fb3OkHhSs!sj-Z2On7k_D|9Z8OCVlH+29L`OI1`n=utj4^^M_;?teFq`wj-`PQa)*+>$x+kS2o2Gw2M`e|JK+Qx(sl1$!i{YL;6QzrX+- zF{-r~Bh@jY(MSnR)S7luNJBd|qDg9h%-F{8C^=cHdt|;f=bw73g`d(pekg^?F=$33 zkov~V0G1JSnmU$xPISG2T}yAyjWhCDyv`JtrKUuLJ=}Q22&wiqPSdHHW`#W-|NADe zqL!64pT1{G%jiw1f!P6^%1IRFJD2?4r>5#WdTXbcR3-zOvS5!`twSSR`Vpho0|H$@ zFFpRvldcY?Aog(c(0XJeTcPS}!s=_@YVJf`qMnK?itli2!-ga05@wANngZ`Ka`he2 z*uH$iCwh4~;z_|FGB^^=ana6kAZXT_rFCP}qh!QVIY-N|W!^=lB9$meS<(s5aHT+Z zlPhy}rM2g9e1O{!>D>-FWdBM?S}- zG7P*$Bq;Wa_#6|9T@x$Ltvn!!nEILmOP3Z)EhZG(OluWH@CJ`v%`M@S?$S)y%K$>Z z`OYo^HFdL0JZ}x;&i9fC0{KnICdtOlQI;71fwd#7Uh3wm05pf-m$3 zRX5n&dv0HO!mo5AxTo5fQKr+Ia3IZ(_(>m`a0J>E#*AXuq>6K^445D;v_{!6PTIn1 zy~TlZPWL+>QqtiMV?3K>v@M8#VId3SY(V2$jeVq^H~Z8?-qftvIO!wZpcARC@!(bZ zGu?Os#x6NP z{A!cMvRqpdrP{Csc}h5uX8Dsgb;XuSQo#&_s*`DW_VPXHSd-~UneG#*@L==Zs;(dh z2PYG_D_QEGdYPLSZo`oNL6v(4XfviXpOIg~7c9>(`G%TsK3e)ZKlaJOr2PzjPm+w` zo=%c1aJM^9_-7+D953LmL_yGLE(T6y!vNAssMg^vz3bvwRHflpedDkC7Xm6vOV6_c zk8d(buBYeMKCifH{#bH-*6TO`dG(O09t#x%f1Mcoevp?NT1~TlHCVNkKUE5rtLw~I z#RABZ2h$Mjaco0a7|#;LJQG(zu8%8Y zRyz}cn>9_1-uCw4m0yd}2}R$1xVQ=1Ek9Eyns1iecDUhl;SU@xlSI`koe?hBy<+!x z)v0iFYX+HR*~fA*Y4HYsxjgz>V>Y?5v~+Ps?RcNT%_Xt9DXfouLKBXVak53a^aA*) z9`V4HJu|8C*yy`k_tWN(x=Gu2&+=Csr0;N?Yn$i|lW5G`Gqgy}lkifuV9ng4v`CAB zmG%r(&E9v}Af+DhnSG3!PqL_p{HV^>{9)u6xmKY2aE!H?34up=L+F0q(vt>r9C(llHpXG>-hT~V#?dEhg z1=hlAtgU3|Qg6Xi9z}Bww^1RXMK9`7y}=S|A2B1s8`emSO15<_kT5QL-b^+la1FF1 zP!ORx7E<6#sQ=A%tLXOP{~h0{d+BgQRjdHx7E_VB zRyg_CTnB+ArJ!P`Wvu2^QF~_E`yKltD^jOOMt!Wg!Ge(zSu}pKAvtd;>EZ{fG5Jy@!xA69IQ4ex zoUu+SOMKQ0#m0*Lf4qGKR2|C_ZAb_Nch>;H?ch#uhv4pZ@Zc^9?yfQ7yZ62S_bUUh2r^vv}1%<8VLs-B}qBqu2t6etQnqIe}J4izb?@LIJX9#V**NJ=-9u7^x0$!*}S4%hiGfqaP>eiM<|ZJumEeo}+P z^@PZ^a1`sh;zW;OLT~K!3D&0k*cqnTg!o%`wC?PJl}_Xul*m|jKC4~^D;>|>s3$l0*!uzt{FrU$>ePbYHm=5O$0Qbp4p&K68-*x~h=r+~Ze#Mx4F@v__QnI|u3gCh0r zb}yF>wg+i;`}%5=s+F4S?q*&_8%v2C+ecMM{f6e)aYM=zhsn!t@CCL23Ss=#o>x=z z!?#Q}+h6-w9T=~B`yQsX$E(lR5~Wf;92?O6Ex zPO#mL&ac0$`iWw{1g-m#eD`UeMAAD~hojdkksc=1&sc}$Bliui6Z%?@Il6M=wE*rj=jd1Be(GZzL(LI_X=`?_uGYkn`o+gg`_{byH7aY>M=mp+gO`s z1gf92%TU@{iy>FW_7XOpy~kt>nCcEa(3r$^m9xL&8fdJ|oa#QXzw@DmanB^|whZ?s zp6zhJW~GjOIFs$4fvD_zkmn~3A+7a*`hFzm6yie;krn%}Z`-($P=5p-8xhK%aAhqh zy%>PoiG($PH0e!T$}M8>^d2ktVF?zv07y1HQ|mVK7-sBOH-lu&@L*T);G& zUYKp$=n}AN@mCBrb!XlohTn4F-=uS0E;}77A8w4V40*xNqw-7qcwu$Dt^EcJ|*nt;(d{U z=zW5yecs4@eAyw z-)|1&iJv==xN#zTa6s{<_*jXw#7FK+BYTiRHAVZ}#ol9Htc5IMAByCf7TE&>D(!X4 z^ux(Px1LWS$Q`1Eh;(V&~>R)w^Jnxh~V# zmY?8nsUluP`Pr<$G{Wy{tY>c~7rT#g8|stx6`MDmauM`=b2o_Q3}Ufgx&$cHC}j0q z#NMH=m6iv()hN%z9RU^3OcbHYKLs`UYo&c}G2)_uP4CK($x|O?u82C4D(X7PnKPe{ zW0iE@hrile;y%5~Ah@~#Jb4Cq;SB)aJ32t1kGVlOK)PzBPrex{ji=zFX3h>=m)y*# zp^z|VU>CHAmg#?E79=z3?1#uK9U_MSC1f8wu1H|33ODp7pSaf4zFmImXzBT`(2%AX zIsQ;mz=#@*tjzYC3)XQQlf?{#(7n={N}y#bq1FPg@7P^V@5&sIoCitQ?acO~fBB+c z9=4BCyJXahwr1*Uk|`!%W|G1M&oj;HSj`%H-I>pcv3u6G0pR&g10RE$(6vOE7UPb` zwgQ!=%9h}E*=6I^6_xYpuz_%FHyOar!tH!!bUJGoM{AfXrAGfZ)xfU8vKsL=GB|eO&&~Py_$UuZw}}>;UjCB6dIpu4Bt_Cz|XwF&)Q{Cz6@ILY79D~uKn7u zL^Qq@A)>^vVF+5f%CPZ%N+m9@ZxHupb*9_i@Kb#^lXa}g(&tK9uKuIXtDcj}R(HHN zTi+AK#%y*+s^j`J1SrPebT_!g4`2@%pDdNRxy6MK93EgXwlTVO@asl8`YPsFyUJ5( zr>(9ztl7jUU&C-~YOS1qI`6wu5lASvhJ9r_z3b+?s@OzBvqZJK4uW<6az5TtzI#D` zgz-5jv=~(5)~?a0_oX)Od)5bB(;3nb1`QuVg)rUzLk45##IpJfKaJLcRl~7E1~ccx zih8b|&%we#BFEqypdUJeT6tSO(06>FL#>Bq39h{P!=ds}+|g8eLp>?SM`Dh2#@dfm zwdtHLAIawU>5e<5H@qG9Y3BsAj|DtozrKcT(SdEgI)5T?@RFy6zD58x9ErugYl9cRYGUo1+1&p5 zaDgt!Adrh^-BClJeVeVpEfi;Gy$25W)wm#7t~>5()#|(u#d_=_LZfAkQ*!35in{u5|TTm{<=Nov$GT*U#?mHj^KRyR<9yAl_} zZ+)_8z~fmxp{5_kWTTJYVeO(}Ws$AP0sNkz9$Q_+bd5)BObE^QW>nq zI5N1ARi;+hn)&_EnPyn`{$h>W-kBZdl_O`gB4+Bf$~pemYXAY)#FU2Kel5eiy#ART z#SUoi!`KidrybNV7ef}O5LA3(Lwv>)B4<%mYDaR33n#W*6Wng>)69wRxbYa8i6G22 zBKU&|zuk#6nE!&&sOD zHw;pnU@>w%6WM^72LOxGLWl{{*%H z>P~+jYb}}0Y)Gd~u(=4HWDgAYp|l>@uY~&=(19_o{Ms=G>2xKROffwI+HrOK+L3hv zI9(~}p_43;SNtEkh0^<0RtM)-Dh5$R(Vy`bnh(50QDsAjKUTVh>(ao&a}ltFI_Wtc z{J_N^WQxDbuG8N3AQYb0>0lVw1ygn13Jd=QJ`D=;#ASEX$ONIv8 zCe{k0yZiSY80-KHhu;X0-Uy-H2(sJ=!`}$30(D(&ZB};aFp8c6z2amX!ephx`NYoaxNpvFtA>F3tWV9`3p-2??L z1?`WNxY<#Qb#~|KuMU;i$$uf*P;s^^0CFfbetP}oW%gLYwGEtmkHq}pa8>;=4c#Bq z9v=pu#?@>q=S_93%eeUeKvlLNK_2b!n>9sgg{t^8@tK8j=gkKk>CZG9Bs49f}&(fFf2bsoc2F>u@#VN=Pj}cfsJwyZ0GI2 z0fDxMJ(_#Cr^1RPT^K4kRNKv{#%d>maLjL24>u;ii&vauy7$graoZmZ^V_(-#diq( z7jvDEm_eYC+E15_r{jg&`^bzqmY`jrTM*zJR{wy#Lzjzm0Y(zsHoRjd6L1EUf9+u^ z4}jCw=P+8pahChg<$zuluJL_M2h{O4mYcy$(6$j#cOX*>RBxoy#JiTGo#RuLKpPaD zK2y?%8(R`d%)jvwEf7Iv(IIBhWy~mfu8!ob()JR6x)_i1wY1qvc_j{%XxqSqcf*9g zb}<3uTSWhTDtJ(H6G3&p)yOexS_GGVZ1lHEwH2t9pF}~;{>=+*JtB}g*&oiqphqG} zL~Gn8(tnykz0SLiyqP}X`z;tTOwLK>i#Wt>?sVLLE!&A458Z5?(#A&vD~ z=L@JS9-6&=ucGfEtHs>ZW{6`m8DFzQrBR7QVAX5*;q7G34r}z#+M13ZD`V@2#Kpee zeIp|$M#lOY=DF86^-zyG_n!y2M4ca@RYQ<_3!3%*jT`>Ahf&T?AoLLbs_ij-ht5&; z_pv&bY(w&|IR!s4jTo)bO-dsNIhQ((a{1mA(JMmqjR?XWjqk{;GcdMgd~T9THcfqH z+gp~+G=Lu3KyPuc@tR!B0rzYt z!HW!y9RC|a8J}0st`qp#?h{(8DaG!7YPwA?tR_4JmWu^;2qNc-Nu0@d5<=jKwFMI} zUv3TesgLw&8|%6GjBX2=D%3xd#mwK4EcA5>QQQN#oXx}LZxqp9<_F(yWz^Mfe4(w) z5B{-*47cLQw6nS-w24la{xapNnF>sJL~Pbhjx}Xeip>7+RVile#5q%jrE|+iD0cr* zrH$)OYiDp)qK=2$h@y2_L5rlQ8X=fH?kqeOW^EW!oy4KK{rtnecE!7iXEWnjtzeC0 z<})?epqV!pBM705r{Uv^H5<0pcGa17RcUa$t4abQu+cbhtpLRz%)K#Zuo4>)5{C7< zudcLs*8S|LQdX5X5+yeKE2}X1S#5{50e&s#&uR+1QLbmrhW3x{ImLs^2KnSKPH^)kHN{)@Za5*I zMB^bt&O~bbBxK#-60ij{h(sFw+qQw56SNI{-8B-#3-u^o}6vp`Jw0F2&k(| z=+o?7qcyU{D60vcoM|`zp~vC~z^F?I*6eMkUDLy`EeWofXxG@$qjdn$qe*$bWCy6G z-pgsfWB*CvpLG1x3#p-}GzXMw=|$JlyZ*PBUhgnNUOEvFcF!~`eXBsz2TaitpJ%P@xLCU!Cwe9#d5QQc;o)mr&Etw~EqsG-$V?cnT;HbBEU zP4PHx&@ix?2BE}M7&A4ZQ{|-&)$#gZehJ^X{70T?1xY7 zdxzTwCuL2ly}P1YmQWF0omH!rQ_M!_X|sg8`5W||2&eTsUXHuqaA`99ly`T>8};p( zBL|+#L!WMVo$WXjc{suYtq=1s2S)c7@OfM9-exXoAtX|U`|-RCH?_*3nM(gTnCxE! z(d(BZ>V>Gh6b?i^sC$7i?ki)C((boLG&DH1pF_@2&UlPk1=j%E;LCKp$m_kxeJk&? zxZ!}*VvKP(u$&DB82E*uQ6AqJ4zm7nZO;c^zm*Hr2Ruy4n|5DMp+# zo{SI3Tnlkv9Fr;U6TR%X?u(u;PiD7YTUA9_vq)jLpS#V*h_6t$ci3zX*ka5T4q0v* z$=6oBx!nrPH!ixd)jSHY-k#GKcbxrZ4>MknMccCz>U*<3y0M`0)cJUjHL&TY6 zh12*q7RNH`%2u-tC*Q_K3o)wDI}`L%LrkznXmUJz0}?0zw)#pP*Qg^jwN{dDy@3fm z07t#piLH_feVmT+5O?lMb@RIks1io~_zug^Sv*(zQ^B2870;cUYLVrw4(70JT0ne;$@=_nhWYT^UQOnud|nxoI+sv?lk~ zQ~7DzN{pQsld_H?Rd}tAk`n;i^&p=}SK%F~dG-3e*oJn5+iBLN_$C5acFf!S^>0G@ z;L(lVV)M;edpg68^qZUs$9R&LXnWn70!;iUq|5gc_QMchpz;uO(V~615w^!Oi#G=! zRw|Rn;ditBg%{G1oPgl?*zf*E6`&C}?2dgT32dGk=XdMh{AFry{maz;>V9g!7O4m}#^l31#jOxM*YxQ0nZxLs2xm1>n9 zc{|87+>X|7dvG%A_QfCKkh5wV`-{YfeVdy5$-KOxr~Mp1igkd^0jku>Q@A$1qi-x+ z;vbwO`F7kz*4@{j9n)nC;n8Jf8}!epH=V5$w4Z;*`@&gSTkGT!jY3 z6+;uW->8C8j>@dX+;Z6jlb2AVV{sEdSD(9Z&57e%?9}EJ%^>E-K6Ms2ux?D7mi;!~ z)MXfaF{3`y|D@`OWt!9Nhvtt?6X}-n}f8OdOfi%zlKZ-wncs z+LXK#*Dyd1j{K2pe7!4r{79DNOopCw%(Sa&N!GClj1ZZ(lS#w61?}rRU7cxBh8ou^QVUhZsY+eI+-#Q^d`52H4lWYp9>AD=i1dLGY9jj#*$1eIf!5=!IpLi$^a-*u9s6ZixRLgZzc%Z}JcD3FuVXOjpSxSodq3JC$9UT8o7nEsun62VTO*d-^t8e9RG|OMm=xpb{#2EIlvhje5uj#Cmx>W^6R!W>(p;{uBfV{(C3?7pqq|_wezfg0)0n;(Grb(r3;iP0Eg95{R zwhn{IcudBSeUraa)5i?NKevOvjo~{*C;b zb3U1f`aj2F5UQ}bWj|${G+N{`uYST=YK;`X&}OK?2e0uqICnJPoO^*y;pp{R-uUA4 z#LUvve9&tVJ;~&X&^ISgb~d=f{qL!niqYBF+mSi%nZ+1;7_kSq3pwyxTAjd|+gjBu zWSh1c)(F0D1^Sm8x5G@?W~83h13!Jou&;oKE&7C=!HinSd?;>4)Ndvw1XGxpmsz1R z?RUfxv|jPWyzaqc>XObn2Qgs3i?{DKKKE?Exsc#e{|ST*j`I(*d(Zpwv*Laef+b?u z*0*jUNax_h7x=;@c%d=?h%{Ylo=&!qPH?w(fjT@x2{KG;C>GG)#4IRt7R@9(Vcnix zzGn%Z7I84OrN=m;Cx9tN3@*l$D283kh_BRG15)jCE9s$qQ`vW?$)^x`2MxGEU`^$QjwPvlZ{MRuzsOu4 zHs18*wx8Ak>RM!AuS%ZD@@V+IcZ;Fnil9f1$^T|b`=WN5v9H7%A9LU9iL ztB0hwjk>o3*Dd%$WBunOpq;@-pIvFewV;hsaN)i!3)(rHyRS3L|L?Q$_xh7=f?S3? zK_s}X6so4u5S<0=XuUCOb}A8IRQ>mEOu9lNoM{+_&K*RAM3`#nhfwoOq;apK?9(+U zTZ(Rj$_t*`*NCeOoaV8TQ0g>u@an{kFzRG3J~!kNtxjKj@nThV#n?y(d?LAZm7KW^ zBIt+T@*`3fmUl@`8IW2q$d6{7aP?Kfr#6>4Y0aUW3`KMdzmQr{Opi!b= znPi44=@4}^Fs{?&7Z{twi81w%BxQ#hnPjR?0pnQyUeyq)&nD z#@=NJbx7o|>qTB<`np=)fp*BhTE~@b&6|7Vl)S93n#@BNuGlcH4jsxE-Qg^!5# zF*ZqAH%T!Drfin?OR5>0es?8Nu3z_xJxvt6Dmbs=rYIj^nleV-J)++|g55pJs_r?v zg-lbX-BP*@){;v`PZEQv80IfCNmo+Ki$ymrbfGbTmKqgDslZNMI{Y<^K!W`#RyawV zSSlk@%_K_+dsFqEFwKt484@jIlA{V`@)b@JB(A_t>b6reVJKwkqL-RuaiiHAmX^UZ z8WgVyr}CU<$v>P&oz4EFMNb_|+sdG7^dh&0cKsOol;9elHu^M4&{c{NwTDWvD7rq+ zF3zxgQZk!!x@v_xJHB4BOjEk7FKdz|dy+PL(rDP6F&0e2D9)h)Lrsrg_*TtE5AmG|%@VWZAwD$->X1)4|kDzAl@5RlgJrj@%>RX2r!Uq#_$%Tf+%=)vK$%c}`N0Op} zeVxEQCABi&G4ph0V@l6`(AsKcruCv2-iunfoS~00BOeC_KSl!w6PY$7vF%9VID8@8 zr}MgD)$B-VE@5ddU(j&)qPxf3BZWVhM=F>{B3L?8NF6wo*wJJ?nN+@{w!_TDkCy{!MC@ZrVp(g4}x;D>bs} z<5oH1#83CJAaOM^?MPyu5_i}+PXgbCj`iQjOjnLn?v`6nSxk#hR}NPeDi)4W4=hO4tS;w=FNdBcu31kIUFu;G~yPN|=SA63)F`w555Rp#jBv0HZuQ^`Dm@B``725f@7thf?^1v zJWi0HV83LBz09xn+rS&C-(oEw1A#~o?}W@*>CZuxWR*{U6;wH3J;6x2`^A2f`qh3D z+Y(FWXOLc|mW!Ya&wsGrl8xK{ne`U_{oZhe#3joi| zxq943#68tZi&YqiNJO;dM=4thDXy-=adKjmm-NIv4 zo*R)pSZ()~hSHU+5s>#K@-~t$+yr^!AWO+?2++J)sf`fbI-rxqyc3>Y+oV@{%94Z- ziB})tRFA-;*#q}0A8tz#TL>{*5Xs|iE4Fv{1~$F1iSb({twFho93r^QkD(@5#Y?yh zk-kU8i|-|ecFfBR!yF=SB;I~g=%Xkr|LH|^$`a@i!uN=eFE^`(r?VuypMZH2_*MrJ zp)R98t?sh`{ZGt&;3h*-i~gvdemqjSci@}rT5X=cG5Za!`ejC9Bhd2e=Hpx2?}}CQ z5h)j^%;J3xkTg6I^x~>5DVDdGIpGx^Kuj%2l?!o}i$K~5lGzDk*af}_j?Ldao@KGe*NXGzi7C)(N{T$OSXC8hr738q4EP5M2NDWg~6MZ)_DE_EcFJ=UThL8yn zT1N_ZV{*E^fW;N;d2O%?HS~f>ZwR$-ke@U-&Izq>A6rYrOzj#6=*^lfRK8m80HmV} z{Kt6sAWXvn%jE)Ieel^J#?2tXGkQetHwTSCfqfpHuW#G}!s(Ou^nK3xLy!vFjn9+! zte!T06?E&eNcQPUXxaQUb8BMGUi)06YGDH%cUBL5oLOB9(RQDvu~lQRyxol&)cP%Y zi4<`<6ldcMn}~}uXFY~tD$O3It9yH8LLAdUO%`#lB-)*w)ife1KhG~uw+SVZ(jHht zrtQUGr}d0qrcArTjbBv9cb-99T^v@EM_|3rQ9O~4HJ7C| zg`u!eNWtSe@NE; zlK#PU&h1&b_)6j0z9oLL@xAb2aylU1ti?kIwvNR&cV{k1qgL`Uf=JI!34dSAxXvFcWf(4bo9NcJQz{TJ!*}h7<(vDw`eVUkC zJWS#7BcI=LTk0TNuB|hu=2m^i@5%hUg=Ht+shDlH&p?g8oTbPcNrmnMvNPWp^vsXD zI3K^s3upGS+&ip5-$xXiWB%+GvOFa^!s^!*-LaMI5wPn${!%40+~!u_oM64y^c(du zipHrG!*`YF8@0oXNF!r6@l@8aIO9V8n*LPeP)^dzhAoH{oxdb4BwBKeY`{o8@1 z+q-S&$Rmh-=Vz0*%O_A|p#V3o%0qYL=zOiT2y;pB@J|P*1e`RzAj50`_)aPgyJjF% z+PU2ctEtQrZoK)xvi>C<&Jif@=E+&^&_E?3t8AM+y6qfIWB3!x9^_>_>APiSn8^+~ zT6w>#ox5gdzRFdn{aW80#Fvcxuo(^kM9~7(R`=jH6l>212uLOy$BjkM_iqPQ4T7e} z_g<}dERa{L0WL5m@#VIm$?7&{>L)iE0ksWV2KHlTXUg(MNw^y+Eokm{kVS?-L{r1N zhXFyS5XL_EG`+@c4$hgh{0WH>FumMwZlxZQm%9tTq0=L=_lpbYEX+dGUyNclJ)LP< zFH8$$6^jhX3p;LfOi3gpLx;enhG2i4&vTt`iUn@|3+wCdp@8P~axU4coQGK6edq3Z zeVo;H{POl-Bs!|;UT2asN)*;Duh+q*E0bDD4on99HF6Fe0Lvhm;^&CCBlup$L>$E` zaaaf;TBzQ<8&M{)RIuRD_$ri=mhH4lym_i>bl4p3+ETznQl_{DeS*XVT`KfSU7=KH z^&;mMj=7yM)=jnx`Xk zvyt$B*Pg`hK*DW@N-Riiqaayk>L+^s=`bY859C*9c2-K(=Z&^N?{D>kDJI6ju!fS> zcu0q@!pzY!+y)!aW=7~G-?DdV4#|jG{v7sn@LT~qO^sYa5j#zMS>D8rGE^q};8T?~ zq@(P6S8^e&AIk{fvSGX?0pC}+`@qq#dl^(=^wseY7InGaV=v(qRyt|s6VHKMWW}Ja zVYJ8vPIMQf)E62O9&cVT~q>p-kWU=YIjL*|Q~*I$`m zwnZH?`G7Oid-F@Goyje9GXZRk!Gd&Jb%tk+$O3*%4}VSnXRgt`>7{;93BSC$bN+O7o00FK_kYCg5LR`Ob*nt=< z@Epsv7~^Um=5+Z9{1T!^`@Kt((c!cP#>qZ)YU@#6ID`|}%IAw$Ol>_*&qD_>r3O*^R!nSv=D@)f zWj>_B1Xcq5PdB{6HhlUw-hbKf`?2vZ)d{8n*!_p`K8=OvXS(q6GuU?j^B1l3xCHv( zJk6pZEx*q{D)e~2VS4+1S1{==-keOAA!mU~^6@!<;zKB9^f;hFf31i5=wCY6TCOuC zneYB->QOODUGaV5k#|~_!H4jGskKbe768||n0O_7%^^29?FUe7rii zF=rgWDH8x1t?8B_^tOV27>|k*X>}Wek?C=g65aa@XFSgiAm5Y6C+g-K*i4uLh|EJ( zFe;_%aZeppK?#?=@SGYKmoYoVnZw9&B#bR#*6cQbUP?Sa-xhLW!593iIVBd?X*S zgsFO8bgT62_@QB{IfM>N!dc)Xx?xnF1ZSl}<+2dd*Y;u6NiX88{L%~jh;blWTz8Xe zcb1-kT>7R8kOMs_tQ{EJ17zj|A%ylcn5{@*ZAkDC`0|4Z-Z&5!9ox^>uOty&H(f{t zh=i^th`#$e6AU&NOobBXb$b24ik0qC6@9yU!V>YnfFzoy^R9i39|h0*{}yQ!JRm$C z{(Jo&PWby>KXnf{`D^T)^A|bi&5{S+iA%inG|1l*zp(<|5$H{&svcA!B~}_U2n`rv zTYSq(Z2dQo+3}bM_w!|Z%z}I9q%HR&`2i6-GMf2 z=DeXsT6|1&TgvHm)e`7wBooj{C1Fr&wnUS_RR&+?dlWKcI+Bzj^ zgHFm06P@fU*55*6tQ%EE-=&(cLj5NiNDP3^JfP@UU<_$r$Mio)@S>wfD!}_wxqmo3 zu(w@sO^?VH5LuJ(O+(UvmXrYlB{BGseu^nqIRuKJ5}!Xl7LgGu^at#e*mK6By!e#)`PCMrt`{DgSrskh@$?2vbP}Df)05f0Bx5 zbdW-|Fr^Bm9N)2l(14zOSl;#ayU9Zcs#2{BtIw7_7X_8B`E#m8f$9D;z;l%~%toW^ z6xt@n-iWzw&+T%JRD=Z)LQ}z?O$WyHW6NDylOrii<_0AwurPP>A}}L;hE^+%tc@xo6iA{R(6J=Omy5iZ zVbb1o$5+mAxyFz}Pb+WJ+U>kkp}PtzRx9y{m;Uv0rkJK9 zAl@1hTW^C$!X9<-Utq_vv24C()&HNNogt?m^8s{;9L4~X%LFEO$s`_9DT3&naIulj zEazCUBg*JC#Z+hI$6YxR1S8quo5P)U&as>Qod)arrFGqcjxL=10=b%8BW}~Vi<#=jL}DY!cAH_nHKev_5niY2}EBQgft9;s=HCG zW1*HPQGCLoS~|fO_22IU_|6ju-6RotNM8^{dxv*5cdjhx+w32}o&wm<6L8%m;dw|Q zf4}FR#&(m0<4N89?p)dQwM=t)^2@=_mw~b?_S8uUXCqe9O?Q%p@T{}QW1grvk>M** z7Xq<8;#v2sx^TO*66kYLM}o~CKer=)@C?t2)L#9LTse)L;fb2=gqDjIJd70OLGBVE zx)3EH5VKSCDRqb|b)YqzwJWyFDKnZ|n+b9pbKR$%?(*X^H|}Q8U74Xuw)M3Yrc**~7YA;O^h;bnvQIIY`wl;Eh-Dq{Zs^=A}zXknd!F z?0qIj$y|57gUG{Kw57QzULzQo*TH^vdy;bNSHg>{Uv1uA*YJa}p5hF1Dg*NB=G%M7 zs?4P-pU#WMZXdZ59{n%fJs36@>KeD`@s4l%OceJZJSvwoN6(Xk906v1%=KO4z+n8D zB*?0HCFiTAb!@m9iVCiGvajcR zl`n#d7-Am~?MfZ{0N?HT9{mHVGf~sk-3!k6>qv>)Z?BdwDA{A@7Z1BVuT)7tL-`g> zstM!FMb!AQY`m9d?l@2E&Yo3|~bY9GB7)MVC;19qXj|}RdKCA_2q&RJE&BF! ztb_W}=B0a0M56|IQjeZeDL)9Z2VpMvelEyx8Y@YLW98 zdET48s`r_t_e0_8^}uA9J|{lP#NGY6r!-!uXn^mC_QAoY9U1*QGo#Fh^r-0Yz83S; z&PTUbZ|g5!FWNeA3B#Hf>mJ(u4!*}nd9g}(hS>$zz7U$|(Xy%r3ULg9H(lrA=ur^9 z-LR@zZmpY><`*u|+A@h`H+Fa1Btq%P{T@D}Vj=vbfi|zAdcKIDu8Wk-{vkiS%l=1H z)#kbHOL;@N$W8)FLSUTsTsUCRBcx)7-D z=?765{1FPq-B0b&jTkW=5>S50a@a?S5C8o#klz+1{LvWmW_z&2B1nS2>$8QSB=ZEy ziwZ-_MS`ZvZ{ZWawKz|_1#>W1CiO`S?u7 z&pFqxD?Y}Vf3En@cVOl7_4D7S$8XLoRdKzK>9BcJG^NK;52x~5+~=nSyEvf_EIQYF zVGJRHTqJ#iPm650A3d=3pqUutm_X>s8-4Ck6$Iu7b-QET;c-dGFX5bHAzsj`yTojo%5>x|r}jZY*l5rPO&8ytaJuQMRUjtK+tNrrAnYSRP}A~v*;8@%p+g-Be$ z0<|Q6*-toRkE}`dm*U~TanM;P@JZV3wdkCSER)|62Q z!bN59$tjQt+5akFM2DWrm3yJm5DLMF%BG-x7yEx9z6W(~Jcck))1cT5cGla5$e^9r` zgl@9((oj#LGd$!*Wr8lnWO*t6c5>(m1va73vn-$&DqKVcm>kpVAPCWai#$fBaFMW$ z3W>LV&i=MJG{0JSN(=OnkvC5W61c?1^r9*f3}{GIpOKh(8NfvpfJHICE`<;sBkcMd zUBL0H_(?zM!X{LOL1pCTh{sQn2yYbcj*Bcc%-XS+J0<15#1=C{3l;MswW|lEeM4&2 z29(nvqwV$0J*0kjfWmd4@uC*q1c%V#S(b%YIb1{~*f7iMDG1T&C;toixz-N!r`qwf zL>9rK(-}>6n;D+D5|ErDeHAt90t{}C z=rrph4B#Vr!J^n-GeC;2J?X+FOngRS>-9+1Bpc9@B?jl$I#6g%^NrIMZcTy7alH9n z@hr>ED+WGd7_{|T93ygAD9dh0yVil7LQ`W_tqt<~|lQaHHip2jw z=iBY(OF|m{6~+_czcAv>7;sc~*}aY4Tp%53mdf$|V7F@qf+Unu4mg$k`&f$R?iigL ztC?9SHx2uSyE{fP@n}^2*r%n${B)Mpe5lkfg2-QVD>)#7YovSi2pKk!e+YUCZ7C%F z+((Z>l<(uWu~+5gVt$n-&$4|@NExG}K_5osSK+X|9bilu>qcw1^=xw8yF2h)Iq*nU z?Ps^`KfAhh)85{=UYnajC>U`IA9#JFL3N!*v^3PhikI2(F)On8%spW(l0wZ8CtGo6qd zHOv3~@tX*I=wSgq7jjXAzk`I8KxiFqEk35F=KiDTf7wT=M>Q^1pAuSp3f)dYkj3_!Z^y z#Gw_%(kUqvUip5`dJ~KK`JTj#L4|nb%O|G$Mh??FaD8eU^z_8i2`NxXeBWoii9m&p z;^&hi7lnQ#k!@dj)q_XGKRHBxO%As5+lJQDZ%r>Bi9rf5JMkwe$ggw3|5mkF=_$GB zlXP%Iagd-V1cMcQ@(lT_*S+dFzapb6?jtoYQ~cq$ha3D4 znE$P5GqnO-UT*p3VPyQH5--qzyS4g;&fkT7v?pB){=_CP-t}m&DC_QKuL$=3Df|bO zoH=LrjUA%2T~l1^&F@WAPGl@%FxE2cuZKqBL@arRv`)O_CYT%^aD-&dL)0(Qb`iiv z@JMR-2IM1JqY-`KZ&M7YhDH()>?PL2M>+~f5NYEg@(aKu(hCT9N#w^&)GyG62-*#c z1PBkn66__^gFs>oNZ@OOB{D(+1P7=-Qgw(WFi3x!$d_(Ahqn8*I&1gWcD}D+BM(_W zvED75?GotnhyeLClyxM4dKwA>(GnpM{JmI10#zhBAVIK=goqRg5EvjPC`qJ;{78Wb z;=XPpL$t;M9c&FxbV{se6&f%FC?UYZ?fW#eZ(zG7zX3a7%#|7n@dgkcrXry|(CM5-Kg=h%eh$c+|kl|bf~ zhnb-l5cHDL@6I5#dNXzj?x;=AJ@veUs$KU6$Iex@1Ox5Q!ZF%e4;f895AzOsMNeU8 z)*$uV$9W0*sLi++B~7Sf9O)qY^81q1df-9q;u6kUU_-z}a6p4S5js*ym4{(2p}h(Dof1(l&fvR>70njO~n-1|T?u8l_9sGB;0qm6c}?cqP1bJW)4XkQ)> zAS6glq=$qQeD_RQB>IlE5pO>Y@qj=R&%Mm~v19wShx=>goR>@HI<21LvZxp3j!Id? z6{!RR>Hnd)!&wh}=&7KQgH}o$jcz~gP-UsEeSfiHb<>BtBSh2_ip)SafLS`W+1JnBP z+@}-zHH%b3#oX`{`qu>2>pS*=4W}WK0BroSq%px({X)jmD?70EJHR9-HvU;OIron# za=d!73GN97C%Rqlh1}VY=vr$gVWBY8q!x{nz7T|*BOE1E8WE4TTkHj4(`|yvdygMTZd3*NfW^s7P13q z^2h%l*4_iG$)#Hxe%%&qz!p%Xt0+wnrFTS1r1#!bdha!qEhtD=X+mfcdT*hJh$xX7 zLhlF>5(ohzNq|7$i@Nvs?sMLA&VSDN{_9%Yv*uoFX2^3r*E4-)j2;u~f7Y7Cy<8~J zb%uYs(EX5Oo985-g7Xf&7; zoRk=V483k<8I@3;b$mQ`+2u!?B9EA+Aq$U22|QrEL}0Oj@gemE2#YX_b{mLSL2oX9u+jRpNqnu)g+!6^iJrtiNL7Fs_lMB)9ki}rhtoj@vU;BV=}FQ=Lys+ zCG>&D)ROfz#7qK%#+_rR(}g=i?~U%HRlG1r*Q;RAFn(07!DoD-Sm6JSy!GDbc3S+4 zw;6h)3>p@X)HV6mB}4X1e`+p2iY&U5*7SGte}ja0Egryjs%1~UowWR`d--F&s~3v@ zEZ5+To&bY}>ZAW($uzxq1`Yj3{2F|!7mE4bGu=rmd|~i+@_+ZU{(L_F{6+sJ&;PKX ze<8aLyq=Anki4Fq>oIZ zxqZV!5%U{ag0Ho%J^o2EJl6kBUGs*^h1){Ui|)K8fCl^gx|5ZZ$6qE%zCXCmO$k?9 zdwD&?YQ@fR6F8=X6pDLBc=YU53^W%}4w z={Mqux)Mv@rt^Z>tu0pT)|jJOT++eN$vMcUU?KbkAs@$q%&4Jp#P><&`*kyUwy(zW zs}qLrdC`a4tpu&Xw;xdSM)VFpSp$UbZlR=fE?E%AvB^iT$-H|u>R}I#HI-L;*4kYeaq3_|&KF#*gL(rDwl4uoar@Mz1*wcwQ6#1!hLSNgpURO#78^c7 z#MX@2xRjc&V6N}T6v*sF^r0aj>@|1ZH)GqRl-BhUj5^xp;V9c{!nw50iyVqk$xekR z^avjGsx@|!a^^Q3;HV?3o779+7#7+$uS7(k1fGzF}A8=c| z*Su>4dDOfGqOT}1<(RQac7M#(wSdHZ#Vlemi(8n$K>K`T>GrD=MwZQrd~#9$i2aX#k(5&r?1jBz0a;<+f%YqV$i&ON`>L!Uw~nG@AM+? z4Jo0?_C?;6P&GDz{xXI;5e#B#k~GwfCjLHk34RgGxQ)kw-~}*qbdc=FJ(XMt;#rq) zsCwX5Ms9}#+H*#lSC-cSU9_2#mYdq(XAr0(GvMhogA=40i#FM9vl3v|Az7Q*sn&iC zZaRTO{WazudFj@T4Q?iZLwz;;bi;i$(lg?BI!f%P(l)b=rqpM|`F})mOt2Z&h7DNP znE=RUyG5Wi$6mf%b}GQHTYMM|r=DtNRUQ*j6cdp)t=N9g=N}wQ6r><3om`rhpJ|%< z-L;041!qhua?(4Rfj0^wi2EUgYQFN=c8BS-%b?V!hP0V1S884>)_&g?_dKa0sULVA zi1WhMSR)u$iHjmxVoqz{8*Da>)bD;9%dujO{CKk*(BUwWb2vV4?{($@jxwC}?njp)OoxDeb~=7e(?JoG#4>@4BJ?jqq%`Ld1yEx>&y|a|$gu z0Yv{+QBgU+IC|aBpN~T=zf^c+8QH$Zjd7NVNiIfVf@LH_>ks6}jz*rx*TO+v$|pML zu|4qc+9eF^yL2zMFf+Thlnuk|&%K}mOKf-8^_=OP!;EhJb;! zg@%w8_eCL45LHzx@#Hpac~d_3W!%GlLqg==ng8b55TYZ2=v$MXk>dyPCONDB42>OI z`ZrCo76ckC9Rk^KZyQ1kBy?GcZ`Ghh?s;P0?>OvI!?dB)U%c%vd;i+6#Q(`+HY`X$sA`4IHk zMK?HS{uSvTH_wu}Yv|;#QT0!c{=X+nE%*D^ynd1zB|3fM{8=&%FLZx~cMMDIH`26n z-V%x6jf}ZvBGH;U$!7d^k%J5Mif4SU;yrb%nAXd_{5tj~e+2~@affVFi zIcm?Os7~Oeakv?Tsghh*L0_5iY{H<*B3@S$UrrCoc!tdW`rBdW@3Hp^6V@5p)9!&! z3I^6`2+AL?%x_$%`PftG5k!0Kb6{^;HoyL`VjjOb@(CA3}k=?ba zQ9Gqj!Nm1KPm8PR_*$Bij1}7@M@DeKe#`GC*H)Gu9a+ALyoC3U z8n6v*-zFlf6taVg7o2ZV*l;@E&31v#x-zd6etfLd^HF{*`2+h_y=V~<-P7&g{|49U zTK=f)X_ZO*8*sGFKCk>w!Q2Y>VS?_z4?PnKRya304!gXIMnyMSOBm8!Uf7iAhrV1n z;pnX@f0YWGH!_;JI}=^63TjjdoS*mU->SqAY*ZR4MVuhQlAU0gZ<@vs14{y>MP@n8*h6C&SOqVp9xQvyx(Mc;K zPmY4u=lFGN)#O`eqCvmF@m)1?pgVZBf+W3fe17l#TSE4bf3_X{yQhwzH3^=xQ@0J%Gcjkqb zJud`lwpxB%VA#s|A5jxEW;stnZsn@*0#b(<_sXq5?^}p92Hrsl4m7%4%tc*C6z^g{ zTak14Nci_9u;Ji|&Vv)#&qv#7`x`WC8OJXXJ43zmGu_5YZr%YS>{iN(7Z;=25*EJ+ zXx#E)(k_A7sG7f(${jw>I>gPpg5Nyx7hknRs`$a74}y7)hv&aFh9wMg@lMq=Tdf|r z&7YY2$4h@(q*bI}jOt17Zhg^nhyC8N_k~zZDXWjm40M@4sAAfD)Lig{8t`~19Rx3A zxR&W^>V3^}vUcU`56`ti#v#?c-jx|MxyECbt~f}g94tN={t|UEHj%d!vU#mNedVqq ztR=Dbc-}LFhVp!IQ)5Iv52U&`8cz6!{Nu=ySj^MVd90!m-WXge$gBrwYLT8?Tr&fL z>~J2*kRV*VK_r*31|ml)q5Fqb2av;6kd#JEM<93_R)g|09aYc3H#}WYy81Uguu0?`oR5dVN-K z7H;LiJ{-^-rS(>5F?XyM(hcImrcJzAj%0 z>1^jkF=VI9Gn~LIJ_DcL#3)3)cYf4`$<|zU;rnHo)Rjti+xjDc@T4xCrGiF`d-kKH z;%($!9QuJfPs~u2b#BM}cWPzQ9<@>#U}|ZjtQfB|6TG@*(J~PoGRD8AUHVQk_t~O< z{|Q`ClXNu)l;qdw<0&yb)Y~>ACCP?%M9sVBfUG-iwT<{*kylP|xe#E$9ANl1V^qX~ zv#FUd(qGV4oS6qkyIh4ntXx+OjhpP}3r{PF=tutJrP$*T0X=>TCflo@+f=1m&ZDm_ z&)>=cnRggiB=hu|Y7SlD&F0n-1LV94Xsq{?m>lYDpD~l1WB1wq>Os6)F(5hoZt#!9 zLIjJvZP}2B#Nh9fwgc>OjNf_*S9yi{DgxzCGQE7|74eZ_@{yHac^$o{vgL7C<=;4` za0a=rf9gi!;a&3i%!^5m-&nbxZHx$e()JR^DC(RQT5(x_c{ zS~T_4Hu2V~5IT8{$P4$}SaiL>Eo0Zjo;Md&NAFrTzxQwf&OQ$;%5`=M<;6YfK&s5< zE&{eo=|^HQ+@wZcoGOl>Kg-+Nx{4BuBNbCHj7^Fh5A!eIo9w4QgUYe)n@L|e_9n=# zAK=)#18qFmYOh6tw#025GBezwg3j2r3Og+3hX`yKBB0 zW^#u|l@b>Yo?%;pkkiEH*m#4x=;|1w)(1p zT|a|4X7%OMkf&xg*Z*Tx;^O6jOFiE|)^*+&q+a#(-%`E(j^u&grF1fV+7rhda_*u0 zSxN__tb5l*{*`KwR(007l5LpyABmis4t^7MzjVK2sq(73=lHu?cm}rmDrEaWt|!>x%LWCtQt7 z+<3HJ=B#fqg?{?v4;cYVyT{d=j6&ZkU-o7OvDz+rgw0f&+`Wt4R@XUa$tr)Cls6!e zoJRv_F|*4PUo%6gD_DNRFpmRCM{}nko~oKcsYH4Kk;>b z>W4iocBamry!@csUVcnMB&ON10(n}u1c82BoG);;UGm)t{bISovl>yVH1x?%04Daz z$ehMY;0>TrcuK{#K2g4+>%U8~ep-qJUgpq*Bk}&feUUE71fCoN@*Bb1Z zg3&1i%MOXdB9iRu6>6Z*OP*YU$QuANNlTGIgjbvLw}2^M7P%Yt zzMOpM00SlnW!ap@V_?@%Bkh!mb$xO9ijx1743ihMr5~8;`A)3+OFaQ^v)g!vty6Dx zo7Y4jcbnpE3MQH)1Xv6;deh!MD7M$)|F1nIZq#)}_5VH5YSb5&5`2$#s~ z=v^wTT2wn(4<0G$wf*|pcrsKa3BH81YH-v~f>|6^Es}+NoB7JI;v1n!LQXU&kF4fZ zi&~i1id}bd93@(mk!Hjxsv76fWk-&(lbLyt`$U%?C@^O@lNV2_`}k`5cgpOQz?Fs5 z!GXGz)GL>u5t)#~ss&RvQ_e(R)C!gnFLgB~Uzc}fo9W$?L(3$?@Z_R_H*$uDF&o^4 zRpR98`blX*@ajF(_*Wh$PTtOdVTU+B^Jj?`PKog;7?ZZ9o9*_gJ~Ah^tfiD)8;?GVH1gbg9n_qCuhd3}8>`r{Caj?4TOXE}As zb9Z?cy@!_?iS^Bk@JX%(>Vf@III;BaEpAKCaCfWaKhG`^ENDC$KI3fcfPfI!ohl(j zM9&+}r&vpm@ak&eI^vXj_zsWd(z=zRJv~+(=HIhdIJNb8JK1b=v0)Zkx&Rc+Wr;4I&h8=SRL%cmy1^8P|zC8y`?84Dy8T=mRcXQFGz-4im%e5{VV@`8;L>WH z9^L;6>ZIdsTrTh_F#t8W#gW&^fThUrrjTL#zlIT?>l6u(mix1Y$LW-cVzhp?!Zd8b zwPTVPK^aiVNYFZvK$+!@pLD8(h*{|lOq#}q*mC#c0C#sy*)At#&n z*|vYjp8b&~i@0s>XHzHqgsDWkHzoaLFqiHeAU52896m-gy|LmXBe&b+l($GQ%x8ly z?Aru+K*c95?V#esC6L((h^@W{L72@9#@PaKwnsy+pb?4)FD*9wY<>f&Z}K<;f|zLy zMEByuQS3Dm9f^^L&p!9UxfacMTcoq+IEHXU1m+W#cvR|i9GZg{O$l8S&O6Wy2koEF zoFqXjZ0a>#Yo!s@$+M`t8!15)?V8F3!*0OYF$p6d?+zd=XgdfZp1;s)ebm0&xn)%= zyXTe6XHz={Z4(duyw|=_3vF$lz{CW#jU%9es&#>3crWl^?Lue?iItYPN&Q@gx5FA1 zYBx+XC;h}c55OE~CiuZ=ct~IGZi20kKJMZ~Ky&AC#?%BwU$*yasAbs1HQP!Lq<-o4 z{Hz=WGjfVnZrDZtxkF02cz>sngW?LCDxK@>F!NLym4#{t(^J}tIn8l z?W)cgPp**E!E%PQ1sZ9y4KH%vl^1Eii`(TZ*7vz7n7B=uHeoAgi4)pW6;N*19&YSh zV9ynK2ok<4`7J&PE(s&GPr1~y6}H(dXU%rZM{ZuN!C#yjk9^6ikf1sl+8%K&!F3M4 zWy2&}+eH!0Td(mrDZn|+MKnY5Dq8mB+~ggr0aZj5k7}41_JNzcNp0tTW9&c`q^Yac z$*uNn)t-hE6gJ7V8q=I_=@+0($^65n1{YL98E#t20*$-Qmm;RgeM#unFBS<^kTRPj zY;MD`mTUgn93~$vK^l)Sne&z#kQc38drOO&JF>Xy(aPCeN77K-(}3-0z^1?Xy}*YA z&b5Ol9oafNK5!4XEiSl^;p?{GPV$Wn&2U~E{sJ&j@jWcKr_$ms>6mfSqR!`V7Gt@j zz!DkZhiYwFyjq`cGaY<3DBMB8W_OJ3Zg7ui%0%*$mrf?Zj;hdDl>T~OyCGK%amNv| zgr132(80Dux}UC(Qe@?Kyw1N>#-WSoE%JXdawV5dFmaeJBe=K*gTKKtbU81nhBiZu zG1>u1RMJhOGf|T~2SuLh-bHG5UqZ%pXJfj)es45sb|GY)-zSUs$Y z1XNyP>2UHVO+zuildZ-jNqRDaIK&w9yh2X0_u*ri_~ep4{~v9=kmF#PZXDzK?H1h< z!@@?;67y=d;zO=P-|9KFlon52*;XhwPDQrkL}$PnW8GAFNbNR}C1)4xwoCR#fD0|K z$-Oa7{d@1KRUO^l$VRJ%M%Gtgl5Iu=SgJ+JRNr=gFVn3Q91~FP_Cx+*(k5rNdN6@> z6>3x)xO`UFWiD;bjo+gqVnC}&x%l>YwraKccy^HMkSt^^_n!__TY^Pn*$)S* zt#DG1>HtbfRLh33$xnv4h_xIvU?$d1>N@+s!wHP-la%~X1bB657c4FW1O?^Thlu1V zqenvs+T>sJGMv>el!t^zSekWZ!c+2joH|fnwmfDs1-aNnAD+X5>}ui)k0OSf4W>vG*WWilHft6qsZp! z{v4B7|E>M?k3sIyvPNRVY^?`pB8b$Gyun@jJlG1zga9%fg=i9%7R}uW{nQ#AhU@%e=khzgi)D^66`;GWnlU#Vn zMX{~N2V$YB)csX}zR5k8L;c&vatQa2Z#;_WE|MTg+0 zH!4``^CX|i*D@VhzL%SK@+o8>P2Ug;|8zFRjs&%;Gk#PzDnV=o#Tu|P9 zRE5Oxu%eC~#U|~l^=-$bQo?!qCBrl5-YYLC3R;X2LI#9YYQ;G`LsZh-WJbwrPTBx~ z8))TVkrw$XQBlV6zJ)XoS3pt-_2fT~6ahQx!0_Ap;t)6TdF_PI?CsJS!g*>B%tA}P z>1_kVwr1NExhRxhXgIHsf6x2Sfb5dynZ-rhTorfDLImk2WIjqKq%6iRKNV`1<_eW$ z^?;^uCJR*m?1daZ(p4319xe_Uzf$cUKI?n)*GMn`(aa;1pA-t0XJ3WO3xGOBAMnWJ zR`$m=V|<4zHYgw>;g7s7L~C6W={PeQ+_8ZQIMRvJM|~7e@&kidO;sGKVHR#^kOIrq zY`XYKmzf-sB+I521q3jFx{YEAzIiqG0V&bBTC`eb%oQu4-)(MeY5OXI^C$`p>qYyq z_fe8>V;|pJ!LQ3L4x?~#i+S(#pb2nZ{Jz9bBF>{?jA3px(9=s-b|iU1B&B6{e>u*& zg8P?y#P3uhxT8@n2R;|lnG0{x=|o6u2LV$yoL5eFt2jlT%a63FX}?+D(uU&&qZsq! zhjrMU4_pSK3&#>|GOt7Ld0MgL&QEKWm*q~)g-~`o7l*N_!O$NODk%12aX%Pb(o5H@ zDS9vV_+&TslDBgXtZ{TJ2hqV@x#&4I+gcseL13O2`Ue5!e`NtViUqM&ICOcT4+Fat zt#sKJf4m(NE@4YGrgW=&q>`QrCp@qtZzgtWjySxa4Y1helaZM%acNjxMW#0_(}QYW zc{;ZXv_Ic&VM(pcAkJ>t(G;eF=;H*2#wxDl=YK(`g1CHuo{;&@ccIP>1P6tsnqr8B zXNYN?k$UgzSXZ~P$|Q2ISowzj3^sEN!@6Ba#1k0zpmDONU$SyPB*BC7S7aD*os zt$rjIm+!TPuHD&PJnEEGY}xgbRg8R-KX-6YVPY>DYBQ)UoCIPFPj2Bo!^|STYej58 z`n^KfYPoY(t9QO!WQ7h}8*f#3o4)K2urgk)xM*tJTK-Y{s%ORZ2bJ?i%O&e-g94I2 zITp_fZ^M_Mt#2h4C5;m^jCCq*^RPhn#K~Ju2Nwp2+h;4o(Vi&VLDBreHsn~+TAZ7wU>ehy@tiu^=P3pwNWe0u$gCei7RQX5st6<0U)Dpi@cAe}V)v-3d9#xim z6=Gcs4s5o?Q}Z@}vXAO4Iu+gq>8YWK1=Iq)4L*M{U(LISHfk;T_~0toZUSQ_E@C1L zc2%j8;JRAva%@g$Le{u8RkGqLtn^l+Dt<=1AAWW=UHwCV#z?B5aBph;fQEP!9eS)J ze^QVaIr1e#vSBsJJ%rnG@r%T#3s>pNd>_6%Ex@j~{KrLViW@zrsC)dfZE81&u60g& z7n{%bcMo?zzON8`XIddRy%0mauc{kJIJzue;~FsOZado8%aLAy@8c4;istIiJ_PAGj6hMg}c z4&V$>xuUDMJ(xj5+ierq!x&4WwDRTC8>L%5{wtV*n?71A?+PCH_^yl>@cTHf3@G`n zSjJt7p8S*^cQ^V%TqWbwIZK|=IQKg1XZIhlZ;pFE>^ar#Nt^Gw?|;93xsf*Z+_vX_ zSPwc{o|Vo^>el|l9(`KCSuR(pn&nSlduVOl_n(a{dRz3kbOYFQyre|;&3a5(hc7Bn zXIFYcx=+zAx$f)il*jC{b#bwedq3@Y*?p6iS<;FjtY*0(W+1wUHDcOZ+dH@i!5VRm zeau_A2N7+@=IPqXFV(edN(-aaac(VMMt)6;fwOX6y5}BTxZL-(Fs6;xFItoJnwTKn zJr9h#8JpG2$kP4mS{{57muX;Le3FUhg2Xy!cS7%j-;YW?csCPlg!=YG6@^dYJ&O?6 z@yKDV@;tIeZAXbGjj?T?w{h>R#BbeLkZSaCeC^R$i|@KIwf~0=`+0_?HZkXmQD0wv zI*QQ*b!~fXz2krnE^PMJ-^~{Ggu+}r$L4)#k~;i%8IPa5U|Cj@13=oNr7@oQ1A$9j2%V`T%0L0@DeNXZ9t?8nLZ9=lkN zHP4Rp!&r9+su|z~nwMx>AmMS;&&e7ter~~i&aDL&aR?8RDkAMIaMUa$R&CxX(XSEj8*oMCXkf3 z6$sQ7Wnq}q*g*DKpvvwyl3nxORK(^nZ;tndP^oq29L|=!m02SlzB?wY5RO}SLrAS9 zb|B{QgUSfG<-yuK3b8RVB+#?J#?UjbAy9*ulcMdZSh|-pC@q{XdpvJFoa?`pIV_Kz z-_8e4v<2mYq-!aiJ=9z}g(;;l2)ddwY!Zpa!#dVLCuf0Wo7d8z)%~8vGjnB|9!8`E z0ibDmcxHdZBL`k1!u6~2YO1!?g)MqW$*H@cbD^qUrG+i}$hmS1&WIpU5z^_(3C^xH z8A2KF22aSTi6iv;ss%!V(mOje7On4i#d_Nr@4gEaSA3rhuUs>)2(g^#takM@?sjwC zj)a+IctcOaF+{^AL_qyV-B`N`&8E{k`TzYXgk$&Gw>^)eH7n&jtDI z)o%`5wpZ^%?S8|DeBYO&=Aw0xnz86<2gicJ%OOREoa<=-&es6W`z6=(onqJ(bV+%< zKtw7O-M1*6b(=T!oBcLB>(E0mi?i72B*y~eWwGq%YPC(9S7>h$!7VaZ(QMA>Nx0D+Tv5l*^6>X^zq ziL0b{E$~iz{Npj+=$09*$U3l`0QKKw=?(@)EaYXXFQv>Kf=Tl%orl{++g=l+doMPw z+C23t4<@l0;6EGS9egg<6pu(b^j;99P69Th@tyF9dp=IQ3+8aUfVW1vLHvUw#NOwf z)2%MeH?oep?^%In6kFXqER8N0cw z$`vi&w9u7btNMp3W|fR(%Uo%UT}_G|sbK7AyjoDfZj>Hf;j34fQ_9dN@Su{Rk*rX; z{X-)+P_>B$3y%^LQ2B(TDw&%A6 zklNeL0j~25%l9C+S201gvMmcp7(fVmHxKT;b({l?<(5nJ^ZGjPMD)rB%gyR{@$Scg zJ4J%;v_A+=w@F!(S~(qFcSvzvpnWMEm-TC@ zKNR9_<%?wh*~;bOq011ZkMmSZ0Wks|4*=BrQlm|5Kx3^^?Qb&IZuAMi`IebfIj>t@ z1sP|yPT(;dvA>wDrIgD5SmdmF$&EgyF3_MC^X}Z|FAvU2mxy(7dc5Q`9I?B&ZJo$z zxW65|2%?76IK7UiYf|&0*ZiGQvCQb574|b(Q8x^Kx4&qsvo_EdCe5OB{Kt(J?k_lP zQ?&&BZ={k+x9x{z;R=~vyt}xZdK}XDN8e{udW&Ag36E!2$cw%g>(l+z%KLgdd+%6k zNT`S|95o}{`b+>@CCJzh#~mIjdB1;|tT7td9?v zxxX+GTC?mjc1Y|s(s^z?G#$49k7iv&HJVuN%(kxCsG~X9cLB*E8?@?ZHBOlIN0(I3 z-pYN6b;nMBQ5#6hMCy?6M%>yJ7f0Y<5|)(Iac*w1Z`VHDW|XI|3BOwgW}}_$^tHwH zqh6FP-E|D9Q0%&8*6|y&t$spn$!F8i1P}If8(BKPpNgb_j2QwhSf<=SadTO=Rz~9-#pjn z>y+M>Ft_asG@TU+HCo-PJUR~jff45SOUcR;OWV%z70qSO5-OT((@B-15yrDi(<#5P z3<$0|-ypwt#hF%9Dj>FynAz{KNq4^SSthHbxWWO(p0IwLDTGqdY}=tw;d*H7p)?Ug zjZBavlavyMoU7oyZ6{e}WxfdlEoHukzuep2_tP4C@?mK!hV=rj8QbfNUo*DT7f-I} z)t`{6UiP@{x_ z1#n)fRg)p(-EF!Zu-AF-KR3N-cPJ@ZZ4{3QDw{5h7b=^slVCnj)O5xvJu>Doa#+zG zo0XOJtT$a>YlYZ2Kiy zDnm=l7q1dGguKYsnBe`_SMdA*(QnQg$wf?7YkW2-Cz{KAqsh1YnYeRuR=)}II&mOV z=Z|hk26_8sfEvw6Od0Z@C(LVxeFHKo0j)B_;-alGT^69#4XLHeKe)!(9nN1?W?$lY zQ#eZ338zS(qQ;%HTUgO4D!6@FlGF-~GRT2ukomMJ$mpEBRf1rtlXUnwD##D4o9l2b z6IgO0gi8@$2}(L#-w0J!Vz-%TeZsC)=B?MGW_z@X39~`xTE-2RQ<~ zBQkaybMjY@1kp~?k*}#b>@_M@I^y=b{-EBufXOR)+-+#SE$Meay0tuYE75X1apPi5 z)+h1Q*0m=!Sw^s!6IM92cc#wncN@+=^K-=ED!XWT1Z|`Nh4r|IEPkX;blaznMX6$I zmtj13t2=nBoA@KEl{Uc2LE9%k`XHPbk8OBTN7taW?OKiS2`+%*Ja1cz?T~LFTkJmD zc%P1(+L$8R&Pn+l8i|#!GVP&Q=FfWCY7n#7TR8eW;J$P9^MQgb90MNk$y%)LN)tue z_pOQ>&a5^g;Asl z(M{1(9bh?8OG%u2_qz8CDq8{!<0-aI?CZFm8uTWu`R#7=j2J(p>O$|t*ytG-myf+o zgac}Q`>1vlYoNy@1gE5d!$MQRT2lQl^u4dZ6y48QeM0ZaZord#6IQ@$6Pf#jJI8`M zPJ{R~(Z^3h`jNc*J5RZ%ZY=`eZF8=593E^%IHi4UJaluK_+3ckqL8o2g(K}{uZxi= ztWZMY!-N%4kN73)kPxv?imJ!!=-deI(OZ{wo_b%5HoTrA@|(~vSxHjutp9Sp$=Plo zXN7do^#0|sO-a0Em25j~(xS4k@S0_8F+Zh)FZfb>xb7t@meOnG-swiuaru!dP3S8) zV|EIU4D=5W@7J{p)%XtXx#NlIl@pc8X7`#%-v-3&C5dpr#`Ljsne=hk?lltdB_$b? zvSfMa)*AGY+SUmb5|WysFjq z{R9B#Uk{I9iS+C|R`|Lv-+-9zQ4PJr&KB8BDb>Fd%)6Ah^JVww3c7Q@CE3=O{qE|j zLP(pf%~onA3Xyr-T~Fxmb6foeIl{|%$q8TD>;DLq`!1J4*nO;6Aq0S|hK+7d`y~_4 z!pTtzSfrCYxeAa^#58hJCb*hp;-gTu#U;HV#l=KKU{M zm7bU+=T9!q%$}Z%P`X2?h}yTNf#xiIKCo`K8Kl(uo>UTz8q-ifta@W+BT%|6GZom@ zn&}2?Ys%F8J2Ym>0;NR*7b}T`Nw>g`<=`nUY{M+Da49&)t8vo8EuHv~S5k25QXl!` zOXT|rS;z`jJNB$lbE0B?$78p94YACd%SyH8^_l)drxw_E+~|UzpFaL@s%1twG*#Eo z-}eKAB;t&<+MIa8Tq{3#irM?aQ8xG9N;?UIVE2}x$>}>)>h~dw-s!Bq z7?WQ1*J=HO@!r=zE=fI6pczE}AyEn%Vbr&+@ z);-7ZnIrkx7yWsU+MsDH2PrfbN;iXj4efHT6`rGp_ZnIbakvOz$I{|fOUt1pYA*~j zX%QBc*h%9A-!50=Ye(Ssrj~@Q4>x^K-gT@x0mK0cePy!-ObRd zbI{C)7gOo!&giyu!$~hr;vaV|7KaC9cDW0K<}?$aP1Bn5`Owh9LN40|c*YZ65AQb; zkKLjxHxQZ8=2Y=^8L@G1u;hnuh1`aR+vZKHG1rSYa0Wk-X>P9=rsUyLAV0 zEW>T^5)_m4xSp4JdN-;b@0AqxskOn+!-_??Z@Wx9@cqKzz>-tQ{Sv04^(*RRhYB_0 z35lxN7~{D*S2h!mo(c~$2yJEa(|<=!hZs?h%=iVLPM}FAcCuAYyyM3S^(F|qiN&V` z`o)yBuo&0IKH?Oc3CmMMwyvc@g^w9g3s`x}K%KK_BX1oCv{7)QSBQ7sS+sdzp2MOx z-t$N?v0+z8YANbZNQ{Hs@w+Ef!fByCQ}#9N(s0X9_!g!)-0~+3;3a9K(2qR)=f{Dl zjYZ4)ZXk$UZE`S?pL7Hv@G5&oFa;1?2tvRMfMc9sU;<3vCu2WwMm zlHNX*gDvh{^pZ)bLF9An4M3!~q$q?j)(eo9$*>Q1Pg;-rN~isFvETs${0ssN+`i2)Ge-@$$Wt+E4G^^loRd)g8+K5xf#DVV6Gphk)#Ye{A_loV9dq ztY%-D+@dxg@zc#sxpQ-4bWBs9bTVY;6l#)!+MsuFB}2Rx$85N*wjj%{*u?=;A6(}W zPQLK7W9dOJOa;rDUl>BR>nfIzkfj|Gezcn~a&$`!c78~hJor~k?eaU@7i-M#4^+)6 zKU3#(ChuA%?`#f;ZM02chKj=d!ps*W9=NO9&;9+Uh~Zk4bhPepH8Ug$hJ{ zBQDiHL5yt(l(c5am3+=($lnq@0wyq>3?-2VS*T)j-|74i%Ok&-k(`@iPUj~~x_^Xb z)@+8uwDHI%_f>kBPBIJF7nl-NbkD5qcJoo!hn!^3)q=6@vnNls9-l!zxuujePW{Ij z8GAvW%v?>(g#_v+a6Wv{HvMBEF$Ieref;5?2?e@6>>PH3)jjOj_8p{lQi|E|dw|yLg=XTVH$i*wZ(U^FG&};$r4}NCS1RHd)G(w4_B1P!0Nc&!c`{Q*vM|m z@{^8|(}}71g}P%-iHrHg%9uLm3jG`MYQV>P#?Y`#n=Vb^C2`UK-hn53A3r}9c5+0>+Uav~J z;APn8RVw66F)j_*2yJWEslXPs=atr=%ccu>7NXGJix%3cOt;%2N+lj z8%~W;8DYhm*ieF6m^=iK0G~2Sb(Jp9_z6?xt3?(%6;v3m{7cI#$=G#mE2P4KG~_7f zmpQNWSAu-Q0dX!Ba4yh5`897tdBT%$4d{|kun^`dN>-YfDO zp%xakcbp#y>3i_=ZVKw-wn&`5N-(+mze8(kZE9^#BEox!o8*9RiGG7p@SmXN zb|hrEyW+KWQi^(H1twY~Vg+i7TLYsw+|w&z`M_6^%Ew78Vwl#8ol@+Ktt6X`Q*iqt zKX-hm=WDMOAL;-B>APweNB9>XlFTqO2Rb2nR~3Fxh?*x*J}S?e-6B=gRwgFKfAI$P zRvJl*_k^(M40s#Fq>ALEu`oua^jiI#R9(q%E;hs*@qytYN^T+vy9-g-7w@9 za>8P5?W=q;7D{c%!%o$UO-Cy{b3p{0Z)f(>E@?Yiw&w(*WUBLd|f2e^wPp$v`t;z&^dV6>*a@YEx>$A-k$9CUM@Dc z8ao9Msjebcq1(0(^NZY)oIt!ERNkEt?zTS(7-RT6a7(N6)<(Q(oBY*rKMUQx{Hb;` zm5**alBB0RgHbc{d8hqm;8R(!n?ftv?`U?PK0i5n%~}6?ktor5dix`=?)kl4gyqX}m(4Z6sB6Ekqth~eNfaGBS{l)7yU*6uk<=IgLm{aDQ zAiZ^hK(iFNhX@#E$mv#jy~QFY`Z2nvA=guq-WZ;q%9X0j{bIKP;Vt=c9d~zB1Cd{m zE1>IA>T}}X3e=8&h7)|(<2GZ9lgmK&JbD6a+RO}m~xbVSG@*~g5!M5D2@K??Ki_JZB(-%6PNNzrdR_(d%>*q}krGF;(>seY5eMZ5G zzrj`B9k-U1C@#ZHUIOy}fxda=-opyHO6sB+)8%ZrilCiN!H`G!J#wZz=cZC6qt_3+ zmq+w$=94e4*`XgiHqJ=UL^AC>qjQ%nAMy}o}VDpdV9AV6hu^C|_ zKeP=#$Mf+vJK;_Nj<&WR6jT0ij;&;%F^1*$3$@+u?|LYH%K^cs7hi0^-h?_IHm-mJqP%%y1XPh!rro-wI=&hhpJi@}ErM&joLSWiMMF~;{CaTYPF_`SIw+$${Y_Zlb-6)ZzxNN{SmWsMl7m#=XTR`Ql}FQhI+4F z%^>&RpT%)1HvV#kolk9j>y+8No8XrCwLRAVL)=?H)v=^&ph>Xc!5uR-D;T*H{cqY6T4 z+EttodOMsFUm@utwt&XyLbbqDw3m1>qZf2IB)*P1#e9S{8jNe)6w|P!C~rhjUJj

OpDP3|0?=Hpn`oQXwta441dM0dMX2+hksO6Y7us8oFZU@k_kwCJ@Je|93l? zNOOkYhiuJc8DB%WZ<@s0KZ0`C%&MTcboBpL4ikV+3llJuGx!!Aa;%FK9aeuG3>_Xx z=Yxb#f)2fecftmW6H0z3VbI* zL4o&IxmmJn8$}*bQK_EOe9&8?-`7p1;!gdo;QAXDvg0xe>Cpe&~`V+BUnIW%qj63uzC zEv0n)KtR~?D&ca#2xgit^pLvhvxYwXWBYjoCEn(<3EjXcQUkm_M?jy)?x)g1gD+d( z2$pZK#@Ghk`x@O-mq?sOMXj_^rP0exY6BD`QTUS+Ek*XO6(uV-lJn#7eV39pZTZ6= zhvx-S8JST&>D%v82_)N+QqxJNvrr>ag;8|Z^u{Ht_9`Y9^}=^cZJ8nHY7i_Yngwa* zFK!CUKnf|QX}cA zjEEOQewrWb>Lt&nS4ZtqvZO0-&r|BcBri5q~CY zw>513k*W~d`2A}u-&i!p;95C*wIZUjMUU!Ob~{SPT*ZgdLLnTsNcPEM9CFL)h}rjH z5|ERFNPK*?4RDv4UZRV>AGfPAg;mPmTk@goBxQ;%D<>@}?&M{fo$JX+V&Ex+JRI6; zvob~&_zGPlSE!uGvQmiqjCK&k$Kq(F%$%|$g4O79eD_MLg#OfpI}iQP4b_D)(PN{;X~{~`3469F>$0iT1r|>g zNvMV?C%{_g9krUh$L-KC`?$1%MUinRg?Sfq63yTJf9q zN^YaUW2$Ft6x_zJccI_VyUr|We5M)XebVU+BaK|XB;o4i2Nq_aCmrDbYN1{^X}Oz- zoH)P1ta^NzS2#zbvLT4R2;478;1O!_$p=MfFtr(3kc|FDZ3xo?5W5}5t zE@WgNANlv7y^caM9{S(USTrkM_=kkn@}Rgv{#g{A$^MVxA?u?ZyN*V5D+u`$qObW1 zc3Nr-yFs?Vi|b-g2BK7A&bF)FzRNa%gu3u6%D+rD9P$^X02M{aw&qxDO|fulBH@JS9PxpP!`b}mx*`ipa`lu!)ck7yA`4w| z^+X_q%E`|FJT~A0XuP!zxZ$+oS(qrcA;Z+dOinUL9__Q@3Ivs%g#~z7_TjiPNjPDF z+UuqFw^Nu)-)Gua>Hd2I*g&-XgZWFV9*atUmrza$(4O?Re0`Ld0=d5h zeEngtPVRQ&k++}kZZ*lx!W6TkNOe-S(^?m@O?6B@54zO&1m*^*-SKJuHHR+R_W-U+ zv~TgBFAdb()d4qLpD%^mVIXaA5jT8Vkd|du>2`fww36PC`hBqR#tPmbcFF{8k%4Mh zXO8uT|IyDeXk3ZQ+%7Z^nxYGB;Xmf>E;A3||KDx?3st#LdFcM9EdtZVTk3*Bbs$gQ zPGwEjV}ryg^F}K?%O!vPvfcVt&hN*wY9)xV+LT5Im}X-pG@8SP7d7^{KS;9;Z-NQs zg@F9MD}xCfRW5&REL%28Z2LMRW5-~f&$s5hQv{kEuhNXk!PcC2oBbb$5;r^#D zDO4Y;x2EjH$cR?mBua#lH}G~!x}!KHkC5~?rNuG&`NYu2VbDb#-o3_l!a;3UZ|VD} z+G|3t&lpFSJcur77@AKnB#)6(6gr^*q>+XU0#x8Abn;p{_Q{d)`prWtVJ3aV?fG|2 zQt5rW*FWGlihv)oR30{zzyX~G1opKTiDQBO?GJQ5gXnx1i#yekvawlD0$Nj6>s4Wu zK}$=yX$XeK0t*?x>?q?l;^BC*yr(UV{GQ8O&HGM#i-tI0ncS* z9J_#F_(>=!P1cA6tnqTrAe>v-2y`wXeBH)`bjU~C5Kii#lT4E}54yl%Ba#|>(x1QC zMg$G+pc7w{HFqdei|kZ36MoZ)8hgxttI38FEqt%@OrtRsI>CO!j#^{Xf2hfZ4UKxQ zbLW2`hYeGyE<){fs9WHy+fyoW!`5D5=^|MKP*tLE2U?yI0UZUp5a0bYE3vNIwQe!L zdAnEQ!L>J>;$Zvnzk}uJ(EZ}Ao!f;D-PVbar2qKS38b2@e}gYe@DjYB;}yDzlGw2+R5bf6AS!l_GVU) zMer#m{(RnYe#5d*P`3l}v%U&OcbaKbla%93}_0pyxP)zBjG1{iYO64c1qv!rlM0J5qwG)9Owa~h2QOZ zqq9t5-St5QMtt2}1!_o#t<+EP6vMLq&p%pSEVtL%oywIspW3D7!M^IkXTmosVpu5# zsK;$68UC*!S=%5C5nOn?wGDE3hb`;tf_27J?;0Dp&5mF5$r}wnaUC$Md3@DXnZLUf zh@ouMlt0oDj9dcQ6Wz&y4RFa0yBJ%#9 zAH^6Rz6cK%P|RHh?US{}g*}Q6Xevz8{mq z+KVm0m~LivA1P`n>ylK z<7~qWKf2qoz{#2dVSKS}fxCtF>o*-}^5v_u4Ga8_-HsK`#uSLp7wcBI%Ok#jCi`wd z9^VGO$Mo>&dI!SOg<#sXV$qla`?&@qqKk}`YNYqY)#9D>fS8zJocKet15Z!AWtCvtFeD~unLT|0u(tj(DFa;mIcQN#z6va`*w1|41{SMaw~NW5 zF#vY1as!iDqbonu_l)*6&{3KcXg_ZQ2Q0AfVzXckgx#y$z-CVE3ivxYnDX;it3sqk zfhPkmGe!2(IeO{&+beY*e^A?ES|rPW3Do(l)*6DMck9Y^#4$1=A8Clk*A| zf^up*!yE=f-BfTcB`;ZKQq}rik3+KaqwPZ>jKenb!|xApKRedlw3S~!&&{j?w#`nG zBSaK12#aARW2G6R+d_Ix)?z4mdfX)s++UpIr=EkDef?kb4Z7**H_27*V0? ztU@-}1gzl**nMxqr}hS0*6-MVbHi6$yiII#iD<&uol9#GWhxTT)qUG35UZj5?L*Pow~<2(dZr(_YCk&}RHNh0wsD112xO38c(iiX^O zs~`+$t4&F$_>mu@H?$vlx0&qEK+du}2Qfg>sJ(WS&-NQeSrV7kJv1W6BQQytKy*kMR;0%G90L<2W+yKE+PSr2G6iUddG)K%ix z_0UAmEQus2v+GSgdFbkq6GX!{a(iv$^jVAOQm4_S%wR~E0%9<`{)tvr3i*^zNGBr@ znFk*XbR)T5(qAb1?T$UqDQ8faVa$a{FWj&8N^Y`k8C8up3WhRRp;%+^pj}M^z?gx- zn4ULV&S%AEK7|%7q`T-;dYNa@Cc3r3d$GlvnQ}O0ypobE*EU{q>N(1Xz?E7ZnXck! zB^mP4^BX3;`c9stZIR+<02EfEEqS{Ld2NaLFft`P!MImMGK zt`8;=UwB;wZkGs7DHrj5m83XtjNXvZWCSt<3YiegBi-^i)7U*55W$mZ9TF% zh8w<$Dc_jcSa8b461?}&fu@v=d~+yH9tAL>;a3_5C!3ahR^KQ9Yf6N+pehxBeAvfG zFV}o2#}XfWWKe*$oKf~1z^9NGKWW~4Uy&9gzGNWBqnPVKFT;aTm{BaxLpCi9b+vt* zsaaZ*KR&qieTe9~hkCZZUa!o8fIHUmanJXJ#Ml&kWneZmwv1_89JVO1bWM!Ge+jHw z;sNH)Bbajt!Aaq(hLpbN(EOU-ir#`+gP7EuJ8;2J=IXR>WfnO+)CEbC2IgnzC(%7$ zRRAk@!A=SCE#mC%D}36Y$LB7b0`*omdRs404`vv^VPaTVxl11V3chT~BeQb1)kuSV zj|th*-@47^v2iz4U%y4>vT=(((OgK{lJ7nv+q^}#bqi+Y7R1i@5H5}IGA?G|YycS_ zkOydL`>c6Ma8nLJt+m%Uywx~71r_csh;EQX`;pBF+w8?}zhU>`f$_|H4ex}A4v&ax zi~#?kkm2I5A}exl0HmvxIteV-6wh=~IQcp%-~C@h z*__>95>@I>XpUEBhJWyD9PpA@Ocy1SKgHy){4=C}FNqeJA0sk#c!E-TIjZMkjG&+C zhpU!-@S%b(dy)}h_$%GX-bvO?g_xi;)08|k6P#-P^S2as)(Aqa%;O#v^jG{kp{WHp zV~;;h>i6zE8@S}}MfSPPb~(*AU35(s(xnyH-P2@U~n68Mb-9*i%{f3{TXVdN#RE0*; zghw<*>}cLMJ&63^j{cg0$vH-=8ISSPH@g7F|CRl zRwWE>lE(GOl859dpb8gJhRdm9=Vd1f3j!A#11>ZMTz3q(f*bNhA?dEH>~Ie7K=Dn~ zp?j`NM%1(sVI793rI1`oRIL#w6?B;KI%TRa==(ejQBxtg_^jvG16r?Q&2h16~eXxzoncr*V0|Ih`%Cr*S{)G24E z&jc;Fme)_yU}dc8B6fflOe;WnT`>`AN{4;eOT-Cwx5G{4l?hl}XoOg=Fws^{^qK6y zZJ~ji0zEf52Hr0^ZZluZRz9z>NN!ny%&HifMKL&qyhrl?J37yc{Qn|?Pn;A%>q} zxi(c6p$+j6sFpi5aChOIYKxiCTsn0-=Dah*6$lR#O}+9Cus}((`5FyYm0rH}Fcg4^ z^7(O2$LTgy#uPpkK@6A+Ojj|y9*5C#Uhe{?EUV6y^)_Jiwb- znL8F^P!xb7b0G+Z@0{>XEt7MAW7?A`RQ!;woN=TlrllmU1*`LG;a)SPz9ks=mHfng zb{3-4Hy$$0QX+BCnCg?rN_&y{rrg61a&;jB$B)(;H%(C@kpmy1uCxfhs%{(3B4gcN z@1c@CLy>U@)a9Rfe0Ji&Gry_2Mrt{6T*Xgg^jw)2SfytUL_Lo$3TV+UhOEnEp7w5j z2Y!{w?Z*#d@>ZIczywCRQ+^yY`6I)sykyQHMxNfn5B+7cF)fGaKBlxHFrTKlUMj2x z3(gajOqQOawgLRL<)@j8ie>vw!15I54dIyL!?AxmTQg!I{bEcMyR8Fz*UDTf%p>By z#d-qo-eViC@)(BYnf1gKZ-w-wwJdJM=u~0R%syb`7@0oqo@2b-nssK)?B0`QPR>No z8L>9ZIBmxff^mh7n=3P78I9FirNxsHWzeEmmU*kc2h&P+X~uvPB}8ny^$2@LAl!^o z*ikxjF9YtRTgIw3z~!t%h2tHLc-v^))KR6I(x8Um@@LtbPhB=|Thm<%WgXWjshR?^X- zHfTFM_iH%!*^e2T;u(%mDQ#=)0*Fk~)tusMT$I!dLUPVp$;-lcpT+}gx=$`wBpRuC zkl?J0tK58}wqnUHjYImQqyVc9akAU{g`SHgXggx(mtp|VHmijAOq_Fel*5fo>%@~l z-}7dxpy636f5XXq_1A~#d9vaO<9K2x&jm*-0Nz#rUQPoDfX*ew*5TpVGZZe)KJ;Y3 zv{!Ia7Z?=;yO`lUw$vCphTq6-DR+qd99uQ4?bp^JkqB0!3peaPw*l+CGOfWbNtH=d z>oYqJzW9;D1Rf`oz$RA`7{Qf^NGj};nARsgq(iz&400J3;4;d_Wsv)eU^dVnq0RN*$v_yEHGlS)dM^$L z92;bRqL<}JDom4@mLfJIL8^-h`bjTBYj?3!!e9H|Yxjg=%kno0wze~wqnZv5M4V-a zKii)vp+=PKiFCVunwXN`-!OkOM=$4k+sD_p1NCSUSPuVav_YUjpe0wmSe=achEFV>m8p~h6g>r6DtPjF@Z*n0?xFSKxD`Dm z-3mYN*L0J(6mV<16}J_&5iuVb+Em`sH)`0hRk1W`+3=q^+L+oD-OirIZeX0HWwq(X zveGc(AWa_)n6Vctx3{t!+#KCNC_}IIJ9Np6)t*jZdYdZf+}}>*3Jb@n+jtIA@hGG{ zXrHw!cv#&vb+9BdKR<}NulmZLhRIm&cLwICWfkyCE1UE`t~%WFBs&@TL!x{ueWxw! zdZLKJpv?q#1xvwLdTE*`9;dE&pj9GWX1ShmSngs|d}+E; z&112$a?{*a%1ux@h?kF|OL5qGEq(KRSG&0(>aN+kd5_k`Q5fTCy1*mZ^tk|B@duUv z9yfmayRcOgdg-*awB*@m8i|+`DJ$j!JoyW)vQPER6Nf@aQJ)K#k7f>5%Ul}(bak#} z8s+SDA27j}R4e|by83YA^(&2p# z157Tv!~jM@RdC<>s^G%#tKdR)>9B_W)QdLHCTIh8fYHz)noiaOfu7*d3j=Dgc&}(@ zSzttYI0U$-r+H};Wg1Y&Qofrlh9K@w_Y8={yA8#LejF(5%D;g!!0E|@iwV2XhptB4;yx1<^04He@1kpvN z0dDNDZ}k73+{rQEj-|vS8WJ8jm#udDGaNQfCIL^{g@zT2kBA2LL;TrE@?-#e>VwKK zGtD0vif@!U$!}i)^T<@7@jfEEf#P+s--2@Igw1w=&%aI4VX*KnJ7u%*{goID@`NmC zpJhUgJmR0-B*Tany!&xNgESdh(B9vT5UHDbBfdd^u63oau*uhIKTjCx12khq|A&#B zX9_a|2Bno`sOdYDtY|=R?jBRbKuI!r=vwh|IXIwkRWLoDc=}vhw^>9!&{;Dn3-Uty zB3nd0V`*dDYY8@qXM+d+?j*T)IK!_%#TY4lE_TPL&;mNi*%P_9e>qdzPdorzapyaK_!{e_cVf{q2KL^^hl3=w+s!)tbQq z2oYx=#gvcOMm+FcGKWlb=RR&Wfqi+y&>A!B;stSn&F`&_cxk2_I|{#gKm5?bB9IO& zfZ!gZn1(&oZjx<19A;bL-SvH(D;eVl89PLuY1XA(_B;;FekhJ6IlgyOH83HuhXn@H z3XQ{ubaOA<0CkMn+x|RF=|WKxFrP%g3n=9zWF&WU>YT+`FN{tZhqf94l1?EzH|zXK z!Qguo%7)E${JW%5q@au9S*_znSH&<*`M&Q6tP?$65?(xF;HKzs`|u@5)@y51Mr|G_ zyL~Yb*WVoRjYy*6wh`LDQQo44V)I>0fN#{M<5tM^m~^ZlSvMfMm7(T#z{DeOTodav zq<)r%Yby#}bNF~ivY8W;C;c=n&!FmeUM!)tvze5{Spz3E16~j;(`i%TlKr8=;m()8 zttHY$wp}K-TQ;*@PTy=)+-{s9GQ8ZGSCl8NA~__KV1CF4HM~{_0n+vX`8yF@Nrk*u$Hnvvh3N7gFI2oj8>$n%eo6-@qT z0Vdg$+=PB+Poa{1(>UMSFZW5uq_8Ny0m0t-RblQT`goJ`fiQOS$Gp<3d=!>St_)?l zg=;#KVk0I*9A(qtN@lziOqp>KwQ`PXMObCi{z`)~s8bITEhR4b5Ay^`^{L(BT0;a&=d}9Aw0emgDh87wm__)^)+ zxm+_I&m1q^hI6Q_=@8060_4{a`@KbUC)Bn6U#N<ACfYur+yfTyu5u^3^qSKczK9UgyaqAGv+xAa*W2L=mO0!tVPx zHW5QOIaP$B;ok?U9e%b1$?c;Cp+pP?;elOEhxsrcq8NAIhq1kR!SXRG?4rYbi1v}) zP$GJViZ_#@dOXqH*n~6?MMHd>c9HdyqUr~PWncRk#ynfc9ORVX$S4A1>w42l&(m-%}Yz#>N7LPmYq&I3NBx0I%hoqybIX^X$PiI|XfvH-cU_G?|fVOqv&u$N`6+f#^7 zatY65H@YgSR*6_Wv^TV~ad&28)i45QK~7$mbME4G*Ee}1nFajA5c9HrS{VN#J2c%p zh*lF7YhIcknA-VguNm~hq*;HQ(pFCOya*3{e4tF>E0iomg#a@d9J5zX!y-HklVhQE zS#aZPp}z`4BDcd}Hy}+w!!|@sK-|Zhf2Mf7KBeS@0MUIn9Pi)DMvJBu$g(b}@?NvI zVVz+1g09rJt*hV^qqKl}@t-14uSb}E7<~Jcr2NZ@=z4vN`pwtZ=56){2`dcUDfA)2 zOD@ao0~WTwz75o`8Uh{fm&}UXcEiRuMUmhKyu?hCeW4hUkaHccRe9T3jQHVJ5rQ`r zynZIUMpyu!rewrCSTQh*N?+3@{{bt zXl7FUk;ir!oe;M=4sp-tiT-M=)1LMnc!y5r8`*#kn`=YRP`^E0I}kkhBQI z9pbbY`RzleP%TjMx|kAyKTCpu84%E3XBGcce_{MF=Wo>(Z`3#J=fSnx6HZYq0{^H1 zG70giC;d|$OXtn$UxNQHf!(HVqUY6Q>ZmEdDldYazyC^mBae~%mH38N=)?aM3bLXwhRes4 zBmtBj?I1O>nBr=guMz^8yBS%F%5M~R?0XqyyLpIKVS zV3orVjJNU4dRjMq9>ZGPy;`_pT5u>VrcVi9MRnIiH}MFTqa>VFF*f0!rW9>$e%4BX zoZCU%h%^>N9b(z$HtQ#}yS@1!{9JrMCT-@z=V?02Nio8wJ;1+x4#LNgcoJ>y`%U*7 z9^4>*Gtqgd6&aS&m{~O@C|lzdW8*ryqW1 zM4a+X5jsH>HR4)M$ z3<`d-9LY>B&fd**G0jz>%~fC2&M3^9E_qgbP0T7)SgAcBt7XiI2G)v-&KQ%SjY1zpDrf?67X*0 zPFNSM-_-3`E{=<0#ZLqnW=8{tI}b^=(@xWaIt5@qJ#^HW_lj3sD<<_6lIkiLtf~{R zRrtyYE0A;vjz0|TKN(uoh`OL#;{uw-v1k$52he-fp*&pDtJ1pAzjmNs(0)^A_-0wk zlmL9alAAO77;|r8AlT5nY=Ob(^%_;0OO|lCm zU~8%1JH$8l`(tnGjA$lFr_~kU{;6-@?-FbQAM*JQi}(odo9_J%{2J|@4^-0_6_Rgo z(pu~SAFfQBYV$+bc=KUZM%5jxKc$GqMrA}~#m6Ns1 z10&SV4rmY8t=G_(KOk-qJOZ|sjlr)+5@DncsjstYCqTI30N|mT}^(@GB1y31h|!F#8Vf2f{<1DsE_T-21u@9z9AsaMGEVZP zC=pk=2pqjsIHS~02As77X|wog^~7o4+D%;2T?&coWb_X+Ns62?WiL_-c1;CFroJQ> z&@o9PnI&WtDejV&?1&kLEoUMReYROS+CJ!GdIRQ>W{~m)Y7BoR9Vy6$FCe@BL1w!y zcNwnmTuIIf7ClKb@pRdpLU}R>+2G)-ycnCvhxpT3fg1KUc!7rzkqfVx86Ks^bbM8`MA*mSw8)+hvC9_4L5-0?zSytL>b<`R8>6F+5)w=#50yZaIuu>bm+ z(T^k(;f5)IWP{AAhAKaQ942{42GN5QvW*xLAo>D$V*RvZ{MM5F@WeXdi8cbGPhF!< zv7%0wqE7imZ?gy=lL;S5egfb)Nkk9x--CeNPXs$F_+G?Xs`Etb4{i1%x~GUZ%s)QTg;(Jp8IBe@W;jD)oWaVJeNni@fA{e{e(ej}jPl z*(GwXOZY?^?SU@J6Pk-BGzm{|@bA$i(U%EDQ18wW7QWKKef=onjG4fdMMjdwdQ6{s z&9Pkfp_~;H!Y#F1PI~I&w{zi@8Pn}oazm7e;%|d?*rM0qbK_@ozt@&nJ9%fbWb&47tQC8s)ANd^dTr^(2Pa}pgw;H+=7!1hVt&# z=>jX?d~?^>u2{cIuO5YZ3r+;@88SgTEE;|7m!G_!~X1z|vq_Wgk zdLTT@nDSIzqkYJ-dcpYAO^}SA9c`3YSdM{DzC|N^mcVc;PW&7l)W+DMy?L6T^0)&! zu+Od@)viRTPmy1&?mhN68o%7BJ-bB_avIxnJMfBg`#rARJ9xG)f!N*rs9X51rx8TA zeGV=9S#+>zXm+?Bl_)eSU(f`qS&SD_dY$<6TQae<#=&Tuv`pWVR|SSFbfFFso}nl6 zV2!i|?Rp08wr#Z)o6uoYfw-O!ukA#goSXP_s%>bhWpS2Oa;%pIng)f{3ZPQirp3?q zr!OtoJ4R5*uQ|^jL4SAr;F`AG_HhnbRRC9Ej3*NF7T1MJl{SKl<~{Uo6xc<-kF!As zXSEJ4kfTf#78e*t;b4sL_U7u!o`^10{31+U^b4xs_f&MUs9f5 zB3V%P1xU;f?Z921H;Qx)jIQh1HYUQOg>>}Tfn>~3cK3L6_gFN}pERm)QrDxQsRxA+ zt?RI{&ZBvs+)1zN5jCnHP=9)b#^DuG*4v|JTLscM4|m10VpC;pTV;}Z$V%;q{aLI# z4birM!F$XSZe4=HHvdCv(OYA7F9w|UBp?CFD*t9Qw>kPy1ji;9q;UcRdkZGq7QBzu zS3k9bPJ^`<1G~##ztJX?;RSBJ3Xk&D$8M*CTStem2?b&8ef`4OzUpK3`b~3VcLnO- z+Q8t2Z*$9jg#b`2PtqV|NAU&)dLYh3j_FS+EAc_Em16 zGh-9r_I>H2+q4aJ`j6r3zWo4w!gX|A?=e3_n@~{f9QN>uH+>@Qbj=&+6tl+^8Bn4(?SWw*gR0ffg6e;`ZMIgYB0m5pz3*c4v5AYbV5Dwoaqm&2>i^;Fz@-cSH!+n$N~9Tm`z zY`jnu(8_GR$rR8)Yd&{Q!~@iv1|fv;-1f$$o=sZAV*^9s-dZJ`-rqY za@0(WS~d#MTwbv3DBlI!fzOe}^Gvy%DZJ(HK2mtgPy`3OKVQdZG))e{8Ly}q9jTL> z5xE?*^D;8?e2c*8$0s5t#z#!{(H-pZT~skzmxHz7p4-fA9WJO4pF;L`*Imnkn8QD0 zNfZ1Q4v~F0#CygUY4-K|@&4~e{?-Ku{<#;w_KHafmZf7()YtKTO%nq;Ow~{!)SoRq z#%lC1N+E*JS-*~LQ~xGHCjQhjjBBD7-$c)t(Uz2b9vSDmKinuUz$M$0f4p^ce^sWo zoD7o%H7q6I8?5k}Q6@*tc-qANsE0!VPV*Gr%0k4C@4TPYvN@i{({T1jO&pAQni-&0 zoJTI>$Fn&$_D84oM=2Q%kT9zuTb=m0s3oU+`J(QHab)<(-@p8#{g{tbEj)CNnsG`XF3$_ z2N0a|0TAj3@|=n;i|O>*`LYO!t!*obzJZ_ix}wdwpwwLvSs6 ze9N3FAWp8v+wQko4;A$)Hd^OSSIwPHm|AWy-Md0=v~oP14)C;qtyNdple*1TRi_G+ zm%UQUT=0$BnHI&Wd5pm`dK}qh2=cuklvdL37SOvP0_9E! zRw2OE`VPyFy4RHx&OX*x$q3c zE%agBOJ3aSDcnog6~nz0HD_X2TBcnTmQH!F6}202%q^1v%8RGJ$xC~zr{zDjo$|uI zS$9#yoDLGU&_h;8bpEHXVk54>PYD!D2+4}afm<|%yIM}VnDd~V1 zA>Hqw_F)fU1t^v}W?3+b88_?Q=HzRda=YLejI9@A5hb3IN%&hIjcBQ$7oPj8+oJ&| z1Z&*)2P=7YSvxM=jFOEUWK@Gx(3BM(I$~rM6xvvrad>@eNm(HjrR9mTP5e7yaYMLU z>3!eI%!-+F7JbalcFdK(Dz>VHE#4G#w8-yoneKcvS1M<#+$CYM+;ObKbv9Xnm*AYe z$TD>=dsMrt!zvo8L*xB{hug-o!^64aE|~W0_^E_SV^3*C`0#tVdd`pKX0#J2-QLQ# z05_-k#mXsN^CQ!wiZYhvwo<93>9#A98SQx+%Pwn7V$L)E9BC|T>(uMqn<6RLxqx94 z`czcSSqHVL6-oJI7reWA)i9$~)DEiV2J8hp_o>)Oj55^1hz6~ddxN7*hyv!TSXB76 zi-@8}RsaJy1C>?HT^3nZSVLHYWotWQs_F5Q`e*A5s{+M<)s#j52A=66@dtjuz_jTk zz}NJGNAfO>pJNB0oL`Rjc_b7agU0 z;AM1*0NXk5>xI>;lUb1;ZO$h%0hCF{Jm#ZQ*s%XYLk2E2YPvh*-@Xnb`Mh)+BH)0 zqg|*gz#YZW(wFl4`gRZSz>vY-mlz^ST-+~@^r_npoeAuJRl-6>zGmHr={Y|oBZ-#O zka9N~7yeFfS)9jJ zhuzfW$!Z5T5^`Q|ge?>C6!Lle0`5L=m9O=F`a``V($YQGQuCT;cp^nhM$!!j7VB8F z{|#Gy`dHLWQ~&)I$kCYolXGbs<@lb|gt-*h?1|n}MsV=W*t)~bcS(R<+2vPy%}T(q z2=&T)KvK%1c@8}LzAv||fBkKmrFgTaQa1N@dmgzHki7$4$uoq>W)HxDQJ zjJsSmLXz5Em5uAaBA<~jY$|8kEQ~ns7W_~bT)<>U+soP>%b3Bnz`;?weSjUM8OW+Y@7WA zs}w}q@V5lQ<+kCWHU>fV2HX3>&pS7&PqPo1aAT5wm*4kl>tnS1V^VO0M@BMSE4U~|7DK9wCN>|0c%ALHLbd@eHlK>fT;P`$zM5{Ho^n^mwKT?r zB15r;BwwBhHcB$Xdo_idyIrBkfBm(9yvoPC(r0Q!T9Lt?ifK(FtoH-v*2De!gV4r9 z^Tq?XKEARJKAPIG0!e8uHifBa+L*^pQOF~OVn7R-x%QPjWZRh{YDO~*ja#WU@by#+ z^Wx0c(P6Cy`ZNopDYZ3K2^Qab3NMI{Ee_dJnn&}~Yl`+P4%t#%M)R#|MhapDpN!<& z7N)J4uTmuc3V&3j(nk~wZ;@We*R5vbNIx0N0~V$|nXfV={{@^)Gs|VttZVpGa)0Vj zHr-xfXiYuF-)lFkFsc?&!(6hFO`@^gE(rH~!}_uxm2K?z4#ED%&6mJ`=3e^QU4^+3 zkqN>Q8t=u_oNa%L?bf*&-+|e6by?`%0%=iu9O_l;yOEF9F+swzL zsOH#4RaL^Sfp^wg2=1d-qt}QiQtGjs6W36&ibu&7ZBymb&c=F@PyH#gFb@fU)0EZ6 za|0D+&d)4v-)W!J(x$)d6*gfr-LMD&ni{jM8x{*)$l*qGF*Leh%5{6+&BS32WDC(3 zMTP3)T2sUwEnLuDr*@=Q6!FblQ(vcqJnibWHT?-rdz2@aA7W`JH<80_FRmq*Z0eLh zl>r;Ozy`(EPOb}Bk(O}rT)%wJUZz~1Z;+WD&cj&Gvwamn<2w)9AFw>0ph+$K@`qBH z33OAfuf`%D_3`_JPm$sr{dqXslW=yX5I}mFeNAhyXVt#yM&mmdn(NrVfbvy0<@2r# zX8}pH(U1iHw3&P-$%demjG@`|{Fy)M|Do+Iz~b1lwPBnPEVx4icL@+Y2^QSl9U5;m zxFirf1b2edXyY!yf=g)Jg44J(jq{V7nYri8%s2mi?svcEd0D*sUA0%y)m_EftGf2i z%pM6zvE+2&8+sX>La*rWAV(^IBPG@Oy@(kW4iZUEkk{`2@E0S1tT_^pU|IPEgC*tP z8MlA#@K61JHQmVNX*(p4r8AJkrNvH@UW00dit2JSr%8IRj4FLE;HE zrbo3D?2>;x#=IY>uBZ}#%2b3BjDKgo z0Vqp*I|1nu?OP>;+6sY?znQ3D$Sdu?8{*12OilC-fROe+MoE-$Ekh|^kjC}<5q<6b z$0Y_PZk(m=A&`+uK_pE*hzT!_=9=+eOlSx6$u$78#JQ3j{ofj<%2cEhrd1xj0FVbp z-mB6%vszVSUQ|sr%HQ}!|0(3ZHblA`DG8V-{>k`73{?M**J~I&; z;Y{W^Tf-`QB~EVjZVe0B{~k*UXL`IG>Zv+P3vqSuL&ht)0q5Rm4sZT&( zr?(_AZz^R{P|Mb@BsSHUSBfGJBz;UAqf4b;>i<#Yivr_H;^d*@*VOH$crz%=rP{c4ZZ$ zicswPS4tca-IHSm-qvOnoEp~$M@!Bd6-WM|^yQdQ{muJ-?Ea^q1{sLeHk@f_f0#v+ zI-w!=(Afjdc`C~v#(da+H+7iqf@tn>CUE(!$HL_9^IZqlGxoU6*v9;iW(;xk?N_#8&JLWvxLnDb%lkb+|F-xr8g+ey>S^($ z4>NC;>~P_4inK+kG|Znz8^tK|c#B4EnExrRS@9*>q>pc-qktxFzJxf_xUy{g+c0kE zq&stMhOB*|>U{Cv>6iPs{)eQxX5U4vct;%|n2@TNU+`BtDHu+hKrWZxt6B_J2eAGh z>4vOnyNFjZj*2ZyajgjB5jW64rkuqSVD1l)~~qJ-?Y^*Xf`2ZH3d0j3vDBM1sSe*Iw5UiUj?*f(`@6S1q2#DA;k&___`v&DW7y58jNR5ONx5Z zA!GcK6ghL!_C_hNu#;y+=ZMmix&`45)ewavFsYMeMdOIvld1)A35BOa&zRnmq6OJ9 z@NMg3vHjWV51vEPow z5`qj4wC-FR*Zeq4T@S~07ldGfF<(6X%ZN(ue1nbQbw)a6IHxf`Wszfi|d%g8rBPtl*$O*QU&TFXS)SV$h z@%^5UhG}z`Ki7@pbI73#%=^NK15OX{=g7X2L;fZSX&zS3O|3uosP+~+Yxb-~5!MZA zY4j%r_(cM+U1oElN1uhR1uk;vZ7JMMN{T>p42LOh<81TOxAW{`t2Xi$hTaP)JZ9o& z*w9vuPGG$I9)Fv+SAU?6ZL1n1v}cR#f5w6=Ed&U5;mV()CvTS{_L4sXZTXC_u(4E8wsrnm8GMwx-mU(&abe(sPM!k4ok=;=W;AA?!Pe)p-ZFH{4slFIMbi{y{WFUrDuxAmk>gVCeUi zU12LqT4vJ1RKsvgJao%~foVU!h4RwAGkT;R^;DVoJ>#)(yeGA+Fz&t^_na-#++g$@ z1{1lhudVc^atyz$5`!~pKRvEldh#asi4&9H9dSvAk1m z{cH8y*Z5QAf%l9X!tp0Bw7lA4U1{q-6;2*D@QfFZ2T~i-Dak%j zGoS~KMN{TY$J+G`KXs}bjp3f5BX_*!e1wH2-l6RDd?manno~s#NI%jPMsAyCs93i1cFY<6;mgIdB@%tOGtbCU5jWA=pF$=orF##4HWV(;Bb7h zMf3v(_zw+S=!P@Yf)oZsgmDLYz5nDzCfh13(TbIC7^2G2Rg}bIoKII;lVix9ZRn8m z3+(xZ?9R>(BwKZ4E+XYu&4%i12LF2YQSzwq7AVr>D$<;eys*R#x&)+qU<~H3pdY=^ zMsqJQ;j-5-tA1PivOdV(SZD^(J;=bA|5K323P~l&9`bc3qSF&fqy!LM9S_btS?GRb zmwT^?&{}1N^UTOAJF9dT4hzbE=h~Hl%y>N(#?C|>4ch8BT|qtKIC}1h(Sl`&SP?Yc zvAcqOM4ybf(iMceYk!23jJkw+7zpn~UlBjTyCC&J5=G4l9PPB@ME5~#LwN@2dmOAG z5sYfgtBw4)Q@0X_Fc`n`4XmCo=n*4o+8co)1icQ;N(ERF@lPREYB`l-?z$#HdLG>C zS~_R%vSxFqDZ>LCsxptoB1p3#{9ugByDwk*hDqZd7Z%R1bsqN|_Wd+$9cl`=@Bv)p z>o&^W@p}#S>HaVQ)&oMe8Wj%EEma0sWm6=XvI^pL6q%|SEr|0YE7bnbez%5l;&tM= zBUCL@MvJ6=lZPH^CEBv7k}}ndHpFzpIe9wqFERD%4q3|z@(z_JnBrZT>Glmu@_OQ5 zMtreUnPB~=ZT})B!U6;X@iUptJXV=Zgy|v+KTNA!mo>=N0^8W<2kx3!^P@dvsg#P> zVpQvo;{`KS`_!PGzXc{YVJ)QV=uqD+j=!mtN?~hE&cbxjh26*TuQI0=!vBDm==NoqE07FbU-1Jv zF$gp?YEsE>eJ41kpwf6QO#jX7d9i#zpSh>J`){~<%75tV&OJ(g6chGW}eDW}5ya<^(Q zeuYB&&!#l}KtD^jYp9Gd(a2kMG$;*8@uIX?jOB39IILO;!yNk z67|xx&U8{;`I;Qh#`S*fbr+48Y?O|FO>bUZrV8v%*}hg8`@6~~;r5*)Q=>(%$$`bx zc6|!mqJtv=UExT{9adQ@l_r^!@+{2P2~m6=c9TF^J8-BQAw?}CSTc-F)=tGV0$(qF z=9^TS8o)a}>d#tEH!)ouBlx2)U!Q22S=KN(TqW9f=`k|yw~nspm{zoFyJ%lNkG<-~ z2jBix2p*;s>)^rG0a{b=?{w#B?{A3|Y}_4$cMW(YAv{FpW_Kz9bSjJsE?!?De)xuM znP75nEOLGs`U)3945BI-Zj8)P^7=23I(cGsn5{4hqy2XMY9LS}ACU(1(f)}e{KXx& z!i7N{$Jj}L6BEqT6BTbto}aA9bcgYepw{hfz9@g`@;l;RqafFu8tS9ke{=_XCXKsY zwDi4S9+q5RCkFyW1X5HZMn&_+q6zoTMHOEf?qB0(WL)D)m0jby2?%fA28;QOW(%Z_ z_&NGMzFK`%9#=L=w|=s(+h}*Bbx5b&6vt%1ZkY2i(wSV{mT-M1{z#OSfn>1Xjg?^< zoUW-@Tp}$s#RjX$CEtyv-cJp;(gM6j&nSIiS#}3^-Jiv^P&0bzx`f2(_7S36 zsc6CAT*Z~5x##RH?`ZDajV*(pryyfr z8(L^(C(&2XXg;(p!MiZLwtaVv1rj=>Z}8ml_O9)m8e$fl(X6Yt*R0E}J3Z2)dVUwE z@3R_joqtLPp%DPQkhYJ%n^%Ha_Dc#2FmjV`lSJY)9a&4qrdejHT)hVp9?u$`jzAKo z#G5EFi+s!dyaLB*Zql~Y4cA_72yP14#%LM3OdbyqK-hgl=gQzktyj-#mBh?Zio~y} z_F&rdfmhjqqQlnjhIw-ozg)I+S?5TTE4<;EN(&~=&NsBntF#;DPOzXDBhCw!|BPA% z!^x#;ueWLqzMBw9BiGNN0g?p4nz~yN?NIQPLH^E3-~|-E!6XgYh2Q@*Io$8R0mWWr zOE=+G38U1oA2*zt#-!z=UueU3W2px=$S_Vitev>$l@JSedY0IlzBOxboV)!{x*9>< z+F=+@I#b$|UNPfDXB~?erhAH|8K~d|-awE4LH?+>+K;Ls3^wl;cJJHTcaNAndWCcw zaZgdHtaZ`8b}wnnrHzyrw6Vg_`r;_xu+&f$(=GqXkVai>yGXa7UTFDzCP%aKuDV?L z*&XibJ@XXiOy8a65_zivQI#*-b?I9D^Hz-nW1(Fg2L!yjq$<|9!-tE+#^g879n|`E z;o6?t)Fr5&0gY4p*W82pGj_QA5#PM!!>CAei^5Z{)!QxqebwDkOJ<#WvtL(>_#xk+ zxj@tgvaz7&=X)BYbG;TXXz*!wxPUj?_foJai(qkB|XpPyJ+mD+953

F}woT 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"bt0}@AlIHaMn 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 diff --git a/ophyd/_static/css/fonts/lato-bold.woff2 b/ophyd/_static/css/fonts/lato-bold.woff2 deleted file mode 100644 index bb195043cfc07fa52741c6144d7378b5ba8be4c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 184912 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

x{o9f|7gEmo2*wv z?7&s&_B`qFUY>GLIw{v9To*&gMh;QhE+?bNPT0R?7!`WA618s`CAQKeiO`;^lCE7l zbz3bz(~KSUi0*_@EX5E7Q;9_AOU#0)g9SQJMW>@d zY+IpgICVmz?J?Un@WIW;+paH$Ls6Yy9uVS(MLkv>KF4lK$zKvam&_6Or)9Bl>emu$ z428RkeA!X%k@vI69SslFI?qfJmKfenq(ge{M5n_The>b{Z^oS#cE~}Sgke5ja@QI9G z8|1I34v{mkaQWgI?n>CBQb7qfL_bflb>64hs0?jpaU)4;6KgCw{nY?l&!%o58h!zb z<1V8idvq$r0=jqd5KoQUPec-UMPga8R!HR)41iOG-E)<*`G9nnqE z;EX_&2+!w_gjL^*7V~Npl$dke48^=V09mo-!N|(Nfcd_~zMcrcI{L5#e%v_eTZkc~ z$j)BqhI!a%a(rJY%i|sAz9WX^uPR)1(y^v`H4QaOad5AMcG6my*LWFHHl^0NDE$cH zQ3iPx<{C7trrDrJxg@YqAkD2nCF@+5RH9NT6x`HqXM{+aXFze7kR29dS4;#BDR=aA zM``BZjj@FhtZB+iQY?l$A3TrtI_hq@E-Fzu6IsmxjXg~;eP+6!y-~qJO1d+B9irr|Anq{O&h2Fw zUj_S7xKJj~9Or++bbEV;xlZx`nWx={GcO*l&My%%GIZek^2$Vm%hInpzySYatsGL5 z@?zK!hpSn2DI>%IVS*I`8YJtw4aeKeuhZe{QXEGom};$;NZ|^cP8vmwT<~UJXqqb& zNPx$eo*Qc*%`Mu|(Zk3ffHv_4`pGbH@l1rUH<562Cg5g)@L8|VE3iOnVCD>4z(hwDq@Aab5vNFQoWCs9pgJRajQ zdfvPHC4PZa5L-4-gkhM+>#2Yyzqk!&BMOrJ96>wEZ*|xMqVFow%+o7_w;TbOsth8- z{xIc!i92<|ksx-j-^N12(SVf$Ernf1P{?wlc*zbHDV&v~bdO|z`D$CTGE_Diy)nW#YC|7$+eEyl z>mI-D*z?ez!b8|uKhqTGIcXh4jOJmIjsSalr>4}xeO#3-?6=V)@tJWicKfXBt1vr~ z@-M(+P0r@Mos3Y{BxQv8m7{X!NrcfE508imh%Z6hH`(+$q8JV91;qG)HU-0p?zhSH zR}&EX0p#?<>0Tmtqaat9naqi2=n&13pMw+5I4-jGET+?&eZFSQTwZ?c+~$>b6&RZk zy9#|~%pPblsnJgPSPFw~j%;|uZWYV<^YfmS1=P1T^7nk+?-Hs;NsigEP8=a-7spzj zll(w4386N}<7S6^GdM2d{4&zVV?Ewu!=0uqtk3v#T*JHhgz{b!IwbTmF|U<+mC?!l zNJKfwoQ>u|JK7+ka$HMJv1vl|cz7ri6jj9;yIni#he!EK3xBui%ns8=vpj*zpNhQ9 zJVv;-@WVNp@@&uNv?TVaV;v5SDdioD_SzjB7sLi>50Kbpj%vYgXbr(qSBWXqUDZ^i z$^~_CQ+%+?Tyn* zMaz1gquS}L15xs!g4J6_m*qW3m0powcuGF&mW;Ph!)4+$$wCq5!q^; zSwJWdtwi*vGUObe%!ehjr4M*a6i(DLFsYaR9r~D4A|W4@p6(g;9J=4$^OX^l|&{(g=Fc?IuTy z$i4=SNQnvgvFndhq`&o;3WnTEh(JoiUL`@+x#rcRxbuhp&b=y`*4t!t+V6Kf)B^1x z7t4|gaC*stWQ)DISIIQAJ-SbOGerwh_0`zFtRN( zp~U`RnqFNz8W5myIOoV;%Def28=V!S!2FYjwPFmyC)RZz`B~}C5UVuL1Rx;`u%IZA z4+7IePhn@{LrEP8ozz3FPCg1niYGPfi*L)h1oj6pIO77hMaQPzBpjB3fxJ|Nxc5C8 zM2Pqhfh9KgX4M-IEyE+@ct--0l^d589|z}>GuGIwE9d$vZL8?S#foiHsqkV*{kEEj zZId((k|uCz*Bqvh^Gn3sC?*AL8;RmoNyp}AC9wo;p?g=AkJ{TEDI-~Za;N?rDGCiJ80 z#Q=;RF;pJSeXzC<(Z0@JFGvIu*ECJB8Dp4KX+iOR;4Q6*eS?Hrl~U;`eeMO?d@Yj2 z8p|YdN_nDs==*8vrL2}G=ylVAucdB&&W8Nz`|!5?>2@+De~1R6>H5f#n4^QuP~zP- z{`%bILg*W7{X;9Gq0z;P%J@Fkfk!L!YoG$WJ-RzC6wHl_tF)?56H4Y9BB+Mlp3l;- zlq?H#42oHQmH2`!W3dePNmZlaPD$HEP|3XDLBgERniw}gE}4h2iO=%LF(4k3o~Fnl znL5WM7Pe}R%2xYK8H#meF^H}SQ~Ev8z6pXTk&(Vs7QPUZN1=j|BMBu*sw)4O7o)}7 zQHqURjnDE3LY`3v7s^G^02wFDkz$7`vEQ=QW?r>ar!N`lfi`iBz5)(nBEfJ;!MBEB z|HwB^6Su@P-=;AorwA~}Pjo%dQiiLZwnfIAXXfnTtbSXR=Mvd0_Mw&Qk#@HF44$iB z!kA0ae>qFo4Y&cfpz_ksHhxOLR_6S$u`L>}{1(J7w8N9a7MD+2<6S*umhOx?mco<5 z4580~N@)OM5ofifNER}VD)-`K1kKFkBePhaA-G1uH3%=7q1zS*`@2i_B5U34o3twx zm8x=|r=?7gC`@riaVq?`k@ORg{x9B0N=a%BnHO8nO6#E%&@$hqYEEWIbU=cvuFzJXsYOD-+OL@XH|I+OIi@f}NJrQ=&3j#K^#3 zLRpY}?JvdfMFxq+i1y4vJ*L?wq3G1HPqh5)V!^I`;obY=gI`eI2uWSk%6}OKv!q^9 z78=4@?$G%RpOyofDXlu$y30(iq6AhfuH zqd!mm^CS{qWTg+>#alta zyot0tZtf}SpofZ03_wn!#xBQU=#Lgv$F&uqITMPVI0qqkQpxQ9q}kPD2Fwcs>mL7~-;ug&rgneG^R8MTpePS(MkW4&;k;Y3onw@O>NvmmGkD4#9!xO~yjE1E(s=V2{}{8{QzhxQfk8FpqCmd|DKzV^2GZ`d zuFl18AP=!}@^QLkyCTy(CdYf^UgmuYOE3GNk&jMrkOIEw`QRH@ue zS*@Bpd+E0hnw&4NcpR>8;#b)_F%3lEk+d_^qg%HPTu znB8W#o&$vTlSRP}g6-XTuAsZbcYs`7SluI-^LU4XtkaA3vbn=ikaaIpd z7o?%rQb02g2)w^!SzmHqYNJ*?%VEQ8MKr2QHLCzUK*GOAqcnfMel(8SlSV8doJ-Qd zk9Rq4h?x!$k}3iV>9CLisr|B$NXqP5fq8%AY!t1{0NuK^4bGAsByNqoWNC-}OI9Fk zJ1C_)rMxxC{Wm+3zcPzNa*rg2Bp7ntKPd+9g+*c+$;t#Su9Msa7R;KLoGcAxG?5&^K=#kG&Z3&0i5G3@7ItzLhX{Y8h3_?HOL;tl3XBUXH_e; zw6^_((WG@MFMC9iyV|s@Q7-oW%K{j0lf1$z5k3I)0Xe4`f`Q!CKrxE*x+sm)3Hw(DK`%sELtU~(k1^VILd{S0fOp{g&rwR~U?9XpY$YrTS zLS>A57Ge}@_Oyk$Tlw5EDqN_mq+2(O=18$1CPc1lt+z++U|}!eGoaAmc7Ly8H+oYo zE|RMOP)F!}R%EB{FB~=(}Rw#*h^`UTwxCL4_Y__bMx=!E;N>r#Skwy|P z=}MdZZJo*Kmjs2aEXuP>jsy~W#pU@em5x&9aLPRy^b(1Mp~@-E%5c)0-~(m9NoR%I z`^)>3U4oMCoxR+_jcc?h3)$NHxHOct3{JFVWr16tIA$lQ>XZ8{3EX%gu^R)w}iPHg_Htle)QSfBt4Tpozs#^r(m{cSIsiRBXz`m!RH z>c$_~oIiUi*#s-I#znN(aW7Y(p%s4)dT5i};#5^w!y8Rd(bSILS&|@aQoRqRtEc$= zIpk`90Db-p1y%uxRI7)#NOK2dkHni1wALRpGA%j&^+0Ixp=xWvX2JDa1({Ue`yxCB< z-ikxOd0%)gp|rPytHg!~%ouJs8+%qoJ29>PpypG?k5AvXhMce{Is z=(4eIuf?*Xz*`kWQciTnO*K$#k??D@shtoH!K^?RCxc@0R(LSqoV*#l7prr#2YF=u zb&l|*Ia3g!PE|n~EfAU)?dI(>F?TD;`TUdoihaP_f>^$RHoGwM_6|L&Tm53uY&$Yu zZMV^!gO@ROFK3f#&dcfTLP0mB_O&$?PB6KF()eK}QB5k@8MW6FYc?-q|HccuPh{~PbOZw6KyNL38jKQb(b_&dXfSc#|$YTf7Ogu~o&)Gs2GnX@reRoRtV zv{bXkLiR`;rg1m3}6h|!S()J`e^$apYizZT<$96gT?#X`Osv2dXn z!iSI2S7~_(yc+eex0%2zAhQM5ibUzSXdY2 z7@F*uSbHqFDW?(~-r!^nh<&AqCqNfp)1CrB*6WYcVWD>ZNhQ#_XWZ1sH*_kJ))Q(Z zwa?YeqOe|(?jpUdO*}=?amon3Hx%8`v%nHBVeG*gJo-_i)NF0>DAvWeP|Z#Ik4I}^ zoG$5gt+Fy)gYfyv72~_BWoL|t%Iv-r+cXSOjIURXoThjiN!aDk#_t#P!CuX;cZx+v zQ}KE@T(v;Cz>@A$|3A$eq}C|n`uGlXaN=q%c02)@zr>N|)~kxPZ}w)n8y~MclEzdB ziL+}t1fn*1XI?2IHtZrxR_?%HB_?k64#S>?l)W7Wh?Te6Q0PYVXv~qcWRh3@Iuy^5 zd=NfE+IGMje!_=>%Jb^2029_k2ns!YD|eSk47lvuRoXkBvZ+Suk`VvM9?Y=!p^BqC zLZEE#B4)Ozz6&V_K}Eeq5N)2m^`(i&61LmKo=$}1EPagmsDI-J?2J)UN|u3)59oYJ zPzaaD&rZLTNLC@15h53pFMc$CH`5oIe=YKxU-MVZUlw^U|2fS!izkljytt?D`fcLd zzg;EoRi$glN|dk?`ezXzH`SqM^$00>rf>wqX{-Z%t!&c}OE!1^+k3tBKtk3{pG4$> z2ugNt1XYV*>ORMhH5>V&nyy3OpO#e0YRV`eNwSW}`8n-iij5!JyPh%*gvYIt0Ef&t zhwv>rTTls4!X+EGF3!j~L^pv3X??}(Y%4H_5B*b$qNtS9z+#f8r&G8-M!#SRGUheE4*i*`)JwH5 zWvR#7V+BYvIH5P$ag{+sB94S`Al>dm=wwIcC*RJC)kp!*L zF;`6b%3$P8d&v5AMA0$E5=`eu_Zhbv2qoM$d*gZXL8@>hkIGq#yBK)v5B$g!Vf6C- zrPGM{hnUw+FB*D?>y2QPM-d8JfTY>B7rPitXLRagGDwCRF3U3*OZr(%QVw@D2SotMY=jVA3yrQ2I6hu6Zdd z@^8gA8HE+MCpgOH@7QTG^Dy}+y`LhCkfQ-;`4FUETpNXkgHH%tljxPHmHM;Rob~_n z)nEQ+s#@k4pxZ>G$$X&}s<4`3a;mng`Ty59|CiBi>Ob%;tR#^P{uSXj<`Vji!};FW ziAHE-MQ(QAvrIQXtN#SDdG|L%S371BR*yqS6zfB|tsJ)8iJbR21mXFt!v!aiJ-}N> z1(}!}xz-dxNs5JtWUPNwejhN`<#79-_dU<5y-09WZXT)5d-8y`9NTrg7GB-#N=KBsI@7w6`MLbMjt$ zcMzFgfRL>ghB063VVk@*#9{Jf?8W}?)p4+|9^A*C3ES55MmBUz+wKe*QjNwV&=)d# zID4|VrGELxlOh0hN@RjX(p(Q?g}~!bhdH*s$8^Knrzb`@CryvD(_Y*mtDXX3xd&E@<^NbF zvwMxPj3R-;+Q}vF0C?60n3TxuuAts)?Kw@KH)C(b7uBI+#p38bBSjsm*`kuo^c}RM zCw-D0{&Kup|1%)gvn(9WqUmgCaew%){m{dQQLutsuoLvEZHjXK*i|Y&KHS7raiCaf z%-1zut$YelsC=QQ5^4bO#;pUP$yJM}EwdF*kRu15U)5^_)F_-yfMbJlYg&7>ilb0O zZYZZ^8&w`-9Wi{v>EdsMfup}rc``esH&Ur&I) zNcGNf=*vjR=1gBs!g5{0Qtmz9+sRWRW83X>sj@5H8z?BqZ^DG`QQ0!exV+sb6qc>t zSCF?RnnDe1`ze7?9MwpRPLu>mb<^CW!=sA{)|D(i#GQ z%s~>V+F(x)1NjF9@AmkF&i_gY{8nn^jt}oELI>mxR1g~!$Usj#q}^-B`Nr~xALPi! z-E$1xd9`>)7zWusa1ma>COzPN2x;t({fS{y)0C;D@MZ*W+YJia&~+RcBjq{wdXjh= zwvA`1w&0hz6(yCX8m zTN<&DL_T1veO-oSl*BYd9HNbM^gbkmg)yN<17{n4=7xxpRN-8*4Ee=?p>S-byxU2q zC{k}QdrlEph++7-V^|`!P>zvhkfKXQ3&^Q&oYGxqFVZBQ(v^V#j*ZHGpy2{B-s zu9inTzVxh2ky5cEd3r}p)%4q|g8#i`(82X`Kt8B7-ncW=%sabiv8QjUp6kq@Jv?uNBY4RNX<9VUhnc}90vcZpc6HD!vN-D=HKR}`+W^iM(G>MTXTVcSVSbZf?3)d21Bu?Mp0y~0ZFa|(_B;-_1$YARFU!Uf? z2#6_%mty;LKU?pssg>g#|HTu;g}1je2^r0?bA}TKgPmB@33>xV^#loPq~Sve>xEZE zDlhg>Nun;OoK4`Z`F3JsZB~rM^8_sSmti1|3H?6@ z#`*JvxVus=KwwIs0jgf+9A70NJdt6~C|dmP^bHCGN{rX>)|J9W2*XdX^?`5sKasez z!gB51m(lCC@i)hU(_^T?{I!nE%K_P|ge=F0q7vFoHca|bKonw1mlg3IY7}W7_$*xPQ&qQ!0g!W> z`WS+L)7^vjJ~6(jmH!NPYC-&1tOrs09>D%dQy;v7e5g6QFkMz+oIa|_u;j1i>ebyh zX-}P8JJNHBiC+{vG6E$qBzT%u;0?ND&ha~cK?w{CAjd>B?x)xJK+ zT$$`*M+*BPZitWO%OUz0_VIXDRwP_17>60V zCg?Pd#yoD-vpC^n9=D@jtsh1-wFzM=1Cl8aCN&i3tlu5O$?KO1dKBs(R;Mo^MnB z^!MM|f289;dhFpG;QL@_qBR3?;MZvOPK;MDKg>~cJu~;zYB9&3TOjpE>m5~S zr12w(+oOa`KCf%sl4jtV=cp|j-YClunnPAm)YgTFoSqd@Z@!!bQ?FVv*(Es=vVo;W zf#pFZ9a1*aV~@Cpg$IoGvhg33N5jfGt42-Bxea_mP2*tJZj z;;#?MUUL%*feY=)ivBI-0`?I3^LVNHW42G^3~=DzSPmLmy*yOP|Dt1Uqz>KsJDnH)m{0l zwcTE%t5tVUHyi(@li{@3#Z-4cn@Fu)r_H?Q$bOSdMmUQPgUmy@Y%0H^)4^BBOLD*r z(RniIt4SUviv4zUKr;Uh-}HCLn>Lu3`05rIA4~cM>>n|rU}~Br(E4fXHP|EHnI=wM zRE!t`bO}QS8TuwNQadZHtNRSCA*|8x(R#{09+aC`i0^iPfvq@~rz{pW6nN;I`lkD= zQBk9%jYa5?cQNZFDrGzv#QNYDo82HB7#UZ}JvGQqf8o_&RUE0ylij?lfNf+zfnm4r ztPJtTV$|jFD$=DtP?OGWd(+38-Qqp0ia|GRGtTlm8ce5d*s#@^n>OtUOEJ*SQ`fiI z-WJ~h0ex7eI{d^Gv1EHTrjhIKCO&W26?E=UcYj2Q5xf!%(R)29TK!yHgpp*5;^b?I zo2Y#xyL48N@R`X&*l}*n9$hecq{tNd$;H^lrJc8id8@apt@_m2jHQBdRxh^lg(B_r zy2O&;?5nRWsF|Kpa2`iJH zoZO5o(90?U1_Gn(vO78&L?Mbmf<$mmD_*aJj|eMBsk8axLnuo_8^=+UFyY*tNHLHS zq!Z#yYhfb$vRuCxW&po&62B>ChH`q%Is z2u$IY(H4LvI?FLYC5?Cg?&4upAguEGx4nBu~A|RFhm`tj1=+H)pxR0xy zaZWjjGk3Bo=j@5`?fFY9RVtEP>G;_D;`;*Z+J@&c>y9YCW|}JS2n9zLG7V-uz66uB}TAuCW8?op%LS0cp_)`u8j zNb@Dt2V`@%me2>DBbDnnus6d{=UZ2ep!Ydv@~)DDf!1<)SxZUF(->AUE1XdGHq%_# zsvSi3?3~W>q6T86+egrJOatW-yozcb`uXbpk$nSrQ39dCHfdHTgdbKBF^;#gJ{7Fq z#yjIPifBD&?L=hZP=|WCk}t9hPmv0~Jm8X(pZOk2p_8kj0-AZD)^xS0#B>mDRCh!) zPgvORhcs1sa{)SHx>Sl!BSm>?oC!MV)HFjiGE#Qz1Xe|t8lt-%w5q^|Ax8griRyR_6|YCBpDySt+uy`m{=cc+Dd=CvqYfvDP$m8jcn4kQ%VbIO<~eG%;d2-(X@s$UwVm1O4@~Iki)yEcH*fJ6wkq~ z+#DETg}6tk9_l?nkQMRRChP8)F{%7|;(}&!@p&z%7@nwya5-HfEZMvRj*_>^ZVNNi z9i~|Q(8<<9FO$%D_+yW<`GApAffvPFV|9KV}So3y&>O9S$=4 zTx`yBAPfKcf)0Jm_TIbfp9!-q8y7F}UpDX}{+;gwxQD-by`EbQmxJb^X3Q|Pi)U~AvO!Iw>~%3v zrrQM(85{<)aB@WXaGC*LLIN@jjJxVM_C$XT3>=h3gKB`qx+$a<17pF5 z^HCnv9yEy*iMg{<(AoRN3urZ@0?v?^73`omf3{+MH$4e0N0+9iQ|*`lU=)JZhh&4WuqU%7+V`P}L< z_9NYRp)*|^VpMdzk~@vff7Y%_qlNx9>o?xJD4OHHYunA@KN*gKg)%{ovaaS&slhrL zI6Xh*C?BBm4B%*q9t{K;>ohfuL+-;usE+WV#?puy)b^_eb*VI1<`bX}iJ2ufB6{~+ z8;UZ9@^wvA-!0u%b>T?CAG_e;?UW=MW?LT<-ag6?O_Bs0#9iz}@d*PE3`1U^XgeCT z^hL?=D8Jm|%Oy8#ifz}CQ%`YPpysAnK>3LJli3gUL}DUia5M~x%d&_5BVqUq|4Ro53*y1L8o-ZWQv4C=Hx3BSZv#4z^dhwfyiMf`zLmi#f@C(J2jK&XuL+D) zqq4ZzuAL7tVShwN`Ov5NTQ)PPfol;b->6K@2qJQl`{s9)m|}hzX#| zL8DIMsMA?ybqJPRvBwD#petK1s2O$vVes++ZJ?nJRfP?IR|v!PSC1kz_>w_eRJ)Bd!9JT7*S^MDDD*UY=kGPyLknG0C&YJs)o)Y2(TW9 zVkVpD9{+1#-iWisF+gZ{)@#i>&@guqpnqQ?^g{wf>^|v< zv%WjoH}_%gdvx(p?pCxoRlz=KjvrcI$(g}a1mv#_A+>(Em}sc6aHnUC6r`QHbCd$! zLJ1*%#Iq7}kd6--{)`qt=u2vguq%Tb4!z(JYQ-kvMW{(0 zP=DAnFh;p~_2IZ1iyp)!2G6UN#Q>0DmD-JR(JjZ!>rFhzO`>~Sq<_bd&N-cfKwu%C zf+B2aB;A|l855P&{mwaFK$@v5*VnuoS8D7cp<9ONr&m^iFw*MvE4&?qYzmOKFSvI= zETlp$Goq=zNRMo%o(T64>EPZiIC6O2AmFeXT^$&R@ZF0vtH-UxJwbBcYBLDId2XH| zdHDiY1>SF~adJ3!z<&v~&TG{0OdyXd&Y+LyTF)Yym*(MwO*CBFp)OJhQrMIx%l})c zQ~7{pZS-bhV9pr9@p{p^7-D%8hB&5ZB+BG`ZDsL7RYT30y2H7?hmKQYw*c1#A!83> zJs`undC*eA(>(-INIcHG0zpK0_G*QBSYfSQ?~}owognmx3hU;WjtkxIY2&`!J9C!e zx6A4VB7ks#XCPm}h*cm#ByP$+@cP!j5Jsl^gK{2W3nQ267RX6RdgPivItQS4^a2BW zx{6cQ!cG$+b*dUtty^1q$dk-N>-M(V=C;qRNou4Zf`vO*A9bFnt3}isni$Yy>mG|{ zhw?^AL3d9EO{UrP$kBSmS7|(e0s2fkJ4dqR4c13xaxxEVO?E^BdhFG1!oCXP4}8Q@ zr!`R=0+ulEr=LjKw*yd9#?Y;C-~(~SCsHTuDlK<`qZ!iW&Fx1k0WBIqTiD)lF}8H> z9nBH@Pl4D8v8ccVtaQP9$g9RRDM&C{inOu6m4N<)a%z@88{yU8`T)~#zNSQUbvvXR zdkr#WJ!SjdqI59YlEI9Gq`NP9oVns)UuPh!2a-Ac$0sS5^ikz@RP6+3yX|eY65xenTL{s-hDhISVgVhv zCH0ShZe&T)06*ou0V(cTSSr#;+WX3im0mKu(fGQn(+uK#SOz_@7P?J|qZIYV%RLI& znjaxej-Yp$@G9%~*yDISg~b5934#P{>8d?)=KW4?LJ6}~;OqFHaa-@j;T=bM8(J}= zMZl?~>dshhR=NP>ID-e`mkEJ^L{=|BxUZ`~rAB(n2uw=!)e_atlgI<>hZeP!Z1rGO;@|R7b-{?2ERKWinmb&{SwS z5q@I;fwM?j5MEsxHJ%7|;6xH`jfR@fMZ?Em9GXE!i;8dq=76lJ9;J6= zpay5Gde=KVH=`1$c&8Larl+VMX=zO@KJw(ty6g-@R>e(9U&}Ge9f5uSjSsu7v%3IoSB~m@ir~RIWB>|v@RxvB!vNZPwo-1rV@pC|G zgil!Tm~2)kM!Lo^Y~4$c_z2~2BNA=^n5{Yjk%pTDCam{iSVZIsXh%kxq2pO2=$qgH zbtF0%j8Eqb@M9&0!(DxeNvP<^vk{7O7GE%yO9ZIc(Kl4J2qNEH;;%kP*Z`~V)8!8< zoK$$}Dwq;lEYY^Iqx@1rH#rxvWuPO}p55{N;wb^n^4Rd3#5Q+wG!wBzz@?HVDn z0rZv3>$hM^%+BSkX?oOk0h+=17YmM5=%HS#uS#=?W#6n9o{1r9Eb~6Q{vmC(i&}GI zfWX^*m}2fzgO#d-Gt;e;tpca4P#E=2Axrx+;kJgSwng72Zd3^Qh@y{&s(`wPsb2}&ff@`1kM!rLLTI5rFg6c>ULFIp7yPS*aM0&3Jg?C z2X`snCjrDU8-5JsZn|02bGi{#QXc3eqUn*=JWPiKFmEIv^~v?3GPD{#0Y8u~gy2U9 zGQT@1(Uq3=<^ySsg~*~LU||9Oz^~BZ6abzhXLC2m$QtHX(uGGZy}BYRL+G)hVdU_I z{;pM=GTqgsCMUO<9Y@2-1eknN!G(HU@@lH$m}B#ln%c?Nh`e6LuUbk>Fco5c$}3=V zJPPLLtVQ^6WBN@wgx7b!^Insi-@ovE3oKlRg%DGpp8GkD)G`HA;g9(!D?l08ltSx5 zO1?DYoAt<0P+Kk_lIEQ8scbm+d=2INRv~ldK530vV)_>Ttn1Vuku9XgF2VMJHRy`@ ziPS@ZQjf&J8Gk-XgQ!(?H=BJ_wua4?^JCv*B|Y*6b62X8HF?1GuDWKu6~BFlApb>( z{fEddL%7r@2QV%H9(4EPp#F3>NePr8Wob_y1iOD|i6$%1hB8_@2Pn!kSyAc6(ctAC z3;JI|#95D1Y;ob&_@=^WM5qYVBdPSL(#3D<%V8KeZ#7bi_GsuqO&Z9QrzP?Z+C-ND+SXZjAl zh6P2OS`t>lUQ#len$R+-G_ap-!yK~op%ylEblHE2Zsas)oyLQoKFIxkqWOJZ zq~#Z(h@KxOp)dt=cV38aOAGJqvK}wg)ue6JpOlvGTix^sWsz4>;m!(tvQITZGtCiN zR_e7LjE;rx4Pw^;`-JJXRGqb+D4p*)e)6t}SCRa5tkaH5< z_EBIB&;}sj6eLth9ldI$j;!hW7i7!01u#~wo2VPJkkKzSkR>mXceM5$#JLg5@oyH@ z6i4aE`&H7S5?)aS|IYcCpWeOXkR;mTFSg?;+o3HdNPk2(u`QvwFhH9%rMC+bOl*Y2&&kB;MCU)X3DFHgG#!x`|^PFW_HD`5n0_H zOieZuD9Bamxc0n>3o?G1U?r;_ga84q8Dq>2bvOpB17)fR`#hu z+#-&xk1s*&WjDXVZf~AQ!aAzs7Tj?29~qH(K{7+JU$$uA%#4v^%cBCejy4xVZo=bC zi%a*0$Cl>>E=zDp6IHnK1SPcm>1H^ro80O>P8G>8yFMDtgS*sBb>9>+?t5@IK2Ex4 z-8-=l_6O-l)fawN!s;$Q>Ys)C6K!ox)rp1A4cG{se;qLrM~I5cS?X!qy?H-Ap=qKc zTsBCk+F;fR^50CnBA9*8Z>ilBreN zM|w5x&}z^QPf)AG-LUB0zZd#(u|*r4i}aW88?%ype!J}Y#-MIiswmQs?2VG2JrR^| z%OB&C%*~N_dG!$a&zUksFm=eErz*Zy9sdeuGw|29QId*8MW(83tUf#VC85uZvvXea z0#-+_J8G*Yt@eFx%R)~Ov?A|sHX?So7WeqN*MQ4=#P#oiNOMs)w*XNO zmG|Ud#`3A1Ph!wspj2+V{wkubHNT#QIB%5AnQYv#nQ~BSc?OEse6tI@XpYM)-bi4i zM!c`36#2#2qFm9Jsk44Z)9Gt-CB=YsjbFxW|s%b>NZ%AmjG6;|&B z%RZXcbQH_x69u|uJy`h8&xMv0`pdXkl6lqMkM$c8u5H2!mZN~9wweG#>*Olo*>n)9Z(Bg8BfL8iFse0=;Qo94&S z6tB~$n4r2C$2F-~&FmNtu@llRs$q<}n_m~THY*>%3N%$;NE^y@5J|+Z%hV*q;JF z2=s;x5Tk27#M8Uru-Pqb5#fQB2}aTB8x=X9T5-!#(8w@Ng43XJV^+-k!q{^SH57@J z@Z5b~T=}E#AOFXnYd9|ohgga)=$7=>tD2UPt47_t8^)JYw>yb8YTci3E})S&D8YX1 z6$Bnthl^9xe8)tVV(nv;;P%{Zy8b$Lwyjk3F(_lN0ogswd7^3F=xhTh0vO^#ZF@UapFLym9qT@bBvzKX0f17XT#-rVTMlu#(55!CxF;pnr?3vYD5_{s>IE-yBjv08V_tH?N73TsChV{2&x3Zvzk^`-1S8 zmF9P0kHYWIm-S(Z(fOIw&Me%+f)kSO_YPDUwA_GTNIcN06c>L2}vBP~m@XpiVFLcu-t74Q@ z{YaPS9-+D3R}R$x-;f|{?2*LCkLia%PH*xd)Ws&eyVl{i}U z((+=@Hj4=RACuE0eF}8%M13dbxzdff&f*?3wQ}9t+;O4;%{wdU>2|48B@81KmQ+Zg zZnp*#c*{a+?5eyr*YYb(SCT2`sR5HD04UXnWzWaO;P0hUe>866a7?e9#AY1K?0UMR zlun3JpXq<(F*RxY^%Zj6uABO5|B6GeN(B{&{aP|EeY|SM{8{|25)WG-Y1s|a_Y@t3 zML!wszHmMbylXAtN)tkNLf7Sz))vbV4!>$3#Fip2uyDFR5(|t;A7+_DR)QYVt3tOB zUD<@szr+~fmB}<#a?0|kh=iJRQhTN&zU}5uA~FOS#s?od6xWXieHYX_H4d2JxELW= zmlmas_GGn*h{+|tOsAX8F>$T8S0-ZW_WkTGXC^jW$A_=x%se|@uYlt`D8?%hiyu!m z(|oT*XVeRH>0X#Eac!^-hSbgbjf*69#Jm#yYcbm;j_k15Ne35YV*#ixJf`qzhPo#7kqzF=yQdY=| z>6FKB9q_ngWs^gJJY2#bYAnTE+C=6V!TdIDF?}zKv|X4rq!VQ;Pz*P+W6>?PFj~Hm z;MZSJnl@*L!8;6ayB3FFOi!&0nI4}m#rmLwgrDQOeU_L9_Nnx+Y6Mpoty z<6b!g39$ejH9blL?lKK`o`im4X;QR=-^sQKoeJHk?Evh8tcI_y{a?R>z$*e>Aw|YBxOw^-l`pW`?W5-2jpKAGLQ7K^_ciktP8?~Dk4Z(cG zH#wVp@!sP+SnR32+J7ee$}(WHl!y{nI@ZZzTp#+}Fpdd)lw`rj4;b?X`=!q2h51=G z?L_Qs^mS@#KXZy3-Z@nY;c?Za-!!Bw`G*p3?lT64&Mc**xK!QmN>DFq+q@p<`>Vx3X-Nt)!ef;4?{sRE_H|Bw#!J}gI> zxz8{!y@>%D*FJkI1F$nKP{3E}HK)fSmy;Hl$sYtPSIS67GDkn*8`o#~AfX|j$E6y4 zFL9WS&iOusOXP3U4{5vwR)=H%RX2$18kXL)5p-RaA(G7b6CUJJ9U^i(D0BouDg#w0 z)Z8L@;y2K64I`dR7)%tVJ()ORNS$;_tf}W8AMz&8_|40MGH9`>h1QTi;TD>!kQyuv zc|~uR8x3v~gfcl&`J6%|T7msB3L?VCO8L(rngBo}so$1<;^pkg=ZqF%t3g1BQV3Uo z3x&?Lq|ATf3DM~G8W$~58SiPUnoPLxxeMafO7mqxm7!b8D5$8p`QPNYth;IVgiONW z%wtTE`{8y_DUB9^7~N%( z1eCghiVMFeMrf2LES~dEPFI;0rHBIU5Yj^3Fi1sIA&U^x3E2{vAs~`7hfG#|v?8^D zeq{Pdp6y4?{G%bvWThO5lf)_=2LQbtwFkxrI!l8HKjA@uWEsI4!`FRb+ zBpgthvh~^{B#;{vK@$p?c@UvFACQJNmk2;a)ysmQ71bONFQI(NVMpD?QxzQ2Fs!sn zOFEwh{G>p%h@UGXDn-+lqSKI(m|AH@MR;oGAp-goi-Ib=idd-ps&93-PI3!!`uvJh z%w{(Jo{q4JE+#;w<7M6f){j19O~|qVk@se2B`g_3#>{1S{>bVyrgju19GQU}s}S=_ zpr{k5;1U#B5$co=q3Ub~%8qRTH@3i`qLW&{>0qc@!{dY@6l=tOGC>DWGMSu#eU1{) zK^h~ab;tv8ay$hGt_zbC;99VkwJW>#JL9qGFWg?uzqgTXWS2X+C7Hvlnq11k-dCj) z^zH<&b@b?9x{^(i8(Inh1V7DnrjGPc;O946Q!xuU!c6*G^M z_6Hox%U4~=F58KV;&N7zD1kUgcMk9=Ur!W%p5C+N8c&;SU>TdC(GltHR`_^p7{#5f zstPw!)IlWZ22X`==;jhu1qOiM`oYcwr4z>>3B497L@3$?Nj$cYpro}U z$N!kDd^{*I_kX>_MShXb7I6E|cbpAl%*iPxyJVIC73N<%Nt7q})wr<3+ z&2!W%gl>?5UH~gW=5EYYeQhUoV=9P-s8s(kHnP&Ca>z}kU}e{D)!$=}wl1&@qdC|S z$jyWvpzP&U;(>7%k{`KPU$>7aJzLnSjb11C& zdrQ3aizl~7Z!43={yy^7@zs|?ZEJ0Z@UBFv&Iq6n+`DJ-ZoL4aRvlD3kbT5>Z6WnA z1YLG&)(Vc@KMrbOdWd^9>bVI`W3pe_&C%Z(411yi3`XA;ZTUsbw%`rLG%XV~IQGF! zL0q!_0i)v7;B}h%2kJzPcsjV83BZKsqHd&1quf$`%0cw1u{@TMR{fDBCKKDriXZnD zvcu9g>L+&H)KIfAA{%@Woc-q$wRj7S9_)-)J#iY6+B;JA<7a(T!-7>kx!uP4)Kkub zQKgj;!}cdM6M_g&8ju9$EAnnOloLl8U&=`%=fi?gH!S7PdSKX# zof1)f#wfF`5%062V#(#N&VLiH&WM7IQQ?70ni+Nv&svsMwzjye*~{~@8h<5TL?8NLc+8K+M7ARX;*62c=d zrrj=!+uj59W26)mL4_2Gy-j#pc}+g~HH8beb5^i*d4UJT3F>1FMK^+)F8=oE%7gk@ zM9HSBLVO4LlP2+(W3opn9V-6Bk&^pqWm6$B(c9R)mKcMbA@wAc;v7Nx2_+p(P#`0@ zscW;h?Rn^S`u`*1sl&C9DzTK!^q1=oY`x)Iof6O;MI@9l5?ZastR068fJuGl!6B%& zDptUS`g=0-S_}elE}qyBH3wZp$l>waydr;*;!tVvVM4BYNI##Rq~1y^?f;~y05L$$ zzt>H7O2m`$__?=9UN*)zv$zLw)IS`wXYOO!;Rl9>2kLI={ zd&l(WZz|nNqkPFw}OElX@@Ll@{s)mm(>S)dO|N1bL7S&NZno(eIBK~JlGLiO6NGwPc+ zc+5;Z!$G&yvr&=KEjgVISDn#m0QE}ig;rd?A18GqhWQh9ofW|qvcCrW(3?y#zG-!A zKl^Z2k@)qob9T{1G;^995uJ+1Wxu314C2Pt0sFbt6djt*0jsi@@-Y(VZzCBfDNS>mog`>4+Yu0tB1pl=MRe?ur{c zf+6LgcZ4=RFEbIkuf%?)@(d$kP&6+kUNV`F{|`q&n#=5bOHhonkH;z{O|zPwHSxns zy|Oxf>f<30cgGihGoH?Iz$-u&ih{lRtL4}ZKp(aGpfg>*NSGO*=~>;e;0C5ZRhHv` zD01L{v6`jRQ)$Lg5zDrL6}g`UZU8Cvxo`aQ)BCB|@C$1pxXrTsarnFYjP^U5DsQhb zJ>S*u&wSgr>U;ZuiUDKP1erWM-C5Dv3HBD#GFs z>rbuyV2)i6|v&}IJkxkXJ~LLNfzMWffN$W=lSqbC!#-s3+`fD z%=t8PmGm#QtW{|epDvXvc%fJ`?@4k_sAC5?i!Ectw`ynaVu;-x?0*r!f5v%k7NqGY zi51bE*2dPFpzTykz9UOTGfCa_D>$KK8Dd-(+snC9EEQkPtlLd#p#2%_&ZDKvmp)&b z4Uj0_F?el|I4hU%Q7M1oGhoRI@p3()kgvzoDvW+ix-+dWvQV}ue_z~I#j~=~6U@T$ zlZvu#(wU|x*}m4o1N!)D9aR|#MVnoow3V;)A%ics`Hwf zaq5*CAMAym+H-Vi;T~~ztKvwVXKOx{*OO4aLm!$*Aog|#R2GeUcFV*%n`{51_*RoZ{LCcbLb33(z=tyFe=tx5--DL7da zE7icGL|H@B-y2m?ylwgEHv;M%n9E$j;lQK|o8D$zX^>9S4G-U5+3aY*V7Zkc}Y=+t`@a=blywY4&N` zdQ&4gqRGPOtIUche$M+V7#k7x>GiEy`dE&P4RHtx9D`uk!f=C*rTB!HBcNDXU{6uF z;#RKmD=XoV>d>k*fcK8`OIH9Ch^v}s6)H`7&CDpCSOsr(rsbHU9jHrDl+(ZJ++@>47-A@M zV?yRGRjO-KJPEYS#*S}w|G*ek8i%ZJ>1rbWHuJi(%Y?Yfz@Akhoy*Mb?B&&3dJ^q- z%k1waPH-H~)En%ed>sDnqi0yU%ClLeSj`irLNpAbgU>3UCz@2JujJV!SW^zKlQ@*= z2Momj0QW zY6K5D1o5+hWWE$L-a8Sl`%A^u?pZQN(UkWm_;;{fXvwc1*fTno*;P&`mHho}ZjK-H zLVxBlS&p(HJ%lt-J_zT{-`CL@OQGZnlqDF29N}eHo*Z|vEJ?J;CQbYRZy`5Dd|BGC zi!P>FQWUU>z6)10AlqlwLCv3R**-0$32T(8&qhi-J@Lv=X6sz*;`$<`M-OD<o>__~|4;hldXM7c(-7|)3&tIE?jD3axjdGhE-=N6-y8=y28I;1Va;Upet8!}H&F#=`KT0*ovd0PUnreQ$~j4cRzBR`<_<=ri~Zr#GQI87yxj$~7W5CwK_! zxbagbLNlf>$*bzRp(%m;8z$rBk4tNOQC~R{yqMQm#>$janAvnmzY7VA`3>DzncQ!E z1!nP@&dG(*{HZnNg?snyD%=B{9i6r)9Xl}UqZWA_J-)#)Fn(|}2W2jjNtCLqZ4g_a z>j4KS4`k7s(z$c@FfR4=Jh1T6wY6Rx!%2PfAFxhU! zfcCA$hEhFjpc~(GAn(Rz|BzG*38UBJTVuQR1!F2{#i(x;PCrIW=(-g13UhqtD@#1H zrzK7)o<_j);U%saRjS#9qz97y1>fn9-|0zqjvq(i(=(x>TVrSM&Md6|M!c`HGLw&l zH#)G?Yc6q)t6~Q@r`BoScF9+JEXxI-&E#H)auNIOI_0$;`rVA4vr1-hj%c6U;g=yLurI9wk!KG964lx691aIWa z3&MOjjfCKl7+76p{w<7Hc1cAv9`95K%)`T9{&$uzhMi-u^Q|`_)QWqslyUE_a}Mpl^BoPIb)5k+M?+kf5%f zC{Rb_U5@{j~{AK?5csFvV1Gb)o<17*4to%b)s1g z8i?2I;{~EICua36$g;D>fkY8pBv z^Hs_ekV{qrR%~UPWa-lNal$m0owi(ljh*ADOEm$UHz(`XD49lt?CZ9?LFz9+<;ePp zz#_JMonF|i`d6o&tNSZy%S!x9UapNFuxHK@X5Qk7Keg;yT%Qg+qdc2+;#>nH*5c1X zDD-3;2km>)l~^(9%FnDIO;>aoR~5lp@KT?E-YVyl8@!lukwc7<7J5S$QvyHu;=4rm zq`qYGOUiZausr~Eo>vl)3rf@%<4d7uxEJ>&cYT+T_e0Y`+9CW=d>ZsLEjx8RvJah} zb0{bM&V(RUk~@N`Pu+{YM9kQd5JvJXN_&(=?$KatZkF2LEIfwm`Ob5<0BwK!nzm}r z?esOYK13MrQSxKZeN~S8iN0CN-+!!6@57$E4A_`kT3a3upP9AgH*BpZ8!)u2(8s)a z()y)Ow*vFuM;&jDgaVDzxyA@TMMJY=d6+Gid}WP8l*9-hPhw|#^lMVdQ@sbJM;~}N z1ScVWK*Hg;Qn^!t;SfsLO9l4`<}Lv@wF!tM_It(?UCESYkAc#f?obH5r=93dp|*PU z)aDGE@#&sp?M|OhR-n{4_6uZLl<%ILYI^?Iju7~2F{L4H|oHLT97#ONzu}e~h_fEn2HQjHRZ!TkZt27-AQX;i4DYMC`IiT?(GAn%^X1n9;Rg z`v84}G2ylcSeVk|P&4)Fyh};)Wc&bY<Jd@*7%Rqzl~4iNnCuoJ14@Vzq>F*Zr?KCa=))SQS^UV zb-tlu=mmR9+`UN@tXs8m{o)2%co9z@O{j=rq4J&DC|(?v$^MUrKjs1T$0+ht`_YI%=##}CL0?ZaWyj_B}@kC2Y#5I7j7DaXQ zC(OiT*1wG7IHH3R#ifqd9?n?RxI0O%@gWdQXaCjkKTwW5{Lmk&sw;s5!$kDFg7U)h z^qflq(Xo^It(==&9P;J({?r;~52$Jz@Ga$Qqp`&{nW!X2Q-T(m8L2KBTVj`DOJX%8 zDB%i?!s*eI6&i+7Ua=CC*~(4=Vk`Pks5)G7$wQiqFLv=6ZhFZLH9v2bz@JDPA3bGGj3A)HL|G9GHJzZ)5LM}F#C1ic}5$_}3VctX2j_g~s4?PF8bxb+U>^_pJ2XRk?fi!&E9y;pq(q09Ln zrjDLJ)#3iCh&BQQt*ZXlgp}c~&5p71hCos3T))PKpLosSoXm}a`Z#XM2GFVv-+;tp zLrTY{a-Fua8%uYV;e2tr>x}s_#~FLfWz*yoz(5p;UO4ybj$RUM$NRU?8&g*RT-aWG z&D-xv>m;L+{Fk~TUkI^wf7q&q@*wC`n1_72J~ibC4_FI@4AXy zsUCj<3Y6+t{xo~UF4XR7U&Rh>%nlc-Jd`~7mi+-p#coI-BjT;7iTbKq)e(2}5mjYv z%Zo`M?H2n9_Nn#pE>u?lr%qLcLJfC$nwD)u0l&vp_&IpULoYhW&|WHGdo4cD)Rx3d zku3^m<``t&d@}!5-ZLlzDqZRW#&{t~{AYQ$Kwx$q5#pVbvRF&a(QD%I44s$tj*3Ql z7daQbR6`r~00=iUj&;Tc2v9|*bi;TE{rh8bQm`X{D*P0K0%tmy`j4)F21?d{MWqv5 z$>;NENzNrSx}PqI2D0np=(GTr9pKmvbHCtTM-kKQ-fk}tL1tu(C20~MWu~LdZO1Vp z5$5kV+1gHjrO1$q~iEVf!?<|}q(NxG&31;AhmB`@wYok3Fg z7!UbzN;2Q`M+luPPom%Ed8UzskL2R_Lg`zv`~hI8>tvkhRy_?bji>c-qGbe*v(-c; zNIcX_WoJDe`@3BHPDF>V@|5Z!J%OI=y{@>$^O{8u0sP{=xeNK9C99f&7sCm|3zB81#Tt_*x)-C6xA)dUU^QL~VNgk3T?ziKS)b z_vj%$d|&$K7ytiNxf}Ms9zN{;$877H=J&rp&-#NKEgygFJHM6PhIdY7h|0M&4__<5 zJ#j*HfByk$lWKdvS=rqUxZ(52%I+LP1bZ|KX($_IBMfu4RD%=d(~&j!OxFWOm!f!0 zLT0rYU$ScN#0u_bH@)aBt{D&=AC{olbSuEhZ@HDM-v^wWt8J?~ao?K{gwrsnh;oA& z^WI${!9&|&m?6z-c76upufjs$&=Z<~Gwgt^68%f#^|9=kF2K_^mtnNAP4R}3_h6X_ zcBYH8U5W0Zeu@C_*eyIDKEQQcaDuM;vL3TQh5>+_8!Kl&8U&pDRS)*^vCkCGPq%3~ z>)!;csOmi2$5Hb8awugNVWVN=5-}EX$#CrN8#UKRP^tbcU@?S6E!yTzXyNbRa{1d6 zWE+E`7X1xlr~4#3FRLnfFQ%ryiMux(`^BraQH9ckYdzbZvO70NA|n?mJZ5)qqh2dfI4FB8oC-58 zr*r#U`Egmutb(|59mAhr9zJFMSOyA9*D8J<)JgoYPN%6>wWs;}m}7!8&EEE;c{bNi zV@{QNs!qV%&n;^YQ>~(<6aF(Bd*%?c;*aYLH)JHt363PRR)0FSPfoOG6F5gtrhJ-{ z5IiQ>y&;nW`y*PB3eXSSy*Domn}wzMuqqdBB$}PyAvBl~B%%=}P-APCn|Ba}Ddx5v zD05BvtBC*W+hi`BHzpkN~cS1uwCux)nFaFvara-He#vntnt`yL4}5wN6tJ*%&OTY z5ydEd*u>ZiMP{nBYPCL$X;pfqJ7u~1w33|>!I5XcB3{zUUkHfvPG$B^oWiglVm3pHeEm8Ejt>v#U!`gOn`mi(?f>@JU@~BH71z z>)mI<1R8n|gBrD#e3~k?WBaN*%6N>G7!&zhIjbE^MPo z0rS%q4L!Io#g_3cKQV6ub!>$vx=<9->Huh#gyy93-$$3py%Xw`{kMel= z;NGVbhTVEMwhU%r@JV66Y8)f@+&$xpLyM53fYZ~{5*-jj$CAm;&G;;fs>$dKx0n$9 zTfJ3bd{$|>X)8Id^`Ls3%YRsiNnz{snQWh5&f=CS3-|5Xl_pe6;DgU`1d_-EF50dS z^RJIiX_r@zER&`Ay}lA>y}T1M5abPUycwlulA1hX6Ld}Ag#6a6sd<0? zb(5PJ)WP70Lh>3`s_u>Q(fy=^vRG&8Yh zISNke{q_55Z6J?)(c|woovXP{fTd|kk?0IIGr|#z!W>1TB9Jcv`=K)Np}>?NQy>g6 zl{NNR(Iy#ejr2&U@?x;o*|}io;E^MIY15@})r$n^xmkkN(BY#zfbg9q4k_oBTr}r# z6&fT-^xe>zB36W8&C7uvMr-$-Iaf8Ue7iWlk-0}a&ECk+6~XNcBhv?#E6_Fe<1K=L zLf;aBb`X1W8PZ~E!PYPTIonH;{ zd7e7At=@yM4m?|N{o;Wvb}_gwN~0})>IXG`?nv{V`wuZ}j7U@+Va;01sxhOda{*(e zENjtzTg{Llj8KYDPNu8RmREAUN1qGXXF#S0-0zsIm_A2yD8(|2mF_;5;l%aMaz!{ z61_#+W)?Do9=j~hhH{No@)hekV~#SC-jEdZ-T>E($wH8Kn8C#I{%~&WI*5~w!;>(* z(vi)lAQjrQ*L-2*qKxj@O2eU|eMjsR3*pW133;}8$zhlr`l4%|Tx$hUlTjaPRQ743 z_zKFb;k$szrFi7kJXBT|P^^E4ejSc=Rtrl5{+SVlVyYAA>cGtR!y;ql&l3E1=jNQm zWEP*mS5{L`7O00=$9S7265qeXEkS$xCib9zm*wvocZ0++IaExt{*i3uas3tSohN4F z(sa$GirOP&Y2%Cds!HNQZh`G)SM?oy9Wcb}ez7F<5v;H%0+;GC47f%>XG5IpiXn)e z#3;=sUpqClhOTYRjd9izez;kjh-iou$xanl9j58cIos^8Icf!m%A+hQ8B-jOe47MV zi!}x?PeXTLWr@;YnQd#x&6?U7G{1C*dr}Fnh5HT0(ZIogfC$dBv1TGLPJC0c%N8L@ zh!Ht57o59PfTqFzak+!X_meEMqcK~ z{1&_b*3vyf{T2)!jwq#cO(3GohNz}f$6KeZsj`Vau-wy3xQ^=7souo1WEinzlPN5QEd!1`kfPJN$XQp;>Nj?8; zbxSvcFW~1=NPC&0W4QyOa=rMQ8HqDqXX{Hei@h>WLheNbUuiLCVp1W6f<$DsCshSD zvhFeqP7w(|um6Jh6sexrY;A-Cds30riQb4pOe&f=b3B;%oeJP|Z|9|MG08ujZfL{R zOL%GEOvtzy9oXB+Iy$9mFdbdp2d%rX?47RRCBB4or}9#81MH?Hk^KX+FN*qs$xGo7$6VR%Ig1?& z?igkcW!_9tU$pE+*D9FC0K0rb8Fd!dwqi_NdJ2CR_BaP3`}(Jt8BAyIgL$!}P_6vL zo2#LAwOU?0JDEWx$N$r=WcQiz*H{S`9e?sS2o(i`(8`63m>4*h=5tCW&Tfuy?e zfAP5j3zSlBEan&D<=Favnzn>iWr5&8kOc&;#g>~)w3m9o>CO{ zk6-e(ySf@lsPK>UB5+|(HMGUwLxAOYMJ#Q7avt*R%&m|yBNrW)`z5t~yZpUFApp{_ z%e1H@GO~nGO{35lDOOp^qQ41J9C=enucpvEvdGvTA$5`3(L%NSBi>Mdpl&GzOREY+nyWGqR202%w ztiT&~+f@{{4t$$-M5#xgTp=8iuBoksd8H1z+zS~H4ugrt?y|_Ab`){4+}tEZ~>_HH`T*ZpY5e$%hx?REO8Zs2v>KkkWHN zPMTR=+4uwo6D0s-@f`dJ8n`GtPv*tqS|r1c)m&TP}B6PBX8g5x{cz<6CWE*l0_;qm234b?BFC*JT{ z`+ueGJ1cl3Y20^8t@gLPiP}4s^jx(*FhP!8fC+3l^?5mxP}=@qERqbDw}h}3=w4`- z+5c(Z>>Qex<9_-Gf;f7HOlyv!WvY;7TXotQ|6%|LZEV78!TmOCNxH?7ixJn0Z`s{i zTLz@}^^Ks5wB1{(_52F@ko2_bBGV$Znt3|7hhI;z(jXkZFzvd$mw4tRU7I*NaRKC3 zmKF`~=+7T6E*|LZ9WLChQc2>)Rhsv_KdX>uwG+^ON@A{`WKVGBfbXI7EZxP*@}ohS zbuR|j43g!JuJnRbT)6dgyK*v3r6l}&889}uve9S*D&3?ZB^a#5!iYUoZy!c}qFM$@ z6EZ{84Y63?jR@qBz%id$iq0>H)Cig))3s+Riw|QnTh9jP_ey3G`}>xf{AQ^xUKn@? z+rvQ^Gz{Ca@9s3MFah)$8rP@*KTJiZJ0I3M1R3HVoXbM#{0e>Iuz8@U(JWF<dW}gM6L5E;kQ!oImys`^oA$pmjO1?Uzz1;~M=X z7Y*9y9AcrCzhoQ-+sXlHKdwSDR zpO08u{bu^uXpK^#2V_w6>oM2aU^rPnkPV2&(-*kLg?2QmwClmz$h^(>$JL zg8kJ9maJ?on8fEsHjrXXtRfC1sp|d1R95NgfKk=dU|Wx;kxG(d!a`ZE#`hShvt39A zpZR_36i6jS>bmA#%`s(49@8)PvGticc1mj3LlA{qym;tZ9gR@jn9AT;wIxb-XU*1k z&NI5gM%W^Y=s@LOyY=C11|avH+DZTN*y-2J(`i)bU)$f0)?kEFa8pUJHs zU|3UN00Rm71v}=XuDasPj7Vb{EN*`4Rv#mI`p3ph%4HLcl~)&lW#D93NPz;JKJv}( zoY}#f$@7_!9$ceT$80ZhPgA3gPu~ZH!2ZR5<9%O~Wu9?lyq}gw^V3PO6+XV`Q~xXa zX235czYP>8PwHd;d9#fTng>YJD{6UR&S(+c=eJe?BRFXrnmK`N`?B+9vp16x7}+Pt zB3~~A>}p6&ZLKt8cob3t=2=Ut%2Lxu`f5oO59!A^z;lG$+E~OD0|}O#YJ3)#a{g@~ zPYbeVm_H(!Aok$q{D!z1r1kpSn(}#{Q7YxG8W4+LGTD$Fo=J;>6a%dP56*5G+Sk`N zw14p3AqF&RZ6185+04jn?nZ__F3GR5aoHW(oDurb=4|U_a4*ptml>XtLLfc;SWA}m z5}>(nd;#JZ=U+0;kxw&saeDScAcaTZ7R!S-!e zNBkZb+PP?=y!CjlzLKoH{i2ywvGMaAX?umSb*J?uBWfuzmZeBAseD14+ho|cGVbC& z8SC5KV6B?nu*1FTPgHH#YKy%o_jGx3h;bV zRbjy#BN@o{;a$+^>++>jZ=Y7N@0+h?oN|wRnWXTj4^#K+EF_RXWem9%LOgfOnOOJS zdt^i{a*pMQA9$laS0l?J-w|BANnrNCdCkv5KUH332`J;231IIWQE1n%*LNX1 zT)Z}@!9a(LM|Lp%F}2$rzo`buuK&m{h-_FtEGP?YP~d`@Ty7w9cP$Q`<;vlJ zHBm(DLj*H>QVi3?2me(Ik`!Ww9x@npHB&aGgSzlLfFDkop()&R38Tnuvh_1i7ZLNI+HH{$Xfqn+Sy3!%l*r`!t3o z9pS7_hMcrK3H+)qC)#32KL|u8SdhpN5Hz&;+GfzS*LvC-)Hj7KgKa1>z#eEHfDVA! z46bTNwrmHM>)(kjchwGVglc9R~n3s2L4(wK5DWdjaYsHoHE{^0tpH@j5)ye5uQDZZxHToy zSdWRjB^JRC&Gy-&-d=U=mdGH9WU4M@2$7oTlSc6a{`4Mwdt-6jj$vLRMy>z6|D??! z**rAJcJ$Vk{#$2* z0NQEk_9#awsZQ!^YFp@|rxWvD&I1n-s5W+oruC4mNtXF=t$ zpjwbwxq2H2sJZ#2d*S_LFgSicT2?FDz>Jh_lqK!=iEjWL)(2;GR$Gsk7^0UJR(^V* zB;%RhLgTLi@M5~BU$FcYs%4?cTSq0Zqd_b<8H5Vq2e^|_ly+Z%zqMKMYWyb;6u7&N z?n3A%dzi6hA{N|5BO1~QAB?VG+yEb&*CS$!_AuYmK;k>wi$>j2l$^p78ier zBrVy6&*&15izMoU1^EkDVckwrgv{%)rf95e{OsZzg+c2OadK6DoCxnkxj4P=HS>OW z%hUCkV7R(^NO06uQhM2SSWsOp7U<*?w`&`YjEKaD%&dbCHmK!5G z?Y9UPTbo+yT5ar-ZHZQPMs9_9F1P;K*lJ%Xt^BjBr43jkqFY2|?p>}PA|XdBYZneS zZh>LjB1og5hHmhqRdz;}WF1i%(gfYXF#DjVo3jfC9k;;oP2qvXHmIwY7^ULMU_@@T zR~9a{%VqdBu@X<&u49@0;Zn?h>7lMbfxm5umQ@%G^stC}3PuIkg<3VcAQ zf~f>P2QgwSNrJ)vwo`Ci`g&() zPYm4Mm7mwu-IZUkXI(5poG(BX8 zMs#;=!%C>KDg#q6s2@mxB##YY#+5Owl)^C?6>gY>xZFeEd~(|A5S-cMnqHvp3Wvl) zIfX}QY0H#z1M&38)LV6GR|UZuWBm(qS}^4I5UV`Y0$!`$E!C?Wkx+!KSs4e3DNDCR zk=ziG$%_fdFOpyP8o=Sfc5xYqFMy9X zF11ejf$uq7V8c{9*avdtrSg*mA_ z?dj1>-Gx4d`)_)zHZ6em7opQC32~cCV-DHn_gUcZmblCSBdW)-Cto9pA%0C`tM2*l z?@yC0_;@Q^rT|GTOKUWr0WT(K)dvWqbpZLE~j`QuJo32?tqaa{k_1i7GP=y7H|c@Uj+sgc!BUDjG^$FNG89c3S-7u(#a} z;;Tv)JWvO)W@RUE`iJzl_CYR@7_^nA{eruS&x_Hk+n34d7~;(Qo1n2&D|bvRnHF$7GXilbcZ^Qwj*G>zvAxr{;7M9}tT7xe zZ7eM-^+>k?dbf-A2sRjwcseL=qwMqAe|Rfu)Xe1dt`qVVXE_Dq`+MGGzuj*08T6#Q z5PsTJ`!B7S8R4hrX|(iwBW0&qdRX{L`5Fy9FS0@5$n*%1P32#8*1Gy&giX@&)GhX@ zcbd#qWN_*&a#yCtzmb(VFQ+Rezmh*KQjMFX=D)I4Xh)s3Ze!_q(nXlIZ5A1(jaQ>{ zspiXRz5&3q>`@bbyJOoqdV2j!^!9CGw`*#{R;$ceT6+DC^B77RJ&z<-vhl=zv^(#a8s{s;1gWwys&v)`1N8{ME02x1_1^ z{`)!5l>=XvS~!`lVvn9|h}$j@dS_VT5Vw!!kE&2a0-nlcZ$wokVu9E?Jj6X&AGb{) z3~gY?2f5w)s><0)iw<VKuec%f^3f-yJvK^wtD$aU#lK$90(X1+2+K^jJbn;;8XwF-M+%&pM62{52@DfpV ze`_wKFzvrKtCZ>8`IcX5`apiMPZUn7K?K=?{D4gAgLCn_g-ns}q4D4mi8_E;bnbZM zlp`XYXlcgv1f#h71X)Ntn8aTb(!fbDcuOYY85)EOqP zl!lEj}t+ zSIAYq(2;XU6<59>&1#bD5(Z?o5bI@iquEtHE7F@FVgG~U&anB}WzLv}w>YcM@?lpN z_}airFOl8j^qduF|Np)hE?2V}nrU)*6V1~hyb{QPn?Tu2^V)$(x#{3GhV_jGS>XN6 z|3oE2uMpVtr9drwaNH6$J$sss<2tA7ES;^9u3h*fWW34gKFiSlPuT8id_ysf!!Dv3 zJ4ja~`QjRiXlza~&D23gAKGUw9!4EDBQsEM^$VJR)skhdywH02J+SP1Z23me@i3I4 ziJdzi$BOZbp{0Bl#1b>*(MX1z?FDCdzKw|bV5(*5+tf56F35Mu}*I9t17tn_X;sAFgD7Z?bjYNcw($Y|SouPGP|mB&wRU zi=>{MMo^xyp?J~|P9lfe@T^RyTG(%tdcqId3^hEEl~&qN5h3Ywj+Eguf)o<)3hJ&i z*mgYGJ(ICrw=!lmrZ_jO$?YOMn7>sG>S8Q3p*g*{E85LzmS`&dF`P%iZ&I6NOpDo6OW&;3_dSUGToafX>z zuG(52qdnMHGOJImJE1P@RvfRuX0_pKg=@zd{-=Ot6CZ)9j6%{BC8~@p5|xsTLBdo_ z3}KqgD+0A?FnCNsNp$B&+X22w8=<)FS~=eB<%PhVnp@=t2eV zhk;}G=G4LvkoOt>mXZMBr@r*-0;P{W0b~bOBN6p?Z(+<@7#(Y{57Tl(c|3t1@hyu+ z!RIKad{;|a&vSGDopQU-1hYykviDH+l5YB9pkD8Qu7&tD!a)usJz2D?W6)S< zZve!Y`1a&SfYEVX(gj}lMI?hJ!WS8}6jr_-r9pt1_E zY^aZ9@~LqcIEqLw+PPxs^bR`3Z<*5Z$2WX4L+Z0nnTHD4n2<(Oj2FvFuxc%;P$

    <&@$xJ=1*qibF8}O9UNvYAY5E=Ynx4^B-^`#_rU< zE((dyI8^kHU_k5bEB5FeznIW*U~9IzLEAN-1LCLJIIb;1$&@E|&+0RmxC;JO4pPan z&4DfM&B|K9CQdv|4(}M`+v7Xxwoy)5<{X2i+&=9C8K`tR5jj#(Jsf??CFQhA-mc40 zTQ+8=0d4Ca*F<}Gnsh=lHHsbLNh@RxLU(xg?IiVjRLB!UV|4z66E*L$+JGJ&E{NIW z5vFNihjfq@LD%ZlHNl}ShDJhyIQ&fNOiD*t(l*~vWeEvmh9`(bkz>CY$jDpk#mI;libY%(`y#hRd?P1bjVE=iEEQ2dc>ZA3QaOniKAzNZc@BySxyEN_X_BcN}O|3 zT=cMg$gR>?MIw0$9lH!9;C35J4lTcVmS>*Kp+~{Qf*9v6nrXBr;pXd_UgvMvC9?(%Yrwk~;Crb}9S zZT7;rw?1>M#~_qHzgurnwg-^A3qe5=k>K*ob;y=(e3BQ+m$!rxr?1tJ+LSQCnF+5i zPbF3LgtLJ0pej$W%RSeTvvmEFe5QPPYX}LabqglwYxOm#jF=6i#;>x&=D4!EH$F~E zDxgDKVjCYe54e4RIzx+ z&w-38H=hE)zHMY}DTlRG@RArVE*|}Tb`;o}knTZ{yp^T;g6W2QkQ+D?7T%dxHQ*Cs9RbEEmdD3D3afGnrL&NLWmwWT^5Tuf)a%&q*YP4K_A3upnIz80%0VnUi@ zJ3e`Y3uRAXhXF9V^*?VuSVhGbnMH0v7LIm!>n3*>ZSA8*nyWKBl#~||08H}F`U(MqJ;9Ac+gO!v&CYp*A8N`&=UOziAwe?V7UDx-uB9h{wVpQ{l zy#BurT}RH;)sm>X36u?z5Zxjw_WW`HD4cUt`G#SI&c7L72n0zkQ4n&Ci;I2-K9uSs zkACO(aD=NRE=~KQ&^6f7^rs-3?WzNP#Zb-hWGktBOep5U`rTbTFd>ef z@W#Vx{kEJN&;zcbAuEO+5i8i?8z~kR`Rm_zhqrO8O+RSG@$5CJW&XFlK{OX-3~xv{^9XVyNFv=`V9;YS#&&uLZVMA_(a+M67#1Z1T84BBvT8EITjvp3 z_!nh972r=Z-6T*lgOgx~ex8MpP+*vaBvqL6m#xsw$G@lqzR!+X=f}cnT<1c(WPn1w zsd8q$^|{ozuDQtz=)3e77aI=O4zf>0s48>axP=t~+SuC{q}6m9d7tF_v{+mP_cctG zc?uQsR5v#7T74&!?*fjiq!*S1%1~ODzYp=aVpu`I2uaWI)o=>4A})HnXFNdaYt^H- z)YTEJwFGQ?3G%WffhUKbt55!3aE=2{p|5=x*-w9dP zwVT0!)YYBS9pr)dESIO>J!0ug!{ix<8UhutR?C+dGu>D81Y0lO%#E?~$Q&HnJCNBL zPbibVA}#(=RF!lYj2^~`q=Y$^*f)b0ukn~m%a$zGHV#w8?pF4nwcVn(mrg$bV=x)v zuXJ>r56@^IS)}}B;C%N2gP6HqUmFvr9>xft7pm3FysFT~3R1N(IetV52sjg;f*b`$ z(UEe$atG$KppbrgY$ps6m}85BcSAw5)@u7itnUs_s7s1D)lIfT)2p@jsp-LhL^qwl zq&%bJ@Vas^jguBxKdgfI?>;s_&42N)KckYAlwB5LXT>>7B0h5kn$4A=biwT9#exDOimvi_x z93_R)svfB*^LUV`Nmxc>QCW~i)w3L`|EX~i;QA%gF-052`-P3pcfLuHYIV~9llXM_ zW9LVmc4cMzq3+I}_m>6YkkOLV`5mPC(2iJN4a#2v-akw0~S3cT&GR%q487j05T(I=6i zsWUH&A4-mCDn`zD>y@dmzcr>m`-Bf@36rp6Fy*CDy>nv)S10VVTOkwGi>a@4#(_w~ zRjr{Je~;1`Ku)S{#J}y;X$yps2hPl&0l1{_nd37cH2m6RbZl&*&KTELE&e1%(0)4y znLPaXuK4y(*>HQUpBn++TehXm_qw%gxTfRP*E2G{9&>9|@G_?j?{+!c;xdj9wX%^2 zGf6Q7Au7cnknXZ#fct0BGC~Fvnri^$`O+gdDChtc&nQlZXyfpYAX;RQwQ?k{;Ii`s+oPb1X z8u@~0_AA@_u>IIRFinEnHoY?4hXZ2wwiE8y9iKs0Y`=W}X7?F)Fzxb?iwA>crb&kS zX8JZBbR0uq-o?*ox9HV6Byln1%XP&h90s4dszp;}q>&998NWbVbxdX)!Pv*N855mW z=ymu;s@8F~4$kQR;Wf;0#UzXl#%D?{fNcl^SN{ydSqWpIVOwKZlaXVdMgF>AtTm@~ z9B~f3cEG$4p>BPyts@n>cQ3;^+7feFkWfBs28N;T3veCi>kgPKA`!OdNXEZ%+HnlY&$=H!l&(2m90=nbY4pUoWpU}3}4S>t^0<`=^1wlGq z#)t#~bEmC$+D+|@L7Ru^tQCNg-8M7nu&58O9Xd1p!Y6KKDf?{*n-c{%+XZQBf=h$& zmu330XNF9akh)udiOXNQ)^ICbhixenDGohW`r{ZgCNjXXj>bccDZO@OgNU}WPCLLy z$A0-ZCfv}xwcMcr#`HXQ4iwEd4q>_&Gh{q;$h`>p$I0op3E;FY!$X{G1Y8?;=mOLc zA>6_puoX z>$^~7k3PkRGR|22EJOVA#F^_K=18){+pEF#wA@OTvY=T;rJ9wv>X@{UBUNgwg8XMA5M&$rPawj5@_$DzL84q&7enL)Ye}Y$EMmd~P27VC zh}pKH;{i}`(MBIfW<%yg@Oi%+ap!Q2IUKnSnTsgIC$&5 zBIJ*`g$I68iVn@uc8I9URgB|wd=erFG_(z7o>zhKnwAnYGN)OpcF1zJD!w7*u5;CF zx`8ZDV&CQEMlzY%W<@qy7?B}B0*9d4?|x5AuWtY^<_jn zaSm$)mBsYjIeip7;_uXDpRnyWexNMub6Oq}mJ~8hn-M%1%7E{uFTXd8l%fL^^{J<# zh?p3URq>4(jD@nrqrp{KAp5kY5l!!-n5c`0pp9_Av$vkR+Z6+>6*E%C**_gZa;=KN zS|ct{Cn156U$`LEmXk1!F9;J?d8NsnE5GBOEJXj8oiyy6$IM-j-L>dn03_BoHO)*F zH7zTq+e%SjntxjI(pot^jz$-hr7V(NYL@|D5wv@)emnJVNIZA6^oLTF2?kx&u2KeXF)MViNOyGlo+h{~Z(=m*Um3`a9dTacf z3G=yBU)5Cpm!v>GUJ2A(_MYgiS$f5<_pkpw3UmItC;Su1y7t@sd~@K}e-;1#bL5Ua zY2W<^LznUIwNp69wm@Kr6~^;}{xvEw0J&#k4MWo$U|6=LUn6y_ z37iOv)klYm&k|b68P7KOH=SKK_$aZGA-3j*$yBgkrYR*F^Ado5TZn&&kqCcaUX|Ua zI^LNly(}$1*)jGZoPvlhXTk4=CbCUKqt(vJ&wyU6Xas=XLEB}99fr_qelUN~>Q9ex z9cH74eCly5UL_0#N_|}ueK57pj7NYcE9#!;WaX9CvKIy!H}NDf(^I{uY4`kwl-;*t zY*4`F^2W;SQ6T#;@`MtD#2pd-%N5aBMw-4Jmpmewl52h2h*I#*WoW9ds<+3i-qKq#P%^F$+Dws(Rh zE|N|thuhZI_~NE~-RvFO)J=RpKXw8BCN`H;Mz{^Hf+ z-!fZp5xNeC$b2#dbc_$(vAy0&cDFV?e1X%R%H3D%i>gxi!rFrdj+Jf9b`s6HsfnZu z=vHfWmXr_`4*J9=N|G{3=KKb*QxS&Tqz9rylZBN}P6m-{uxbh1ie+Lw7FiS8tcvES zQ7fri5>r&;Rw-I@4}KjdaYVq!-uC|NFscib_fk$h5#^8-h>LN!wD`(DT`C1HQr|3^ zb_5?69EM*B`pbiUNUUfT44L(4M!XQ8a(uCdn(1n{MWrMr5F*Tltt56nu;Gl8B7M!+WnTri&70* z0^%xYlMW*rJ^z0?I6}{5!=Or>?|{%0LiV93PEZ)*H{&(ueyilkQ z#M$2;;?XsFnog}=uqS&4*%2k=nFtVW{rMYRdK$!)k0hi4W> zI)Y`!N}QEGs;~9M%A2KITVHh2hxCKmFG@=@1Luo4{O*viP25dwBZfG99UGggu$nUmrrV5-GvW^RbS(sYq93j-F+jGd zslA(~U%51h<(1C}BFk}W*%urJt?wYf9F_7)PIT-4waLWh9!|0Px8!{8Nq}F^oI&;qgjL4a^s0_iaBfAe~=x(Ta*xfx_eT7sL+$uUxa?+=Qt;(|UcwRu;3+QIC|(b@C`SlI zeRr=zq#U!+JNeX59n4-%xfaW1Br@Q?WxciJ+){=AxLm_KXL+OwKv$)--)OxHaej-! zZsH$j(`&Hv>o}^(f1Y{pTZdZ|4q%h27!!>A=#}~MCEVy4ppoBF-u$U3IBACT@3SRi zf40EXKr$N9#aueVZVqWyC7bnT$Ryui#;B05WwwpF1pxgY#^BgzHDXwv%e=hNs6^sK-4a= zO2CiV4gUOZjMZmxZS4X3Vi<%`a%#-g%3p&(d)9*s`IYYPqN?u_L$ivT#k`p*)<(h z&XL=OhN4(js8Np}c=qSrBUOEfT;EpzA=W*HwSXd%Kd1Og%s`t+6$1_6r~LA>lPAJs zJ#!RkrSeeMIs4w9tOGb#S!kX`P{h+WX4b88y~fA5xfn{*_fKt&GQgf$?9>XE8`6K;V|_kfWiPpxYqeRXDb|{kZ0;kY*4iXS)XMEvLE(n=Y{f9tPt&1ct`j2ZhK4 z+i3j1Um;)f{+0E{_t0d{Kv(?e;pfy===n=^^(m`_&##6_Lf;YYu9 zgKIp!Fx`R1u%&8ML47rNwgM5W8{SaMYFRyE zl|cp6LVNfU!A7875l0>=`)Ejfl62-xO26$N@3|pyj!R>^Iai7^se6Q}=Cog8n&N{z z5A}wUpx!AlJVoSFr@+-H1W%`2C9G``uHV? z)}{{C^Xw#VeOad~5bk)L%30D9d~)bedq*+FM%zJpv2dmM93tp#cHQ7 zNq>X5@;v;JVrqpDprmqfBg92mq>6~Em z0{+p1Q>6HU6azuLrLrpur?p2h8n-C5Ve4BFfVS*uFVD>=9eeou11OlSDuIkYfXZbo zIb}g575i33$#FrDWW3IwV{c`fOVBeBYwK%5CDra^bCeAHKS1}U#YLR!ZqGbk`vF}M zMbxH=gVRKjg;}eT5kopvkQPA);X3p+V@IdRNKvNi_N1$sR&zO9P6lQB#|V5gtx6#$ z1$BxbC5j5dbeNlb9nv}sl)};Gn&)yX6u@$Du8eQ)vZBZe1uC|4^+y}5T^+0-57m~w zB(1pX7nIsegfm%gM2LO@@5{4(mna*nNoSdp`!r&@7A2uzY!2CI>4Ml6BKHwj9SK@a zAzbSFq_vvDu3tI;ek};WQXV9jTsW~^U;fNpZuDsJJ|HMO zh>A2>_f=hKH)bJBCHL`!Gt!t#s7KTy^ua~A~D(@efLySNP|jiKop9$ zT-Y}PGn1vN--Doj_rb016Yf>W+K#&y@d$G#%q5|OrR@td{py*kDw0%Ek1B8yXepBq zWeFxpJR7-A;ZqGZu-6l4rMDT$5sm4pPHB~A{J-~>ny6!_%A7l~Y-6Q4fN>@Ky}~@Z zIGVVeoM(>BC8qwt)O_T94(Pe0W2tr&uX38yy1gH_xVtKoUVzm}y>)53#j;lUZ4Ou6 z=3u(wcXVvc^Ywsa2v8REF;FKz9phTt-)?t!Ln)P<*N`x}DKN;k^nj{M(4k2-*~!Uw zh;ZbOtoi1HVZ>0-HKM{ID&J}{F1o40~XmV1;idXi~YVuINnw<%9xlmNG%6ot;9c}3(tDqnVBP4R-hSXPndMQ9QCyLbbp zyNN`|;z$aSDiyLw!UlQn3b@LPX3G_X`n&n^KJAPP(1AD1vmkj~0@O1I&B^@jLNonc zjcZ7Ff>vbXIZ$1Brsc~h)}0YcwV{+2oJuUFbp9Uaa?OkL$5Tqg4Q0Gl^Mc#)-M#x6 z0F!M)^1cy7NEEnImBTM5Zzp0nHfXU#fewBjLItb-s)5$fb)*`jyGT_#Uri|}qmM>O z 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≶M9Zv|5`G?V+t`dH%WEMXqpk;_3Hk#c)5bow}^>GHdOg=@5pYx=49b13Ly zrJynzDRebu8rnRSaDCBo@|9g53n?-Toj%;)7@=UY|Noy}Ma{<^CTZW`I9PGat{6t2 zaDw4J3oUfqrNwG{*q4kXjQO#)d%E?I`6unq0@g?R`EPa45Y|xpiRX?D^@^QqfPjrp z`1!tA9;wNGs_VH%HtUBo8*1_;v~g)avtfdTTKYQ+w|_T@R1|@!z4MWbhw@XQ#{r8n zFBZwGL~*S&Epds65DN=S9LDmC%OD``N?Ja3mq@-KYHmwkg<5GJXlu`C1U~hF;}GUt zEV_svDDRB0pxY;h0iVB6!+t9MoPjoUN2{tnNvmp71!_;3|F6OefCDX3EgVYSHa&Y~ zU}M_~aPglu-?Am;VW9ar%IVbGkq@`{Tq5wAt!;iU^4x0?c1udN{X&%ux4V&|KJ4W8 z^-G%6%-Mk6r|NGgPt?6Gz6|&!zRxhaV4(F`GZ8rK4j__!PX?Q7^;*CQ1mh5%DvR6C z?e!IxGMT8~xw^^9NiPO6=pQ@SRODn~Fsq8jD|VmScW#=CFmzog>dWa9ISWyD>bX6* zxnZ#2TwN0;af`pj^X|5h-UR+^#wtJ!B@tKiK!pf5VjK5!fZLt zzX!?qwZ#;g@k9fI%Zc#zkaZg@VAO57d!5O3Ue&0UhOx8iALeb!OI zRvYFgz{G^aMMxIXA9Q8%Ks(ns{Ng8LwsDMRXV9_!HbeTZg#-D*^A&&kWc>8s7s|rI z=ynSoO>Z_is~m>%blt}gX#It_>e2=$ntV|mjceXzzfgYM^uWLH4|qn@T1Vx$y+(mB zr_oTl_0pJ8ZR}4L)pN;gX0*r7gHMr7oprWF%6?*dA?da-61JtJNHWwP^#36TIN#Kl zHX65H`VqI9GB?_ee-?H!Yb?FpyYadu!+UaImNKBnpF_sZf6ay)B7}^R1hodXNP?eK z4UhCNG=>^Ra(w)t-DekO(;#W^pCZ0-I00f84I3?O?7O zB%x)J$UIIl{lRxlFHDbkes}4Xh27aeZ@lufb-e26$_f|NxU&YtVUJG#2x>BxrM_VU z1LCx!(BL?8gDF{Vq$J)xNc>yL)$=)7I*g|%)(&0-;j8CsUSvGa_^S6DVMpH zb8v0T>G{!ohHICj*>1fftNM+zZtws0KCZLv(IK>C_QT1EH@fD(8$2iPv~!>Y4cV!P zSZxtr!>L43HPE+4<>ftO;-5eywKK$aj&E__@NZF$Ub2O545&GURXRcHZf+@4Q*sxY zWp376swn?@b?YH5czxG41HZOjt)n5ymnfWVn}~l0v!W9f09Qb$zl@4>j!2BD$PIWy zG%tHq1co&qIS~ddbB3;u@9Dn~xdsYnr5s8^`W*i3m@VDEnOB&F?o#)Rs5v1eUah$w>#9 z(>0sd(bH1S1!0KMO_Fm9-(30B*tAvEi!I8bj@kN6Z10~`=5`eh*Oh@TSgc~GARo=W z<9@k$y19A1xpq3jbDRG4LD38!4XW&4?>FThiiaoIiVSTRo?|YzPPb-muv!>myEIOW zt#-bt4&U((ZdDWewL`sy(~|m2`BN@QF+Q{|G9ZCrd6ta$KC*E*TQ_G)_3NXw*H*CY zbEL^@$wN>XGaLNe4bu&0*GJMUg5zS=CN)LQyqHShcMq=mcw_4h9+%ozHC=V~`$%?N z`DWW#&TppMgR}4%!g!nK9J8-_y1Mk=F&oUrC@E68`W@5@I(HpHbiw(p1ld9~Keub^ z`qq-^lE(GMES@?`16xSt_yAA?b$A0;omip zd;&xiYAZP+=TTDO@|)ZHN*1!_{_wQ@i@zy5-UG{`HCbB7dqN5AgmRL@R~5 z-KAmZe7J3gow^U;9@e_R+QBj&j{H=={FCM3!&hwmwI9#NDh>OjBmRdo%0A!wRKaXY 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